Comments (18)
Interessanter Punkt. Aber der Adapter ist ein Tool zur Abfrage der Daten von Tankerkoenig.de. Wenn die Daten nicht zur Verfügung stehen, können sie nicht verarbeitet werden.
Sollte eine ID nicht stimmen, ist eine Log-Ausgabe vorgesehen.
from iobroker.tankerkoenig.
Ich hatte den Fehler heute auch, das lag aber daran das die Tankstellen ID ohne Bindestriche eingegeben wurde. Eventuell ist das auch dort das Problem.
from iobroker.tankerkoenig.
Werde in der nächsten Version (Admin 3 Update und material design) die Zeichen bei der Eingabe prüfen. Das Muster ist xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Ein regulärer Ausdruck könnte so aussehen:
[a-z|0-9]{8}-[a-z|0-9]{4}-[a-z|0-9]{4}-[a-z|0-9]{4}-[a-z|0-9]{12}
Die Überprüfung wird erst nach dem Speichern der Einstellungen vorgenommen. Eine vorherige Überprüfung schon bei der Eingabe der Daten kann ich nur über die Länge der Zeichenkette (36 Zeichen) und mit Hilfe des materializecss-Plugins "Character Counter" realisieren.
Der Adapter prüft derzeit die Länge des API-Keys (auch 36 Zeichen) und startet keine Server-Abfrage, wenn die Länge nicht stimmt. Die Tankstellen-ID werden nicht geprüft, sondern wie eingegeben in die Bulk-Abfrage der Tankerkoenig-API eingebaut. Ist eine ID fehlerhaft, wird auch die ganze Abfrage fehlerhaft sein.
Die vom Server zurückgegebene JSON enthält keine Daten, welcher API-Key fehlerhaft sei und so kann eine genauere Identifikation des Fehlers nicht erfolgen. Man muss das Log regelmäßig prüfen und die ID und den Key sorgfältig eingeben.
Ich werde weiterhin den Abfrage-Vorgang abbrechen lassen, wenn eine Tankstellen ID oder der API-Key nicht korrekt sind.
from iobroker.tankerkoenig.
Hallo,
bei mir kam der Fehler wenn alle Tankstellen geschlossen waren.
Meldung sollte mit meinem pull request nicht mehr kommen. Die Anfrage habe ich vor einem Monat gestartet, wurde leider noch nicht übernommen.
https://github.com/Pix---/ioBroker.tankerkoenig/pull/34
from iobroker.tankerkoenig.
Mir ist es jetzt innerhalb kurzer Zeit auch zwei mal passiert, dass eine der abgefragten Tankstellen geschlossen wurde und deshalb keine Aktualisierung mehr erfolgte.
Ich kann nachvollziehen, dass durch die Bulk-Abfrage und die fehlende Info, welcher Key fehlerhaft ist, der Grund vom Adapter nicht identifiziert werden kann.
Bei mir hat es jeweils mehrere Tage gedauert, bis ich gecheckt habe, dass da was faul ist.
Hilfreich wäre ein zusätzlicher boolscher Datenpunkt, der den Erfolg der Abfrage dokumentiert.
from iobroker.tankerkoenig.
Hallo,
bei mir kam der Fehler wenn alle Tankstellen geschlossen waren.
Meldung sollte mit meinem pull request nicht mehr kommen. Die Anfrage habe ich vor einem Monat gestartet, wurde leider noch nicht übernommen.
https://github.com/Pix---/ioBroker.tankerkoenig/pull/34
Ich werde - bei Gelegenheit - den PR einpflegen. Mir fehlt die Zeit zur Prüfung. Ich bitte um Geduld und bedanke mich herzlich für die Weiterentwicklung.
from iobroker.tankerkoenig.
Mir ist es jetzt innerhalb kurzer Zeit auch zwei mal passiert, dass eine der abgefragten Tankstellen geschlossen wurde und deshalb keine Aktualisierung mehr erfolgte.
Ich kann nachvollziehen, dass durch die Bulk-Abfrage und die fehlende Info, welcher Key fehlerhaft ist, der Grund vom Adapter nicht identifiziert werden kann.
Bei mir hat es jeweils mehrere Tage gedauert, bis ich gecheckt habe, dass da was faul ist.
Hilfreich wäre ein zusätzlicher boolscher Datenpunkt, der den Erfolg der Abfrage dokumentiert.
Meinst du "geschlossen" im Sinne der Öffnungszeiten oder im Sinne von "gibt es nicht mehr"? Es gibt eine Option in den EInstellungen, die den Preis "0" schreibt, wenn keine Aktualisierung erfolgt. Daran kann man sehen, ob die Station einen Preis liefert oder nicht.
from iobroker.tankerkoenig.
Ich meine geschlossen im Sinne von "gibt es nicht mehr".
from iobroker.tankerkoenig.
bekomme den fehler auch sobald die tankstelle um 2200 dicht macht!
es kann also nicht damit zu tun haben das die tankstelle auf ewig geschlossen ist...
grüsse
from iobroker.tankerkoenig.
Um es nachzuvollziehen brauche ich die ID der Station. Evtl. Ist die JSON Rückmeldung nicht korrekt.
Sent with GitHawk
from iobroker.tankerkoenig.
0a49f5e0-d339-4772-9a49-7f863b7bcf96
5bee7690-a802-4bae-b09b-cc6f1e238d19
e993fb24-3912-43cc-a47b-399ba02ae435
61f761da-7aa5-4966-a7eb-c9abb5820db3
c76a7198-d4f3-4c5d-94ce-e501c611092f
748c78a4-5c77-414a-9f11-1ebd616fdaaa
das sind meine IDS
Grüsse Schweiz
from iobroker.tankerkoenig.
Moin !
Ich hänge mich hier mal an. Habe auch (wenn die Tanke zu ist) den Fehler "Spritpreise einlesen (gezielte Stationen via ID) - Parse Fehler: TypeError: Cannot read property 'e5' of undefined".
Die Tankstellen sind aber nur zu (Öffnungszeit) und nicht geschlossen (kein Betrieb mehr).
Meine IDs:
091edf78-d193-43f2-946d-57ad79c7cccd
b289a6d0-34db-46de-8bd2-851fa5d61c74
fd11fb8c-efcc-4ee0-b689-a7fd158315b8
51d4b4de-a095-1aa0-e100-80009459e03a
e72e7d5e-06ea-4926-a7f7-84c570d88212
Wäre super wenn dieser Bug behoben werden könnte.
Dann sehen die grafischen Logs auch wieder lesbarer aus ...
Grüße Dominik
from iobroker.tankerkoenig.
@Schweizer75 Ich werde eine weitere Instanz des Adapters anlegen und deine IDs probieren. Welche der Stationen ist denn betroffen?
@moelski Auch bei Dir? Welche Station genau ist betroffen? Was sagt das Log, wenn man die Adapter Instanz auf Loglevel debug stellt? (Reiter Instanzen, Expertenmodus [Button neben dem Reload Button])
from iobroker.tankerkoenig.
Habe den Fehler leider auch seit Urzeiten. Nervt, weil er das Log zuspamt. Ich wäre wirklich sehr Dankbar für eine Fehlerbehebung, oder eine Option, das der Fehler nicht mehr geloggt wird.
Diese Station verursacht den Fehler:
11c1a588-4130-486c-a8e2-ffcc7e1dadb3
Danke und Gruß
from iobroker.tankerkoenig.
Hallo @Soulguard @moelski @Schweizer75 @olderbag,
ich habe heute kurz Zeit gefunden, mir das Problem anzusehen. mit Hilfe von @Soulguard geteilter Station-ID konnte ich gerade die zurückgelieferte JSON sehen
{"ok":true,"license":"CC BY 4.0 - https:\/\/creativecommons.tankerkoenig.de","data":"MTS-K","prices":{"xxx":{"status":"no stations"}}}
Im Adapter (main.js) wird in Zeile 113 ein try() ausgeführt und mit catch(e) in Zeile 343 der Fehler ausgegeben. Innerhalb von try werden die in der Konfiguration gespeicherten Station-IDs durchgegangen. Wenn die "kaputte" StationID einzeln abgefragt wird, kommt der obige Fehler als JSON. Das lässt sich mit der neuen Adapterversion 2.0.7 abfangen.
Wenn aber weitere Tankstellen mit abgefragt werden, ist die Antwort JSON des Servers in zwar Ordnung und liefert Daten, allerdings bricht der try() das Auslesen der JSON ab, sobald die "kaputte" bzw. "nicht vorhandene" Station abgefragt werden soll. Es greift catch() und schreibt "Parse Fehler".
Einfach gesagt: Die Rückmeldung "no stations" kommt nur, wenn keine weiteren Stationen abgefragt werden. Ist letzteres der Fall, kann der Adapter diesen Fehler nicht identifizieren.
Lösung: Tankstelle muss korrekt an MTS-K melden, wie die anderen Stationen auch.
Lösung 2: Tankerkönig anfragen, ob Rückmeldung "no stations" wie die anderen Fehlermeldungen geliefert werden kann.
Sorry, mehr kann ich nicht tun.
Pix
from iobroker.tankerkoenig.
Dank @Zwer2k 's sollte dieser Fehler behoben sein. Hab den Wald vor lauter Bäumen nicht gesehen. Bitte testet v2.0.8
from iobroker.tankerkoenig.
Habe seit ein paar Tagen die oben genannte Fehlermeldung im Log.
9d0671d2-8cf3-4ac1-958b-cd8a911f0482
15c9c562-812f-4e20-a443-cdb967d97e81
6af4af67-54d0-4cca-b837-777f712e079c
das hier sind meine IDs. Alle Tankstellen sind offen und Daten sind vorhanden
from iobroker.tankerkoenig.
@Janideluxe Ich habe zwar keine Frage in deinem Post gefunden, aber aus Neugier mal die erste ID ausprobiert und keine Fehlermeldung entdeckt.
Es hilft bei der Fehlersuche immer, mit allen Daten rauszukommen. Welche Fehlermeldung kommt genau? Poste doch die Logausgabe in Code-Tags hier. Du kannst den Adapter auf debug
stellen und das Log hier posten.
Werden deine States nicht gefüllt?
Gruß
Pix
from iobroker.tankerkoenig.
Related Issues (20)
- type error HOT 2
- [Bug]: error: TypeError: Cannot read properties of undefined HOT 5
- [Bug]: V3.3.0:Hausnummer wird nicht im Hausnummer-Feld eingetragen HOT 12
- [Bug]: axios HOT 1
- [Bug]: Wrong type “postCode” HOT 4
- [Feature]: Cheapest Station Boolean HOT 5
- error [ Adapter V:3.3.2 createObjects ] Error creating all states: TypeError: Cannot read property 'length' of undefined[Bug]: HOT 3
- [Bug]: Cheapest Station Boolean true even if not cheapest HOT 13
- [Bug]: [ Adapter V:3.3.2 createObjects ] Error creating all states: TypeError: Cannot read properties of null (reading 'length') HOT 9
- [Bug]: post code starting with 0 shown wrong HOT 3
- wrong object value tankerkoenig.0.stations.*.status resp. no updates for fuel prices until station shop opens, although 24/7 tank automate exists HOT 6
- Update stable version in repo from 3.1.0 to 3.3.5 HOT 1
- [Feature]: Preisdifferenz in Json Tabelle HOT 7
- Hoher Speicher Verbrauch HOT 7
- requestData axios response not ok HOT 3
- [Feature]: Grafana Dashboard link in Doku HOT 1
- Anzahl der Stationen erhöhen
- Abfragezeit von 10 auf 5Minuten ändern.[Feature]:
- [Feature]: Tankstelle geöffnet text ändern
- Update stable version in repo from 3.3.7 to 3.4.0 HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from iobroker.tankerkoenig.