Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Skripten des E-Control Spritpreisrechners

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.7k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.2k

Skripten des E-Control Spritpreisrechners

Geplant Angeheftet Gesperrt Verschoben JavaScript
javascriptmonitoring
292 Beiträge 21 Kommentatoren 45.6k Aufrufe 16 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • G Offline
    G Offline
    Georgius
    schrieb am zuletzt editiert von
    #135

    Ich hab einen anderen Ansatz gewählt.
    Es ist bis jetzt nur ein Anfang um zu schauen ob es so geht.

    on({id: "parser.0.Tanken", change: 'any'}, function(obj)
     {
        
        var index = 0;
        /*var gasStation = JSON.parse('parser.0.Tanken');*/
        var gasStation = JSON.parse(obj.state.val);
         /*if (gasStation.length === 0) return;*/
     
         console.log((String('Durchlauf')));
         createState("javascript.0.Sprit.Tankstelle_Test.Index", false,{type: 'number',name: 'index', read: true,write: true});
         for (index = 0; index < gasStation.length; ++index) {
     
       
        createState("javascript.0.Sprit.Tankstelle_"+index+".Index", 0,{type: 'number',name: 'index', read: true,write: true});
        setState("javascript.0.Sprit.Tankstelle_"+index+".Index", gasStation[index].id);
    
        createState("javascript.0.Sprit.Tankstelle_"+index+".name", 0,{type: 'string',name: 'name', read: true,write: true});
        setState("javascript.0.Sprit.Tankstelle_"+index+".name", gasStation[index].name);
       
        }
     
    
     });
    

    Was nicht geht ist das man den Datenpunkt gleich nach dem erstellen füllen kann. Dann kommt ein "Warn" im Protokoll und die Punkte werden nicht gefüllt.

    Ist mein 1. JS-Programm. Bin also für Verbesserungen sehr dankbar.

    Warum ich die Datenpunkte in der Schleife definiere ist, dass wenn zB.12 Tankstellen den gleichen Preis haben werden 12 Tankstellen zurückgegeben.

    1 Antwort Letzte Antwort
    0
    • NegaleinN Negalein

      @Homoran sagte in Skripten des E-Control Spritpreisrechners:

      Auch geld als lockmittel ändert das nichts. Was nicht da ist kann man nicht herzaubern.

      Das hast du falsch verstanden!
      Soll kein Lockmittel sein.
      Aber gute Arbeit darf ruhig auch mal belohnt werden!

      HomoranH Nicht stören
      HomoranH Nicht stören
      Homoran
      Global Moderator Administrators
      schrieb am zuletzt editiert von
      #136

      @Negalein
      Ich fürchte du verstehst es nicht!

      • Sieh dir mal ALLE Tankstellenbezeichnungen die von der api ausgegeben werden an.
      • überlege dir zu jedem eine dir genehme Kurzbezeichnung
      • dann nenne mir EINE allgemeingültige Formel diese Kurzbezeichnungen zu extrahieren.

      Ich bin auf diese Formel gespannt.

      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

      NegaleinN 1 Antwort Letzte Antwort
      0
      • HomoranH Homoran

        @Negalein
        Ich fürchte du verstehst es nicht!

        • Sieh dir mal ALLE Tankstellenbezeichnungen die von der api ausgegeben werden an.
        • überlege dir zu jedem eine dir genehme Kurzbezeichnung
        • dann nenne mir EINE allgemeingültige Formel diese Kurzbezeichnungen zu extrahieren.

        Ich bin auf diese Formel gespannt.

        NegaleinN Offline
        NegaleinN Offline
        Negalein
        Global Moderator
        schrieb am zuletzt editiert von
        #137

        @Homoran sagte in Skripten des E-Control Spritpreisrechners:

        Ich fürchte du verstehst es nicht!

        Nein, ich fürchte du hast es falsch verstanden!

        Ich bezog mich einzig auf

        Auch geld als lockmittel ändert das nichts.

        Nicht mehr und nicht weniger!!

        Sollte auch im Verlauf ersichtlich sein!

        Namen kürzen wäre ein Wunsch. Aber wenns nicht geht, dann gehts halt nicht.
        C’est la vie

        So, und jetzt Schluß mit der i-Tüpferl Reiterei
        Ich kann kein JS und hab es auch nie behauptet.

        ° Node.js: 20.17.0 NPM: 10.8.2
        ° Proxmox, Ubuntu 22.04.3 LTS
        ° Fixer ---> iob fix

        HomoranH 1 Antwort Letzte Antwort
        0
        • NegaleinN Negalein

          @Homoran sagte in Skripten des E-Control Spritpreisrechners:

          Ich fürchte du verstehst es nicht!

          Nein, ich fürchte du hast es falsch verstanden!

          Ich bezog mich einzig auf

          Auch geld als lockmittel ändert das nichts.

          Nicht mehr und nicht weniger!!

          Sollte auch im Verlauf ersichtlich sein!

          Namen kürzen wäre ein Wunsch. Aber wenns nicht geht, dann gehts halt nicht.
          C’est la vie

          So, und jetzt Schluß mit der i-Tüpferl Reiterei
          Ich kann kein JS und hab es auch nie behauptet.

          HomoranH Nicht stören
          HomoranH Nicht stören
          Homoran
          Global Moderator Administrators
          schrieb am zuletzt editiert von
          #138

          @Negalein sagte in Skripten des E-Control Spritpreisrechners:

          Ich bezog mich einzig auf

          Dieser Satz war aber in einem Zusammenhang genannt. Den habe ich versucht wieder herzustellen

          kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

          NegaleinN 1 Antwort Letzte Antwort
          0
          • HomoranH Homoran

            @Negalein sagte in Skripten des E-Control Spritpreisrechners:

            Ich bezog mich einzig auf

            Dieser Satz war aber in einem Zusammenhang genannt. Den habe ich versucht wieder herzustellen

            NegaleinN Offline
            NegaleinN Offline
            Negalein
            Global Moderator
            schrieb am zuletzt editiert von
            #139

            @Homoran sagte in Skripten des E-Control Spritpreisrechners:

            Dieser Satz war aber in einem Zusammenhang genannt. Den habe ich versucht wieder herzustellen

            Ja, da hab ich den unbewusst mitzitiert!

            Egal, konzentrieren wir uns wieder auf die Funktion!

            ° Node.js: 20.17.0 NPM: 10.8.2
            ° Proxmox, Ubuntu 22.04.3 LTS
            ° Fixer ---> iob fix

            1 Antwort Letzte Antwort
            0
            • metaxaM Offline
              metaxaM Offline
              metaxa
              schrieb am zuletzt editiert von metaxa
              #140

              @Negalein sagte in Skripten des E-Control Spritpreisrechners:

              Egal, konzentrieren wir uns wieder auf die Funktion!

              WIR haben uns konzentriert :thinking_face:

              Rausgekommen ist Folgendes:

              //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
              //  "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;
              
                  var i = 0;
                  for (var i = 1; i <= 5; i++) {
                      // console.log(i);
                      // console.log("scriptDatenPunkte.Sprit_AT.name_"+i);
                      createState("scriptDatenPunkte.Sprit_AT.Treffer_"+i+".Name_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
                      createState("scriptDatenPunkte.Sprit_AT.Treffer_"+i+".Preis_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
                      createState("scriptDatenPunkte.Sprit_AT.Treffer_"+i+".Strasse_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
                      createState("scriptDatenPunkte.Sprit_AT.Treffer_"+i+".PLZ_Ort_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
                  }
              
                  var index = 0;
                  //for (index = 0; index < gasStation.length; ++index) {
                  for (index = 0; index <= 4; ++index) {
                  setState("scriptDatenPunkte.Sprit_AT.Treffer_"+(index+1)+".Name_"+(index+1), gasStation[index].name);
                  setState("scriptDatenPunkte.Sprit_AT.Treffer_"+(index+1)+".Preis_"+(index+1), (gasStation[index].prices[0].amount).toString().replace(".",","));
                  setState("scriptDatenPunkte.Sprit_AT.Treffer_"+(index+1)+".Strasse_"+(index+1), (gasStation[index].location.address));
                  setState("scriptDatenPunkte.Sprit_AT.Treffer_"+(index+1)+".PLZ_Ort_"+(index+1), (gasStation[index].location.postalCode) + " " + (gasStation[index].location.city));
                  }
              
              log("Ende Spritvergleich");
              });
              

              Die Datenpunkte werden beim ersten Auslösen erstellt, jedoch erst beim ZWEITEN Auslösen befüllt. Helfen kann man sich, indem man im Parser den Feldtyp von JSON verstellt, speichert, und wieder auf JSON umstrellt und wieder speichert.
              Leider bekomme ich bei den ersten beiden Auslösern im Log paar Fehlermeldungen, das Script tut aber trotzem. Ich habe schon alles versucht, ich krieg sie nicht weg. Im Regelbetrieb gibt es keine Fehlermeldungen (bei mir).

              javascript.0	2019-04-04 19:01:43.905	error	at Manager.Emitter.emit (/opt/iobroker/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20)
              javascript.0	2019-04-04 19:01:43.905	error	at Manager.<anonymous> (/opt/iobroker/node_modules/component-bind/index.js:21:15)
              javascript.0	2019-04-04 19:01:43.905	error	at Socket.onpacket (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:228:12)
              javascript.0	2019-04-04 19:01:43.905	error	at Socket.onevent (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:270:10)
              javascript.0	2019-04-04 19:01:43.904	error	at Socket.Emitter.emit (/opt/iobroker/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20)
              javascript.0	2019-04-04 19:01:43.904	error	at Socket.<anonymous> (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInMemClient.js:52:30)
              javascript.0	2019-04-04 19:01:43.904	error	at Object.change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:3705:37)
              javascript.0	2019-04-04 19:01:43.904	error	at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:364:25)
              javascript.0	2019-04-04 19:01:43.904	error	at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:963:38)
              javascript.0	2019-04-04 19:01:43.904	error	at Object.<anonymous> (script.js.010_Testen.Vorlage_Spritpreisrechner_best_five_mit_Strasse_separat:29:100)
              javascript.0	2019-04-04 19:01:43.903	error	Error in callback: TypeError: Cannot read property 'name' of undefined
              

              Wenn jemand bitte einen Rat hat, unbedingt her damit.

              LG, mxa

              HomoranH sigi234S 2 Antworten Letzte Antwort
              1
              • metaxaM metaxa

                @Negalein sagte in Skripten des E-Control Spritpreisrechners:

                Egal, konzentrieren wir uns wieder auf die Funktion!

                WIR haben uns konzentriert :thinking_face:

                Rausgekommen ist Folgendes:

                //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
                //  "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;
                
                    var i = 0;
                    for (var i = 1; i <= 5; i++) {
                        // console.log(i);
                        // console.log("scriptDatenPunkte.Sprit_AT.name_"+i);
                        createState("scriptDatenPunkte.Sprit_AT.Treffer_"+i+".Name_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
                        createState("scriptDatenPunkte.Sprit_AT.Treffer_"+i+".Preis_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
                        createState("scriptDatenPunkte.Sprit_AT.Treffer_"+i+".Strasse_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
                        createState("scriptDatenPunkte.Sprit_AT.Treffer_"+i+".PLZ_Ort_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
                    }
                
                    var index = 0;
                    //for (index = 0; index < gasStation.length; ++index) {
                    for (index = 0; index <= 4; ++index) {
                    setState("scriptDatenPunkte.Sprit_AT.Treffer_"+(index+1)+".Name_"+(index+1), gasStation[index].name);
                    setState("scriptDatenPunkte.Sprit_AT.Treffer_"+(index+1)+".Preis_"+(index+1), (gasStation[index].prices[0].amount).toString().replace(".",","));
                    setState("scriptDatenPunkte.Sprit_AT.Treffer_"+(index+1)+".Strasse_"+(index+1), (gasStation[index].location.address));
                    setState("scriptDatenPunkte.Sprit_AT.Treffer_"+(index+1)+".PLZ_Ort_"+(index+1), (gasStation[index].location.postalCode) + " " + (gasStation[index].location.city));
                    }
                
                log("Ende Spritvergleich");
                });
                

                Die Datenpunkte werden beim ersten Auslösen erstellt, jedoch erst beim ZWEITEN Auslösen befüllt. Helfen kann man sich, indem man im Parser den Feldtyp von JSON verstellt, speichert, und wieder auf JSON umstrellt und wieder speichert.
                Leider bekomme ich bei den ersten beiden Auslösern im Log paar Fehlermeldungen, das Script tut aber trotzem. Ich habe schon alles versucht, ich krieg sie nicht weg. Im Regelbetrieb gibt es keine Fehlermeldungen (bei mir).

                javascript.0	2019-04-04 19:01:43.905	error	at Manager.Emitter.emit (/opt/iobroker/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20)
                javascript.0	2019-04-04 19:01:43.905	error	at Manager.<anonymous> (/opt/iobroker/node_modules/component-bind/index.js:21:15)
                javascript.0	2019-04-04 19:01:43.905	error	at Socket.onpacket (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:228:12)
                javascript.0	2019-04-04 19:01:43.905	error	at Socket.onevent (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:270:10)
                javascript.0	2019-04-04 19:01:43.904	error	at Socket.Emitter.emit (/opt/iobroker/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20)
                javascript.0	2019-04-04 19:01:43.904	error	at Socket.<anonymous> (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInMemClient.js:52:30)
                javascript.0	2019-04-04 19:01:43.904	error	at Object.change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:3705:37)
                javascript.0	2019-04-04 19:01:43.904	error	at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:364:25)
                javascript.0	2019-04-04 19:01:43.904	error	at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:963:38)
                javascript.0	2019-04-04 19:01:43.904	error	at Object.<anonymous> (script.js.010_Testen.Vorlage_Spritpreisrechner_best_five_mit_Strasse_separat:29:100)
                javascript.0	2019-04-04 19:01:43.903	error	Error in callback: TypeError: Cannot read property 'name' of undefined
                

                Wenn jemand bitte einen Rat hat, unbedingt her damit.

                LG, mxa

                HomoranH Nicht stören
                HomoranH Nicht stören
                Homoran
                Global Moderator Administrators
                schrieb am zuletzt editiert von
                #141

                @metaxa sagte in Skripten des E-Control Spritpreisrechners:

                WIR haben uns konzentriert

                :+1:

                Mann muss doch mit einem Script das json jolen - in eine Variable schreiben - und diese dann zerlegen können, oder?

                Habe leider keine Zeit mich in js einzuarbeiten und dann das zu probieren

                kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                P 1 Antwort Letzte Antwort
                0
                • metaxaM metaxa

                  @Negalein sagte in Skripten des E-Control Spritpreisrechners:

                  Egal, konzentrieren wir uns wieder auf die Funktion!

                  WIR haben uns konzentriert :thinking_face:

                  Rausgekommen ist Folgendes:

                  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
                  //  "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;
                  
                      var i = 0;
                      for (var i = 1; i <= 5; i++) {
                          // console.log(i);
                          // console.log("scriptDatenPunkte.Sprit_AT.name_"+i);
                          createState("scriptDatenPunkte.Sprit_AT.Treffer_"+i+".Name_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
                          createState("scriptDatenPunkte.Sprit_AT.Treffer_"+i+".Preis_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
                          createState("scriptDatenPunkte.Sprit_AT.Treffer_"+i+".Strasse_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
                          createState("scriptDatenPunkte.Sprit_AT.Treffer_"+i+".PLZ_Ort_"+i, {type: "string", name: "Platz "+i, read: true, write: true});
                      }
                  
                      var index = 0;
                      //for (index = 0; index < gasStation.length; ++index) {
                      for (index = 0; index <= 4; ++index) {
                      setState("scriptDatenPunkte.Sprit_AT.Treffer_"+(index+1)+".Name_"+(index+1), gasStation[index].name);
                      setState("scriptDatenPunkte.Sprit_AT.Treffer_"+(index+1)+".Preis_"+(index+1), (gasStation[index].prices[0].amount).toString().replace(".",","));
                      setState("scriptDatenPunkte.Sprit_AT.Treffer_"+(index+1)+".Strasse_"+(index+1), (gasStation[index].location.address));
                      setState("scriptDatenPunkte.Sprit_AT.Treffer_"+(index+1)+".PLZ_Ort_"+(index+1), (gasStation[index].location.postalCode) + " " + (gasStation[index].location.city));
                      }
                  
                  log("Ende Spritvergleich");
                  });
                  

                  Die Datenpunkte werden beim ersten Auslösen erstellt, jedoch erst beim ZWEITEN Auslösen befüllt. Helfen kann man sich, indem man im Parser den Feldtyp von JSON verstellt, speichert, und wieder auf JSON umstrellt und wieder speichert.
                  Leider bekomme ich bei den ersten beiden Auslösern im Log paar Fehlermeldungen, das Script tut aber trotzem. Ich habe schon alles versucht, ich krieg sie nicht weg. Im Regelbetrieb gibt es keine Fehlermeldungen (bei mir).

                  javascript.0	2019-04-04 19:01:43.905	error	at Manager.Emitter.emit (/opt/iobroker/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20)
                  javascript.0	2019-04-04 19:01:43.905	error	at Manager.<anonymous> (/opt/iobroker/node_modules/component-bind/index.js:21:15)
                  javascript.0	2019-04-04 19:01:43.905	error	at Socket.onpacket (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:228:12)
                  javascript.0	2019-04-04 19:01:43.905	error	at Socket.onevent (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:270:10)
                  javascript.0	2019-04-04 19:01:43.904	error	at Socket.Emitter.emit (/opt/iobroker/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20)
                  javascript.0	2019-04-04 19:01:43.904	error	at Socket.<anonymous> (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInMemClient.js:52:30)
                  javascript.0	2019-04-04 19:01:43.904	error	at Object.change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:3705:37)
                  javascript.0	2019-04-04 19:01:43.904	error	at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:364:25)
                  javascript.0	2019-04-04 19:01:43.904	error	at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:963:38)
                  javascript.0	2019-04-04 19:01:43.904	error	at Object.<anonymous> (script.js.010_Testen.Vorlage_Spritpreisrechner_best_five_mit_Strasse_separat:29:100)
                  javascript.0	2019-04-04 19:01:43.903	error	Error in callback: TypeError: Cannot read property 'name' of undefined
                  

                  Wenn jemand bitte einen Rat hat, unbedingt her damit.

                  LG, mxa

                  sigi234S Online
                  sigi234S Online
                  sigi234
                  Forum Testing Most Active
                  schrieb am zuletzt editiert von sigi234
                  #142

                  @metaxa

                  Ich glaube da könnte uns Pix helfen?

                  Ich habe ihn mal ne PN gesendet..........

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

                  HomoranH 1 Antwort Letzte Antwort
                  0
                  • sigi234S sigi234

                    @metaxa

                    Ich glaube da könnte uns Pix helfen?

                    Ich habe ihn mal ne PN gesendet..........

                    HomoranH Nicht stören
                    HomoranH Nicht stören
                    Homoran
                    Global Moderator Administrators
                    schrieb am zuletzt editiert von
                    #143

                    @sigi234

                    Das Problem ist ja leider komplexer.

                    Da sich die Reihenfolge (und damit eventuell sogar as Vorhandensein von Preisen) dauernd ändert muss alles zusätzlich "übersetzt" werden.

                    Es kann ja sogar passieren, dass die Lieblingstanke nicht unter den Top 5 landet, weil sie in dem Moment zu teuer ist

                    kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                    sigi234S metaxaM 2 Antworten Letzte Antwort
                    0
                    • HomoranH Homoran

                      @sigi234

                      Das Problem ist ja leider komplexer.

                      Da sich die Reihenfolge (und damit eventuell sogar as Vorhandensein von Preisen) dauernd ändert muss alles zusätzlich "übersetzt" werden.

                      Es kann ja sogar passieren, dass die Lieblingstanke nicht unter den Top 5 landet, weil sie in dem Moment zu teuer ist

                      sigi234S Online
                      sigi234S Online
                      sigi234
                      Forum Testing Most Active
                      schrieb am zuletzt editiert von
                      #144

                      @Homoran sagte in Skripten des E-Control Spritpreisrechners:

                      Es kann ja sogar passieren, dass die Lieblingstanke nicht unter den Top 5 landet, weil sie in dem Moment zu teuer ist

                      Genau, darum ist es für Vis so nicht Richtig bzw. schwierig darstellbar.......

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

                      HomoranH 1 Antwort Letzte Antwort
                      0
                      • sigi234S sigi234

                        @Homoran sagte in Skripten des E-Control Spritpreisrechners:

                        Es kann ja sogar passieren, dass die Lieblingstanke nicht unter den Top 5 landet, weil sie in dem Moment zu teuer ist

                        Genau, darum ist es für Vis so nicht Richtig bzw. schwierig darstellbar.......

                        HomoranH Nicht stören
                        HomoranH Nicht stören
                        Homoran
                        Global Moderator Administrators
                        schrieb am zuletzt editiert von
                        #145

                        @sigi234
                        Da müsste man vielleicht mit 2-4 Abfragen von unterschiedlichem geografischen Mittelpunkt arbeiten, in der Hoffnung, dass die Tanke dann in einem dieser 10er-Pakete unter den Top5 liegt.

                        Habe da zwar viele Ideen, aber mir mangelts am Handwerkszeug

                        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                        1 Antwort Letzte Antwort
                        0
                        • HomoranH Homoran

                          @sigi234

                          Das Problem ist ja leider komplexer.

                          Da sich die Reihenfolge (und damit eventuell sogar as Vorhandensein von Preisen) dauernd ändert muss alles zusätzlich "übersetzt" werden.

                          Es kann ja sogar passieren, dass die Lieblingstanke nicht unter den Top 5 landet, weil sie in dem Moment zu teuer ist

                          metaxaM Offline
                          metaxaM Offline
                          metaxa
                          schrieb am zuletzt editiert von
                          #146

                          @Homoran sagte in Skripten des E-Control Spritpreisrechners:

                          @sigi234
                          Das Problem ist ja leider komplexer.
                          Da sich die Reihenfolge (und damit eventuell sogar as Vorhandensein von Preisen) dauernd ändert muss alles zusätzlich "übersetzt" werden.
                          Es kann ja sogar passieren, dass die Lieblingstanke nicht unter den Top 5 landet, weil sie in dem Moment zu teuer ist

                          Ja Rainer, da hast du durchaus recht. Deswegen hat der Kollege im Einstiegspost seine Lösung für seine Lieblingstankstelle gepostet. Funktioniert soweit einwandfrei, sofern die Tankstelle nicht geschlossen hat oder/und in der API die Option "geschlossene Tankstellen anzeigen: AN" gewählt wurde.
                          Nur was hilft es mir, wenn ich vielleicht sehe was der Sprit vor dem Schließen gekostet hat.

                          Ich für mich denke eher daran beide Lösungen zu kombinieren. Heißt ein eigenes Script, dass meine bevorzugte Tankstelle anzeigt und die "Top 5" ergänzend zur reinen Info. Ob ich die Info dann umsetze und eine andere Tankstelle praktisch verwende, kann ich dann immer noch entscheiden.

                          LG, mxa

                          HomoranH 1 Antwort Letzte Antwort
                          0
                          • metaxaM Offline
                            metaxaM Offline
                            metaxa
                            schrieb am zuletzt editiert von
                            #147

                            Und was mich jetzt grad am meisen interessiert: Hat es schon jemand ausprobiert?

                            @Negalein sagte in Skripten des E-Control Spritpreisrechners:

                            Das wäre toll!

                            Was wäre noch von Interesse?

                            Am allerwichtigsten ist, dass alle Daten zueinander passen.
                            Jetzt mit Parser und Regex ist es so, dass oft zB Ort 1 mit PLZ 3 und Preis 5 verheiratet sind.
                            Funktionieren muss es mit der API, da auch alle anderen Apps (Android sowie das angebissene Äpfelchen) darauf zugreifen.

                            LG, mxa

                            HomoranH NegaleinN sigi234S 3 Antworten Letzte Antwort
                            0
                            • metaxaM metaxa

                              @Homoran sagte in Skripten des E-Control Spritpreisrechners:

                              @sigi234
                              Das Problem ist ja leider komplexer.
                              Da sich die Reihenfolge (und damit eventuell sogar as Vorhandensein von Preisen) dauernd ändert muss alles zusätzlich "übersetzt" werden.
                              Es kann ja sogar passieren, dass die Lieblingstanke nicht unter den Top 5 landet, weil sie in dem Moment zu teuer ist

                              Ja Rainer, da hast du durchaus recht. Deswegen hat der Kollege im Einstiegspost seine Lösung für seine Lieblingstankstelle gepostet. Funktioniert soweit einwandfrei, sofern die Tankstelle nicht geschlossen hat oder/und in der API die Option "geschlossene Tankstellen anzeigen: AN" gewählt wurde.
                              Nur was hilft es mir, wenn ich vielleicht sehe was der Sprit vor dem Schließen gekostet hat.

                              Ich für mich denke eher daran beide Lösungen zu kombinieren. Heißt ein eigenes Script, dass meine bevorzugte Tankstelle anzeigt und die "Top 5" ergänzend zur reinen Info. Ob ich die Info dann umsetze und eine andere Tankstelle praktisch verwende, kann ich dann immer noch entscheiden.

                              LG, mxa

                              HomoranH Nicht stören
                              HomoranH Nicht stören
                              Homoran
                              Global Moderator Administrators
                              schrieb am zuletzt editiert von
                              #148

                              @metaxa
                              Ich muss zugeben, dass ich mir das Initialskript gar nicht angesehen habe :-(

                              Wenn ich das inzwischen richtig verstehe kann man - wenn man genau SEINE Tanke mit kompletten Namen kennt, ein Skript schreiben, das dann wenigstens die Tanke unter den Top 10 (6-10) finden würde und dann eine Info geben mit Preis >xxx.
                              Wobei das der höchste Preis der Top 5 wäre.

                              Aber eine einfache Suche für mehrere UNBEKANNTE Tankstellen geht schon sehr schwer

                              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                              1 Antwort Letzte Antwort
                              0
                              • metaxaM metaxa

                                Und was mich jetzt grad am meisen interessiert: Hat es schon jemand ausprobiert?

                                @Negalein sagte in Skripten des E-Control Spritpreisrechners:

                                Das wäre toll!

                                Was wäre noch von Interesse?

                                Am allerwichtigsten ist, dass alle Daten zueinander passen.
                                Jetzt mit Parser und Regex ist es so, dass oft zB Ort 1 mit PLZ 3 und Preis 5 verheiratet sind.
                                Funktionieren muss es mit der API, da auch alle anderen Apps (Android sowie das angebissene Äpfelchen) darauf zugreifen.

                                LG, mxa

                                HomoranH Nicht stören
                                HomoranH Nicht stören
                                Homoran
                                Global Moderator Administrators
                                schrieb am zuletzt editiert von Homoran
                                #149

                                @metaxa
                                Bist du am Wochenende in Kassel?

                                Dann könnten wir (+weitere) uns mal zusammensetzen

                                kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                metaxaM 1 Antwort Letzte Antwort
                                0
                                • metaxaM metaxa

                                  Und was mich jetzt grad am meisen interessiert: Hat es schon jemand ausprobiert?

                                  @Negalein sagte in Skripten des E-Control Spritpreisrechners:

                                  Das wäre toll!

                                  Was wäre noch von Interesse?

                                  Am allerwichtigsten ist, dass alle Daten zueinander passen.
                                  Jetzt mit Parser und Regex ist es so, dass oft zB Ort 1 mit PLZ 3 und Preis 5 verheiratet sind.
                                  Funktionieren muss es mit der API, da auch alle anderen Apps (Android sowie das angebissene Äpfelchen) darauf zugreifen.

                                  LG, mxa

                                  NegaleinN Offline
                                  NegaleinN Offline
                                  Negalein
                                  Global Moderator
                                  schrieb am zuletzt editiert von
                                  #150

                                  @metaxa sagte in Skripten des E-Control Spritpreisrechners:

                                  Und was mich jetzt grad am meisen interessiert: Hat es schon jemand ausprobiert?

                                  Bin gerade erst heim gekommen.
                                  Werde es gleich testen.
                                  Dauert noch kurz.

                                  ° Node.js: 20.17.0 NPM: 10.8.2
                                  ° Proxmox, Ubuntu 22.04.3 LTS
                                  ° Fixer ---> iob fix

                                  1 Antwort Letzte Antwort
                                  0
                                  • HomoranH Homoran

                                    @metaxa
                                    Bist du am Wochenende in Kassel?

                                    Dann könnten wir (+weitere) uns mal zusammensetzen

                                    metaxaM Offline
                                    metaxaM Offline
                                    metaxa
                                    schrieb am zuletzt editiert von
                                    #151

                                    @Homoran
                                    Jetzt hast mir einen Floh ins Ohr gesetzt, den/das JSON im JS direkt reinzuladen. Tappe da noch völlig im Dunkeln. Wie gesagt, ich beschäftige mich mit programmieren und im Speziellen mit JS grad mal paar Stunden und heute :-)

                                    Nein bin nicht oben, die "AT" Fraktion ist durch Robert & Co eh sehr gut vertreten und mir wächst mein Garten um die Ohren :-(.

                                    LG, mxa

                                    HomoranH 1 Antwort Letzte Antwort
                                    0
                                    • metaxaM metaxa

                                      @Homoran
                                      Jetzt hast mir einen Floh ins Ohr gesetzt, den/das JSON im JS direkt reinzuladen. Tappe da noch völlig im Dunkeln. Wie gesagt, ich beschäftige mich mit programmieren und im Speziellen mit JS grad mal paar Stunden und heute :-)

                                      Nein bin nicht oben, die "AT" Fraktion ist durch Robert & Co eh sehr gut vertreten und mir wächst mein Garten um die Ohren :-(.

                                      LG, mxa

                                      HomoranH Nicht stören
                                      HomoranH Nicht stören
                                      Homoran
                                      Global Moderator Administrators
                                      schrieb am zuletzt editiert von
                                      #152

                                      @metaxa

                                      @metaxa sagte in Skripten des E-Control Spritpreisrechners:

                                      Wie gesagt, ich beschäftige mich mit programmieren und im Speziellen mit JS grad mal paar Stunden und heute

                                      Da kannst du mehr als ich ;-) Natives js habe ich noch nie versucht - traue mir das einfach nicht zu.
                                      Mit Blockly würde ich es angehen, da ist gestern der RegEx Block dazu gekommen, der das ganze ermöglichen müsste.

                                      Du kannst den URL doch auch in einem Browser eingeben und bekommst das json zurück.
                                      Das geht definitiv über js.

                                      Wenn das mit wget ginge (??) würde eine Datei mit dem json angelegt, die wiederum mit dem Parser-Adapter zerlegt werden könnte.

                                      Aber ich hätte gerne alles auf einem System, dann kann man mit den RegEx Schnipseln jonglieren und anschließend einen sinnvollen output generieren, der immer die gleiche Struktur (Datenpunkte) hat, egal in welcher Reihenfolge die Rohdaten im json vorliegen.

                                      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                      metaxaM 1 Antwort Letzte Antwort
                                      0
                                      • HomoranH Homoran

                                        @metaxa

                                        @metaxa sagte in Skripten des E-Control Spritpreisrechners:

                                        Wie gesagt, ich beschäftige mich mit programmieren und im Speziellen mit JS grad mal paar Stunden und heute

                                        Da kannst du mehr als ich ;-) Natives js habe ich noch nie versucht - traue mir das einfach nicht zu.
                                        Mit Blockly würde ich es angehen, da ist gestern der RegEx Block dazu gekommen, der das ganze ermöglichen müsste.

                                        Du kannst den URL doch auch in einem Browser eingeben und bekommst das json zurück.
                                        Das geht definitiv über js.

                                        Wenn das mit wget ginge (??) würde eine Datei mit dem json angelegt, die wiederum mit dem Parser-Adapter zerlegt werden könnte.

                                        Aber ich hätte gerne alles auf einem System, dann kann man mit den RegEx Schnipseln jonglieren und anschließend einen sinnvollen output generieren, der immer die gleiche Struktur (Datenpunkte) hat, egal in welcher Reihenfolge die Rohdaten im json vorliegen.

                                        metaxaM Offline
                                        metaxaM Offline
                                        metaxa
                                        schrieb am zuletzt editiert von
                                        #153

                                        @Homoran sagte in Skripten des E-Control Spritpreisrechners:

                                        Das geht definitiv über js.

                                        Da bin ich mir sicher, nur ich hab keinen Tau davon. Die Syntax "$.getJSON()" ist für mich eine Ansammlung spanischer Dörfer. Wobei ich jetzt ehrlich gesagt, den Parser als geringstes Problem sehe. Eher - da sind wir uns ja einig - das sichere Auffinden "seiner" Tankstelle.

                                        NegaleinN 1 Antwort Letzte Antwort
                                        0
                                        • metaxaM metaxa

                                          Und was mich jetzt grad am meisen interessiert: Hat es schon jemand ausprobiert?

                                          @Negalein sagte in Skripten des E-Control Spritpreisrechners:

                                          Das wäre toll!

                                          Was wäre noch von Interesse?

                                          Am allerwichtigsten ist, dass alle Daten zueinander passen.
                                          Jetzt mit Parser und Regex ist es so, dass oft zB Ort 1 mit PLZ 3 und Preis 5 verheiratet sind.
                                          Funktionieren muss es mit der API, da auch alle anderen Apps (Android sowie das angebissene Äpfelchen) darauf zugreifen.

                                          LG, mxa

                                          sigi234S Online
                                          sigi234S Online
                                          sigi234
                                          Forum Testing Most Active
                                          schrieb am zuletzt editiert von
                                          #154

                                          @metaxa

                                          Gerade getestet, schaut gut aus!

                                          Screenshot (2754)_LI.jpg

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

                                          metaxaM 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          662

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe