FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Ralph am 05 Februar 2021, 16:12:09

Titel: Es blinkt(e) nicht mehr - böse Falle ?
Beitrag von: Ralph am 05 Februar 2021, 16:12:09
Moin,
nach einem Update blinkte es plötzlich nicht mehr. Nun braucht es einen weiteren Parameter.

"blink requires count as integer and duration as float "  Nimm einen . und kein ,

Muss ja einem dummen Menschen gesagt werden.
Titel: Antw:Es blinkt(e) nicht mehr - böse Falle ?
Beitrag von: Wernieman am 05 Februar 2021, 19:21:06
Irgendwie fehlt mir der Zusammenhang .. was blinkt nicht mehr?
Titel: Antw:Es blinkt(e) nicht mehr - böse Falle ?
Beitrag von: betateilchen am 05 Februar 2021, 19:48:54
Die Meldung kommt seit Anfang Dezember aus SetExtensions.pm, wenn die Parameter für "blink" nicht korrekt angegeben sind.


--
Titel: Antw:Es blinkt(e) nicht mehr - böse Falle ?
Beitrag von: Ralph am 05 Februar 2021, 20:32:00
Der zeitrahmen war mir nicht bekannt.

Warum ich obiges schrieb:
die Heimtücke liegt im Detail:
vorher blinkte es ohne den 2ten Parameter.
Nun kam plötzlich bei einem gewollten Blinkalarm kein Blinken mehr.
Der User geht davon aus, dass es nicht blinkt, also keine Alarmkonstellation - denkt er.
Weit gefehlt, doch Alarmkonstellation, nur eben kein Blinken.

Da kommt man erst drauf, wenn das Kind schon im Brunnen ersoffen ist.
Titel: Antw:Es blinkt(e) nicht mehr - böse Falle ?
Beitrag von: betateilchen am 05 Februar 2021, 21:17:38
Zitat von: Ralph am 05 Februar 2021, 20:32:00
vorher blinkte es ohne den 2ten Parameter.

Die Heimtücke liegt im Detail: Eigentlich erwartete die Funktion auch vorher schon zwei Parameter, allerdings war die Prüfung für den Fehlerfall etwas schwach ausgeprägt.

Das ist der alte Code:


  } elsif($cmd eq "blink") {
    my $p2 = $a[1];
    return "$cmd requires 2 numbers as argument"
        if($param !~ m/^\d+$/ || $p2 !~ m/^\d*\.?\d*$/);


Betrachte also bitte die Tatsache, dass es früher bei Dir funktioniert hat, eher als "Zufall" denn als Feature.


--