Abfrage nicht existierenden Readings / default Wert

Begonnen von amenomade, 12 August 2020, 00:09:46

Vorheriges Thema - Nächstes Thema

amenomade

Hallo zusammen

Man kann einen Default-Wert definieren, wie z.B.
[room:temperatur,20]
Das funktioniert.

Aber wenn man nur abfragen will?
[?room:temperatur,20]scheint nicht zu funktionieren.

Gibt es eine andere Syntax, um das zu machen?
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Damian

Zitat von: amenomade am 12 August 2020, 00:09:46
Hallo zusammen

Man kann einen Default-Wert definieren, wie z.B.
[room:temperatur,20]
Das funktioniert.

Aber wenn man nur abfragen will?
[?room:temperatur,20]scheint nicht zu funktionieren.

Gibt es eine andere Syntax, um das zu machen?

Würde mich wundern, wenn es nicht funktioniert:

Internals:
   CFGFN     
   DEF        ([?gibts:nicht,10] == 10)
   FUUID      5f339f86-f33f-30f6-1f1f-44abcca3ef27e0d6
   MODEL      FHEM
   NAME       di_default
   NOTIFYDEV  global
   NR         143708
   NTFY_ORDER 50-di_default
   STATE      cmd_1
   TYPE       DOIF
   VERSION    22428 2020-07-18 20:32:08
   READINGS:
     2020-08-12 09:54:38   cmd             1
     2020-08-12 09:54:38   cmd_event       di_default
     2020-08-12 09:54:38   cmd_nr          1
     2020-08-12 09:54:35   mode            enabled
     2020-08-12 09:54:38   state           cmd_1
   Regex:


getestet über set checkall, kein Problem

Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

amenomade

Ok, hab weiter getestet, weil ich doch ein Problem hatte.

Sowas geht zwar, aber ergibt ein Warning in der Log und im DOIF:
Internals:
   CFGFN     
   DEF        ([?gibts:nicht,0] < 5) ()
   FUUID      5f342876-f33f-fe91-cd85-c01822124c82dc1e
   MODEL      FHEM
   NAME       ditest3
   NOTIFYDEV  global
   NR         1253
   NTFY_ORDER 50-ditest3
   STATE      cmd_1
   TYPE       DOIF
   VERSION    22161 2020-06-11 12:49:48
   .attraggr:
   .attrminint:
   READINGS:
     2020-08-12 19:37:55   cmd             1
     2020-08-12 19:37:55   cmd_event       ditest3
     2020-08-12 19:37:55   cmd_nr          1
     2020-08-12 19:37:49   mode            enabled
     2020-08-12 19:37:55   state           cmd_1
     2020-08-12 19:37:55   warning         condition c01: Argument "" isn't numeric in numeric lt (<)

   Regex:
     accu:
   attr:
     cmdState:
     wait:
     waitdel:
   condition:
     0          ::ReadingValDoIf($hash,'gibts','nicht') < 5
   do:
     0:
       0         
     1:
   helper:
     DEVFILTER  ^global$
     NOTIFYDEV  global
     globalinit 1
     last_timer 0
     sleeptimer -1
     timerdev   
     timerevent
     timerevents
     timereventsState
     triggerDev
     DOIF_eventa:
       cmd_nr: 1
       cmd: 1
       cmd_event: ditest3
       cmd_1
     DOIF_eventas:
       cmd_nr: 1
       cmd: 1
       cmd_event: ditest3
       state: cmd_1
   uiState:
   uiTable:
Attributes:

Default-Wert 0 mag er nicht. Mit anderen Werten geht es
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

amenomade

Workaround:
DEF        ([?gibts:nicht,0.0] < 5) ()
aber unschön ;)
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Damian

es geht jetzt auch mit:

([?gibts:nicht,0] < 5) ()

neue Version eingecheckt
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF