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

  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.2k

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

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

Skripten des E-Control Spritpreisrechners

Geplant Angeheftet Gesperrt Verschoben JavaScript
javascriptmonitoring
292 Beiträge 21 Kommentatoren 44.9k 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.
  • metaxaM metaxa

    @Negalein & @sigi234
    Dann kann ich jetzt mal aufhören zu Schwitzen und hab aktuell keine weiteren aktuellen ToDo aus dem Thema :-)

    Wenn Pix auftauchen sollte, würde mich sehr über seine Hilfe freuen.

    1. Wie ich den JSON direkt ins Script krieg, die Syntax "$.getJSON()" ist für mich eine Ansammlung spanischer Dörfer.
    2. Wie ich diese Fehlermeldungen am Anfang wegbekomme oder eben verstehen und ändern kann

    LG, mxa

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

    @metaxa
    Der Grundstein ist gelegt:

    Oesi-Tanken02.png

    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 metaxaM 2 Antworten Letzte Antwort
    1
    • HomoranH Homoran

      @metaxa
      Der Grundstein ist gelegt:

      Oesi-Tanken02.png

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

      @Homoran sagte in Skripten des E-Control Spritpreisrechners:

      @metaxa
      Der Grundstein ist gelegt:

      Ösi-Tanken :joy_cat: :joy_cat: :joy_cat:

      ° 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 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

        P Offline
        P Offline
        pix
        schrieb am zuletzt editiert von
        #166

        Hallo,

        ja, das ist der richtige Weg. Dann braucht es auch keinen Parser-Adapter, das kann ein Skript ganz gut.

        Mir fehlt gerade etwas die Zeit, um es komplett vorzukauen. Bin noch mit dem Pollenflug beschäftigt und dann gehts ja schon fast nach KS. Ich werde es mir im Zug nochmal ansehen. Dort kann ich aber nur grob was zusammenschreiben, da ich da nicht testen kann (hab noch keinen mobilen iobroker-Master).

        Hilft euch denn nicht das Spritpreis Skript, das dem tankerkoenig-Adapter damals vorausging? Da läuft doch das Parsen einer JSON auch erfolgreich.
        https://forum.iobroker.net/post/1012

        Gruß
        Pix

        ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

        1 Antwort Letzte Antwort
        0
        • HomoranH Homoran

          @metaxa
          Der Grundstein ist gelegt:

          Oesi-Tanken02.png

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

          @Homoran
          e566544f-e569-434d-8cef-2491a0ae1436-grafik.png
          e53f5399-a4c4-495d-b7b0-6f77ad7a904b-grafik.png

          HomoranH G 2 Antworten Letzte Antwort
          0
          • metaxaM metaxa

            @Homoran
            e566544f-e569-434d-8cef-2491a0ae1436-grafik.png
            e53f5399-a4c4-495d-b7b0-6f77ad7a904b-grafik.png

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

            @metaxa
            Mal ganz grob gedacht

            Was hältst du von einem array.
            Wird beim allerersten Durchlauf angelegt mit allen daten der 10 tanken
            Da kannst du dann bei jedem weiteren Durchlauf nur die preise im array austauschen oder gegen >xx wenn nicht unter den top5

            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
            • NegaleinN Offline
              NegaleinN Offline
              Negalein
              Global Moderator
              schrieb am zuletzt editiert von Negalein
              #169

              So, mein grober Entwurf ist mal fertig.
              Gefällt mir noch nicht perfekt, aber zumindest sieht man auf den 1. Blick alles nötige!

              Danke nochmals

              Edit vis (1).png

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

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

                Hübsch, wirklich gelungen!

                Bin gerade am Erweitern um Entfernung und ob zum Zeitpunkt der letzten Abfrage - offen oder zu.

                Gerne und LG, mxa

                1 Antwort Letzte Antwort
                2
                • HomoranH Homoran

                  @metaxa
                  Mal ganz grob gedacht

                  Was hältst du von einem array.
                  Wird beim allerersten Durchlauf angelegt mit allen daten der 10 tanken
                  Da kannst du dann bei jedem weiteren Durchlauf nur die preise im array austauschen oder gegen >xx wenn nicht unter den top5

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

                  @Homoran
                  Hallo Rainer! Ja array, an dem geht eh kein Weg vorbei. Nur, ich darfs nicht laut schreiben, ich habe keinen blassen Schimmer davon.
                  Hab es gestern Abend noch geschafft, mit dem Hinweis von PIX, die URL direkt ins Script (also ohne Parser) zu laden. Nur bei der Schleifenabfrage der einzelnen Werte hagelt es Beschwerden seitens JS im Log. Da bin ich noch sehr hilfsbedürftig :-)
                  Auch habe ich mir gestern Nacht noch angesehen wie denn das ist, wenn man auch geschlossene Tankstellen anzeigen läßt. Naja, ausbaufähig, bei einigen sieht man einen Preis, bei anderen wieder nicht.
                  Die Endausbaustufe sehe ich in meinem Script:

                  • kein Parser notwendig

                  • nur das Script mit folgenden Parametern zum Einstellen:

                    • Längengrad & Breitengrad

                    • Diesel/ Benzin

                    • nur offene / auch geschlossene

                  Nur brauche ich halt leider Hilfe, mit lesen alleine komme ich nicht mehr weiter, bzw. ist es auf die Dauer sehr zeitraubend.

                  LG, mxa

                  HomoranH 1 Antwort Letzte Antwort
                  0
                  • metaxaM metaxa

                    @Homoran
                    Hallo Rainer! Ja array, an dem geht eh kein Weg vorbei. Nur, ich darfs nicht laut schreiben, ich habe keinen blassen Schimmer davon.
                    Hab es gestern Abend noch geschafft, mit dem Hinweis von PIX, die URL direkt ins Script (also ohne Parser) zu laden. Nur bei der Schleifenabfrage der einzelnen Werte hagelt es Beschwerden seitens JS im Log. Da bin ich noch sehr hilfsbedürftig :-)
                    Auch habe ich mir gestern Nacht noch angesehen wie denn das ist, wenn man auch geschlossene Tankstellen anzeigen läßt. Naja, ausbaufähig, bei einigen sieht man einen Preis, bei anderen wieder nicht.
                    Die Endausbaustufe sehe ich in meinem Script:

                    • kein Parser notwendig

                    • nur das Script mit folgenden Parametern zum Einstellen:

                      • Längengrad & Breitengrad

                      • Diesel/ Benzin

                      • nur offene / auch geschlossene

                    Nur brauche ich halt leider Hilfe, mit lesen alleine komme ich nicht mehr weiter, bzw. ist es auf die Dauer sehr zeitraubend.

                    LG, mxa

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

                    @metaxa

                    Naja, so richtig habe ich auch keine Ahnung, habe vor 20 Jahren mal Datenbanken programmiert in einer basic-artigen Sprache. Auch irgendwas mit einem dynarray().
                    Da ging es auch (für mich) "einfacher" indem ich mit locate() in einer Tabelle gesucht hatte. Das wäre hier entsprechend mit den States.
                    Leider bräuchte man wahrscheinlich wegen der rotierenden Reihenfolge dann genauso viele "Hilfsstates" wie eigentliche States.

                    Das schlimme ist ich habe soooo viele Ideen, bin aber durch mein NichtKönnen an der Lösung gehindert.

                    Dein Endziel entspricht in weiten Teilen meinem, evtl. schieße ich da noch drüber hinaus:

                    • kein Parser(Adapter) notwendig - KLAR!
                    • zum Einstellen
                      ** Längen und Breitengrad - nöö, das steht doch im js-Adapter
                      *** Und da würde ich gerne noch einen draufsetzen wenn die Tanke nicht unter den ersten 5 ist, eine bis 4 weitere Abfragen mit Verschiebung des Zentrums um den halben Radius in 4 Himmelsrichtungen

                    @metaxa sagte in Skripten des E-Control Spritpreisrechners:

                    alleine komme ich nicht mehr weiter, bzw. ist es auf die Dauer sehr zeitraubend.

                    und deswegen reizt es mich so, obwohl ich "nichts davon habe".

                    Leider falle ich die nächste Zeit aus, so dass ich erst mal nicht weitermachen kann.
                    Vielleicht kommt morgen abend beim Gespräch in Kassel was raus.

                    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
                    • G Offline
                      G Offline
                      Georgius
                      schrieb am zuletzt editiert von
                      #173

                      Hat wer eine Idee wie man den Fehler abfangen kann wenn kein Preis vorhanden ist?

                      HomoranH 1 Antwort Letzte Antwort
                      0
                      • G Georgius

                        Hat wer eine Idee wie man den Fehler abfangen kann wenn kein Preis vorhanden ist?

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

                        @Georgius sagte in Skripten des E-Control Spritpreisrechners:

                        wie man den Fehler abfangen kann wenn kein Preis vorhanden ist?

                        Mehrere - was wäre denn sinnvoll?

                        1.) einen Wert angeben mit >1.217 wenn der teuerste unter den Top5 1.217 wäre und die gewünschte Tanke nunter Top 6-10 liegt und somit teurer sein muss.
                        2.) einen anderen Weg finden doch noch den Preis herauszubekommen
                        3.) "geschlossen" angeben weil sie zu 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 -

                        1 Antwort Letzte Antwort
                        0
                        • G Offline
                          G Offline
                          Georgius
                          schrieb am zuletzt editiert von
                          #175

                          Da reden wir von unterschiedlichen Sachen. Tankstelle 6 kann auch einen Preis haben, wenn mehrere Tankstellen den selben Preis haben.

                          Wenn kein Preis vorhanden ist bekomme ich einen error und das Programm bricht ab.

                          if ((gasStation[index].prices[0].amount)!=null){
                          

                          Noch eine Frage:

                          setState("javascript.0.Sprit.Tankstelle_"+index+".adresse", gasStation[index].location.address + "\n" +gasStation[index].location.postalCode + " "+ gasStation[index].location.city);
                              }
                          

                          Bekomme ich keinen Zeilenumbruch in den Datenpunkt und auch nicht im Vis (getestet mit Basic/Strings)

                          HomoranH G 2 Antworten Letzte Antwort
                          0
                          • G Georgius

                            Da reden wir von unterschiedlichen Sachen. Tankstelle 6 kann auch einen Preis haben, wenn mehrere Tankstellen den selben Preis haben.

                            Wenn kein Preis vorhanden ist bekomme ich einen error und das Programm bricht ab.

                            if ((gasStation[index].prices[0].amount)!=null){
                            

                            Noch eine Frage:

                            setState("javascript.0.Sprit.Tankstelle_"+index+".adresse", gasStation[index].location.address + "\n" +gasStation[index].location.postalCode + " "+ gasStation[index].location.city);
                                }
                            

                            Bekomme ich keinen Zeilenumbruch in den Datenpunkt und auch nicht im Vis (getestet mit Basic/Strings)

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

                            @Georgius sagte in Skripten des E-Control Spritpreisrechners:

                            Da reden wir von unterschiedlichen Sachen.

                            Nein!

                            @Georgius sagte in Skripten des E-Control Spritpreisrechners:

                            Tankstelle 6 kann auch einen Preis haben, wenn mehrere Tankstellen den selben Preis haben.

                            Genau, kann, muss aber nicht. Das ist ein Sonderfall

                            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
                            • G Georgius

                              Da reden wir von unterschiedlichen Sachen. Tankstelle 6 kann auch einen Preis haben, wenn mehrere Tankstellen den selben Preis haben.

                              Wenn kein Preis vorhanden ist bekomme ich einen error und das Programm bricht ab.

                              if ((gasStation[index].prices[0].amount)!=null){
                              

                              Noch eine Frage:

                              setState("javascript.0.Sprit.Tankstelle_"+index+".adresse", gasStation[index].location.address + "\n" +gasStation[index].location.postalCode + " "+ gasStation[index].location.city);
                                  }
                              

                              Bekomme ich keinen Zeilenumbruch in den Datenpunkt und auch nicht im Vis (getestet mit Basic/Strings)

                              G Offline
                              G Offline
                              Georgius
                              schrieb am zuletzt editiert von
                              #177

                              @Georgius
                              Frage 1 gelöst:

                              if ((gasStation[index].prices[0])!=undefined){
                              

                              führt die nächsten Zeilen nur aus wenn ein Preis vorhanden ist.

                              Langsam macht die ganze Sache und JS Spaß

                              1 Antwort Letzte Antwort
                              0
                              • sigi234S Online
                                sigi234S Online
                                sigi234
                                Forum Testing Most Active
                                schrieb am zuletzt editiert von
                                #178

                                Hallo,

                                Wie kann man den Preis als Punkt statt Komma bekommen?
                                Kann ich das wo umstellen?
                                1,169 / 1.169

                                Warum das? Weil einige Widget das Komma nicht erkennen............

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

                                G 1 Antwort Letzte Antwort
                                0
                                • sigi234S sigi234

                                  Hallo,

                                  Wie kann man den Preis als Punkt statt Komma bekommen?
                                  Kann ich das wo umstellen?
                                  1,169 / 1.169

                                  Warum das? Weil einige Widget das Komma nicht erkennen............

                                  G Offline
                                  G Offline
                                  Georgius
                                  schrieb am zuletzt editiert von Georgius
                                  #179

                                  @sigi234

                                  Das

                                  .toString().replace(".",",")
                                  

                                  in Zeile 11 des Startbeitrag weglassen.

                                  Nicht vergessen dass dann der Datenpunkt "number" und nicht "string" sein darf.

                                  sigi234S 1 Antwort Letzte Antwort
                                  1
                                  • HomoranH Homoran

                                    @metaxa

                                    Naja, so richtig habe ich auch keine Ahnung, habe vor 20 Jahren mal Datenbanken programmiert in einer basic-artigen Sprache. Auch irgendwas mit einem dynarray().
                                    Da ging es auch (für mich) "einfacher" indem ich mit locate() in einer Tabelle gesucht hatte. Das wäre hier entsprechend mit den States.
                                    Leider bräuchte man wahrscheinlich wegen der rotierenden Reihenfolge dann genauso viele "Hilfsstates" wie eigentliche States.

                                    Das schlimme ist ich habe soooo viele Ideen, bin aber durch mein NichtKönnen an der Lösung gehindert.

                                    Dein Endziel entspricht in weiten Teilen meinem, evtl. schieße ich da noch drüber hinaus:

                                    • kein Parser(Adapter) notwendig - KLAR!
                                    • zum Einstellen
                                      ** Längen und Breitengrad - nöö, das steht doch im js-Adapter
                                      *** Und da würde ich gerne noch einen draufsetzen wenn die Tanke nicht unter den ersten 5 ist, eine bis 4 weitere Abfragen mit Verschiebung des Zentrums um den halben Radius in 4 Himmelsrichtungen

                                    @metaxa sagte in Skripten des E-Control Spritpreisrechners:

                                    alleine komme ich nicht mehr weiter, bzw. ist es auf die Dauer sehr zeitraubend.

                                    und deswegen reizt es mich so, obwohl ich "nichts davon habe".

                                    Leider falle ich die nächste Zeit aus, so dass ich erst mal nicht weitermachen kann.
                                    Vielleicht kommt morgen abend beim Gespräch in Kassel was raus.

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

                                    @Homoran sagte in Skripten des E-Control Spritpreisrechners:

                                    und deswegen reizt es mich so, obwohl ich "nichts davon habe".

                                    Lieber Rainer, du hast den schier unerschöpflich, ewigen Dank, deiner unmittelbaren Nachbarn, den Ösis :-) + :-)

                                    Aber eine praktische Feststellung, wie ich es sehe und seit Jahren handhabe:

                                    1. Wenn ich unterwegs tanken muss, dann muss ich sehr demnächst tanken. Ist es sehr, sehr dringend, dan nehme ich die nächste Diskontstelle

                                    2. Bin ich zu Hause und sollte am nächsten Tag tanken dann fahre ich bis jetzt immer zu meinem Lieblingsdiskonter auf dem Weg ins Büro. Sicher mache ich keinen Umweg wegen einer 2. oder 3. Kommastelle. Die ich auch vorab nicht wusste.

                                    3. Ich werde die Preisinfos künftig dafür verwenden, festzustellen wie weit vorne oder wie weit hinten im Ranking mein Diskonter auf dem Weg ins Büro ist. Sollte es eklatant sein, kann ich später, morgen oder wo anders hinfahren. In der Praxis - seit Jahren beobachtet - ist mein Diskonter meist ganz vorne, also passte es für mich. Wenn diese Tankstelle geschlossen hat und ich ganz dringend wegmüssen, dann ist meist der Preis auch sekundär.

                                    Deswegen werde ich MEINE Tankstelle auf Grund von Koordinaten hoffentlich unter den Top 10 "offenen" oder den Top 10 "mit geschlossenen" finden und darstellen. Die Top 5 werden mir nur als Info dienen.

                                    justmy2cents
                                    LG, mxa

                                    HomoranH sigi234S 2 Antworten Letzte Antwort
                                    0
                                    • metaxaM metaxa

                                      @Homoran
                                      e566544f-e569-434d-8cef-2491a0ae1436-grafik.png
                                      e53f5399-a4c4-495d-b7b0-6f77ad7a904b-grafik.png

                                      G Offline
                                      G Offline
                                      Georgius
                                      schrieb am zuletzt editiert von
                                      #181

                                      @metaxa Wo finde ich den Baustein result?

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

                                        Blocklybaustein? Unter Variablen anlegen!

                                        G 1 Antwort Letzte Antwort
                                        0
                                        • metaxaM metaxa

                                          Blocklybaustein? Unter Variablen anlegen!

                                          G Offline
                                          G Offline
                                          Georgius
                                          schrieb am zuletzt editiert von
                                          #183

                                          @metaxa

                                          Ja, nur unter welcher Rubrik

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          631

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          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