Seite 1 von 1

CUxD SystemDevice mit HTTP-Call per wget?

Verfasst: 14.01.2018, 19:04
von theshmike
Hallo zusammen,

ich habe mir mit einem Raspberry für den TV Ambilight gebastelt, welches ich per Webserver auf dem PI aus- und einschalten kann.
Das funktioniert mit

Code: Alles auswählen

http://pi/ambilight.pl?action=off
http://pi/ambilight.pl?action=on
http://pi/ambilight.pl?action=status
Ich würde das Ambilight nun gerne in HM einbinden, damit ich per "Alle-Lampen-aus"-Funktion auch das Ambilight erwische.
Mein erster Ansatz war nun ein System-Gerät (EXEC, Schalter) per CUxD zu erzeugen und habe dabei das Problem, dass es das Gerät einfach nicht tut. So wie ich das verstehe, müsste ich z.B. im Kanal unter CMD|SHORT eintragen:

Code: Alles auswählen

wget http://pi/ambilight.pl?action=off
Das nimmt er allerdings schon gar nicht. Er meint er hätte alles fein ans Gerät übertragen, aber beim nächsten Aufruf der Einstellungen ist das Feld wieder leer.

Habe ich irgendwo einen Denkfehler?

Ein zweiter Gedanke ist noch: Kann CUxD eigentlich den aktuellen Status des Geräts auch per Abfrage "?action=status" abfragen?
Ich könnte das Ambilight ja z.B. per HM ein, und per Handfernbedienung des PI wieder ausschalten. In diesem Fall würde HM das Gerät ja immer noch als "AN" mitführen.

Für ein paar Tipps wäre ich sehr dankbar :)

Re: CUxD SystemDevice mit HTTP-Call per wget?

Verfasst: 15.01.2018, 08:24
von uwe111
theshmike hat geschrieben:Das nimmt er allerdings schon gar nicht. Er meint er hätte alles fein ans Gerät übertragen, aber beim nächsten Aufruf der Einstellungen ist das Feld wieder leer.

Habe ich irgendwo einen Denkfehler?
Schau Dir mal die Tabelle mit den Sonderzeichen in der CUxD-Doku Kapitel 5.8 an. Das = Zeichen musst Du ersetzen!
theshmike hat geschrieben:Ein zweiter Gedanke ist noch: Kann CUxD eigentlich den aktuellen Status des Geräts auch per Abfrage "?action=status" abfragen?
Ja, die Möglichkeit besteht mittels periodischer Abfrage über ein eigenes Script (CMD_TIMER Geräteparameter). Das Script für die Abfrage und Verabreitung des Rückgabewertes kannst Du frei entwickeln.

Viele Grüße

Uwe

Re: CUxD SystemDevice mit HTTP-Call per wget?

Verfasst: 15.01.2018, 08:54
von theshmike
Ja, die Möglichkeit besteht mittels periodischer Abfrage über ein eigenes Script (CMD_TIMER Geräteparameter). Das Script für die Abfrage und Verabreitung des Rückgabewertes kannst Du frei entwickeln.
Ah, das hilft mir schonmal weiter, danke!
Gibt es evtl. irgendwo ein Beispiel, aus welchem ersichtlich ist, welche Werte das Script für an/aus zurückgeben muss?
Ich bin ja als Informatiker nun wirklich nicht ganz unbedarft, aber in diesem Punkt werde ich aus dem CUxD-Handbuch nicht ganz schlau ;)

Viele Grüße,
Mike

Re: CUxD SystemDevice mit HTTP-Call per wget?

Verfasst: 15.01.2018, 11:51
von uwe111
Hallo Mike,
theshmike hat geschrieben:Gibt es evtl. irgendwo ein Beispiel, aus welchem ersichtlich ist, welche Werte das Script für an/aus zurückgeben muss?
Das Script wird periodisch aufgerufen und könnte dann per HM-Script beliebige Werte auf der CCU ändern.
Ich denke, dass die Fritzbox-Scripts viewtopic.php?f=37&t=27994 das nutzen.

Viele Grüße

Uwe

Re: CUxD SystemDevice mit HTTP-Call per wget?

Verfasst: 15.01.2018, 14:33
von theshmike
Ah okay, jetzt verstehe ich das! D.h. ich schreibe ein Skript, welches ggf. auch die Stati mehrerer virtueller Geräte prüft und dann per .State() o.Ä. den Status der jeweiligen Geräte selbst ändert.
Dachte bisher, das Skript muss in irgendeinem vorgegebenem Format Rückgabewerte an den Aufrufer ausgeben.

Macht Sinn, werde ich mich mal dransetzen, danke! :D