Tankerkönig.de Neues Modul

Hallo,
da das Modul für Tankerkönig von Bayaro nicht mehr öffentlich verfügbar ist, habe ich mir auf die schnelle was eigenes zusammengebastelt. Die Programmierung hat keinen guten Stil, da ich nicht sehr gut PHP programmieren kann. Jedoch funktioniert das Modul für mich sehr gut. Ich habe drauf geachtet, dass die Nutzungsbedingungen von Tankerkönig eingehalten werden. Daher ist die Aktualiesierung der Preise und Status geöffnet in ein eigenes Modul ausgelagert, welches die Abfrage aller Tankstellen über die prices.php zusammenfasst.

Ich gebe das Modul hier weiter, wie es ist. Wenn sich jemand findet, der das Modul „ins Reine“ bringen will… Sehr gerne.
ToDo:
-Aufräumen des Codes - durchgehender Stil - Abfangen von Fehlern
-Lokalisierung
-Veröffentlichung auf github (GitHub - tankerkoenig/tankerkoenig-ip-symcon: Echzeit-Spritpreise: PHP Script for IP-Symcon Homeautomation und tankerkönig.de)


Der Preisfinder (welcher auch im Modul enthalten ist) ist noch nicht wirklich komplett durchdacht und fertig. Funktion ist aber gegeben.

Grüße
Stefan

Ich habe nochmal eine kleine Änderung vorgenommen, um etwas näher an den „Best Practice zur PHP-Modul Erstellung“ zu sein.
Es geht um den Punkt:

Eine Instanz sollte niemals automatisch Variablen im Archiv aktivieren. Dies ist allein die Entscheidung vom Benutzer, welcher dies explizit tun kann und soll. Bei einem Modul mit sehr vielen Variablen kann ein zusätzlicher Button im Aktionsbereich des Konfigurationsformulars platziert werden, welcher explizit gedrückt werden muss um diesen Vorgang zu automatisieren.

Die Spritpreise wurden automatisch im Archiv eingeschalten. Jetzt muss man bei der Option eine Haken setzen.

Der API-Key wurde in einen Konfigurator ausgelagert, so dass der API-Key jetzt nur noch einmal eingegeben werden muss.

Bei v0.3 war noch ein Fehler im Updater. Dieser ist hiermit behoben.

Weiterhin ToDo:
Fehler abfangen allgemein wie z.B.
{„status“:„error“,„ok“:false,„message“:„API-Key existiert nicht“}

Hey Steppe danke für dein Modul,

Hier noch ein Paar Bugs:

  1. Modul: IPSTanker form.json Line 41 == „column“: „Index“, zu ändern „column“: „TankerMarke“,
  2. Modul: IPSTankerConfig form.json Line 9 == }, zu ändern }
  3. Modul: IPSTankerPreisfinder == lässt sich nicht erstellen

<br />
<b>Notice</b>: Undefined variable: BesterPreis in <b>C:\IP-Symcon\modules\IPSTanker\IPSTankerPreisfinder\module.php</b> on line <b>126</b><br />
<br />
<b>Notice</b>: Undefined variable: BesterPreisName in <b>C:\IP-Symcon\modules\IPSTanker\IPSTankerPreisfinder\module.php</b> on line <b>132</b><br />
<br />
<b>Notice</b>: Undefined variable: BesterPreis in <b>C:\IP-Symcon\modules\IPSTanker\IPSTankerPreisfinder\module.php</b> on line <b>134</b><br />
(Code: -32603)

Gruß Swen

Hallo Swen

Danke für deine Mitarbeit. Fehler in Tanker und TankerConfig sind raus. In Preisfinder habe ich die Variablen vorbelegt und hoffe, dass der Fehler jetzt weg ist, weil er bei mir nicht aufgetaucht ist. Könnte vielleicht vorkommen, wenn noch keine Tankstellenmodule angelegt sind. Habe aber keine zweite Installation zum testen.
Der Preisfinder ist sowieso noch nicht wirklich durchdacht und fertig. Hab ihn nur mal so mit dazu gelegt. Vielleicht macht ja jemand was sinnvolleres. Hab momentan nicht die Zeit dafür.

Hallo,

wie installiere ich das Modul ? gibts da eine Anleitung dafür ?

Einfach in den modules Ordner entpacken.

Swen

Hallo Sven,

habe ich gemacht, jedoch kommen bei Einfügen der Module ne Menge Fehlermeldungen.

Du musst uns schon schreiben was für Fehler kommen, wir können ja nicht Hellsehen. :wink:

Swen

Hier die Fehlermeldung vom Modul beim Öffnen

Versuch mal meine Version.

IPSTanker.zip (11 KB)

Swen

leider der gleiche Fehler - ist da sonst noch was zu installieren ?

Hallo roesl,
schaut so aus, als ob die Konfigurator-Instanz fehlt. Also einfach Neue Instanz -> Konfigurator -> IPS-Tanker

Hier sollte ich wohl irgend ein Modulabhängigkeit noch richtig machen.
Aber grad keine Zeit das zu machen.

Grüße
Stefan

Die Modul-IDs waren klein geschrieben. Nach dem Update auf Symcon 5.1 hat das nicht mehr funktioniert.
Ist jetzt geändert. Das mit dem Konfigurator habe ich noch nicht angeschaut.

Da ist noch ein Fehler drin.

tankerkönig.PNG
Kommt beim öffnen des Preisfinder Modules.

Swen

Hallo Swen,
ich kann den Fehler leider gerade nicht nachvollziehen. Es wurde im Preisfindermodul selbst nichts geändert. Nur in der module.json habe ich die ID statt mit Kleinbuchstaben in Großbuchstaben geschrieben.

Ist dein Symcon auf Windows oder Linux?

Grüße
Stefan

Symcon ist auf Windows installiert.

Hallo Swen,
schau doch bitte mal in der form.json von IPSTankerPreisfinder nach der Zeile:

"caption": "Tankfüllung",

und korrigiere hier den Umlaut. Hier gibt’s irgendeinen Problem mit dem Zeichensatz.

Grüße

Das war nicht das Problem - ein anderer Editor unter Windows hat es richtig gezeigt.
Ändere bitte mal die Zeile

{ "caption": "Diesel","value": "diesel" },

in

{ "caption": "Diesel","value": "diesel" }

Also das Komma am Ende muss entfernt werden.

Wenns so funktioniert, sag mir bitte bescheid, dass ich das im Zip ändere.

Grüße