[gelöst] notify Änderungen mit zweistelligen Zahlen

Begonnen von TWART016, 13 Juni 2017, 00:12:12

Vorheriges Thema - Nächstes Thema

TWART016

Hallo,

ich habe einen notify, der mir bei einer Änderung eines dummy etwas sendet.

define SendeNotifySpeicher notify AnzahlSpeicher.* \
{if ($wday==2 && (Value("AnzahlSpeicher") eq "1")) {fhem("set Telegram msg Es ist [AnzahlSpeicher:state] Datei im Speicher")}};;\
{if ($wday==2 && (Value("AnzahlSpeicher") ge "2")) {fhem("set Telegram msg Es sind [AnzahlSpeicher:state] Dateien im Speicher")}}\


Das funktioniert auch soweit mit einstelligen Zahlen. Sobald "AnzahlSpeicher" jedoch gleich oder größer 10 ist, wird nichts mehr gesendet? Woran kann das liegen?


Gruß
TWART016

viegener

Du vergleichst Strings (ge eq, ...) und damit gilt leider "10" ist nicht grösser also "2", anders als bei numerischen Vergleichen (< > etc)

Also wenn im state immer einen Zahl steht sollten Deine Vergleiche numiersch sein also z.B. so


(Value("AnzahlSpeicher") >= 2)

Analog

(Value("AnzahlSpeicher") == 1 )
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

amenomade

"eq" und "ge" sind String Vergleich Operatoren. Dann ist die Reihenfolge:
1
10
11
...
18
19
2
20
21
...
28
29
3
4
5
...
8
9

EDIT: Viegener schneller ;)
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

TWART016