Es blinkt(e) nicht mehr - böse Falle ?

Begonnen von Ralph, 05 Februar 2021, 16:12:09

Vorheriges Thema - Nächstes Thema

Ralph

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.
FHEM auf RaspberryPi3 mit Geekworm USV und SignalDUINO 433MHz und HM-MOD-RPI-PCB mit 3 HM-Sec-SD-2, 5 FHT, 2 RM 100-2 Uni S, 2 HMS100, 6 CUL_WS, 6 CUL_FHTTK, 11 FS20 und 7 FS20V Spannungsüberwachungen

Wernieman

Irgendwie fehlt mir der Zusammenhang .. was blinkt nicht mehr?
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

betateilchen

Die Meldung kommt seit Anfang Dezember aus SetExtensions.pm, wenn die Parameter für "blink" nicht korrekt angegeben sind.


--
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Ralph

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.
FHEM auf RaspberryPi3 mit Geekworm USV und SignalDUINO 433MHz und HM-MOD-RPI-PCB mit 3 HM-Sec-SD-2, 5 FHT, 2 RM 100-2 Uni S, 2 HMS100, 6 CUL_WS, 6 CUL_FHTTK, 11 FS20 und 7 FS20V Spannungsüberwachungen

betateilchen

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.


--
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!