NEWS
IoBroker.tankerkoenig | Spritpreis-Adapter
-
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
-
Ich sehe es gerade
!
-
Ich finde das Tool genial ….
aber ....letzte Aktualisierung um 15:31 Uhr.....es ist jetzt halb sieben ....
kann ich das irgendwo ändern, oder verbessern ?
der Preis stimmt jetzt jedenfalls nicht mehr.
-
:?: Du sprichst in Rätseln :?:
Gruß
Rainer
-
Ich finde das Tool genial ….
aber ....letzte Aktualisierung um 15:31 Uhr.....es ist jetzt halb sieben ....
kann ich das irgendwo ändern, oder verbessern ?
der Preis stimmt jetzt jedenfalls nicht mehr. `
Hast du den aktuellen Preis der Tankstelle vor Ort mit dem Preis auf der Tankerkönig Webseite verglichen? Gibt es vielleicht auch da Unterschiede?Du kannst immer den Adapter neustarten.
Ein Update des Adapters steht bevor. Er ist noch nicht auf Admin3 und der Compact Mode muss auch noch rein. Hab nur gerade gar keine Zeit dafür. [emoji37]
Pix