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. Node-Red
  5. Node-red: Spritpreise einlesen

NEWS

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

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

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

Node-red: Spritpreise einlesen

Geplant Angeheftet Gesperrt Verschoben Node-Red
125 Beiträge 24 Kommentatoren 37.7k Aufrufe
  • Ä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.
  • F Offline
    F Offline
    Fitti
    schrieb am zuletzt editiert von
    #105

    @pix:

    @Fitti:

    scheint also nicht zu funktionieren - es wird nicht sauber die leeren Einträge abgefangen. Der Code funktioniert, aber nur, wenn die Daten in den Javascript Einstellungen hinterlegt sind. Deshalb habe ich den Code dahin geändert. Im alten Code wurden die Variablen noch manuell befüllt.
    Hmm - verstehe ich hier was falsch?

    Die GeoKoords-Werte waren ja nicht gesetzt. Mit den JS-Zeilen

    var geo = getObject('system.adapter.javascript.' + teile[1]);
    if (geo && geo.native) {
        breite = geo.native.latitude;
        laenge = geo.native.longitude;
        if (logging) log('Spritpreis - Geokoordinaten aus Javascript-Adapter gelesen');
    

    Wird doch aber genau abgefragt, ob diese gesetzt sind. Erst dann dürfte er in die if Schleife rein. Oder was ist .native genau?

    Wenn .native doch noch irgendwas anderes und somit eigentlich immer true ist, würde ich den code so schreiben:

    ...
    if (geo && geo.native && geo.native.latitude && geo.native.longitude) {
        ...
    

    oder ein

    ...
    if (geo && geo.native && (geo.native.latitude > 1) && (geo.native.longitude > 1)) {
        ...
    

    Bin mir nicht sicher, ob es auch mit floats geht. Aber Du weißt ja was ich meine. :D

    @pix:

    @Fitti:

    Kannst Du nicht im ersten Posting die fertigen Scripte eintragen `
    Nee, das kann ich leider nicht. Denn

    … `
    Okay, das kann man akzeptieren. Ich habe es halt mit anderen Foren verglichen, wo wir dann doch sozusagen die letzten "Stände" - durchaus mehrere Varianten- immer im ersten Thread eingetragen haben. Somit wurde etwas die Nachfragen reduziert, da kaum einer noch hundert Einträge durchackert. Dann nimmt man doch das alte Skript (der Neue Leser, der interessiert einsteigt), wo noch der eine oder andere Fehler drinnen ist und schon gab es kuddelmuddel, da weiter hinten dann teilweise die Fragen auf die letzte Variante (die, die bereits von Anfang an dabei sind) oder die erste Variante (halt der Neueinsteiger) genommen wurde.

    Klar wurde der erste Eintrag länger - aber ich empfinde es durchaus als lesbarer. War halt nur so eine Idee… 8-)

    Viele Grüße,

    Fitti

    "Es wird die Zeit kommen, da ihr euch entscheiden müsst zwischen dem, was richtig ist, und dem, was bequem ist."
    Plural von Status ist auch Status!

    1 Antwort Letzte Antwort
    0
    • paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von
      #106

      @Fitti:

      würde ich den code so schreiben:

      ...
      if (geo && geo.native && geo.native.latitude && geo.native.longitude) {
          ...
      ```` `  
      

      Ja, so muss geprüft werden, ob Werte eingtragen sind.

      ...
      if (geo.native.latitude && geo.native.longitude) {
          ...
      

      sollte auch funktionieren.

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

      1 Antwort Letzte Antwort
      0
      • F Offline
        F Offline
        Fritzo81
        schrieb am zuletzt editiert von
        #107

        Hallo,

        ich hätte da mal eine Frage, hab den ganzen Nachmittag schon rumprobiert,

        was und wo muß ich in ein Wiget eingeben, damit mir die Preise angezeigt werden? (Welches Widget)

        Gruß Fritzo

        1 Antwort Letzte Antwort
        0
        • L Offline
          L Offline
          looxer01
          schrieb am zuletzt editiert von
          #108

          @Fritzo81:

          was und wo muß ich in ein Wiget eingeben, damit mir die Preise angezeigt werden? (Welches Widget) `

          Hi,

          also ich habe es sehr einfach gehalten und ein Basic HTML Widget verwendet

          Du schreibst ja mit Node Red in ein ioBroker object. Die objekt-ID des objektes gibst du dort unter ALLGEMEIN ein.

          sieht dann so aus bei mir:

          305_benzinpreis.jpg

          1 Antwort Letzte Antwort
          0
          • F Offline
            F Offline
            Fritzo81
            schrieb am zuletzt editiert von
            #109

            Hi looxer,

            ich hab beides probiert, mit node-red und mit java.

            Bei java bekomme ich ja eine ID erstellt, bei node hab ich die nicht gefunden.

            Kannst du mal dein Widget exportieren?

            1 Antwort Letzte Antwort
            0
            • L Offline
              L Offline
              looxer01
              schrieb am zuletzt editiert von
              #110

              bei Node Red ebenfalls- :
              305_benzinpreis2.jpg

              nur solltest du dann eine sinnvole object-ID migeben. z.B.

              nodered.0.Bezinzpreise.Aral_Diesel

              nodered.0.Bezinzpreise.Aral_E10

              nodered.0.Bezinzpreise.Aral_E5

              etc (habe ich zwar noch nicht getestet, sollte aber gehen)

              oder wie auch immer. Das Widget was ich da habe ist ja nur fuer den Preis.

              Zusaetzlich dann noch Texte und das jeweilige Image.

              Das Widget mit den Preisen ist ein Basic HTML. Da traegst du einfach die vorher definierte ID ein

              unter Javarscript sähe das so aus, was du uebrigens auch machen kannst. Erst in javascript die create states und die IDs in rode ned eingeben. Ist aber ein Umweg

              createState('Benzinpreise.Aral_Diesel',0);

              createState('Benzinpreise.Aral_E10',0);

              createState('Benzinpreise.Aral_E5',0);

              vG Looxer

              1 Antwort Letzte Antwort
              0
              • D Offline
                D Offline
                Defaekator
                schrieb am zuletzt editiert von
                #111

                Hallo zusammen und vielen Dank für die vielen Skripte und Flows,

                ich würde gerne eine ähnliche View anlegen wie ruhr70 mit den 4 Tankstellen inkl. Markenzeichen und zusätzlichen günstigsten Tanke.

                Habe den Flow mit Tankstellen im Umkreis importiert, allerdings scheitert es bei mir momentan schon daran, was bei http request bei url eingetragen werden muss (api und tankstellen ID? aber wie genau?)

                Wäre sehr dankbar für einen kleinen Schubs in die richtige Richtung.

                1 Antwort Letzte Antwort
                0
                • wendy2702W Online
                  wendy2702W Online
                  wendy2702
                  schrieb am zuletzt editiert von
                  #112

                  @Jens1809:

                  Hi,

                  auch wenn es vielleicht nicht mehr ganz aktuell ist aber hier ein etwas anderer Lösungsansatz von mir.

                  Ich mag nicht tausend verschiedene Elemente im Flow zu haben und habe deswegen die ganzen Teile in eine Funktion gepackt die mir einen HTML Table in die Variable schreibt und ich nur noch im VIS die Variable einem HTML Element zuweisen muss. Da ich das Design von Tankekoenig.de als gelungen empfinde habe ich es gleich noch übernommen für die Liste.

                  Das ganze sieht dann so aus:

                  filename="vis.JPG" index="0">~~ `

                  Hi,

                  ich versuche gerade eine Kombination aus verschiedenen Abfragen zu basteln. Auf der Übersichtsseite meines Tablets reicht mir eine "kurze" Tabelle der Tankstellen. Wenn ich dann auf das entprechende Widget Tippe möchte ich das ein neuer View sich öffnet auf dem ich dann diese Abfrage sehen kann.

                  Den Wechsel zu dem Subview habe ich hinbekommen. Aber welches Widget nutze ich am besten zur Darstellung der Abfrage? Cool wäre es auch wenn beim Drücken des Widget auf der Übersichtsseite Zeitgleich die Anfrage aktualisiert werden würde. Wie kann ich das zwischen Widget und NodeRed verknüpfen?

                  Danke für eure Hilfe

                  Bitte keine Fragen per PN, die gehören ins Forum!

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

                  1 Antwort Letzte Antwort
                  0
                  • P Offline
                    P Offline
                    pix
                    schrieb am zuletzt editiert von
                    #113

                    @Defaekator:

                    Cool wäre es auch wenn beim Drücken des Widget auf der Übersichtsseite Zeitgleich die Anfrage aktualisiert werden würde. `
                    Das wünsche ich mir auch, ist aber bisher nicht möglich. Die Views und Unterviews werden alle gleichzeitig vom Browser geladen und jeweils nur auf Kommando einzeln gezeigt. Ein zweiter Auslöser für das Aktualisieren des Skriptes ist also immer noch nötig. Ich finde aber, das ist nicht zuviel der Mühe. ;)

                    @wendy2702:

                    Aber welches Widget nutze ich am besten zur Darstellung der Abfrage? `
                    Das Basic HTML Widget für die Darstellung der Tabelle. Die CSS-Formatierungen gehören in den Reiter CSS/Projekt, zu finden neben den Widget Einstellungen rechts im VIS Editor.

                    Ich nutze das Widget so mit einem Binding

                    [{"tpl":"tplHtml","data":{"visibility-cond":"==","visibility-val":1,"refreshInterval":"0","name":"Sprit Tabelle billigste Tankstellen","html":"{javascript.2.Sprit.billigste_Tankstelle.Tabelle}"},"style":{"left":"70px","top":"5px","color":"rgba(250,250,250,0.9)","font-family":"","font-size":"12px","width":"250px","height":"auto","z-index":"21"},"widgetSet":"basic"}]
                    

                    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
                    • H Offline
                      H Offline
                      HKF8770
                      schrieb am zuletzt editiert von
                      #114

                      Hallo,

                      anbei meine Abfrage bei Tankerkönig

                      https://creativecommons.tankerkoenig.de/json/list.php?lat=48.5932300&lng=9.7136800&&rad=5&sort=price&type=diesel&isOpen=true&apikey=29ba20ab-1102-9349-fdbc-0530b920441a
                      

                      Ich bekomme dann folgende Antwort

                      {"license":"CC BY 4.0 -  http:\/\/creativecommons.tankerkoenig.de","data":"MTS-K","stations":[{"name":"TOTAL DEGGINGEN","lat":48.59667,"lng":9.715833,"brand":"TOTAL","dist":0.4,"price":1.069,"id":"f9dbc0e3-cb97-4f88-9678-7d351c7015b7","street":"KOENIGSTR.","houseNumber":"52","postCode":73326,"place":"DEGGINGEN","isOpen":false},{"name":"Aral Tankstelle","lat":48.5816536,"lng":9.684212,"brand":"ARAL","dist":2.5,"price":1.069,"id":"ad7a3c98-50c8-4d97-880d-172d4a0cfca8","street":"Bahnhofstra\u00dfe","houseNumber":"4-8","postCode":73342,"place":"Bad Ditzenbach","isOpen":false},{"name":"AVIA Station","lat":48.6057,"lng":9.76001,"brand":"AVIA","dist":3.7,"price":1.069,"id":"57d278b6-8b14-4b2a-b9a7-b831484bff68","street":"Robert-Bosch-Stra\u00dfe","houseNumber":"2","postCode":73337,"place":"Bad \u00dcberkingen-Hausen","isOpen":true}]}
                      

                      soweit so gut. Aber ich möchte hier nur die Tankstellen angezeigt bekommen die auch auf sind, also "isOpen":true

                      Wie mache ich das? Habe versuchshalber in der Abfrage schon "&isOpen=true" ergänzt, bringt aber nichts.

                      Hat einer ne Idee oder das schon mal realisiert

                      Freddy

                      1 Antwort Letzte Antwort
                      0
                      • P Offline
                        P Offline
                        pix
                        schrieb am zuletzt editiert von
                        #115

                        Hallo,

                        kannst du bitte mal dein Skript posten? Es gab so viele Versionen im Forum, dass ich jetzt nicht einfach mit einem Neuen kommen will. Zeig mir deins und ich baue die Änderung ein.

                        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
                        • L Offline
                          L Offline
                          looxer01
                          schrieb am zuletzt editiert von
                          #116

                          Hi Pix,

                          mein Node red BenzinFlow funzt gerade nicht. Ich bekomme folgende Meldung:

                          ode-red-0 2016-02-01 16:50:07 error 1 Feb 16:50:07 - [error] [http request:Tankerkoenig ARAL API abfragen] TypeError: Object # has no method 'handleStatus'

                          weisst du was das sein koennte ?

                          (werde wohl mal auf script umstellen)

                          vG Looxer

                          1 Antwort Letzte Antwort
                          0
                          • P Offline
                            P Offline
                            pix
                            schrieb am zuletzt editiert von
                            #117

                            Hallo Looxer,

                            habe node-red schon länger nicht mehr in Betrieb. Also keine Ahnung, tut mir leid.

                            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
                            • L Offline
                              L Offline
                              looxer01
                              schrieb am zuletzt editiert von
                              #118

                              na klar, ich werde auch umstellen. Bringt nix mit mehreren Baustellen.

                              Danke dir.

                              Looxer

                              1 Antwort Letzte Antwort
                              0
                              • ? Offline
                                ? Offline
                                Ein ehemaliger Benutzer
                                schrieb am zuletzt editiert von
                                #119

                                Hallo zusammen,

                                erstmal ein riesen LOB das Script ist der Hammer…..

                                Ich habe allerdings ein paar Fragen dazu :-)

                                Und ich habe erst 3 Tage Kenntnisse mit iobroker ;-)

                                @all:

                                Wie bekomme ich es hin, das ich alle Benzinsorten angezeigt bekomme?

                                Ich habe bereits zwei Scripte im iobroker einmal mit Diesel und einmal mit E5 nur wie rufe ich die parallel ab?

                                Wie kann ich spezielle Tankstellen in der Umgebung abfragen?

                                @Ruhr70:

                                Würdest du mir/uns dein Widget zur Verfügung stellen? Finde das richtig gut :-)

                                Hoffe auf Antworten

                                Liebe grüße

                                louski

                                1 Antwort Letzte Antwort
                                0
                                • SegwayS Offline
                                  SegwayS Offline
                                  Segway
                                  schrieb am zuletzt editiert von
                                  #120

                                  @louski:

                                  @Ruhr70:

                                  Würdest du mir/uns dein Widget zur Verfügung stellen? Finde das richtig gut :-) `

                                  Oh ja da bin ich auch drum verlegen zumal ich grad den Durchblick verloren habe :-(

                                  Java Script läuft und Werte kommen. Json Objekt und Tabellenobjekt wurde angelegt und gefüllt.

                                  Nur wie zeige ich mir das nun an im vis ? Welches Widget welchen Code. Da habe ich den Überblick verloren :-(

                                  Gruß Dirk
                                  Intel Proxmox Cluster (3x NUC) mit Debian & Proxmox / IoB als VM unter Debian / 60+ Adapter installiert

                                  1 Antwort Letzte Antwort
                                  0
                                  • P Offline
                                    P Offline
                                    pix
                                    schrieb am zuletzt editiert von
                                    #121

                                    Schnell von unterwegs: Tabelle kann im Basic HTML Widget angezeigt werden.

                                    Gruß

                                    Pix

                                    Gesendet mit Tapatalk

                                    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
                                    • SegwayS Offline
                                      SegwayS Offline
                                      Segway
                                      schrieb am zuletzt editiert von
                                      #122

                                      Und was trage ich wo in dem Widget ein?

                                      Unter html was ? Wenn ja was ?

                                      UPDATE:

                                      Bin drauf reingefallen. Habe unter html den javascript-Adapter eingetragen aber nix wurde mir angezeigt –> bis ich mal aufs View gegangen bin und siehe da alles da nur wirds im Editor anscheinend nicht angezeigt :-)
                                      9054_menueansicht.png

                                      Gruß Dirk
                                      Intel Proxmox Cluster (3x NUC) mit Debian & Proxmox / IoB als VM unter Debian / 60+ Adapter installiert

                                      1 Antwort Letzte Antwort
                                      0
                                      • N Offline
                                        N Offline
                                        Nili
                                        schrieb am zuletzt editiert von
                                        #123

                                        Das klappt ja alles wunderbar und auch sehr einfach :-)

                                        Ich hätte da aber mal noch eine Frage.

                                        Kann man in den node-red Flow irgendwie noch den Stand der Abfrage mit einbringen?

                                        Also um welche Uhrzeit die Abfrage getätigt wurde.

                                        So würde ich dann immer sehen, ob die Preise auch wirklich aktuell sind.

                                        Gruß

                                        Danilo

                                        1 Antwort Letzte Antwort
                                        0
                                        • eric2905E Offline
                                          eric2905E Offline
                                          eric2905
                                          schrieb am zuletzt editiert von
                                          #124

                                          Ja geht - hab ich (aus gleichem Grund) auch gemacht.

                                          Komme derzeit nur nicht an meine Installation ran (bin in Urlaub und der VPN-Tunnel nachHause geht nicht, da hier auch eine Fritzbox ist … gleiche IPs und das war's ....).

                                          Ich glaube aber, das ich das hier schon mal gepostet habe.

                                          Gruß,

                                          Eric

                                          Roses are red, violets are blue,

                                          if I listen to metal, my neighbours do too

                                          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

                                          795

                                          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