Hallo Zusammen,
ich betreibe ESP8266 Modul als Webserver und kann damit einen Ausgang auf high bzw. auf low setzen. Steuern kann man den Webserver mit GetFileFromURL und einen notify.
Der Webserver antwortet mit :
2015.12.02 10:56:58 3: nt_ESP8266 return value: <!DOCTYPE HTML>
<html>
GPIO is now high</html>
Kann man das return value in ein reading schreiben, um den Schaltzustand auszuwerten?
oder gibt es eine Möglichkeit, wenn keine Verbindung hergestellt werden kann, das eine Fehlermeldung ausgegeben wird.
Ich hätte nur gern eine Quittierung des aktuellen Zustandes.
mit setreading kannst du ein reading setzen. oder gleich im notify mit perl match-operator den wert rausziehen.
oder nimm das modul httpmod.
Hallo,
setreading kenne ich, aber was muss ich im notify eingeben um den Wert raus zu ziehen?
So sieht mein notify jetzt aus:
ESP8266:on {GetFileFromURL('http://192.168.178.37/gpio/1', 4, 1)}
Gruss Andreas
etwa so:
ESP8266:on {
my $val;
my $text = GetFileFromURL('http://192.168.178.37/gpio/1', 4, 1);
if($text =~ m/.....(.*)...../) {
$val = $1;
fhem("setreading bla my_reading ".$val);
}
}
die regex im match operator musst du entsprechend anpassen. keine ahnung was in $text steht. der klammer ausdruck soll das gewünschte aus dem text holen und in $1 dann zur verfügung stellen. vor und hinter der klammer musst du möglichst genaue angaben über den text machen der um das gesuchte steht. kompliziert zu beschreiben.
gruss frank
Hallo Frank,
danke, hat prima funktioniert.
mfg Andreas