NEWS
Gelöst - PHP Aufruf der Simple-Api URL - wie?
-
Moin zusammen,
ich möchte gern aus einem PHP Script mit Hilfe von Simple-Api einen Datenpunkt aktuellisieren.
iobroker : 192.168.1.3
PHP Server : 192.168.1.11Der iobroker ist vom Internet nicht erreichbar aber mein Webserver. Daher der Aufruf des PHP Scriptes, welches dann mit Hilfe von Simple-Api den relevanten Datenpunkt anpassen soll.
Wenn ich folgende URL in meinem Heimnetzwerk direkt in den Browser eingebe, wird der Datenpunkt aktualisiert.
https://192.168.1.3:8087/set/0_userdata.0.presence.atHome?value=true&user=ganz&pass=geheim
Funktioniert super.Leider bekomme ich es nicht hin, die URL aus einem PHP Script auszuführen. Der Datenpunkt wird nicht aktualisiert.
Hier mein PHP Script auf dem Webserver.
<?php $user = $_GET['user']; $location = $_GET['location']; switch ($location) { case 0: echo "Hallo $user - akt. Lokation : Zuhause"; $url="https://192.168.1.3:8087/set/0_userdata.0.presence.atHome?value=true&user=ganz&pass=geheim"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,$url); curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); // return into a variable curl_setopt($ch, CURLOPT_TIMEOUT, 10); $result = curl_exec($ch); curl_close($ch); break; case 1: echo "Hallo $user - akt. Lokation : Unterwegs"; $url="https://192.168.1.3:8087/set/0_userdata.0.presence.atHome?value=false&user=ganz&pass=geheim"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,$url); curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); // return into a variable curl_setopt($ch, CURLOPT_TIMEOUT, 10); $result = curl_exec($ch); curl_close($ch); break; } echo "<br/><br/> Result : $result"; ?>Beispiel Aufrufe:
https://192.168.1.11/api-geofence.php?user=sven&location=0oder
https://192.168.1.11/api-geofence.php?user=sven&location=1Kommt folgende Ausgabe aber der Datenpunkt wird nicht aktualisiert.


Die Variablen werden alle ordentlich verarbeitet aber irgendwie hat der Aufruf der URL von Simple-Api keinen Effekt bzw. die Variable result ist leer.
Der Datenpunkt ändert sich nicht.Ich habe auch file_get_contents versucht. Leider auch ohne Erfolg. Was mich wundert, ist die Tatsache, dass $result immer leer ist.
Hat einer ne Idee, wie ich aus meinem PHP Script, die Simple Api Schnittstelle ansprechen muss, damit die URL korrekt aufgerufen wird, um den Datenpunkt zu aktualisieren?
Vielen Dank im Voraus.
Sven -
Moin zusammen,
ich möchte gern aus einem PHP Script mit Hilfe von Simple-Api einen Datenpunkt aktuellisieren.
iobroker : 192.168.1.3
PHP Server : 192.168.1.11Der iobroker ist vom Internet nicht erreichbar aber mein Webserver. Daher der Aufruf des PHP Scriptes, welches dann mit Hilfe von Simple-Api den relevanten Datenpunkt anpassen soll.
Wenn ich folgende URL in meinem Heimnetzwerk direkt in den Browser eingebe, wird der Datenpunkt aktualisiert.
https://192.168.1.3:8087/set/0_userdata.0.presence.atHome?value=true&user=ganz&pass=geheim
Funktioniert super.Leider bekomme ich es nicht hin, die URL aus einem PHP Script auszuführen. Der Datenpunkt wird nicht aktualisiert.
Hier mein PHP Script auf dem Webserver.
<?php $user = $_GET['user']; $location = $_GET['location']; switch ($location) { case 0: echo "Hallo $user - akt. Lokation : Zuhause"; $url="https://192.168.1.3:8087/set/0_userdata.0.presence.atHome?value=true&user=ganz&pass=geheim"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,$url); curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); // return into a variable curl_setopt($ch, CURLOPT_TIMEOUT, 10); $result = curl_exec($ch); curl_close($ch); break; case 1: echo "Hallo $user - akt. Lokation : Unterwegs"; $url="https://192.168.1.3:8087/set/0_userdata.0.presence.atHome?value=false&user=ganz&pass=geheim"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,$url); curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); // return into a variable curl_setopt($ch, CURLOPT_TIMEOUT, 10); $result = curl_exec($ch); curl_close($ch); break; } echo "<br/><br/> Result : $result"; ?>Beispiel Aufrufe:
https://192.168.1.11/api-geofence.php?user=sven&location=0oder
https://192.168.1.11/api-geofence.php?user=sven&location=1Kommt folgende Ausgabe aber der Datenpunkt wird nicht aktualisiert.


Die Variablen werden alle ordentlich verarbeitet aber irgendwie hat der Aufruf der URL von Simple-Api keinen Effekt bzw. die Variable result ist leer.
Der Datenpunkt ändert sich nicht.Ich habe auch file_get_contents versucht. Leider auch ohne Erfolg. Was mich wundert, ist die Tatsache, dass $result immer leer ist.
Hat einer ne Idee, wie ich aus meinem PHP Script, die Simple Api Schnittstelle ansprechen muss, damit die URL korrekt aufgerufen wird, um den Datenpunkt zu aktualisieren?
Vielen Dank im Voraus.
Sven@piro sagte in PHP Aufruf der Simple-Api URL - wie?:
PHP Server
Gehe mal dort in die Console ( Putty ) vom PHP Server und mache da :
curl https://192.168.1.3:8087/set/0_userdata.0.presence.atHome?value=false&user=ganz&pass=geheimwird dann der Datenpunkt geschaltet .
.
Was mich wundert, ist die Tatsache, dass $result immer leer ist.
hier die Info dazu : Link Text
-
-


