Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Skripten des E-Control Spritpreisrechners

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Skripten des E-Control Spritpreisrechners

    This topic has been deleted. Only users with topic management privileges can see it.
    • Negalein
      Negalein Global Moderator last edited by

      @metaxa

      Ich hab auch das Problem wie @SmarthomeMF

      Habe im Parser den Link eingetragen.
      https://api.e-control.at/sprit/1.0/search/gas-stations/by-address?latitude=XX.XXXXXX&longitude=XX.XXXXXX&fuelType=DIE&includeClosed=false
      instances - ioBroker.png

      Scheint unter Objekte auch auf.
      objects - ioBroker (1).png

      Aber in den Objekter scheint javascript.0.spritpreisrechner nicht auf.
      objects - ioBroker.png

      Hab ich was übersehen?

      Das Script hab ich so angepasst.

      on({id: "parser.0.Spritpreisrechner"/*Spritpreisrechner*/, change: 'any'}, function(obj)
      {
          var pricehit_01 = "undefiniert";
          var pricehit_02 = "undefiniert";
          var pricehit_03 = "undefiniert";
          var pricehit_04 = "undefiniert";
          var pricehit_05 = "undefiniert";
          var index = 0;
          var gasStation = JSON.parse(obj.state.val);
          if (gasStation.length === 0) return;
       
          for (index = 0; index < gasStation.length; ++index) {
       
          pricehit_01 = gasStation[0].name + " " + (gasStation[0].prices[0].amount).toString().replace(".",",") + " €";
          pricehit_02 = gasStation[1].name + " " + (gasStation[1].prices[0].amount).toString().replace(".",",") + " €";
          pricehit_03 = gasStation[2].name + " " + (gasStation[2].prices[0].amount).toString().replace(".",",") + " €";
          pricehit_04 = gasStation[3].name + " " + (gasStation[3].prices[0].amount).toString().replace(".",",") + " €";
          pricehit_05 = gasStation[4].name + " " + (gasStation[4].prices[0].amount).toString().replace(".",",") + " €";
          }
       
      setState("javascript.0.Spritpreisrechner.Preistreffer_01"/*Aktueller Spritpreis*/, pricehit_01);
      setState("javascript.0.Spritpreisrechner.Preistreffer_02"/*Aktueller Spritpreis*/, pricehit_02);
      setState("javascript.0.Spritpreisrechner.Preistreffer_03"/*Aktueller Spritpreis*/, pricehit_03);
      setState("javascript.0.Spritpreisrechner.Preistreffer_04"/*Aktueller Spritpreis*/, pricehit_04);
      setState("javascript.0.Spritpreisrechner.Preistreffer_05"/*Aktueller Spritpreis*/, pricehit_05);
      });
      
      metaxa 1 Reply Last reply Reply Quote 0
      • metaxa
        metaxa last edited by metaxa

        @SmarthomeMF sagte in Skripten des E-Control Spritpreisrechners:

        Ich habe parser installiert, und er läutf mit der API vom Spritpreisrechner

        Ist doch schon ein großer Schritt in die richtige Richtung! Nur, wenn du dir deinen Datenpunkt unter Objekte parser.0.Sprit ansiehst, wird da außer true oder false nix drinnen stehen. Bitte prüfe das!
        Weil,
        b29bbd32-e480-420b-99cf-b7a23b50cbef-grafik.png du unter Typ boolen nicht wie im 1. Beitrag geschrieben "JSON" ausgewählt hast.

        @steinejo_io sagte in Skripten des E-Control Spritpreisrechners:

        Name hab ich Spritpreisrechner vergeben - Rolle default - TYP JSON - und auch "Letztes Wert" anhaken dann geht euch euer Skript nicht hops wenn die E-Control mal nicht da ist.

        Wenn du in deinem Datenpunkt einen sehr langen String stehen hast, dann machen wir mit

        @SmarthomeMF sagte in Skripten des E-Control Spritpreisrechners:

        wo sollen die Preistreffer kommen?????

        weiter!
        LG, mxa

        1 Reply Last reply Reply Quote 0
        • metaxa
          metaxa @Negalein last edited by

          @Negalein

          @Negalein sagte in Skripten des E-Control Spritpreisrechners:

          Ich hab auch das Problem wie @SmarthomeMF

          Siehe meinen Beitrag von soeben an "SmarthomeMF"

          LG, mxa

          Negalein 1 Reply Last reply Reply Quote 0
          • Negalein
            Negalein Global Moderator @metaxa last edited by

            @metaxa sagte in Skripten des E-Control Spritpreisrechners:

            Siehe meinen Beitrag von soeben an "SmarthomeMF"

            Danke, habs auf JSON geändert und jetzt kommt auch der seeeehr lange String.

            Aber unter javascript.0 scheint nichts auf.

            1 Reply Last reply Reply Quote 0
            • SmarthomeMF
              SmarthomeMF last edited by

              @metaxa sagte in Skripten des E-Control Spritpreisrechners:

              Wenn du in deinem Datenpunkt einen sehr langen String stehen hast, dann machen wir mit

              Hab ich
              001.PNG

              1 Reply Last reply Reply Quote 0
              • metaxa
                metaxa last edited by metaxa

                ok, perfekt 🙂 (Ich der große ioBroker Klugscheisser, hahahaha)

                "Mein" Script beschreibt die von mir händisch - in meiner Struktur - angelegten Datenpunkte. Wenn ihr noch keine eigene Struktur habt oder wollt, dann müsst ihr bitte diese Zeilen

                setState("a_andreas.0.eigene_dp.Spritpreisrechner.Preistreffer_01"/*Aktueller Spritpreis*/, pricehit_01);
                setState("a_andreas.0.eigene_dp.Spritpreisrechner.Preistreffer_02"/*Aktueller Spritpreis*/, pricehit_02);
                setState("a_andreas.0.eigene_dp.Spritpreisrechner.Preistreffer_03"/*Aktueller Spritpreis*/, pricehit_03);
                setState("a_andreas.0.eigene_dp.Spritpreisrechner.Preistreffer_04"/*Aktueller Spritpreis*/, pricehit_04);
                setState("a_andreas.0.eigene_dp.Spritpreisrechner.Preistreffer_05"/*Aktueller Spritpreis*/, pricehit_05);
                

                abändern. Jeweils der Logik folgend in

                setState("javascript.0.Aktueller_Spritpreis_01"/*Aktueller Spritpreis*/, pricehit_01);
                setState("javascript.0.Aktueller_Spritpreis_02"/*Aktueller Spritpreis*/, pricehit_02);
                usw.......
                

                Was ich jeztz nicht weiß, ob JS die Datenpunkte automatisch auch anlegt. Unter JS kann man Datenpunkte auto nur nur in der JS Struktur anlegen, nicht wo anders.

                Versucht es mal!
                LG, mxa

                Negalein 1 Reply Last reply Reply Quote 0
                • Negalein
                  Negalein Global Moderator @metaxa last edited by Negalein

                  @metaxa sagte in Skripten des E-Control Spritpreisrechners:

                  Was ich jeztz nicht weiß, ob JS die Datenpunkte automatisch auch anlegt. Unter JS kann man Datenpunkte auto nur nur in der JS Struktur anlegen, nicht wo anders.

                  Hat leider nicht funktioniert.

                  Habs geändert in

                  setState("javascript.0.Aktueller_Spritpreis_01"/*Aktueller Spritpreis*/, pricehit_01);
                  setState("javascript.0.Aktueller_Spritpreis_02"/*Aktueller Spritpreis*/, pricehit_02);
                  setState("javascript.0.Aktueller_Spritpreis_03"/*Aktueller Spritpreis*/, pricehit_03);
                  setState("javascript.0.Aktueller_Spritpreis_04"/*Aktueller Spritpreis*/, pricehit_04);
                  setState("javascript.0.Aktueller_Spritpreis_05"/*Aktueller Spritpreis*/, pricehit_05);
                  

                  doch unter javascript.0 scheint es nicht auf

                  wie könnte ich händisch die DP anlegen?

                  1 Reply Last reply Reply Quote 1
                  • SmarthomeMF
                    SmarthomeMF last edited by

                    läuft bei mir auch nicht
                    01.PNG
                    02.PNG
                    irgendwas machen wir falsch!

                    Negalein metaxa 2 Replies Last reply Reply Quote 0
                    • Negalein
                      Negalein Global Moderator @SmarthomeMF last edited by

                      @SmarthomeMF sagte in Skripten des E-Control Spritpreisrechners:

                      läuft bei mir auch nicht

                      hast du die DP unter javascript.0 händisch angelegt?

                      Geht das über den Expertenmodus und dann auf das "+"?

                      Wenn ja, was gehört bei Datenpunkttyp ausgewählt?

                      metaxa 1 Reply Last reply Reply Quote 0
                      • metaxa
                        metaxa @Negalein last edited by

                        @Negalein bc54c0b0-a96c-4c30-b40f-29b2f776757a-grafik.png

                        Negalein 1 Reply Last reply Reply Quote 0
                        • Negalein
                          Negalein Global Moderator @metaxa last edited by

                          @metaxa sagte in Skripten des E-Control Spritpreisrechners:

                          @Negalein bc54c0b0-a96c-4c30-b40f-29b2f776757a-grafik.png

                          Danke

                          Was gehört bei Datenpunkttyp ausgewählt?

                          metaxa 1 Reply Last reply Reply Quote 0
                          • metaxa
                            metaxa @SmarthomeMF last edited by

                            @SmarthomeMF sagte in Skripten des E-Control Spritpreisrechners:

                            irgendwas machen wir falsch!

                            Glaube ich nicht, ich denke der ParserDP hat sich nicht geändert. Ihr müßt eine Änderung erzwingen!

                            1 Reply Last reply Reply Quote 0
                            • SmarthomeMF
                              SmarthomeMF last edited by

                              @metaxa sagte in Skripten des E-Control Spritpreisrechners:

                              ich denke der ParserDP hat sich nicht geändert. Ihr müßt eine Änderung erzwingen!

                              wie

                              metaxa 1 Reply Last reply Reply Quote 0
                              • metaxa
                                metaxa @Negalein last edited by

                                @Negalein sagte in Skripten des E-Control Spritpreisrechners:

                                Was gehört bei Datenpunkttyp ausgewählt?

                                54211747-59f4-44f7-8d1a-052e9d258088-grafik.png

                                1 Reply Last reply Reply Quote 0
                                • metaxa
                                  metaxa @SmarthomeMF last edited by

                                  @SmarthomeMF sagte in Skripten des E-Control Spritpreisrechners:

                                  @metaxa sagte in Skripten des E-Control Spritpreisrechners:

                                  ich denke der ParserDP hat sich nicht geändert. Ihr müßt eine Änderung erzwingen!

                                  wie

                                  Die Profis werden mich erschlagen ..... ich habe immer den Datentyp auf boolen umgeändert (so wie du es urspünglich falsch hattest) speichern, dann wurde der DP geändert, der String wieder weg. Dann wieder richtig auf JSON geändert und gespeichert, dann aktualisert er wieder. Darauf sollte dein Script reagieren.

                                  Hm?
                                  LG

                                  Negalein 2 Replies Last reply Reply Quote 1
                                  • Negalein
                                    Negalein Global Moderator @metaxa last edited by

                                    @metaxa sagte in Skripten des E-Control Spritpreisrechners:

                                    Die Profis werden mich erschlagen ..... ich habe immer den Datentyp auf boolen umgeändert (so wie du es urspünglich falsch hattest) speichern, dann wurde der DP geändert, der String wieder weg. Dann wieder richtig auf JSON geändert und gespeichert, dann aktualisert er wieder. Darauf sollte dein Script reagieren.

                                    DANKE, es funktioniert

                                    objects - ioBroker (4).png

                                    metaxa 1 Reply Last reply Reply Quote 0
                                    • Negalein
                                      Negalein Global Moderator @metaxa last edited by

                                      @metaxa sagte in Skripten des E-Control Spritpreisrechners:

                                      Darauf sollte dein Script reagieren.

                                      PS: bitte melde dich, wenn du es geschafft hast, die Adresse anzeigen zu lassen.
                                      Leider gibt es bei mir zB 2 Tankstellen, die gleich heißen, aber doch 30km auseinander sind.
                                      Da wäre die Adresse (zumindest der Ort) sehr vorteilhaft.

                                      1 Reply Last reply Reply Quote 0
                                      • metaxa
                                        metaxa @Negalein last edited by

                                        @Negalein fein!

                                        Dann tue noch dem Kollegen "steinejo_io" ein positives Voting geben, er hat den Megaanteil daran!
                                        f9185208-04a6-46dc-a319-e7dcbf7bf945-grafik.png
                                        LG, mxa

                                        Negalein 1 Reply Last reply Reply Quote 0
                                        • Negalein
                                          Negalein Global Moderator @metaxa last edited by

                                          @metaxa sagte in Skripten des E-Control Spritpreisrechners:

                                          Dann tue noch dem Kollegen "steinejo_io" ein positives Voting geben, er hat den Megaanteil daran!

                                          Logo 🙂

                                          metaxa 1 Reply Last reply Reply Quote 0
                                          • metaxa
                                            metaxa @Negalein last edited by

                                            @Negalein wegen Adresse ...
                                            hock dich mal hin und probier herum, eventuell bist schneller als ich 🙂
                                            Hab auch nur herumgedoktert bis jetzt und mich durchgebissen 🙂
                                            Schönen Abend von Wien nach OÖ!
                                            LG, mxa

                                            Negalein 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            443
                                            Online

                                            31.6k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            javascript monitoring
                                            21
                                            292
                                            30686
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo