FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Pazekal am 04 Februar 2017, 13:47:46

Titel: NOTIFY mit Aufruf einer PHP Datei
Beitrag von: Pazekal am 04 Februar 2017, 13:47:46
Hi zusammen,

ich hänge seit Stunden an einem Problem und komme nicht weiter.
Ich möchte gesteuert nach einer bestimmten Voraussetzung ein PHP Script ausführen, welches ein Relay per TCP Befehlen steuert. Das PHP Script funktioniert alleine sehr gut. Ich bekomme es nur nicht hin dieses PHP Script per FHEM aufzurufen.

Folgenden Code nutze ich zum Testen um dann per "trigger" die einzelnen Notify auszuführen.

define NOTIFY_PlantRelayON notify NOTIFY_PlantRelayON {system("php /opt/fhem/mycfg/scripts/relayplant.php 192.168.3.142 3x4x1")}
define NOTIFY_PlantRelayOFF notify NOTIFY_PlantRelayOFF {system("php /opt/fhem/mycfg/scripts/relayplant.php 192.168.3.142 3x4x0")}


Als Rückgabe im Log bekomme ich immer nur "-1".

Hat jemand eine Idee?

Danke

VG
Pazekal
Titel: Antw:NOTIFY mit Aufruf einer PHP Datei
Beitrag von: DeeSPe am 04 Februar 2017, 13:53:13
Ist die Seite nicht auf dem Webserver verfügbar?
Dann könntest Du sie mit GetFileFromURL oder GetFileFromURLQuiet holen!

Dein notify sollte auch kein system enthalten. Und evtl. am Ende noch ein & anfügen.
Etwa so:
define NOTIFY_PlantRelayON notify NOTIFY_PlantRelayON "php /opt/fhem/mycfg/scripts/relayplant.php 192.168.3.142 3x4x1 &"

Ich würde, wenn es geht, lieber per GetFileFromURL holen.

Gruß
Dan
Titel: Antw:NOTIFY mit Aufruf einer PHP Datei
Beitrag von: Pazekal am 04 Februar 2017, 13:59:09
Danke für die schnelle Antwort.
Das hatte ich schon versucht ohne system. Das funktioniert leider auch nicht.

Das Script zuckt nicht wenn ich es so aufrufe.

Ich werde deinen Rat befolgen und das Script auf meinen Apache laden, sodass ich es so ausführen kann. Dennoch wundert es mich, dass das Script nicht läuft.
Ich habe in einem anderen Thread gelesen, dass es an der Anzahl Übergabeparameter liegen könnte. Ist dem so?
Titel: Antw:NOTIFY mit Aufruf einer PHP Datei
Beitrag von: DeeSPe am 04 Februar 2017, 14:19:50
Zitat von: Pazekal am 04 Februar 2017, 13:59:09
Danke für die schnelle Antwort.
Das hatte ich schon versucht ohne system. Das funktioniert leider auch nicht.

Das Script zuckt nicht wenn ich es so aufrufe.

Und Du hast es auch ganz sicher ohne die umschliessenden {} gemacht? Und auch das & am Ende?

Gruß
Dan

EDIT: Läuft es denn wenn Du es so auf der CLI ausführst?
Titel: Antw:NOTIFY mit Aufruf einer PHP Datei
Beitrag von: Pazekal am 04 Februar 2017, 16:21:42
Ganz sicher..

Auf der CLI läuft das Script ohne Probleme.. Ich rufe es ganz genauso auf nur eben direkt auf der Konsole.

pi@raspberrypi:/opt/fhem/mycfg $ php scripts/relayplant.php 192.168.3.142 3x4x1

Muss ich hem noch bestimmte Rechte geben, dass es diese Kommandos ausführen kann? Eventuell eine bestimmte Shell zuweisen für den User oder ähnliches?

Titel: Antw:NOTIFY mit Aufruf einer PHP Datei
Beitrag von: Pazekal am 04 Februar 2017, 16:25:25
Oh Mann.. Habe soeben mein Problem gelöst. Ich hatte einen Schreibfehler in den Variablen.

Danke für die Hilfe