NEWS
IoBroker.tankerkoenig | Spritpreis-Adapter
-
Meine Frau hat mir jetzt mal was geschickt.
Da sieht man die Diskrepanz. Ich vergleiche immer Tankerkönig mit clever-tanken.de
Sind beide an die Transparenzstelle angeschlossen.
Wie man oben sieht , hat meine Tankstelle die Daten gesendet.
Clever-Tanken hat sie auch um 12:07 aktualisiert.
Meine sind um 12:18 (die 17min Aktualisierung sind um) immer noch beim alten Stand.
3723_unbenannt4.png
3723_unbenannt23.png -
Hallo haselchen,
hier bei ioBroker bewerben wir den Adapter nicht mit Echtzeit-Daten. Falls doch, zeig mir die Stelle, dann wird das korrigiert. Es ist tankerkoenig, das Echzeitdaten bewirbt. Für den kostenlosen Zugang kannst du nicht erwarten, dass die Daten in so kurzen Abständen aktualisiert werden.
Und wendy2702 hat schon recht, du kannst natürlich auch die Öffnungszeiten anzeigen lassen. Die ändern sich nicht ständig. Der Adapter arbeitet mit Tankstellen ID, daher weißt du, um welche Station es sich handelt und kannst die Öffnungszeiten in dein VIS eintragen.
Der beste Tipp:
Hole die Daten auf Knopfdruck ab! Du kannst einen Schalter für den Adapter in VIS anlegen. Somit kannst du den Adapter ausschalten und wieder an, dabei werden die aktuellsten Daten geladen.
Du musst dazu ein Javascript erstellen, das einen Datenpunkt erzeugt und dann auf Änderung die Instanz schaltet.
https://forum.iobroker.net/viewtopic.php?t=3491. Wenn du Probleme mit dem Skript hast, meld dich nochmal.
Gruß
Pix
-
Da hast du natürlich Recht. Die Echtzeit wird auf deren Website beworben.
Ist auch kein lebenswichtiges Thema.
Mich ärgert es halt.
Hauptsache ihr könnt mit einem störrischen Esel, wie mich, hier leben
Die Idee mit dem Skript ist gar nicht mal schlecht.
Danke dafür.
Und auch Danke an Wendy für die Geduld
-
Hallo,
@haselchen:Meine Frau hat mir jetzt mal was geschickt.
Da sieht man die Diskrepanz. Ich vergleiche immer Tankerkönig mit clever-tanken.de
Sind beide an die Transparenzstelle angeschlossen.
Wie man oben sieht , hat meine Tankstelle die Daten gesendet.
Clever-Tanken hat sie auch um 12:07 aktualisiert.
Meine sind um 12:18 (die 17min Aktualisierung sind um) immer noch beim alten Stand. `
das ist natürlich interessant, aber ändert in ioBroker nix. Du kannst einen clever-tanken-Adapter schreiben, dann wird sich auf Dauer der genauere Lieferant durchsetzen. Tankerkoenig liefert seine Daten nunmal über eine API in JSON. Also genau in ioBroker-Sprache. Damit kann man schnell und ohne großen Rechen- und vor allem Pflegeaufwand die Daten abholen. Die Alternative wäre ja das Parsen der Clever-tanken-Webseite. Ich veröffentliche allerdings keine Adapter mehr, die Daten auf dieser Basis bereitstellen. Da ist einfach zu viel Pflegeaufwand vorprogrammiert. Und es gibt bei tankerkoenig auch noch die Umkreissuche (nur Skriptlösung), die aber deutlich mehr Daten zieht.Scheinbar ist clever-tanken beim Abholen der Daten von der MTS vor Tankerkönig dran, oder die Aufbereitung der Daten für die API dauert in tankerkoenig einfach noch ein paar Minuten. Man müsste deinen Vergleich mal repräsentativ mit mehren Tankstellen, zu mehreren Zeitpunkten und über einen etwas längeren Zeitraum machen.
Ich selbst habe mit meinen favorisierten Tankstellen keine Probleme.
Gruß
Pix
-
Ich bin ja ehrlich, ich habe keine Ahnung von den technischen Begriffen
Bin der Basteltyp, also Copy & Paste.
Deine Idee mit dem Adapterneustart, wenn ich genau jetzt den aktuellen Preis wissen will, hat manuell schonmal funktioniert.
Meine View hat er sofort auf den neuesten Stand gebracht.
Ich werde das mal mit einem Button und dem Skript auf meine View legen und bei Bedarf einfach drücken
Edit:
Ich habe jetzt ein Skript fürs Ausschalten und eines zum Anschalten. Aber wie muss es aussehen, dass ich einfach einen Neustart mache?
var obj = getObject("system.adapter.tankerkoenig.0"); obj.common.enabled = true; // Adapter einschalten setObject("system.adapter.tankerkoenig.0", obj);
var obj = getObject("system.adapter.tankerkoenig.0"); obj.common.enabled = false; // Adapter ausschalten setObject("system.adapter.tankerkoenig.0", obj);
-
Meine Frau hat mir jetzt mal was geschickt.
Da sieht man die Diskrepanz. Ich vergleiche immer Tankerkönig mit clever-tanken.de
Sind beide an die Transparenzstelle angeschlossen.
Wie man oben sieht , hat meine Tankstelle die Daten gesendet.
Clever-Tanken hat sie auch um 12:07 aktualisiert.
Meine sind um 12:18 (die 17min Aktualisierung sind um) immer noch beim alten Stand. `
Kannst du auch mal auf der Tankerkönig Seite direkt die Preise vergleichen mit Clever Tanken?
Nicht das nur die Preise bei der API Abfrage hinterher hinken.
-
Ich versuch das in der Woche mal zu beobachten.
Momentan würde mir der Vorschlag von pix super weiterhelfen mit dem Button und dem Skript.
Weisst du wie das für einen Neustart aussehen müsste?
-
Hallo,
muss jetzt leider kurz aus dem Haus. Ich kann es nachher nachliefern.
Eigentlich brauch es nur ein neues Objekt (createState), das dann überwacht wird.
Dann reicht evtl. ein SetValue Widget
Ich brauche bis heute Abend. Vielleicht ist hier jemand schneller.
Gruß
Pix
-
@pix:Du kannst einen clever-tanken-Adapter schreiben, `
Das kann er leider nicht:
@[url=http://www.clever-tanken.de/agb:~~Clever-Taken AGB"]~~Insbesondere ist es nicht gestattet, eigene Robots, Webcrawler oder sonstige Automatismen zu programmieren und die Inhalte von clever-tanken.de systematisch und umfassend in anderen Medien darzustellen oder für sonstige Zwecke zu extrahieren und zu verarbeiten. `
Gruß
Rainer
-
@pix:Hallo,
muss jetzt leider kurz aus dem Haus. Ich kann es nachher nachliefern.
Eigentlich brauch es nur ein neues Objekt (createState), das dann überwacht wird.
Dann reicht evtl. ein SetValue Widget
Ich brauche bis heute Abend. Vielleicht ist hier jemand schneller.
Gruß
Pix `
Pix? Ich komme leider ohne Deine Hilfe nicht weiter
-
Hallo,
hier mal ein Skript, das über einen boolean-Schalter aus VIS einen Adapter aus/einschalten kann.
Es wird ein Objekt angelegt, welches in VIS mit einem Schalter verknpüft werden muss (javascript.X.Sprit.Adapter.Schalter). Beim Schalten wird der Adapter (es gehen natürlich auch andere Adapter als der tankerkoenig) aktiviert/deaktiviert. Ich habe festgelegt, dass nur Schaltung aus VIS heraus akzeptiert werden. Will man aus einem anderen Skript oder z.B. dem Szene-Adapter schalten, dann bitte Zeile 32 (From) anpassen.
Achtung: Der Schalter in VIS schaltet nur ein Objekt, welches im Skript überwacht wird und dann den Adapter schaltet. Das heißt, dass Änderungen am Adapterstatus selbst nicht zwangsläufig korrekt in VIS dargestellt werden. Oder anders: Wenn du z.B. den Adapter in Admin abschaltest oder er dir abschmiert, wird das in VIS nicht angezeigt.
Skript (bitte die Konstanten im oberen Bereich anpassen):
/* Spritpreis tankerkoenig adapter neu starten erzeugt Objekt, das in VIS geschaltet werden kann Schaltung triggert Neustart eines Adapters 28.03.2018 erstellt von pix */ const logging = true; // (true;false) Logausgabe zentral schalten, da 5minütlich ein Mehrzeiler geloggt wird. const instanz = "javascript." + instance; const fC = false; // force Create const idSchalter = instanz + ".Sprit.Adapter.Schalter"; const adapter = "tankerkoenig.0"; // Name und Instanz des Adapters // Ab hier nix mehr ändern if (logging) log("Skript " + name + " in der Instanz " + instance + " gestartet"); var idAdapter = "system.adapter." + adapter; createState(idSchalter, false, fC, { name: adapter + " Adapter neu starten", type: "boolean", desc: "Schaltet den <" + adapter + "> Adapter per Skript zB aus VIS", role: "switch" }); // Neustart triggern on({ id: idSchalter, change: "ne", from: "system.adapter.web.0" // Schaltung nur aus VIS möglich }, function (dpobj) { var obj = getObject(idAdapter); if (dpobj.state.val) { obj.common.enabled = true; // Adapter einschalten } else if (!dpobj.state.val) { obj.common.enabled = false; // Adapter ausschalten } setObject(idAdapter, obj); if (logging) log("Adapter <" + adapter + "> wurde " + ((obj.common.enabled) ? "ein" : "aus") + "geschaltet"); });
Widget:
[{"tpl":"tplMetroTileToggle","data":{"visibility-cond":"==","visibility-val":1,"hover":false,"transform":"true","bg_class_true":"ribbed-emerald","bg_class_false":"ribbed-crimson","icon_class_true":"","icon_class_false":"","icon_badge_true":"","icon_badge_false":"","badge_bg_class_true":"","badge_bg_class_false":"","brand_bg_class_true":"","brand_bg_class_false":"","select_on_true":true,"label_true":"Adapter aktiviert tankerkoenig.0 eingeschaltet","label_false":"Adapter deaktiviert tankerkoenig.0 abgeschaltet","toggle_oid":"javascript.0.Optin_Nachtruhe_Sayit","name":"Adapter schalten","oid":"javascript.2.Sprit.Adapter.Schalter","badge_top":"0","badge_left":"0","gestures-offsetX":0,"gestures-offsetY":0,"signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"visibility-groups-action":"hide","lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"comment":"wird in Skript überwacht"},"style":{"left":"875px","top":"416px","width":"137px","height":"137px","font-family":"","z-index":"26","cursor":"pointer"},"widgetSet":"metro"}]
Gruß
Pix
-
@ Pix
Wenn es den Danke Button noch gäbe, würde ich stündlich für Dich draufdrücken.
Bist der Wahnsinn.
Vielen Dank.
-
ich habe seit gestern eine Fehlermeldung…
tankerkoenig.0 2018-04-03 09:35:00.906 error Spritpreise einlesen (gezielte Stationen via ID) - Parse Fehler: TypeError: Cannot read property 'e5' of undefined tankerkoenig.0 2018-04-03 09:35:00.687 info starting. Version 1.0.4 in /opt/iobroker/node_modules/iobroker.tankerkoenig, node: v6.13.1 tankerkoenig.0 2018-04-03 09:30:01.431 error Spritpreise einlesen (gezielte Stationen via ID) - Parse Fehler: TypeError: Cannot read property 'e5' of undefined tankerkoenig.0 2018-04-03 09:30:01.161 info starting. Version 1.0.4 in /opt/iobroker/node_modules/iobroker.tankerkoenig, node: v6.13.1 tankerkoenig.0 2018-04-03 09:25:00.878 error Spritpreise einlesen (gezielte Stationen via ID) - Parse Fehler: TypeError: Cannot read property 'e5' of undefined tankerkoenig.0 2018-04-03 09:25:00.667 info starting. Version 1.0.4 in /opt/iobroker/node_modules/iobroker.tankerkoenig, node: v6.13.1
hat sich etwas am API geändert?
-
Hi,
hat sich etwas am API geändert? `
oder hat sich ggf. die Tankstellen-ID geändert?Gruß,
Eric
-
Habe ich auch bei einer Tankstelle gehabt - die ist jetzt dauerhaft geschlossen.
Existiert deine noch?
ist schließlich der 1.4. gewesen und damit Quartalswechsel….
Gruß
Rainer
-
Es war tatsächlich noch eine Tabkstelle in dr nähe meiner alten Arbeisstätte in der Abfrage bei der sich anscheinend die ID geändert hat…
Danke für die Tipps...
-
Hallo,
auf Anregung von user xbow42 habe ich dem Tankstellen-Adapter ein Funktionsupdate verpasst. Neben dem (selbst vergebenen) Namen der Tankstelle wird nun auch ein Datenpunkt mit der (tankerkoenig-)StationID gespeichert.
In naher Zukunft werde ich den Adapter (zumindest ja die Einstellungen in Admin) noch auf das Material Design umbauen. Damit ist dann auch das lokale Speichern und Laden der Adapter-Einstellungen aus Admin heraus möglich. Das stand schon lange auf der Roadmap, da ja die 36stelligen Schlüssel doch sehr unhandlich sind, wenn man den Adapter neu installiert.
Die neue Version 1.2.0 zum Testen liegt auf meinem github und kann mit der "Katze/beliebig" im Adminbereich "Adapter" installiert werden.
https://github.com/Pix---/ioBroker.tankerkoenig
Die alten Datenpunkte und Einstellungen werden dabei nicht gelöscht. Ggf sind erstmal die History Daten weg, muss aber nicht.
English users can now find a translated https://github.com/Pix–-/ioBroker.tankerkoenig/blob/master/docs/en/doc_tankerkoenig_de.md.
Gruß
Pix
-
Fehler im Code beseitigt. Bitte 1.2.1 testen.
Gruß
Pix
-
Hat mal jemand die Preisentwicklung von Diesel, E10 und E5 von verschiedenen Tankstellen beobachtet?
Sind die günstigsten Preise von Diesel, E10 und E5 immer alle 3 an einer Tankstelle oder kann das auch sein, dass z.B. Diesel an Tankstelle A am günstigsten, E10 an Tankstelle B und E5 an Tankstelle C?
Hintergrund:
Ich erstelle gerade meine Spritpreis-Site neu und möchte jeweils den besten Preis von Diesel, E10 u. E5 markieren.
Jetzt stellt sich mir die Frage, ob ich nicht einfach nur die günstigste Tankstelle markieren muss, wenn die drei günstigsten Preise immer an nur einer Tankstelle bereit gestellt werden?!
-
Hat mal jemand die Preisentwicklung von Diesel, E10 und E5 von verschiedenen Tankstellen beobachtet?
Sind die günstigsten Preise von Diesel, E10 und E5 immer alle 3 an einer Tankstelle oder kann das auch sein, dass z.B. Diesel an Tankstelle A am günstigsten, E10 an Tankstelle B und E5 an Tankstelle C?
Hintergrund:
Ich erstelle gerade meine Spritpreis-Site neu und möchte jeweils den besten Preis von Diesel, E10 u. E5 markieren.
Jetzt stellt sich mir die Frage, ob ich nicht einfach nur die günstigste Tankstelle markieren muss, wenn die drei günstigsten Preise immer an nur einer Tankstelle bereit gestellt werden?! `
Nein, ist individuell, must ggf. 3 Tankstellen für den jeweils günstigsten Preis marlieren