Hallo,
ich steuere meinen Receiver per WebInterface.
Ursprünglich per extra shell Script, aber in der aktuellen Version per GetHttpFile - was auch prima funktioniert.
Hier mein aktueller Notify:
define DreamboxNotify notify wz_Dreambox {if(ReadingsVal('wz_Dreambox', 'state', 0) eq "on") { GetHttpFile(AttrVal('wz_Dreambox', 'IPadress', 0), "/web/powerstate?newstate=4")} elsif(ReadingsVal('wz_Dreambox', 'state', 0) eq "off") { GetHttpFile(AttrVal('wz_Dreambox', 'IPadress', 0), "/web/powerstate?newstate=5")} }
Der Teil um den es eig geht ist:
{ GetHttpFile(AttrVal('wz_Dreambox', 'IPadress', 0), "/web/powerstate?newstate=5")}
Nun bekomme ich im Logfile leider die ganze Website angezeigt:
2013.03.16 17:36:19 3: DreamboxNotify return value: <?xml version="1.0" encoding="UTF-8"?>
<e2powerstate>
<e2instandby>true
</e2instandby>
</e2powerstate>
In dem shell Script hatte ich den Aufruf folgendermasen:
wget -q -O- http://192.168.0.1/web/powerstate -O- | sed -r -n 's/<e2instandby>(.*).*/\1/gp'| sed 's/\W//'
Nun meine Frage an euch Spezialisten -> wie kann ich die RegEx in den notify einbauen?
Riesen dank schon mal!
Grüße
Predi