Hallo,
mit
curl -H 'Host: 192.168.0.4:56789' \
--data '<remote><key code=1016/></remote>' \
'http://192.168.0.4:56789/apps/vr/remote'
kann ich z.B. die Lautstärke meines Telefunken um eine Einheit erhöhen.
Jetzt hab' ich aber keinen blassen Schimmer, wie ich das in FHEM machen kann. Bei HTTPMOD, GetFileFromURL und wie sie alle heißen blick' ich nicht durch.
Wenn ich einmal das o.g. Beispiel in FHEM-Schreibweise "übersetzt" bekommen habe krieg' ich den Rest (galube) ich hin.
Danke im Voraus für alle Antworten.
Gruß Frank
Hallo Gemeinde,
ich schließe mich der Frage an.
wie das ganze in Fhem übersetzen?
LG Daniel
Den Yamaha Verstaerker kann man auch mit CURL ansteuern sieht dann folgendermassen aus:
curl -v -d "<YAMAHA_AV cmd=\"PUT\"><Zone_2><Volume><Lvl><Val>21</Val><Exp>0</Exp><Unit></Unit></Lvl></Volume></Zone_2></YAMAHA_AV>" http://192.168.143.240/YamahaRemoteControl/ctrl
Schaut euch mal das 71_YAMAHA_AVR.pm Modul an. Da solltet ihr die Zeile abgewandelt wieder finden.
Ok,
etwas spät :)
Aber ich finde das auch interessant.
Schau mal auf die Seite:
https://thomaskekeisen.de/de/blog/telefunken-openhab-tv-fernseher-smart-home/
Da sind viele Codes drin.
Wenn du nur wenige Befehle willst, dann geht das das recht schnell in fhem:
Statt in der Console
curl -H 'Host: 192.168.5.64:56801' --data '<remote><key code=1012/></remote>' 'http://192.168.5.64:56801/apps/vr/remote'
setzt du in fhem einfach ein {system ("............... &")} drum rum.
Also so:
{system ("curl -H 'Host: 192.168.5.64:56801' --data '<remote><key code=1012/></remote>' 'http://192.168.5.64:56801/apps/vr/remote' &")}
Vorsicht: Der Port ändert sich hin und wieder. Keine Ahnung wann oder warum.
Wenn dir das so etwa taugt, dann einfach ein Notify und einen Dummy setzen:
define Telefunken dummy
attr Telefunken webCmd switch:lauter:leiser
define nf_Telefunken_switch notify Telefunken:switch {system ("curl -H 'Host: 192.168.5.64:56801' --data '<remote><key code=1012/></remote>' 'http://192.168.5.64:56801/apps/vr/remote' &")}
define nf_Telefuken_lauter notify Telefunken:lauter {system ("curl -H 'Host: 192.168.5.64:56801' --data '<remote><key code=1016/></remote>' 'http://192.168.5.64:56801/apps/vr/remote' &")}
define nf_Telefuken_leiser notify Telefunken:leiser {system ("curl -H 'Host: 192.168.5.64:56801' --data '<remote><key code=1017/></remote>' 'http://192.168.5.64:56801/apps/vr/remote' &")}
https://forum.fhem.de/index.php/topic,88398.msg808685.html#msg808685 (https://forum.fhem.de/index.php/topic,88398.msg808685.html#msg808685)
Man kann den curl Aufruf vermutlich auch ohne Klammern und system mit einem simplen "" machen.
Da hat sich wohl in der URL was verändert...
Habe das so gelöst:
define Telefunken.TV DOIF ([$SELF:" on"])\
("wakeonlan <macaddr>")\
DOELSEIF\
([$SELF:" off"])\
("curl -s -H 'Host: <ipaddr>:56789' --data '<remote><key code=1012/></remote>' 'http://<ipaddr>:56789/apps/SmartCenter'")\
attr Telefunken.TV cmdIcon on:general_an off:general_aus
attr Telefunken.TV do always
attr Telefunken.TV group Telefunken
attr Telefunken.TV room Homekit,Media
attr Telefunken.TV webCmd on:off
Dadurch wird mit etherwake das TV eingeschaltet.
Wenn etherwake nicht installiert ist:
sudo aptitude install etherwake
Außerdem kann der Fernseher über Homekit/siri sprachgesteuert werden.
LG
Jorge