Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Script geht zeitweise auf Pause

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.5k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.1k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

Script geht zeitweise auf Pause

Scheduled Pinned Locked Moved JavaScript
javascript
32 Posts 7 Posters 1.7k Views 5 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • htreckslerH Offline
    htreckslerH Offline
    htrecksler
    Forum Testing
    wrote on last edited by
    #5

    Was genau soll denn der "cron" am Anfang des Scriptes tun?

    Derzeit ist es bei dem Script so, das der "Hauptcode" immer dann ausgeführt wird wenn sich der Datenpunkt

    parser.0.Spritpreisrechner
    

    ändert.

    Ich vermute, Du möchtest erreichen, das das Script selber gestartet wird weil es auf Pause steht (warum auch immer)
    Aber das das Script ja auf "Pause" steht nützt dir der "cron-Job" oder "Schedule" nichts. Das Script steht ja auf Pause, da wird nichts ausgeführt.

    Du brauchst also ein Ereignis/Script von außerhalb was wiederum dieses Script neu Startet.
    Viel interessanter wäre aber warum das Script pausiert. Ich habe das Script nur überflogen, aber irgendetwas wird da nicht so ganz richtig sein.
    Zu einen versucht es jedes Mal Datenpunkte anzulegen. Das ist zwar vielleicht nicht direkt schädlich, aber komplett unnötig.
    Zum anderen ist die "Einrückung etwas sehr durcheinander. Damit ist das Script schwer zu lesen und zu analysieren

    Gruss Hermann

    ioBroker auf Proxmox (Debian) auf IntelNuc als Produktivsystem

    NegaleinN 1 Reply Last reply
    0
    • NegaleinN Negalein

      Hallo

      Ich habe dieses Script in Verwendung und musste feststellen, dass es sich in unregelmäßigen Abständen immer wieder auf Pause stellt.
      Kann mann irgendwie herausfinden, warum dies geschieht, bzw. dieses Script soweit überwachen, dass es sich gleich wieder neu startet?

      '*/5 * * * *'
      //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
      //  "Spritpreise_AT v.0.5"                                                                                                              //
      //  e-control Spritpreise                                                                                                               //    
      //  ursprüngl. Script von steinejo_io vom                                                                                               //
      //                                                                                                                                      //
      //  Zwingend erforderlich sind der Parser Adapter und die URL aus der API. Links und Hilfe zum Erstellemn findet ihr im Folgenden Lnk:  //
      //  https://forum.iobroker.net/topic/20314/skripten-des-e-control-spritpreisrechners                                                    //
      //  Das manuelle Anlegen von Daenpunkten ist nicht mehr notwendig. erledigt das Script beim ersten Aufruf.                              //
      //  Auf das "E" Zeichen habe ich verzichtet, da es in VIS genz einfach an der jeweils gewünschten Stelle produzierbar ist.              //
      //                                                                                                                                      //
      //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       
      on({id: "parser.0.Spritpreisrechner"/*Spritpreisrechner*/, change: 'any'}, function(obj)
      {
      log("Start Spritvergleich");
       
          var gasStation = JSON.parse(obj.state.val);
          if (gasStation.length === 0) return;
          //Aral=1, eni=2, Shell=3, OMV=4, avanti=5, bp=6, JET=7, Turmöl=8, Lagerhaus=9, AVIA=10, A1=11, Diskont=12, IQ=13
          var arrMarke = ['Aral', 'eni', 'Shell', 'OMV', 'avanti', 'BP', 'JET', 'Turmöl', 'Lagerhaus', 'AVIA', 'A1', 'Diskont', 'DISKONT', 'IQ', 'SB-Tankstelle', 'bp', 'Land', 'Bp'];
      	var i = 0;
          for (var i = 1; i <= 5; i++) {
              // console.log(i);
              // console.log("javascript.0.Sprit_AT.name_"+i);
              createState("javascript.0.Sprit_AT.Treffer_"+i+".Name_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
              createState("javascript.0.Sprit_AT.Treffer_"+i+".Preis_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
              createState("javascript.0.Sprit_AT.Treffer_"+i+".PreisP_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
      		createState("javascript.0.Sprit_AT.Treffer_"+i+".Strasse_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
              createState("javascript.0.Sprit_AT.Treffer_"+i+".PLZ_Ort_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
              createState("javascript.0.Sprit_AT.Treffer_"+i+".Logo_"+i, {type: "number", name: "Logo "+i, read: true, write: true});
      		createState("javascript.0.Sprit_AT.Treffer_"+i+".Latitude_"+i, {type: "number", name: "Latitude "+i, read: true, write: true});
      		createState("javascript.0.Sprit_AT.Treffer_"+i+".Longitude_"+i, {type: "number", name: "Longitude "+i, read: true, write: true});
      		createState("javascript.0.Sprit_AT.Treffer_"+i+".offen_"+i, {type: "boolean", name: "offen "+i, read: true, write: true});
      	}
      	
       
          var index = 0;
          //for (index = 0; index < gasStation.length; ++index) {
          for (index = 0; index <= 4; ++index) {
      	
      	var arrname = gasStation[index].name.split(' ');
      		if (arrname.length > 0) {
      				var markenname = arrname[0];
      			}
      			else
      			{
      				var markenname = gasStation[index].name;
      			}
      		var station = gasStation[index].name;
          setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".Name_"+(index+1), gasStation[index].name);
          setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".Preis_"+(index+1), (gasStation[index].prices[0].amount).toString().replace(".",","));
          setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".PreisP_"+(index+1), (gasStation[index].prices[0].amount).toString().replace(".","."));
      	setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".Strasse_"+(index+1), (gasStation[index].location.address));
          setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".PLZ_Ort_"+(index+1), (gasStation[index].location.postalCode) + " " + (gasStation[index].location.city));
          setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".Latitude_"+(index+1), (gasStation[index].location.latitude));
      	setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".Longitude_"+(index+1), (gasStation[index].location.longitude));
      	setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".offen_"+(index+1), (gasStation[index].open));
      	
      	//Aral=1, eni=2, Shell=3, OMV=4, avanti=5, bp=6, JET=7, Turmöl=8, Lagerhaus=9, AVIA=10, A1=11, Diskont=12, IQ=13
      	
      	var markennameklein=markenname.toLowerCase();
      	var x= 0;
      	for (x=0; x < arrMarke.length; x++) {
      		var arrMklein=arrMarke[x].toLowerCase();
      		//console.log("x=" + x + "/ Markennameklein =" + markennameklein + "/ Array =" + arrMklein);
      		if (arrMklein == markennameklein) {
      			setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".Logo_"+(index+1), (x+1));
      		}
      	}
      	
      	}
       
      log("Ende Spritvergleich");
      });
      

      javascript - ioBroker (7).png

      AlCalzoneA Offline
      AlCalzoneA Offline
      AlCalzone
      Developer
      wrote on last edited by
      #6

      @Negalein sagte in Script geht zeitweise auf Pause:

      dass es sich in unregelmäßigen Abständen immer wieder auf Pause stellt.

      Entsprechenden Code sehe ich hier nicht. Setzt du ggf. in einem anderen Skript scriptEnabled für dieses Skript? Sollte man übrigens nicht tun.

      @Negalein sagte in Script geht zeitweise auf Pause:

      Diesen Cron '*/5 * * * *' hab ich mit dem Cronbutton hinzugefügt, damit das Script alle 5 Minuten neu startet.

      So geht das nicht. Den String kannst du in einem schedule(...) verwenden, um die dazugehörige Funktion alle 5 Minuten auszuführen. Da du aber per on(...) einen Datenpunkt überwachst, wäre es sowieso unsinnig das Skript ständig neu zu starten.

      Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

      NegaleinN 1 Reply Last reply
      0
      • AlCalzoneA AlCalzone

        @Negalein sagte in Script geht zeitweise auf Pause:

        dass es sich in unregelmäßigen Abständen immer wieder auf Pause stellt.

        Entsprechenden Code sehe ich hier nicht. Setzt du ggf. in einem anderen Skript scriptEnabled für dieses Skript? Sollte man übrigens nicht tun.

        @Negalein sagte in Script geht zeitweise auf Pause:

        Diesen Cron '*/5 * * * *' hab ich mit dem Cronbutton hinzugefügt, damit das Script alle 5 Minuten neu startet.

        So geht das nicht. Den String kannst du in einem schedule(...) verwenden, um die dazugehörige Funktion alle 5 Minuten auszuführen. Da du aber per on(...) einen Datenpunkt überwachst, wäre es sowieso unsinnig das Skript ständig neu zu starten.

        NegaleinN Offline
        NegaleinN Offline
        Negalein
        Global Moderator
        wrote on last edited by
        #7

        @AlCalzone sagte in Script geht zeitweise auf Pause:

        Setzt du ggf. in einem anderen Skript scriptEnabled für dieses Skript?

        Nein

        Da du aber per on(...) einen Datenpunkt überwachst, wäre es sowieso unsinnig das Skript ständig neu zu starten.

        Ich wollte das machen, da das Script zeitweise auf Pause geht.

        ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
        ° Node.js Fixer ---> iob nodejs-update
        ° Fixer ---> iob fix

        1 Reply Last reply
        0
        • htreckslerH htrecksler

          Was genau soll denn der "cron" am Anfang des Scriptes tun?

          Derzeit ist es bei dem Script so, das der "Hauptcode" immer dann ausgeführt wird wenn sich der Datenpunkt

          parser.0.Spritpreisrechner
          

          ändert.

          Ich vermute, Du möchtest erreichen, das das Script selber gestartet wird weil es auf Pause steht (warum auch immer)
          Aber das das Script ja auf "Pause" steht nützt dir der "cron-Job" oder "Schedule" nichts. Das Script steht ja auf Pause, da wird nichts ausgeführt.

          Du brauchst also ein Ereignis/Script von außerhalb was wiederum dieses Script neu Startet.
          Viel interessanter wäre aber warum das Script pausiert. Ich habe das Script nur überflogen, aber irgendetwas wird da nicht so ganz richtig sein.
          Zu einen versucht es jedes Mal Datenpunkte anzulegen. Das ist zwar vielleicht nicht direkt schädlich, aber komplett unnötig.
          Zum anderen ist die "Einrückung etwas sehr durcheinander. Damit ist das Script schwer zu lesen und zu analysieren

          NegaleinN Offline
          NegaleinN Offline
          Negalein
          Global Moderator
          wrote on last edited by
          #8

          @htrecksler sagte in Script geht zeitweise auf Pause:

          Ich vermute, Du möchtest erreichen, das das Script selber gestartet wird weil es auf Pause steht

          Genau

          Aber das das Script ja auf "Pause" steht nützt dir der "cron-Job" oder "Schedule" nichts. Das Script steht ja auf Pause, da wird nichts ausgeführt.

          Ok, ist dann natürlich doof

          Du brauchst also ein Ereignis/Script von außerhalb was wiederum dieses Script neu Startet.

          wie könnte das aussehen? Bin ein JS-DAU

          Viel interessanter wäre aber warum das Script pausiert. Ich habe das Script nur überflogen, aber irgendetwas wird da nicht so ganz richtig sein.

          Ich kann dazu leider nichts sagen. Hab es nur kopiert.

          ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
          ° Node.js Fixer ---> iob nodejs-update
          ° Fixer ---> iob fix

          1 Reply Last reply
          0
          • NegaleinN Offline
            NegaleinN Offline
            Negalein
            Global Moderator
            wrote on last edited by Negalein
            #9

            gerade diesen Error im Log gefunden.
            Ist eventuell hilfreich.

            2020-01-07 12:00:09.310  - info: javascript.0 (593) script.js.common.Spritpreisrechner: Start Spritvergleich
            2020-01-07 12:00:09.317  - error: javascript.0 (593) Error in callback: TypeError: Cannot read property 'amount' of undefined
            2020-01-07 12:00:09.318  - error: javascript.0 (593)     at Object.<anonymous> (script.js.common.Spritpreisrechner:52:107)
            2020-01-07 12:00:09.318  - error: javascript.0 (593)     at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1101:38)
            2020-01-07 12:00:09.318  - error: javascript.0 (593)     at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:439:25)
            2020-01-07 12:00:09.318  - error: javascript.0 (593)     at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:4745:37)
            2020-01-07 12:00:09.318  - error: javascript.0 (593)     at Immediate.setImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:226:41)
            2020-01-07 12:00:09.318  - error: javascript.0 (593)     at runCallback (timers.js:705:18)
            2020-01-07 12:00:09.318  - error: javascript.0 (593)     at tryOnImmediate (timers.js:676:5)
            2020-01-07 12:00:09.318  - error: javascript.0 (593)     at processImmediate (timers.js:658:5)
            
            2020-01-06 12:00:07.441  - info: javascript.0 (593) script.js.common.Spritpreisrechner: Start Spritvergleich
            2020-01-06 12:00:07.456  - error: javascript.0 (593) Error in callback: TypeError: Cannot read property 'amount' of undefined
            2020-01-06 12:00:07.457  - error: javascript.0 (593)     at Object.<anonymous> (script.js.common.Spritpreisrechner:52:107)
            2020-01-06 12:00:07.458  - error: javascript.0 (593)     at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1101:38)
            2020-01-06 12:00:07.459  - error: javascript.0 (593)     at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:439:25)
            2020-01-06 12:00:07.459  - error: javascript.0 (593)     at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:4745:37)
            2020-01-06 12:00:07.459  - error: javascript.0 (593)     at Immediate.setImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:226:41)
            2020-01-06 12:00:07.460  - error: javascript.0 (593)     at runCallback (timers.js:705:18)
            2020-01-06 12:00:07.460  - error: javascript.0 (593)     at tryOnImmediate (timers.js:676:5)
            2020-01-06 12:00:07.460  - error: javascript.0 (593)     at processImmediate (timers.js:658:5)
            
            2020-01-05 12:00:08.658  - info: javascript.0 (7579) script.js.common.Spritpreisrechner: Start Spritvergleich
            2020-01-05 12:00:08.669  - error: javascript.0 (7579) Error in callback: TypeError: Cannot read property 'amount' of undefined
            2020-01-05 12:00:08.669  - error: javascript.0 (7579)     at Object.<anonymous> (script.js.common.Spritpreisrechner:52:107)
            2020-01-05 12:00:08.670  - error: javascript.0 (7579)     at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1101:38)
            2020-01-05 12:00:08.670  - error: javascript.0 (7579)     at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:439:25)
            2020-01-05 12:00:08.670  - error: javascript.0 (7579)     at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:4745:37)
            2020-01-05 12:00:08.670  - error: javascript.0 (7579)     at Immediate.setImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:226:41)
            2020-01-05 12:00:08.670  - error: javascript.0 (7579)     at runCallback (timers.js:705:18)
            2020-01-05 12:00:08.670  - error: javascript.0 (7579)     at tryOnImmediate (timers.js:676:5)
            2020-01-05 12:00:08.670  - error: javascript.0 (7579)     at processImmediate (timers.js:658:5)
            

            Dieser Fehler tritt täglich zur Mittagszeit auf.

            ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
            ° Node.js Fixer ---> iob nodejs-update
            ° Fixer ---> iob fix

            AlCalzoneA 1 Reply Last reply
            0
            • NegaleinN Negalein

              gerade diesen Error im Log gefunden.
              Ist eventuell hilfreich.

              2020-01-07 12:00:09.310  - info: javascript.0 (593) script.js.common.Spritpreisrechner: Start Spritvergleich
              2020-01-07 12:00:09.317  - error: javascript.0 (593) Error in callback: TypeError: Cannot read property 'amount' of undefined
              2020-01-07 12:00:09.318  - error: javascript.0 (593)     at Object.<anonymous> (script.js.common.Spritpreisrechner:52:107)
              2020-01-07 12:00:09.318  - error: javascript.0 (593)     at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1101:38)
              2020-01-07 12:00:09.318  - error: javascript.0 (593)     at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:439:25)
              2020-01-07 12:00:09.318  - error: javascript.0 (593)     at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:4745:37)
              2020-01-07 12:00:09.318  - error: javascript.0 (593)     at Immediate.setImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:226:41)
              2020-01-07 12:00:09.318  - error: javascript.0 (593)     at runCallback (timers.js:705:18)
              2020-01-07 12:00:09.318  - error: javascript.0 (593)     at tryOnImmediate (timers.js:676:5)
              2020-01-07 12:00:09.318  - error: javascript.0 (593)     at processImmediate (timers.js:658:5)
              
              2020-01-06 12:00:07.441  - info: javascript.0 (593) script.js.common.Spritpreisrechner: Start Spritvergleich
              2020-01-06 12:00:07.456  - error: javascript.0 (593) Error in callback: TypeError: Cannot read property 'amount' of undefined
              2020-01-06 12:00:07.457  - error: javascript.0 (593)     at Object.<anonymous> (script.js.common.Spritpreisrechner:52:107)
              2020-01-06 12:00:07.458  - error: javascript.0 (593)     at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1101:38)
              2020-01-06 12:00:07.459  - error: javascript.0 (593)     at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:439:25)
              2020-01-06 12:00:07.459  - error: javascript.0 (593)     at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:4745:37)
              2020-01-06 12:00:07.459  - error: javascript.0 (593)     at Immediate.setImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:226:41)
              2020-01-06 12:00:07.460  - error: javascript.0 (593)     at runCallback (timers.js:705:18)
              2020-01-06 12:00:07.460  - error: javascript.0 (593)     at tryOnImmediate (timers.js:676:5)
              2020-01-06 12:00:07.460  - error: javascript.0 (593)     at processImmediate (timers.js:658:5)
              
              2020-01-05 12:00:08.658  - info: javascript.0 (7579) script.js.common.Spritpreisrechner: Start Spritvergleich
              2020-01-05 12:00:08.669  - error: javascript.0 (7579) Error in callback: TypeError: Cannot read property 'amount' of undefined
              2020-01-05 12:00:08.669  - error: javascript.0 (7579)     at Object.<anonymous> (script.js.common.Spritpreisrechner:52:107)
              2020-01-05 12:00:08.670  - error: javascript.0 (7579)     at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1101:38)
              2020-01-05 12:00:08.670  - error: javascript.0 (7579)     at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:439:25)
              2020-01-05 12:00:08.670  - error: javascript.0 (7579)     at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:4745:37)
              2020-01-05 12:00:08.670  - error: javascript.0 (7579)     at Immediate.setImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:226:41)
              2020-01-05 12:00:08.670  - error: javascript.0 (7579)     at runCallback (timers.js:705:18)
              2020-01-05 12:00:08.670  - error: javascript.0 (7579)     at tryOnImmediate (timers.js:676:5)
              2020-01-05 12:00:08.670  - error: javascript.0 (7579)     at processImmediate (timers.js:658:5)
              

              Dieser Fehler tritt täglich zur Mittagszeit auf.

              AlCalzoneA Offline
              AlCalzoneA Offline
              AlCalzone
              Developer
              wrote on last edited by AlCalzone
              #10

              @Negalein Dann hat eine der Stationen gerade keine Preisinformation (Zeile 52/53). Die sollte das Skript dann bestenfalls ignorieren.
              Dazu nach Zeile 18 folgendes einfügen:

              gasStation = gasStation.filter(g => g.prices.length > 0);
              

              Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

              NegaleinN 1 Reply Last reply
              0
              • AlCalzoneA AlCalzone

                @Negalein Dann hat eine der Stationen gerade keine Preisinformation (Zeile 52/53). Die sollte das Skript dann bestenfalls ignorieren.
                Dazu nach Zeile 18 folgendes einfügen:

                gasStation = gasStation.filter(g => g.prices.length > 0);
                
                NegaleinN Offline
                NegaleinN Offline
                Negalein
                Global Moderator
                wrote on last edited by
                #11

                @AlCalzone sagte in Script geht zeitweise auf Pause:

                Dann hat eine der Stationen gerade keine Preisinformation (Zeile 52/53)
                Füge in Zeile 41 folgendes ein:

                Danke

                Werde es beobachten.

                ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                ° Node.js Fixer ---> iob nodejs-update
                ° Fixer ---> iob fix

                AlCalzoneA 1 Reply Last reply
                0
                • NegaleinN Negalein

                  @AlCalzone sagte in Script geht zeitweise auf Pause:

                  Dann hat eine der Stationen gerade keine Preisinformation (Zeile 52/53)
                  Füge in Zeile 41 folgendes ein:

                  Danke

                  Werde es beobachten.

                  AlCalzoneA Offline
                  AlCalzoneA Offline
                  AlCalzone
                  Developer
                  wrote on last edited by
                  #12

                  @Negalein Hab nochmal bearbeitet, bitte beachten

                  Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                  NegaleinN 1 Reply Last reply
                  0
                  • AlCalzoneA AlCalzone

                    @Negalein Hab nochmal bearbeitet, bitte beachten

                    NegaleinN Offline
                    NegaleinN Offline
                    Negalein
                    Global Moderator
                    wrote on last edited by Negalein
                    #13

                    @AlCalzone sagte in Script geht zeitweise auf Pause:

                    Hab nochmal bearbeitet, bitte beachten

                    Danke

                    Also

                    	if (gasStation[index].prices.length < 1) continue;
                    

                    wieder raus
                    und nach Zeile 18

                     gasStation = gasStation.filter(g => g.prices.length > 0);
                    

                    rein.

                    Sieht dann so aus?

                     var gasStation = JSON.parse(obj.state.val);
                        gasStation = gasStation.filter(g => g.prices.length > 0);
                        if (gasStation.length === 0) return;
                    

                    ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                    ° Node.js Fixer ---> iob nodejs-update
                    ° Fixer ---> iob fix

                    AlCalzoneA 1 Reply Last reply
                    0
                    • NegaleinN Negalein

                      @AlCalzone sagte in Script geht zeitweise auf Pause:

                      Hab nochmal bearbeitet, bitte beachten

                      Danke

                      Also

                      	if (gasStation[index].prices.length < 1) continue;
                      

                      wieder raus
                      und nach Zeile 18

                       gasStation = gasStation.filter(g => g.prices.length > 0);
                      

                      rein.

                      Sieht dann so aus?

                       var gasStation = JSON.parse(obj.state.val);
                          gasStation = gasStation.filter(g => g.prices.length > 0);
                          if (gasStation.length === 0) return;
                      
                      AlCalzoneA Offline
                      AlCalzoneA Offline
                      AlCalzone
                      Developer
                      wrote on last edited by
                      #14

                      @Negalein Jup! Allerdings bitte selbst testen, hab ich von unterwegs getippselt.

                      Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                      NegaleinN 2 Replies Last reply
                      0
                      • AlCalzoneA AlCalzone

                        @Negalein Jup! Allerdings bitte selbst testen, hab ich von unterwegs getippselt.

                        NegaleinN Offline
                        NegaleinN Offline
                        Negalein
                        Global Moderator
                        wrote on last edited by
                        #15

                        @AlCalzone sagte in Script geht zeitweise auf Pause:

                        Allerdings bitte selbst testen, hab ich von unterwegs getippselt.

                        werd es mal ein paar Tage beobachten und mich wieder melden.

                        Danke erstmal!

                        ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                        ° Node.js Fixer ---> iob nodejs-update
                        ° Fixer ---> iob fix

                        1 Reply Last reply
                        0
                        • AlCalzoneA AlCalzone

                          @Negalein Jup! Allerdings bitte selbst testen, hab ich von unterwegs getippselt.

                          NegaleinN Offline
                          NegaleinN Offline
                          Negalein
                          Global Moderator
                          wrote on last edited by
                          #16

                          @AlCalzone sagte in Script geht zeitweise auf Pause:

                          Allerdings bitte selbst testen, hab ich von unterwegs getippselt.

                          kurze Rückmeldung!

                          Bis jetzt ist das Script einwandfrei durchgelaufen!

                          Danke nochmals

                          ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                          ° Node.js Fixer ---> iob nodejs-update
                          ° Fixer ---> iob fix

                          1 Reply Last reply
                          0
                          • NegaleinN Offline
                            NegaleinN Offline
                            Negalein
                            Global Moderator
                            wrote on last edited by
                            #17

                            @AlCalzone

                            gestern ist das Script wieder in Pause gegangen.
                            Diesmal mit einem anderen Fehler (filter is not a function).
                            Das ganze ist von 03:26 bis 06:54 (hab nicht alles angehänt, da immer die gleiche Meldung) aufgetreten.

                            Kann man das irgendwie beheben? Oder liegt es an der zu parsenden Seite?

                            Falls es nicht zu beheben/umgehen ist, gibt es eine Möglichkeit ein Script zu überwachen, damit ich zumindest eine Benachrichtigung auf Telegram/Alexa bekomme?

                            Danke dir

                            2020-01-22 03:26:02.812  - info: javascript.0 (22538) script.js.common.Spritpreisrechner: Start Spritvergleich
                            2020-01-22 03:26:02.814  - error: javascript.0 (22538) Error in callback: TypeError: gasStation.filter is not a function
                            2020-01-22 03:26:02.814  - error: javascript.0 (22538)     at Object.<anonymous> (script.js.common.Spritpreisrechner:19:29)
                            2020-01-22 03:26:02.814  - error: javascript.0 (22538)     at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1101:38)
                            2020-01-22 03:26:02.814  - error: javascript.0 (22538)     at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:439:25)
                            2020-01-22 03:26:02.814  - error: javascript.0 (22538)     at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:4745:37)
                            2020-01-22 03:26:02.814  - error: javascript.0 (22538)     at Immediate.setImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:226:41)
                            2020-01-22 03:26:02.815  - error: javascript.0 (22538)     at runCallback (timers.js:705:18)
                            2020-01-22 03:26:02.815  - error: javascript.0 (22538)     at tryOnImmediate (timers.js:676:5)
                            2020-01-22 03:26:02.815  - error: javascript.0 (22538)     at processImmediate (timers.js:658:5)
                            2020-01-22 03:26:52.805  - info: javascript.0 (22538) script.js.common.Spritpreisrechner: Start Spritvergleich
                            2020-01-22 03:26:52.806  - error: javascript.0 (22538) Error in callback: TypeError: gasStation.filter is not a function
                            2020-01-22 03:26:52.807  - error: javascript.0 (22538)     at Object.<anonymous> (script.js.common.Spritpreisrechner:19:29)
                            2020-01-22 03:26:52.807  - error: javascript.0 (22538)     at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1101:38)
                            2020-01-22 03:26:52.807  - error: javascript.0 (22538)     at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:439:25)
                            2020-01-22 03:26:52.807  - error: javascript.0 (22538)     at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:4745:37)
                            2020-01-22 03:26:52.807  - error: javascript.0 (22538)     at Immediate.setImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:226:41)
                            2020-01-22 03:26:52.807  - error: javascript.0 (22538)     at runCallback (timers.js:705:18)
                            2020-01-22 03:26:52.807  - error: javascript.0 (22538)     at tryOnImmediate (timers.js:676:5)
                            2020-01-22 03:26:52.807  - error: javascript.0 (22538)     at processImmediate (timers.js:658:5)
                            2020-01-22 03:27:02.804  - info: javascript.0 (22538) script.js.common.Spritpreisrechner: Start Spritvergleich
                            2020-01-22 03:27:02.805  - error: javascript.0 (22538) Error in callback: TypeError: gasStation.filter is not a function
                            2020-01-22 03:27:02.805  - error: javascript.0 (22538)     at Object.<anonymous> (script.js.common.Spritpreisrechner:19:29)
                            2020-01-22 03:27:02.805  - error: javascript.0 (22538)     at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1101:38)
                            2020-01-22 03:27:02.806  - error: javascript.0 (22538)     at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:439:25)
                            2020-01-22 03:27:02.806  - error: javascript.0 (22538)     at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:4745:37)
                            2020-01-22 03:27:02.806  - error: javascript.0 (22538)     at Immediate.setImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:226:41)
                            2020-01-22 03:27:02.806  - error: javascript.0 (22538)     at runCallback (timers.js:705:18)
                            2020-01-22 03:27:02.806  - error: javascript.0 (22538)     at tryOnImmediate (timers.js:676:5)
                            2020-01-22 03:27:02.806  - error: javascript.0 (22538)     at processImmediate (timers.js:658:5)
                            2020-01-22 03:27:32.803  - info: javascript.0 (22538) script.js.common.Spritpreisrechner: Start Spritvergleich
                            2020-01-22 03:27:32.804  - error: javascript.0 (22538) Error in callback: TypeError: gasStation.filter is not a function
                            2020-01-22 03:27:32.805  - error: javascript.0 (22538)     at Object.<anonymous> (script.js.common.Spritpreisrechner:19:29)
                            2020-01-22 03:27:32.805  - error: javascript.0 (22538)     at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1101:38)
                            2020-01-22 03:27:32.808  - error: javascript.0 (22538)     at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:439:25)
                            2020-01-22 03:27:32.808  - error: javascript.0 (22538)     at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:4745:37)
                            2020-01-22 03:27:32.808  - error: javascript.0 (22538)     at Immediate.setImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:226:41)
                            2020-01-22 03:27:32.808  - error: javascript.0 (22538)     at runCallback (timers.js:705:18)
                            2020-01-22 03:27:32.808  - error: javascript.0 (22538)     at tryOnImmediate (timers.js:676:5)
                            2020-01-22 03:27:32.809  - error: javascript.0 (22538)     at processImmediate (timers.js:658:5)
                            

                            ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                            ° Node.js Fixer ---> iob nodejs-update
                            ° Fixer ---> iob fix

                            sigi234S T AlCalzoneA 3 Replies Last reply
                            0
                            • NegaleinN Negalein

                              @AlCalzone

                              gestern ist das Script wieder in Pause gegangen.
                              Diesmal mit einem anderen Fehler (filter is not a function).
                              Das ganze ist von 03:26 bis 06:54 (hab nicht alles angehänt, da immer die gleiche Meldung) aufgetreten.

                              Kann man das irgendwie beheben? Oder liegt es an der zu parsenden Seite?

                              Falls es nicht zu beheben/umgehen ist, gibt es eine Möglichkeit ein Script zu überwachen, damit ich zumindest eine Benachrichtigung auf Telegram/Alexa bekomme?

                              Danke dir

                              2020-01-22 03:26:02.812  - info: javascript.0 (22538) script.js.common.Spritpreisrechner: Start Spritvergleich
                              2020-01-22 03:26:02.814  - error: javascript.0 (22538) Error in callback: TypeError: gasStation.filter is not a function
                              2020-01-22 03:26:02.814  - error: javascript.0 (22538)     at Object.<anonymous> (script.js.common.Spritpreisrechner:19:29)
                              2020-01-22 03:26:02.814  - error: javascript.0 (22538)     at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1101:38)
                              2020-01-22 03:26:02.814  - error: javascript.0 (22538)     at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:439:25)
                              2020-01-22 03:26:02.814  - error: javascript.0 (22538)     at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:4745:37)
                              2020-01-22 03:26:02.814  - error: javascript.0 (22538)     at Immediate.setImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:226:41)
                              2020-01-22 03:26:02.815  - error: javascript.0 (22538)     at runCallback (timers.js:705:18)
                              2020-01-22 03:26:02.815  - error: javascript.0 (22538)     at tryOnImmediate (timers.js:676:5)
                              2020-01-22 03:26:02.815  - error: javascript.0 (22538)     at processImmediate (timers.js:658:5)
                              2020-01-22 03:26:52.805  - info: javascript.0 (22538) script.js.common.Spritpreisrechner: Start Spritvergleich
                              2020-01-22 03:26:52.806  - error: javascript.0 (22538) Error in callback: TypeError: gasStation.filter is not a function
                              2020-01-22 03:26:52.807  - error: javascript.0 (22538)     at Object.<anonymous> (script.js.common.Spritpreisrechner:19:29)
                              2020-01-22 03:26:52.807  - error: javascript.0 (22538)     at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1101:38)
                              2020-01-22 03:26:52.807  - error: javascript.0 (22538)     at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:439:25)
                              2020-01-22 03:26:52.807  - error: javascript.0 (22538)     at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:4745:37)
                              2020-01-22 03:26:52.807  - error: javascript.0 (22538)     at Immediate.setImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:226:41)
                              2020-01-22 03:26:52.807  - error: javascript.0 (22538)     at runCallback (timers.js:705:18)
                              2020-01-22 03:26:52.807  - error: javascript.0 (22538)     at tryOnImmediate (timers.js:676:5)
                              2020-01-22 03:26:52.807  - error: javascript.0 (22538)     at processImmediate (timers.js:658:5)
                              2020-01-22 03:27:02.804  - info: javascript.0 (22538) script.js.common.Spritpreisrechner: Start Spritvergleich
                              2020-01-22 03:27:02.805  - error: javascript.0 (22538) Error in callback: TypeError: gasStation.filter is not a function
                              2020-01-22 03:27:02.805  - error: javascript.0 (22538)     at Object.<anonymous> (script.js.common.Spritpreisrechner:19:29)
                              2020-01-22 03:27:02.805  - error: javascript.0 (22538)     at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1101:38)
                              2020-01-22 03:27:02.806  - error: javascript.0 (22538)     at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:439:25)
                              2020-01-22 03:27:02.806  - error: javascript.0 (22538)     at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:4745:37)
                              2020-01-22 03:27:02.806  - error: javascript.0 (22538)     at Immediate.setImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:226:41)
                              2020-01-22 03:27:02.806  - error: javascript.0 (22538)     at runCallback (timers.js:705:18)
                              2020-01-22 03:27:02.806  - error: javascript.0 (22538)     at tryOnImmediate (timers.js:676:5)
                              2020-01-22 03:27:02.806  - error: javascript.0 (22538)     at processImmediate (timers.js:658:5)
                              2020-01-22 03:27:32.803  - info: javascript.0 (22538) script.js.common.Spritpreisrechner: Start Spritvergleich
                              2020-01-22 03:27:32.804  - error: javascript.0 (22538) Error in callback: TypeError: gasStation.filter is not a function
                              2020-01-22 03:27:32.805  - error: javascript.0 (22538)     at Object.<anonymous> (script.js.common.Spritpreisrechner:19:29)
                              2020-01-22 03:27:32.805  - error: javascript.0 (22538)     at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1101:38)
                              2020-01-22 03:27:32.808  - error: javascript.0 (22538)     at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:439:25)
                              2020-01-22 03:27:32.808  - error: javascript.0 (22538)     at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:4745:37)
                              2020-01-22 03:27:32.808  - error: javascript.0 (22538)     at Immediate.setImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:226:41)
                              2020-01-22 03:27:32.808  - error: javascript.0 (22538)     at runCallback (timers.js:705:18)
                              2020-01-22 03:27:32.808  - error: javascript.0 (22538)     at tryOnImmediate (timers.js:676:5)
                              2020-01-22 03:27:32.809  - error: javascript.0 (22538)     at processImmediate (timers.js:658:5)
                              

                              sigi234S Online
                              sigi234S Online
                              sigi234
                              Forum Testing Most Active
                              wrote on last edited by
                              #18

                              @Negalein sagte in Script geht zeitweise auf Pause:

                              gestern ist das Script wieder in Pause gegangen.

                              Jupp, hatte ich Heute auch.

                              Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                              Immer Daten sichern!

                              1 Reply Last reply
                              0
                              • NegaleinN Negalein

                                @AlCalzone

                                gestern ist das Script wieder in Pause gegangen.
                                Diesmal mit einem anderen Fehler (filter is not a function).
                                Das ganze ist von 03:26 bis 06:54 (hab nicht alles angehänt, da immer die gleiche Meldung) aufgetreten.

                                Kann man das irgendwie beheben? Oder liegt es an der zu parsenden Seite?

                                Falls es nicht zu beheben/umgehen ist, gibt es eine Möglichkeit ein Script zu überwachen, damit ich zumindest eine Benachrichtigung auf Telegram/Alexa bekomme?

                                Danke dir

                                2020-01-22 03:26:02.812  - info: javascript.0 (22538) script.js.common.Spritpreisrechner: Start Spritvergleich
                                2020-01-22 03:26:02.814  - error: javascript.0 (22538) Error in callback: TypeError: gasStation.filter is not a function
                                2020-01-22 03:26:02.814  - error: javascript.0 (22538)     at Object.<anonymous> (script.js.common.Spritpreisrechner:19:29)
                                2020-01-22 03:26:02.814  - error: javascript.0 (22538)     at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1101:38)
                                2020-01-22 03:26:02.814  - error: javascript.0 (22538)     at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:439:25)
                                2020-01-22 03:26:02.814  - error: javascript.0 (22538)     at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:4745:37)
                                2020-01-22 03:26:02.814  - error: javascript.0 (22538)     at Immediate.setImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:226:41)
                                2020-01-22 03:26:02.815  - error: javascript.0 (22538)     at runCallback (timers.js:705:18)
                                2020-01-22 03:26:02.815  - error: javascript.0 (22538)     at tryOnImmediate (timers.js:676:5)
                                2020-01-22 03:26:02.815  - error: javascript.0 (22538)     at processImmediate (timers.js:658:5)
                                2020-01-22 03:26:52.805  - info: javascript.0 (22538) script.js.common.Spritpreisrechner: Start Spritvergleich
                                2020-01-22 03:26:52.806  - error: javascript.0 (22538) Error in callback: TypeError: gasStation.filter is not a function
                                2020-01-22 03:26:52.807  - error: javascript.0 (22538)     at Object.<anonymous> (script.js.common.Spritpreisrechner:19:29)
                                2020-01-22 03:26:52.807  - error: javascript.0 (22538)     at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1101:38)
                                2020-01-22 03:26:52.807  - error: javascript.0 (22538)     at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:439:25)
                                2020-01-22 03:26:52.807  - error: javascript.0 (22538)     at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:4745:37)
                                2020-01-22 03:26:52.807  - error: javascript.0 (22538)     at Immediate.setImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:226:41)
                                2020-01-22 03:26:52.807  - error: javascript.0 (22538)     at runCallback (timers.js:705:18)
                                2020-01-22 03:26:52.807  - error: javascript.0 (22538)     at tryOnImmediate (timers.js:676:5)
                                2020-01-22 03:26:52.807  - error: javascript.0 (22538)     at processImmediate (timers.js:658:5)
                                2020-01-22 03:27:02.804  - info: javascript.0 (22538) script.js.common.Spritpreisrechner: Start Spritvergleich
                                2020-01-22 03:27:02.805  - error: javascript.0 (22538) Error in callback: TypeError: gasStation.filter is not a function
                                2020-01-22 03:27:02.805  - error: javascript.0 (22538)     at Object.<anonymous> (script.js.common.Spritpreisrechner:19:29)
                                2020-01-22 03:27:02.805  - error: javascript.0 (22538)     at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1101:38)
                                2020-01-22 03:27:02.806  - error: javascript.0 (22538)     at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:439:25)
                                2020-01-22 03:27:02.806  - error: javascript.0 (22538)     at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:4745:37)
                                2020-01-22 03:27:02.806  - error: javascript.0 (22538)     at Immediate.setImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:226:41)
                                2020-01-22 03:27:02.806  - error: javascript.0 (22538)     at runCallback (timers.js:705:18)
                                2020-01-22 03:27:02.806  - error: javascript.0 (22538)     at tryOnImmediate (timers.js:676:5)
                                2020-01-22 03:27:02.806  - error: javascript.0 (22538)     at processImmediate (timers.js:658:5)
                                2020-01-22 03:27:32.803  - info: javascript.0 (22538) script.js.common.Spritpreisrechner: Start Spritvergleich
                                2020-01-22 03:27:32.804  - error: javascript.0 (22538) Error in callback: TypeError: gasStation.filter is not a function
                                2020-01-22 03:27:32.805  - error: javascript.0 (22538)     at Object.<anonymous> (script.js.common.Spritpreisrechner:19:29)
                                2020-01-22 03:27:32.805  - error: javascript.0 (22538)     at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1101:38)
                                2020-01-22 03:27:32.808  - error: javascript.0 (22538)     at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:439:25)
                                2020-01-22 03:27:32.808  - error: javascript.0 (22538)     at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:4745:37)
                                2020-01-22 03:27:32.808  - error: javascript.0 (22538)     at Immediate.setImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:226:41)
                                2020-01-22 03:27:32.808  - error: javascript.0 (22538)     at runCallback (timers.js:705:18)
                                2020-01-22 03:27:32.808  - error: javascript.0 (22538)     at tryOnImmediate (timers.js:676:5)
                                2020-01-22 03:27:32.809  - error: javascript.0 (22538)     at processImmediate (timers.js:658:5)
                                

                                T Do not disturb
                                T Do not disturb
                                ticaki
                                wrote on last edited by ticaki
                                #19

                                @Negalein

                                if (!isScriptActive("Test")) {
                                    runScript("Test");
                                // oder sende msg.
                                }
                                

                                Hoffe das hilft.

                                Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                Spenden

                                NegaleinN 1 Reply Last reply
                                0
                                • T ticaki

                                  @Negalein

                                  if (!isScriptActive("Test")) {
                                      runScript("Test");
                                  // oder sende msg.
                                  }
                                  

                                  Hoffe das hilft.

                                  NegaleinN Offline
                                  NegaleinN Offline
                                  Negalein
                                  Global Moderator
                                  wrote on last edited by
                                  #20

                                  @ticaki sagte in Script geht zeitweise auf Pause:

                                  Hoffe das hilft.

                                  Danke

                                  Das wird als eigenes Script angelegt?

                                  ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                                  ° Node.js Fixer ---> iob nodejs-update
                                  ° Fixer ---> iob fix

                                  T 1 Reply Last reply
                                  0
                                  • NegaleinN Negalein

                                    @ticaki sagte in Script geht zeitweise auf Pause:

                                    Hoffe das hilft.

                                    Danke

                                    Das wird als eigenes Script angelegt?

                                    T Do not disturb
                                    T Do not disturb
                                    ticaki
                                    wrote on last edited by ticaki
                                    #21

                                    @Negalein

                                    Ja. Weiß nur nicht wie das Trennzeichen für Unterordner aussieht. :)

                                    EDIT: must du alle x Zeiteinheiten per Cron ausführen lassen.

                                    var gasStation = JSON.parse(obj.state.val); 
                                    if (gasStation.length === 0) return;
                                    gasStation = gasStation.filter(g => g.prices.length > 0);
                                    

                                    sieht das in deinem Script so aus?

                                    Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                    Spenden

                                    NegaleinN 1 Reply Last reply
                                    0
                                    • T ticaki

                                      @Negalein

                                      Ja. Weiß nur nicht wie das Trennzeichen für Unterordner aussieht. :)

                                      EDIT: must du alle x Zeiteinheiten per Cron ausführen lassen.

                                      var gasStation = JSON.parse(obj.state.val); 
                                      if (gasStation.length === 0) return;
                                      gasStation = gasStation.filter(g => g.prices.length > 0);
                                      

                                      sieht das in deinem Script so aus?

                                      NegaleinN Offline
                                      NegaleinN Offline
                                      Negalein
                                      Global Moderator
                                      wrote on last edited by
                                      #22

                                      @ticaki sagte in Script geht zeitweise auf Pause:

                                      sieht das in deinem Script so aus?

                                      So schaut das Script aus

                                      //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
                                      //  "Spritpreise_AT v.0.5"                                                                                                              //
                                      //  e-control Spritpreise                                                                                                               //    
                                      //  ursprüngl. Script von steinejo_io vom                                                                                               //
                                      //                                                                                                                                      //
                                      //  Zwingend erforderlich sind der Parser Adapter und die URL aus der API. Links und Hilfe zum Erstellemn findet ihr im Folgenden Lnk:  //
                                      //  https://forum.iobroker.net/topic/20314/skripten-des-e-control-spritpreisrechners                                                    //
                                      //  Das manuelle Anlegen von Daenpunkten ist nicht mehr notwendig. erledigt das Script beim ersten Aufruf.                              //
                                      //  Auf das "E" Zeichen habe ich verzichtet, da es in VIS genz einfach an der jeweils gewünschten Stelle produzierbar ist.              //
                                      //                                                                                                                                      //
                                      //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
                                       
                                      on({id: "parser.0.Spritpreisrechner"/*Spritpreisrechner*/, change: 'any'}, function(obj)
                                      {
                                      log("Start Spritvergleich");
                                       
                                          var gasStation = JSON.parse(obj.state.val);
                                          gasStation = gasStation.filter(g => g.prices.length > 0);
                                          if (gasStation.length === 0) return;
                                          //Aral=1, eni=2, Shell=3, OMV=4, avanti=5, bp=6, JET=7, Turmöl=8, Lagerhaus=9, AVIA=10, A1=11, Diskont=12, IQ=13
                                          var arrMarke = ['Aral', 'eni', 'Shell', 'OMV', 'avanti', 'BP', 'JET', 'Turmöl', 'Lagerhaus', 'AVIA', 'A1', 'Diskont', 'DISKONT', 'IQ', 'SB-Tankstelle', 'bp', 'Land', 'Bp'];
                                      	var i = 0;
                                          for (var i = 1; i <= 5; i++) {
                                              // console.log(i);
                                              // console.log("javascript.0.Sprit_AT.name_"+i);
                                              createState("javascript.0.Sprit_AT.Treffer_"+i+".Name_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
                                              createState("javascript.0.Sprit_AT.Treffer_"+i+".Preis_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
                                              createState("javascript.0.Sprit_AT.Treffer_"+i+".PreisP_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
                                      		createState("javascript.0.Sprit_AT.Treffer_"+i+".Strasse_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
                                              createState("javascript.0.Sprit_AT.Treffer_"+i+".PLZ_Ort_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
                                              createState("javascript.0.Sprit_AT.Treffer_"+i+".Logo_"+i, {type: "number", name: "Logo "+i, read: true, write: true});
                                      		createState("javascript.0.Sprit_AT.Treffer_"+i+".Latitude_"+i, {type: "number", name: "Latitude "+i, read: true, write: true});
                                      		createState("javascript.0.Sprit_AT.Treffer_"+i+".Longitude_"+i, {type: "number", name: "Longitude "+i, read: true, write: true});
                                      		createState("javascript.0.Sprit_AT.Treffer_"+i+".offen_"+i, {type: "boolean", name: "offen "+i, read: true, write: true});
                                      	}
                                      	
                                       
                                          var index = 0;
                                          //for (index = 0; index < gasStation.length; ++index) {
                                          for (index = 0; index <= 4; ++index) {
                                      	if (gasStation[index].prices.length < 1) continue;
                                      	var arrname = gasStation[index].name.split(' ');
                                      		if (arrname.length > 0) {
                                      				var markenname = arrname[0];
                                      			}
                                      			else
                                      			{
                                      				var markenname = gasStation[index].name;
                                      			}
                                      		var station = gasStation[index].name;
                                          setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".Name_"+(index+1), gasStation[index].name);
                                          setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".Preis_"+(index+1), (gasStation[index].prices[0].amount).toString().replace(".",","));
                                          setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".PreisP_"+(index+1), (gasStation[index].prices[0].amount).toString().replace(".","."));
                                      	setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".Strasse_"+(index+1), (gasStation[index].location.address));
                                          setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".PLZ_Ort_"+(index+1), (gasStation[index].location.postalCode) + " " + (gasStation[index].location.city));
                                          setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".Latitude_"+(index+1), (gasStation[index].location.latitude));
                                      	setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".Longitude_"+(index+1), (gasStation[index].location.longitude));
                                      	setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".offen_"+(index+1), (gasStation[index].open));
                                      	
                                      	//Aral=1, eni=2, Shell=3, OMV=4, avanti=5, bp=6, JET=7, Turmöl=8, Lagerhaus=9, AVIA=10, A1=11, Diskont=12, IQ=13
                                      	
                                      	var markennameklein=markenname.toLowerCase();
                                      	var x= 0;
                                      	for (x=0; x < arrMarke.length; x++) {
                                      		var arrMklein=arrMarke[x].toLowerCase();
                                      		//console.log("x=" + x + "/ Markennameklein =" + markennameklein + "/ Array =" + arrMklein);
                                      		if (arrMklein == markennameklein) {
                                      			setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".Logo_"+(index+1), (x+1));
                                      		}
                                      	}
                                      	
                                      	}
                                       
                                      log("Ende Spritvergleich");
                                      });
                                      

                                      must du alle x Zeiteinheiten per Cron ausführen lassen.

                                      Das wird vom Parser geregelt. Der fragt die Adresse alle 10 Sek. ab und das Script reagiert darauf.

                                      ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                                      ° Node.js Fixer ---> iob nodejs-update
                                      ° Fixer ---> iob fix

                                      T 1 Reply Last reply
                                      0
                                      • NegaleinN Negalein

                                        @ticaki sagte in Script geht zeitweise auf Pause:

                                        sieht das in deinem Script so aus?

                                        So schaut das Script aus

                                        //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
                                        //  "Spritpreise_AT v.0.5"                                                                                                              //
                                        //  e-control Spritpreise                                                                                                               //    
                                        //  ursprüngl. Script von steinejo_io vom                                                                                               //
                                        //                                                                                                                                      //
                                        //  Zwingend erforderlich sind der Parser Adapter und die URL aus der API. Links und Hilfe zum Erstellemn findet ihr im Folgenden Lnk:  //
                                        //  https://forum.iobroker.net/topic/20314/skripten-des-e-control-spritpreisrechners                                                    //
                                        //  Das manuelle Anlegen von Daenpunkten ist nicht mehr notwendig. erledigt das Script beim ersten Aufruf.                              //
                                        //  Auf das "E" Zeichen habe ich verzichtet, da es in VIS genz einfach an der jeweils gewünschten Stelle produzierbar ist.              //
                                        //                                                                                                                                      //
                                        //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
                                         
                                        on({id: "parser.0.Spritpreisrechner"/*Spritpreisrechner*/, change: 'any'}, function(obj)
                                        {
                                        log("Start Spritvergleich");
                                         
                                            var gasStation = JSON.parse(obj.state.val);
                                            gasStation = gasStation.filter(g => g.prices.length > 0);
                                            if (gasStation.length === 0) return;
                                            //Aral=1, eni=2, Shell=3, OMV=4, avanti=5, bp=6, JET=7, Turmöl=8, Lagerhaus=9, AVIA=10, A1=11, Diskont=12, IQ=13
                                            var arrMarke = ['Aral', 'eni', 'Shell', 'OMV', 'avanti', 'BP', 'JET', 'Turmöl', 'Lagerhaus', 'AVIA', 'A1', 'Diskont', 'DISKONT', 'IQ', 'SB-Tankstelle', 'bp', 'Land', 'Bp'];
                                        	var i = 0;
                                            for (var i = 1; i <= 5; i++) {
                                                // console.log(i);
                                                // console.log("javascript.0.Sprit_AT.name_"+i);
                                                createState("javascript.0.Sprit_AT.Treffer_"+i+".Name_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
                                                createState("javascript.0.Sprit_AT.Treffer_"+i+".Preis_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
                                                createState("javascript.0.Sprit_AT.Treffer_"+i+".PreisP_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
                                        		createState("javascript.0.Sprit_AT.Treffer_"+i+".Strasse_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
                                                createState("javascript.0.Sprit_AT.Treffer_"+i+".PLZ_Ort_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
                                                createState("javascript.0.Sprit_AT.Treffer_"+i+".Logo_"+i, {type: "number", name: "Logo "+i, read: true, write: true});
                                        		createState("javascript.0.Sprit_AT.Treffer_"+i+".Latitude_"+i, {type: "number", name: "Latitude "+i, read: true, write: true});
                                        		createState("javascript.0.Sprit_AT.Treffer_"+i+".Longitude_"+i, {type: "number", name: "Longitude "+i, read: true, write: true});
                                        		createState("javascript.0.Sprit_AT.Treffer_"+i+".offen_"+i, {type: "boolean", name: "offen "+i, read: true, write: true});
                                        	}
                                        	
                                         
                                            var index = 0;
                                            //for (index = 0; index < gasStation.length; ++index) {
                                            for (index = 0; index <= 4; ++index) {
                                        	if (gasStation[index].prices.length < 1) continue;
                                        	var arrname = gasStation[index].name.split(' ');
                                        		if (arrname.length > 0) {
                                        				var markenname = arrname[0];
                                        			}
                                        			else
                                        			{
                                        				var markenname = gasStation[index].name;
                                        			}
                                        		var station = gasStation[index].name;
                                            setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".Name_"+(index+1), gasStation[index].name);
                                            setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".Preis_"+(index+1), (gasStation[index].prices[0].amount).toString().replace(".",","));
                                            setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".PreisP_"+(index+1), (gasStation[index].prices[0].amount).toString().replace(".","."));
                                        	setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".Strasse_"+(index+1), (gasStation[index].location.address));
                                            setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".PLZ_Ort_"+(index+1), (gasStation[index].location.postalCode) + " " + (gasStation[index].location.city));
                                            setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".Latitude_"+(index+1), (gasStation[index].location.latitude));
                                        	setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".Longitude_"+(index+1), (gasStation[index].location.longitude));
                                        	setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".offen_"+(index+1), (gasStation[index].open));
                                        	
                                        	//Aral=1, eni=2, Shell=3, OMV=4, avanti=5, bp=6, JET=7, Turmöl=8, Lagerhaus=9, AVIA=10, A1=11, Diskont=12, IQ=13
                                        	
                                        	var markennameklein=markenname.toLowerCase();
                                        	var x= 0;
                                        	for (x=0; x < arrMarke.length; x++) {
                                        		var arrMklein=arrMarke[x].toLowerCase();
                                        		//console.log("x=" + x + "/ Markennameklein =" + markennameklein + "/ Array =" + arrMklein);
                                        		if (arrMklein == markennameklein) {
                                        			setState("javascript.0.Sprit_AT.Treffer_"+(index+1)+".Logo_"+(index+1), (x+1));
                                        		}
                                        	}
                                        	
                                        	}
                                         
                                        log("Ende Spritvergleich");
                                        });
                                        

                                        must du alle x Zeiteinheiten per Cron ausführen lassen.

                                        Das wird vom Parser geregelt. Der fragt die Adresse alle 10 Sek. ab und das Script reagiert darauf.

                                        T Do not disturb
                                        T Do not disturb
                                        ticaki
                                        wrote on last edited by ticaki
                                        #23

                                        @Negalein
                                        Dein letzter Fehler sieht so aus als wenn der Parser keine Daten geliefert hat und deshalb Zeile 18 gescheitert ist

                                        Versuche bitte mal folgendes: 2 Zeilen vertauschen und gasStation auf array/object prüfen.

                                        var gasStation = JSON.parse(obj.state.val);
                                        if (typeof gasStation != 'object' || gasStation.length === 0) return;
                                        gasStation = gasStation.filter(g => g.prices.length > 0);
                                        if (gasStation.length === 0) return;
                                        

                                        EDIT: ups

                                        Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                        Spenden

                                        NegaleinN 1 Reply Last reply
                                        0
                                        • T ticaki

                                          @Negalein
                                          Dein letzter Fehler sieht so aus als wenn der Parser keine Daten geliefert hat und deshalb Zeile 18 gescheitert ist

                                          Versuche bitte mal folgendes: 2 Zeilen vertauschen und gasStation auf array/object prüfen.

                                          var gasStation = JSON.parse(obj.state.val);
                                          if (typeof gasStation != 'object' || gasStation.length === 0) return;
                                          gasStation = gasStation.filter(g => g.prices.length > 0);
                                          if (gasStation.length === 0) return;
                                          

                                          EDIT: ups

                                          NegaleinN Offline
                                          NegaleinN Offline
                                          Negalein
                                          Global Moderator
                                          wrote on last edited by
                                          #24

                                          @ticaki sagte in Script geht zeitweise auf Pause:

                                          Versuche bitte mal folgendes: 2 Zeilen vertauschen und gasStation auf array/object prüfen.

                                          Danke
                                          Habs eingefügt/vertauscht und werde es die nächsten Tage beobachten.

                                          ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                                          ° Node.js Fixer ---> iob nodejs-update
                                          ° Fixer ---> iob fix

                                          T 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          360

                                          Online

                                          32.7k

                                          Users

                                          82.4k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe