Hallo zusammen,
bin gerade am verzweifeln beim Einrichten eines Watchdog für den Badfenster-Kontaktsensor. Es soll beim Triggern eine Benachrichtigung über einen IFTTT-Webhook gefeuert werden. Irgendwo ist der Wurm drin - laut FHEM wird getriggered (Log sagt ,,Watchdog wd_Badfenster_opened triggered"), IFTTT macht jedoch nichts (die URL händisch im Browser aufgerufen funktioniert). :'(
Der Watchdog ist folgendermaßen definiert:
define wd_Badfenster_opened watchdog Badfenstersensor:open.* 00:00:30 Badfenstersensor:closed.* {IFTTT("Offen","Badfenster offen","Achtung, das Badfenster ist noch geöffnet – bitte schließen!","");;fhem("trigger wd_Badfenster_opened");;}
Die aufgerufene Funktion IFTTT in 99_myUtils.pm:
sub
IFTTT($$$$)
{
my ($Event,$Value1,$Value2,$Value3) = @_;
my $IFTTT_URL = "https://maker.ifttt.com/trigger/".$Event."/with/key/xxx?value1=".$Value1."&value2=".$Value2;
my $encodedURL = urlEncode($IFTTT_URL);
my $param = {
url => $encodedURL,
timeout => 5,
callback => sub(){ }
};
HttpUtils_NonblockingGet($param);
}
Sieht jemand einen Fehler? :-[
Viele Grüße
Thomas
Hab das Problem gefunden - lag an der Formatierung der URL. Wenn ich folgendes als URL definiere geht es:
my $IFTTT_URL = "https://maker.ifttt.com/trigger/".urlEncode($Event)."/with/key/xxx?value1=".urlEncode($Value1)."&value2=".urlEncode($Value2);