Hallo,
ich nutze Robonect, um meinen Gardena anzusteuern. Ab und an muss ich den Gardena (der Mäher) neu starten und sende ihm den Befehl
GetFileFromURL('http://x.xx.x/xml?user=y&pass=y&cmd=service&reboot','15','','0','1');
Gebe ich die URL im Browser ein, so bekomme ich in einem XML "true" zurück. Schicke ich den Befehl wie oben im FHEM ab, passiert ... Nix. An einer Firewall kann es nicht liegen, GetFileFromURL funktioniert an anderer Stelle korrekt. Hat jemand eine Idee, was da falsch ist?
eventuell liegt es am unterschiedlichen header, der jeweils gesendet wird.
was sagt fhem.log?
Für die Nachwelt. So funktioniert es:
sub GetGardenaHTTP($)
{
my ($Params) = @_;
my $URL = "http://x.x.x.x/xml?user=y&pass=y&".$Params;
my $err = "";
my $data = "";
my $param = {
url => $URL,
timeout => 10,
method => "GET",
header => "User-Agent: TeleHeater/2.2.3\r\nAccept: application/json"
};
($err, $data) = HttpUtils_BlockingGet($param);
return $data;
}
sub RebootGardena()
{
GetGardenaHTTP('cmd=service&reboot');
}