Hallo Leute,
ich versuche gerade meinen WDTV über fhem zu steuern. Ich kann ihn über die Kommandozeile von Linux aus auch schon ansteuern, allerdings würde ich das gerne auch von meiner Fritzbox aus tun, auf der fhem läuft - und da habe ich keinen curl-befehl (auch nicht über system("curl...). Daher mein Frage: kann mir jemand sagen, wie ich folgenden Code in meinem 99_myUtils.pm umsetzen kann:
curl -s -d '{\"remote\":\"l\"}' -v http://ip/cgi-bin/toServerValue.cgi (//ip/cgi-bin/toServerValue.cgi)"
Das fertige Skript stelle ich natürlich zur Verfügung ;-)
Beste Grüße
doc
schau dir mal GetFileFromURL oder GetFileFromURLQuiet aus FHEM/HttpUtils.pm an.
so etwa müsste es gehen:
GetFileFromURL( "http://ip/cgi-bin/toServerValue.cgi", 4, '{"remote":"l"}' );
vielleicht noch ein urlEncode() auf den data teil.
gruss
andre
BÄM, das läuft!
der GetFileFromURL war ich schon auf der Spur - ich habe das IPCAM-Modul durchgeschaut, weil die Kameras ja ähnlich angesteuert werden. Aber ehrlich gesagt bin ich bei der HttpUtils dann ausgestiegen, da verstehe ich nur noch Bahnhof - wie kommst du denn nur auf die 4? Ist mir ein Rätsel ;-) Ich muss gestehen, ich bin alter Hobby-VBA-Entwickler und das ist im Vergleich zu Perl/Linux echt pipifax. Mit der normalen Syntax komme ich mittlerweile klar, aber das was die Gemeinde da in den Modulen bastelt - da bin ich raus ;-)
Jetzt werde ich mal die WDTV Steuerung integrieren ;-)
DAnke nochmal!
doc
einfach im quelltest nachschauen:)
an der stelle kommt der timeout und wenn nichts gesetzt ist wird auch 4 verwendet. da hinten dran noch data kommt muss vorher natürlich alles gesetzt sein. also die 4 selber setzten.
gruss
andre
Wer das Skript brauchen kann - hier ist es:
http://forum.fhem.de/index.php?t=msg&goto=86757&rid=1555#msg_86757 (//forum.fhem.de/index.php?t=msg&goto=86757&rid=1555#msg_86757)
Verbesserungsvorschläge gerne ;-)
Viele Grüße
doc
curl gibts auch für die Fritzbox, z.B. hier http://thomasheinz.net/installation-von-fritzload-auf-der-fritzbox-z-b-7270/ (//thomasheinz.net/installation-von-fritzload-auf-der-fritzbox-z-b-7270/)
Ich muss das Thema noch mal hochholen. Ich verwende ein FS20 IRB was ebenfalls mit curl gesteuert werden kann. Allerdings möchte ich dies nicht nachinstallieren, weil ich auf Apache gern verzichten möchte.
Leider passiert bei meiner Variante gar nichts, keine Fehler und keine Wirkung.
{GetFileFromURL("http://192.168.178.36/index.htm", 4, '{btnStationStop=0}')}
Der curl Aufruf dazu sieht wie folgt aus.
curl --data-urlencode btnStationStop=0 http://192.168.178.36/index.htm