Seite 1 von 2
Einzelne Marker aus params.json separieren
Verfasst: So 19. Nov 2017, 11:25
von mmehlich
Hallo,
das Separieren der einzelnen Blöcke aus der params.json mache ich nach dieser Anleitung:
https://www.schlaue-huette.de/lightmana ... rarbeiten/
Das klappt auch wunderbar. Den Marker-Block (marker state) im Ganzen ansprechen auch kein
Thema. Wie das Ansprechen der einzelnen Marker in der params.htm ablief weiß ich auch.
Ich bekomms aber in der json-Variante nicht gebacken.
Wer hat die entscheidenden 2-3 Code-Zeilen für mich ?
Danke & Gruss
Re: Einzelne Marker aus params.json separieren
Verfasst: So 19. Nov 2017, 11:34
von BooosesThaSnipper
Welche Sprache? Bei Bash kann ich helfen....
Re: Einzelne Marker aus params.json separieren
Verfasst: So 19. Nov 2017, 11:38
von mmehlich
Das File von Sebi ist ein .php
Gruss
Re: Einzelne Marker aus params.json separieren
Verfasst: So 19. Nov 2017, 13:19
von paulinchen
Ich nutze dazu Javascript.
Wie das in PHP geht, hat doch Sebi unter
"Lightmanager" - "Air" - "Howtos" - "Params.htm verstehen"
eigentlich gut beschrieben. Was genau fehlt Dir denn noch?
Re: Einzelne Marker aus params.json separieren
Verfasst: So 19. Nov 2017, 13:40
von mmehlich
Der Unterschied zwischen der htm und der json ist, dass in Ersterer
alle Parameter (Temperatur, Zeit, Marker) in einem Block liegen,
in der json aber bereits teil-separiert sind ("marker status", ... .
Ich habe halt meine Schwierigkeiten, die Abfrage in der json entsprechend
umzusetzen, da mit php eigentlich keine Erfahrung.
Gruss
Re: Einzelne Marker aus params.json separieren
Verfasst: So 19. Nov 2017, 14:02
von paulinchen
Also von PHP habe ich echt keine Ahnung.
Ich habe jetzt einfach mal die beiden Scripte von Sebi genommen...
Code: Alles auswählen
<?php
$request1 = file_get_contents("http://lightmanagerip/weather.json");
$request2 = file_get_contents("http://lightmanagerip/params.json");
$json1 = json_decode($request1, true);
$json2 = json_decode($request2, true);
echo 'Werte eines Oregon Scientific Sensors auf Kanal 2:<br>';
echo $json1['channel2']['temperature'] . '°C';
echo " | ";
echo $json1['channel2']['humidity'] . '%<br><br>';
echo 'Markerzustände aus der params.json:<br>';
echo $json2['marker state'];
$markerzeile = $json2['marker state'];
$marker1 = substr($markerzeile, 0, -31); // 1. Marker
$marker2 = substr($markerzeile, 1, -30); // 2. Marker
echo $marker1;
echo $marker2;
?>
Ist aber nicht getestet. Gib Bescheid, ob's so schon passt.
Re: Einzelne Marker aus params.json separieren
Verfasst: So 19. Nov 2017, 14:19
von mmehlich
So sieht die Ausgabe dann aus:
- Screenshot_2017-11-19-14-12-04[1].png (28.46 KiB) 24997 mal betrachtet
Gruss
Re: Einzelne Marker aus params.json separieren
Verfasst: So 19. Nov 2017, 14:30
von paulinchen
hier der 2. Versuch:
Code: Alles auswählen
<?php
$request1 = file_get_contents("http://lightmanagerip/weather.json");
$request2 = file_get_contents("http://lightmanagerip/params.json");
$json1 = json_decode($request1, true);
$json2 = json_decode($request2, true);
echo 'Werte eines Oregon Scientific Sensors auf Kanal 2:<br>';
echo $json1['channel2']['temperature'] . '°C';
echo " | ";
echo $json1['channel2']['humidity'] . '%<br><br>';
echo 'Markerzustände aus der params.json:<br>';
echo $json2['marker state'];
$markerzeile = $json2['marker state'];
$marker1 = substr($markerzeile, 0, 1); // 1. Marker
$marker2 = substr($markerzeile, 1, 1); // 2. Marker
echo '<br> Marker 1:';
echo $marker1;
echo '<br> Marker 2:';
echo $marker2;
?>
Re: Einzelne Marker aus params.json separieren
Verfasst: So 19. Nov 2017, 14:38
von mmehlich
Top !
1k Dank.
Gruss
Re: Einzelne Marker aus params.json separieren
Verfasst: So 19. Nov 2017, 14:56
von paulinchen
Gerne.
Freut mich, dass es passt.