Problem mit Watchdog

Begonnen von crazykiwi, 22 Februar 2019, 20:32:48

Vorheriges Thema - Nächstes Thema

crazykiwi

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

crazykiwi

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);