Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Off Topic
    4. Tankerkönig in Grafana mit Ajax / SimpleAPI

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    Tankerkönig in Grafana mit Ajax / SimpleAPI

    This topic has been deleted. Only users with topic management privileges can see it.
    • H
      h1ob last edited by

      Hallo zusammen,

      ich experimentiere seit einiger Zeit mit Grafana und habe bisher einiges realisiert (Darstellung Stromverbrauch einiger Geräte, ioBroker Host Überwachung mit Prometheus etc.).

      Nun bin ich an einem Punkt an dem ich nicht mehr weiter komme.
      Zum Auslesen bestimmter Stati welche ich nicht in die SQL DB schreibe nutze ich den SimpleAPI Adapter, was soweit auch gut funktioniert. Nun möchte ich in einem Panel die aktuell günstigste Tankstelle für E5 und Diesel inkl. Tankstellenlogo anzeigen.

      Hat jemand schon etwas derartiges realisiert? Ich stehe ein bißchen auf dem Schlauch, da man ja mit dem Ajax Panel keine eigenen Texte hinterlegen kann, sondern auf das angewiesen ist, was der WebService Aufruf zurückgibt.

      Aktuell spiele ich mit dem Gedanken eine Webseite zu bauen, welche die günstigste Tankstelle inkl. Logo ermittelt und diese Webseite dann einfach in Grafana aufzurufen. Aber auch hier habe ich im Moment keinen Ansatzpunkt wie und woher ich die Daten zusammenbekomme.

      Ich wäre auch dankbar für Input / Ideen. Vielleicht hat ja jemand etwas ähnliches realsiert.

      1 Reply Last reply Reply Quote 0
      • arteck
        arteck Developer Most Active last edited by arteck

        Tankerkönig ermittelt doch die günstigste Tanke .. ich verstehe dein Ansatz nicht..
        wofür brauchst du dann Grafana ?? wozu eine eigene Webseite...

        1 Reply Last reply Reply Quote 0
        • H
          h1ob last edited by

          Rein für die Visualisierung. Ich würde ja die Daten auslesen, welche Tankerkönig mir liefert.

          1 Reply Last reply Reply Quote 0
          • SBorg
            SBorg Forum Testing Most Active last edited by

            Verstehe ich trotzdem nicht... 😉
            Aber da würde sich IMHO der History-Adapter anbieten (für loggen der günstigsten Tanke) und dann eine Visualisierung mittels Flot.

            1 Reply Last reply Reply Quote 0
            • H
              h1ob last edited by Homoran

              Ich logge ja die sich laufend ändernden Preise in meiner SQL DB. Die kann ich mir auch problemlos ausgeben lassen.
              Bei der günstigsten Tanke will ich eine Momentaufnahme haben und sie genau deswegen nicht zusätzlich loggen. Zumal man mit dem SimpleAPI Adapter genug Möglichkeiten hat.

              Ich möchte auch nicht zusätzlich noch Flot haben, da ich aktuell alles auf Grafana migriere. Vorher hatte ich Flot, VIS und NodeRed im Einsatz.

              Ich möchte gerne sowas (https://www.schlaue-huette.de/apis-co/tankerkoenig-spritpreise/) in Grafana haben.

              arteck 1 Reply Last reply Reply Quote 0
              • SBorg
                SBorg Forum Testing Most Active last edited by

                Jo, und das ist genau was @arteck schrieb und ich auch nicht verstehe, denn genau die Angaben hast du:
                Bild 1.png

                1 Reply Last reply Reply Quote 0
                • arteck
                  arteck Developer Most Active @h1ob last edited by

                  @h1ob sowas realisert man über ein Widget nicht über grafana

                  H 1 Reply Last reply Reply Quote 0
                  • H
                    h1ob @arteck last edited by h1ob

                    @arteck said in Tankerkönig in Grafana mit Ajax / SimpleAPI:

                    @h1ob sowas realisert man über ein Widget nicht über grafana

                    Wow, sehr erhellende Antwort, vielen Dank! Vor allem vor dem Hintergrund, dass ich extra geschrieben habe, dass ich nichts anderes als Grafana nutzen möchte und aktuell alles migriere.

                    @SBorg - Ich weiß, dass ich die Daten vom Tankerkönig Adapter bekomme. Das habe ich doch mit keinem Wort in Frage gestellt. Was ich möchte, ist eben jene Daten in Grafana in einem Panel aufbereitet anzuzeigen.

                    Ich versuche mich die Tage an meiner initialen Idee, die Aufbereitung in einer eigenen HTML Seite zu machen und mir diese Seite einfach im Dashboard anzeigen zu lassen. Das erscheint mir aktuell am Einfachsten. Ich werde berichten.

                    M 1 Reply Last reply Reply Quote 0
                    • Dolomiti
                      Dolomiti last edited by

                      Ich habe mir das JSON-Plugin für Grafana installiert und als Server-URL http://IP-ioBroker:8087/ eingetragen und als Panel-Typ Single-Stat ausgewählt. Dort den DP eingetragen und mir wird immer der aktuelle Wert angezeigt. Vielleicht hilft das ja weiter

                      Gruß
                      Dolomiti

                      1 Reply Last reply Reply Quote 0
                      • M
                        Mercyful 0 @h1ob last edited by

                        @h1ob said in Tankerkönig in Grafana mit Ajax / SimpleAPI:

                        @arteck said in Tankerkönig in Grafana mit Ajax / SimpleAPI:

                        @h1ob sowas realisert man über ein Widget nicht über grafana

                        Wow, sehr erhellende Antwort, vielen Dank! Vor allem vor dem Hintergrund, dass ich extra geschrieben habe, dass ich nichts anderes als Grafana nutzen möchte und aktuell alles migriere.

                        @SBorg - Ich weiß, dass ich die Daten vom Tankerkönig Adapter bekomme. Das habe ich doch mit keinem Wort in Frage gestellt. Was ich möchte, ist eben jene Daten in Grafana in einem Panel aufbereitet anzuzeigen.

                        Ich versuche mich die Tage an meiner initialen Idee, die Aufbereitung in einer eigenen HTML Seite zu machen und mir diese Seite einfach im Dashboard anzeigen zu lassen. Das erscheint mir aktuell am Einfachsten. Ich werde berichten.

                        Moin!
                        Bist du da schon weiter gekommen da ich ähnliches vorhabe und ebenfalls Grafana nutzen möchte.
                        Schöne Grüße
                        Mercy

                        ? 1 Reply Last reply Reply Quote 0
                        • ?
                          A Former User @Mercyful 0 last edited by

                          @mercyful-0

                          ist Dir bewusst, dass Du auf einen drei Jahre alten Beitrag antwortest oder da nach einer Lösung fragst 😉

                          Wenn Du mal in den verschiedenen Forums Beiträgen zur Visualisierung suchst, dann findest Du da sicherlich einige Lösungen 🙂
                          Hast Du dir auch schon den Neusten Tankerkönig Adapter angeschaut, da er ziemlich aufgebohrt wurde und jetzt noch mehr Daten liefert.


                          e4f3c9b5-deea-4371-85be-5342b99c9cb5-grafik.png

                          Ich lasse mir nur den Aktuellen Preis in die influxdb schreiben und Werte die dann mit Grafana aus,


                          a6493642-e5cb-4144-9371-713535d1cf3c-grafik.png

                          VG
                          Bernd

                          Domi920 1 Reply Last reply Reply Quote 0
                          • Domi920
                            Domi920 @Guest last edited by

                            @dp20eic hi, lasse ebenfalls die Spritkosten mit InfluxDB mitloggen & lasse sie mir mit Grafana als Diagramm aufzeichnen.

                            Bin allerdings auf ein kleines "Problem" gestoßen:
                            Lasse mir den aktuellen Tagesverlauf anzeigen.
                            Wenn aber seit 3 Stunden keine Änderungen vom Preis vorgenommen wurden, wird das Diagramm auch nicht für diesen Zeitraum gefüllt.
                            Mir ist bewusst das ich den Datenpunkt auch alle x Sekunden auch ohne Änderung in die Datenbank schreiben kann.
                            Allerdings wäre eine Alternative Lösung besser, die den Grafen trotzdem bis zum jetzigen Zeitpunkt anzeigt.

                            Weißt du eine Lösung?

                            Gruß Dominik

                            ? 1 Reply Last reply Reply Quote 0
                            • ?
                              A Former User @Domi920 last edited by

                              @domi920 sagte in Tankerkönig in Grafana mit Ajax / SimpleAPI:

                              Allerdings wäre eine Alternative Lösung besser, die den Grafen trotzdem bis zum jetzigen Zeitpunkt anzeigt.

                              Moin,

                              ja, denke schon.

                              Diese Antwort hilft Dir ebenso wenig wie mir Deine Frage, wenn Du nicht zeigst, was Du, wie machst.

                              Also welche Version von influxDB, das ist von Interesse, da die V 1.8 mit der Abfragesprache QL arbeitet und die V 2.x mit FLUX.

                              Wie sieht Deine Query aus?
                              Wenn möglich als Text, nicht als Screenshot.

                              VG
                              Bernd

                              Domi920 1 Reply Last reply Reply Quote 0
                              • Domi920
                                Domi920 @Guest last edited by Domi920

                                @dp20eic Vielen Dank für Deine schnelle Antwort!
                                Natürlich, da hast du recht.
                                Sorry bin ziemlich neu in der Thematik von Grafana & InfluxDB und hab auf verschiedene Konfigurationen gar nicht mehr gedacht.

                                Grafana v9.4.3
                                Influx v2.6.1
                                Arbeite mit der FLUX Sprache.

                                Hier meine Query:

                                from(bucket: "ioBroker1")
                                  |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                  |> filter(fn: (r) => r["_measurement"] == "Sprit_Diesel_Hengersberg_Freie")
                                  |> filter(fn: (r) => r["_field"] == "value")
                                  |> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false)
                                  |> yield(name: "last")
                                

                                79df97d8-b022-4580-82bc-9ac61c8beb06-image.png

                                Hier sieht man das keine aktuellen Spritpreise vorhanden sind weil der letzte Wert um 15:54 Uhr geschrieben wurde.
                                Gleiches ist am Anfang.
                                Es wäre schön, wenn die Linie einfach weiter gezogen wird (rückwärts & vorwärts), damit es schöner aussieht.

                                Danke schon mal für deine Hilfe!

                                Gruß Dominik

                                ? 1 Reply Last reply Reply Quote 0
                                • ?
                                  A Former User @Domi920 last edited by

                                  @domi920

                                  Moin,

                                  ich denke, dass Dir einfach nur das hier in Deiner Abfrage fehlt

                                    |> fill(column: "_value", usePrevious: true)
                                  

                                  Damit werden die null Werte durch den Wert der davor gültig war ersetzt.

                                  Und hier Doku fill() function

                                  VG
                                  Bernd

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

                                    @dp20eic Leider funktioniert es nicht.
                                    Egal wo ich die Zeile einfüge bekomme ich kein anderes Ergebnis.

                                    Habe mit die Doku angeschaut aber die hilft mir nicht wirklich weiter.

                                    Was mache ich falsch?

                                    ? 1 Reply Last reply Reply Quote 0
                                    • ?
                                      A Former User @Domi920 last edited by

                                      @domi920

                                      Moin,

                                      wie sehen denn die Daten in der InfluxDB aus, melde dich mal an der WebUI von `influxDB an:

                                      http://deine.ip.adresse:8086
                                      

                                      Um welchen Datenpunkt vom tankerkönig - Adapter handelt es sich?
                                      Hast du irgendwelche min/max eingerichtet?

                                      Hier sieht man das keine aktuellen Spritpreise vorhanden sind weil der letzte Wert um 15:54 Uhr geschrieben wurde.

                                      Hat denn die Tanke zugemacht (Geschlossen) oder einfach nichts mehr gesendet, dann liegt das an der Tanke/Tankerkönig, bei mir kommen 0 Werte nur dann, wenn die Tanke geschlossen ist, dann sollen meine Diagramme ja auch nichts mehr anzeigen, da es ja auch keinen Sprit mehr zu kaufen gibt.

                                      Hast du mehrere Tankstellen im tankerkönig eingerichtet, zeigen die noch Werte an?

                                      Domi920 1 Reply Last reply Reply Quote 0
                                      • Domi920
                                        Domi920 @Guest last edited by

                                        @dp20eic hier die Daten von InfluxDB:
                                        Screenshot_20230324_223631_Gallery.jpg

                                        Und hier nochmal in Grafana:
                                        Screenshot_20230324_223640_Gallery.jpg

                                        So sieht die Grafik aus:
                                        Screenshot_20230324_223637_Gallery.jpg

                                        Ich logge nur die aktuellen Werte.
                                        Die Tankstelle hat einen Tankautomaten, deshalb ist sie immer geöffnet.

                                        Andere Tankstellen, die aktuell geschlossen sind bekommen keine Aktualisierungen in der InfluxDB (habe ich in IOBroker beim Log eingestellt).

                                        Du kannst mir auch gerne den kompletten Code schicken, dass wir 100% ausschließen können dass es mein Fehler ist.

                                        Danke im Voraus für Deine großartige Hilfe!

                                        ? 1 Reply Last reply Reply Quote 0
                                        • ?
                                          A Former User @Domi920 last edited by

                                          @domi920

                                          Moin,

                                          wenn ich das richtig sehe, dann hast Du in den vergangenen 12 Stunden nur diese drei/vier Werte bekommen, ansonsten schau mal bei einer anderen Tanke nach, denn da müssten für 12 Stunden mehr Werte sein und wenn geschlossen dann halt 0.

                                          Wenn ich eine von meinen Tankstellen anschaue, dann sieht das so aus, wenn ich 12 Stunden abfrage, ich habe in der Zeit wenn geschlossen, dann einen 0 Wert in der Datenbank.
                                          ecd0fa7a-531b-4738-b676-5da0b6f28876-grafik.png

                                          Du bekommst aber keine Werte von der Tankstelle geliefert, hast Du mal den Adapter tankerkönig auf debug gestellt und dir dann das Log-File angeschaut was da bei der Tankstelle kommt?

                                          ce323e58-b8be-4fdc-be59-ae00e911c2f0-grafik.png
                                          785b3324-206c-45a0-87d1-139eef05c7e8-grafik.png
                                          78789610-6789-4c4b-a9db-d91beac7f745-grafik.png

                                          Gib mir mal die Daten der Tankstelle, ich richte mir die mal ein und schaue was da kommt

                                          d41484aa-12de-45d1-a52c-5e9bf00d88c4-grafik.png

                                          VG
                                          Bernd

                                          Domi920 1 Reply Last reply Reply Quote 0
                                          • Domi920
                                            Domi920 @Guest last edited by

                                            @dp20eic Guten Morgen, ich bekomme nur wenige Werte, weil die Tankstelle sie nicht oft ändert.
                                            So wie ich das sehe, wird bei Dir oft mals immer wieder der gleiche Wert geloggt. Das wollte ich im besten Fall verhindern, weil "nur" Änderungen zu protokollieren wären.

                                            Ich möchte aus diesen Grafana:
                                            c8763029-fb9d-464e-a9f1-4dd72da7d8d6-image.png

                                            So einen Graf, wies mir z. B. in der App Clever Tanken angezeigt wird:
                                            e43c9f7c-8b9d-4aeb-9888-615371f2cfcb-image.png

                                            Das wäre möglich wenn ich z. B. alle x Sekunden bzw. Minuten den Wert mitloggen lasse.
                                            Aber das möchte ich wenn möglich verhindern, so könnte ich die Verfallszeit auf 1 Jahr oder so lassen, weil nicht so viele Daten anfallen.
                                            Weißt Du was ich meine?

                                            0 fällt z. B. in dieser Tankstelle nicht an, weil diese 24 Stunden geöffnet hat 🙂

                                            Schicke Dir aber trotzdem gerne die Daten von der Tankstelle:
                                            d247870a-e5ed-4a03-b506-a69e82a11998-image.png
                                            Station ID:
                                            c8786291-8ea5-4641-b9c8-4a75242e15c4

                                            Gruß Dominik

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            922
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            own project
                                            7
                                            38
                                            2667
                                            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