Tankstellen und Preise anzeigen im Neo mit php

Haussteuerung mittels mediola

Moderator: Co-Administratoren

33zdenko
Beiträge: 343
Registriert: 21.12.2013, 16:50
Danksagung erhalten: 4 Mal

Tankstellen und Preise anzeigen im Neo mit php

Beitrag von 33zdenko » 14.02.2016, 22:26

Hallo
Der user Borland hat im mediola forum, nach einer anzeige der Tankstellen mit php im Neo gefragt.
Hab die php dateien für seine 2 Tankstellen gemacht, sind aber mit der tankstellen Id, in dieser zeile für alle anpassbar:
php code:

Code: Alles auswählen

$Tankstellen[] = "51d4b64c-a095-1aa0-e100-80009459e03a";
die ID findet man in dem man hier
http://www.latlong.net/
die adresse seiner tankstelle eingibt, dann erhält man die koordinaten latitude und longitude
diese zahlen gibt man in diesem link

Code: Alles auswählen

http://www.tankerkoenig.de/mobile.php?lng=8.9600000&lat=50.2100000&rad=5&sort=price&type=diesel
hier die lng= und lat= mit eigenen werten ersetzen
dann auf die tankstelle klicken und oben in der adresszeile vom browser ist die ID zu finden

es gibt für jede tankstelle eine php datei, tanken1.php und tanken2.php
die logos der tankstellen sind für die 2 im script im ordner, sonst für andere tankstellen selbst anldegen und im code ersetzen

Code: Alles auswählen

$HTML .= '<body><div class="logo"><img width="180" height="67" src="jet.png"></div>';
bei src= den namen eigener grafik schreiben, z.b. src="aral.png"
möchte man keine grafik dann die zeile oben mit // auskomenttieren

so sieht das aus
Bildschirmfoto 2016-02-14 um 22.19.55.png
hier noch die dateien als zip
tanken.zip
(33.85 KiB) 546-mal heruntergeladen
in einen ordner auf dem webserver kopieren
in neo im webseiten element die url eingeben

Code: Alles auswählen

http://serverip/ordner/tanken1.php
für die 2te tankstelle tanken2.php eingeben
um farben anzupassen sollte man die mobile.css datei editieren
der hintergrund ist standardmässig transparent

Borland
Beiträge: 415
Registriert: 28.10.2015, 21:12
Hat sich bedankt: 2 Mal
Danksagung erhalten: 1 Mal

Re: Tankstellen und Preise anzeigen im Neo mit php

Beitrag von Borland » 15.02.2016, 05:45

Moin, auch hier noch mal vielen Dank für die Mühe die Du Dir
Gemacht hast!
Das sieht echt klasse aus :)

Vielen Dank

Gruß

B.

onkel_peter
Beiträge: 90
Registriert: 08.12.2014, 22:16
Wohnort: Erfurt

Re: Tankstellen und Preise anzeigen im Neo mit php

Beitrag von onkel_peter » 16.02.2016, 23:15

Hallo 33zdenko,

auch vom mir "Danke !" für die Super Umsetzung und Bereitstellung !
Habe es durch meine ursprüngliche Version in Neo ersetzt.

Peter

PeterM
Beiträge: 761
Registriert: 14.10.2008, 10:15
System: Alternative CCU (auf Basis OCCU)
Wohnort: Walldorf/Baden
Danksagung erhalten: 2 Mal

Re: Tankstellen und Preise anzeigen im Neo mit php

Beitrag von PeterM » 23.02.2016, 15:01

Hallo 33zdenko,

herzlichen Dank für die Arbeit.

Allerdings sollten die Zeilen:

Code: Alles auswählen

		$TankenPreisE53 = substr($TankstellePreisE5, 2, 1);
		$TankstellePreisE10 = (float)$Tankstelle->station->e10;
		$TankenPreisE10 = substr($TankstellePreisE10, 0, 4);
		$TankenPreisE103 = substr($TankstellePreisE10, 2, 1);
		$TankstellePreisDIESEL = (float)$Tankstelle->station->diesel;
		$TankenPreisDIESEL = substr($TankstellePreisDIESEL, 0, 4);
		$TankenPreisDIESEL3 = substr($TankstellePreisDIESEL, 2, 1);
noch geändert werden in:

Code: Alles auswählen

		$TankenPreisE53 = substr($TankstellePreisE5, 4, 1);
		$TankstellePreisE10 = (float)$Tankstelle->station->e10;
		$TankenPreisE10 = substr($TankstellePreisE10, 0, 4);
		$TankenPreisE103 = substr($TankstellePreisE10, 4, 1);
		$TankstellePreisDIESEL = (float)$Tankstelle->station->diesel;
		$TankenPreisDIESEL = substr($TankstellePreisDIESEL, 0, 4);
		$TankenPreisDIESEL3 = substr($TankstellePreisDIESEL, 4, 1);
sonst stimmen die (extrem wichtigen :lol: ) zehntel Cent nicht.

Viele Grüße,
Peter

whiskywhisky
Beiträge: 49
Registriert: 09.05.2016, 12:48
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 1 Mal

Re: Tankstellen und Preise anzeigen im Neo mit php

Beitrag von whiskywhisky » 23.06.2016, 19:47

Moin,

ich schubse den Thread mal wieder hoch ..

Das hier gezeigte script habe ich seit ein paar Tagen im Einsatz, frage aber nur eine Tankstelle ab.
Heute wurde mein API-key gesperrt. Ich habe einiges per Mail mit Martin Kurz von Tankerkönig in Erfahrung gebracht:

Meine Einstellungen in Mediola waren "autorefresh" und 1800 Sekunden. Trotzdem hat das script teilweise mehrmals pro Sekunde abgefragt und den Server stark belastet (und zur Sperrung meines keys geführt)

Z.Zt. wird ein Feature programmiert, mit dem jeder User seine Log-Einträge selbst abholen und so überprüfen kann, welche Requests bei Tankerkönig ankommen. Sobald ich das "go" habe, poste ich den Link dahin.

Noch ein Auszug aus den Emails:

1. Preisupdates werden mit detail.php, statt mit prices.php gemacht,
das dafür vorgesehen ist.
2. statt das Intervall auf minimal 4 Minuten zu setzen, wird eine
deutlich höhere Frequenz eingesetzt (hier 4 mal in einer Minute,
davon 3 mal in einer Sekunde - vermutlich ein Bug).

Infos zu den Nutzungsbedingungen und den einzelnen Methoden findest
Du hier: https://creativecommons.tankerkoenig.de/

.....

Wegen prices.php:
das scheint speziell bei HomeMatic problematisch
zu sein, da offenbar keine der üblichen Skript-Sprache enigesetzt
werden kann, sondern mit einem HomeMatic-Script gearbeitet
wird, das keine JSON-Unterstützung mitbringt.
Es ist ok, wenn das bis auf weiteres so bleibt, bis einer der sich
damit auskennt Code postet, der damit umgehen kann .....


seitdem ich autorefresh raus habe und als Intervall 1800s eingestellt habe, zeigt mein Log, dass nur noch ca. alle 16 Minuten eine Abfrage kommt. Warum die Mediola Software 1800s in ca. 16 min umrechnet, weiß ich allerdings auch nicht. Da ist eventuell ein alter Pentium-Prozessor im Einsatz :-)

schönen Abend und Gruß
Wolfgang

edit:

hier der weiter oben angekündigte Link:

https://creativecommons.tankerkoenig.de/#debug

In den einzelnen Zeilen des Logs ist ersichtlich:
- IP-Adresse
- Zeitpunkt
- Request mit allen Parametern
- Protokoll
- Status (die üblichen HTTP Codes, 200: ok)
- Größe der Antwort in Bytes


edit 2:

- autorefresh raus hat wieder alle ca. 16 Min abgefragt, aber keine Daten geliefert
- autorefresh ein und Zeitabstand 1500s hat wieder mehrmals pro Sekunde abgefragt und Daten geliefert

kann mal jemand anderes das debug-script testen?

bei mir geht´s erst nächste Woche weiter, bin am WE unterwegs.

Allen ein schönes WE und Gruß
Wolfgang

abc150781
Beiträge: 176
Registriert: 20.12.2017, 18:10
Hat sich bedankt: 11 Mal
Danksagung erhalten: 1 Mal

Re: Tankstellen und Preise anzeigen im Neo mit php

Beitrag von abc150781 » 12.01.2019, 21:27

Hallo zusammen,

erstmal vielen Dank für das super script, sieht wirklich gut aus auf meiner neuen Startpage.
Bin jetzt kein PHP experte daher wohl möglich eine blöde Frage:

1. Kann ich mehrere Tankstellen statt untereinander auch nebeneinander darstellen?
2. Wie kann ich bei den Öffnungszeit den Sekunden Wert entfernen. Mir reicht es wenn ich HH:MM erhalte.

Versteht mich nicht falsch, dass ist klagen auf extrem niveau :-)

Gruß
Patrick

33zdenko
Beiträge: 343
Registriert: 21.12.2013, 16:50
Danksagung erhalten: 4 Mal

Re: Tankstellen und Preise anzeigen im Neo mit php

Beitrag von 33zdenko » 13.01.2019, 16:53

abc150781 hat geschrieben:
12.01.2019, 21:27
Hallo zusammen,

erstmal vielen Dank für das super script, sieht wirklich gut aus auf meiner neuen Startpage.
Bin jetzt kein PHP experte daher wohl möglich eine blöde Frage:

1. Kann ich mehrere Tankstellen statt untereinander auch nebeneinander darstellen?
2. Wie kann ich bei den Öffnungszeit den Sekunden Wert entfernen. Mir reicht es wenn ich HH:MM erhalte.

Versteht mich nicht falsch, dass ist klagen auf extrem niveau :-)

Gruß
Patrick
2.
du musst in diesen zeilen anpassen:

Code: Alles auswählen

$TankstelleGeoffnetVon = substr($Tankstelle->station->openingTimes[0]->start, 0,5);
		$TankstelleGeoffnetBis = substr($Tankstelle->station->openingTimes[0]->end,0, 5);
die 5 mit 3 ersetzen und testen....ich denke das sollte reichen.

33zdenko
Beiträge: 343
Registriert: 21.12.2013, 16:50
Danksagung erhalten: 4 Mal

Re: Tankstellen und Preise anzeigen im Neo mit php

Beitrag von 33zdenko » 13.01.2019, 16:54

abc150781 hat geschrieben:
12.01.2019, 21:27
Hallo zusammen,

erstmal vielen Dank für das super script, sieht wirklich gut aus auf meiner neuen Startpage.
Bin jetzt kein PHP experte daher wohl möglich eine blöde Frage:

1. Kann ich mehrere Tankstellen statt untereinander auch nebeneinander darstellen?
2. Wie kann ich bei den Öffnungszeit den Sekunden Wert entfernen. Mir reicht es wenn ich HH:MM erhalte.

Versteht mich nicht falsch, dass ist klagen auf extrem niveau :-)

Gruß
Patrick
1.
du musst einfach 2 neo webseiten elemente nebeneinander plazieren und dort einzelne php seiten

Schwatten
Beiträge: 1
Registriert: 09.01.2021, 12:30
System: CCU

Re: Tankstellen und Preise anzeigen im Neo mit php

Beitrag von Schwatten » 09.01.2021, 12:37

Tach zusammen.

Ich habe jetzt Alles erfolgreich bei mir in NEO über das Webseitenelement einbinden können. Nur gibt es eine Möglichkeit das ganze zu vergrössern bzw. nach eigenen Wünschen im Creator zu skalieren. Hab nen Ipad pro und dort ist das Ganze sehr klein dargestellt.
Hab schon Alles versucht aber leider komme ich nicht weiter.

Ich hoffe Ihr könnt mir weiterhelfen.
Wünsche ein schönes Wochenende.

Fonzo
Beiträge: 6687
Registriert: 22.05.2012, 08:40
System: CCU
Hat sich bedankt: 25 Mal
Danksagung erhalten: 478 Mal

Re: Tankstellen und Preise anzeigen im Neo mit php

Beitrag von Fonzo » 09.01.2021, 12:50

Schwatten hat geschrieben:
09.01.2021, 12:37
Ich habe jetzt Alles erfolgreich bei mir in NEO über das Webseitenelement einbinden können. Nur gibt es eine Möglichkeit das ganze zu vergrössern bzw. nach eigenen Wünschen im Creator zu skalieren.
Entweder Du musst halt in dem Quellcode die verwendeten Grafiken anpassen bzw. die Größe der Schriftart per CSS. Wenn Du die Elemente in NEO einzeln jeweils frei in der NEO Remote positionieren willst und in der Schriftgröße, Schriftart, und Position als Textelement bzw. Grafikelement frei anpassen willst, ist es einfacher IP-Symcon an NEO als PHP Server anzubinden und ein Tankstellen PHP Modul zu nutzten. Dann kannst Du die Werte einzeln im Gerätemanager in NEO importieren und so einzeln Textfeldern oder Grafiken zuweisen, dann kannst Du jedes Textfeld in NEO ganz normal in der Position, Schriftart und Schriftgröße anpassen.

Antworten

Zurück zu „mediola“