Punkt im Device-Namen eines DOIFs verhindert $SHOWNODEVICELINE

Begonnen von cwagner, 06 Februar 2021, 11:45:15

Vorheriges Thema - Nächstes Thema

cwagner

Wenn ich zum Beispiel in einem Dashboard nur eine DOIF uiTable darstellen will, soll ich mit
$SHOWNODEVICELINE = "<Name des Raumes>"
die Ausgabe der Statuszeile unterdrücken können.

Das klappt dann nicht, wenn der Name des DOIfs einen Punkt enthält:

  • Funktioniert: CC_Wohnzimmer
  • Funktioniert nicht: CC.Wohnzimmer


Christian
PI 2B+/5 Raspbian 12, Perl 5.36.0, FHEM 6.3: 295 Module in ConfigDB: Steuerung Heizkessel, FBH, Solarthermie, kontr. Lüftung mit WRG. Smarthome u.a. HMCUL, 1-Wire (FT232RL ; DS2480B), EnOcean (TCM EPS3), MQTT2. DOIF, PID20, Threshold, OWX; Micropelt IRTV, Volkszähler, SolarForecast; MariaDB

Damian

Zitat von: cwagner am 06 Februar 2021, 11:45:15
Wenn ich zum Beispiel in einem Dashboard nur eine DOIF uiTable darstellen will, soll ich mit
$SHOWNODEVICELINE = "<Name des Raumes>"
die Ausgabe der Statuszeile unterdrücken können.

Das klappt dann nicht, wenn der Name des DOIfs einen Punkt enthält:

  • Funktioniert: CC_Wohnzimmer
  • Funktioniert nicht: CC.Wohnzimmer


Christian

muss ich mir anschauen
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

thotti70

Hi und vorab danke für die rege DOIF Erweiterung. Echt cool.

Das mit dem Punkt im Device-Namen kann ich leider bestätigen.
Auch $SHOWNOSTATE wird dann ignoriert.

cruser1800

Hallo Gibt es hier eine Lösung?

Habe das gleiche Problem beim Namen MQTT2_ha_services_v0.4.0_on_QNAPDebian

FHEM kommt damit klar. Aber durch das DOIF kommt folgende Fehlermeldung im Log PERL WARNING: Bareword found where operator expected at (eval 519911) line 1, near "4.0_on_QNAPDebian"
Gruß Lutz

Damian

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

cruser1800

Hier mal die

RAW definition

defmod Sun_Status DOIF ([+00:05] and ReadingsAge("MQTT2_ha_services_v0.4.0_on_QNAPDebian","state_inverter_4193141108_looprunningtime",0) > 200) (setreading MQTT2_ha_services_v0.4.0_on_QNAPDebian state_inverter_4193141108_logger_status offline, setreading MQTT2_ha_services_v0.4.0_on_QNAPDebian state_inverter_4193141108_totalpower 0, setreading MQTT2_ha_services_v0.4.0_on_QNAPDebian state_inverter_4193141108_pv1power 0, setreading MQTT2_ha_services_v0.4.0_on_QNAPDebian state_inverter_4193141108_pv2power 0, setreading MQTT2_ha_services_v0.4.0_on_QNAPDebian state_inverter_4193141108_pv1current 0, setreading MQTT2_ha_services_v0.4.0_on_QNAPDebian state_inverter_4193141108_pv2current 0, setreading MQTT2_ha_services_v0.4.0_on_QNAPDebian state_inverter_4193141108_pv1voltage 0, setreading MQTT2_ha_services_v0.4.0_on_QNAPDebian state_inverter_4193141108_pv2voltage 0) DOELSEIF (["MQTT2_ha_services_v0.4.0_on_QNAPDebian":"state_inverter_4193141108_logger_status",0] eq "offline") (setreading MQTT2_ha_services_v0.4.0_on_QNAPDebian state_inverter_4193141108_logger_status online)
attr Sun_Status DbLogExclude .*
attr Sun_Status room Programme

Damian

Hast du die aktuelle DOIF-Version?

Ich habe kein Problem mit dem Punkt.


Internals:
   DEF        (["bla.test":"state",0])
   FUUID      644d390d-f33f-c0d4-7830-ee8b61499fed9abd
   MODEL      FHEM
   NAME       di_test
   NOTIFYDEV  .*(bla.test).*,global
   NR         206
   NTFY_ORDER 50-di_test
   STATE      cmd_2
   TYPE       DOIF
   VERSION    27740 2023-07-10 09:31:11
   READINGS:
     2023-10-19 23:04:27   Device          bla.test
     2023-10-19 23:04:27   cmd             2
     2023-10-19 23:04:27   cmd_event       bla.test
     2023-10-19 23:04:27   cmd_nr          2
     2023-10-19 23:04:09   mode            enabled
     2023-10-19 23:04:27   state           cmd_2
     2023-05-01 12:08:17   test            HASH(0x4c2a7d8)
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

cruser1800

Ich habe vorhin aktualisiert und die Version 27740 2023-07-10 09:31:11

cruser1800

Ich habe jetzt die Punkte raus genommen und bekomme keine Fehlermeldungen mehr!

Damian

Also ich kann keine Fehlermeldung bei Deviceangaben in Triggerangaben (in eckigen Klammern) mit Punkt bei mir feststellen.

Wenn ich dem genauer nachgehen soll, dann bräuchte ich ein einfaches Beispiel mit Dummys, das ich bei mir 1:1 nachstellen kann.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF