Autor Thema: [gelöst] Perl Code in doif attr wait und Gültigkeitsbereich  (Gelesen 289 mal)

Offline FHEMAN

  • Sr. Member
  • ****
  • Beiträge: 707
Hi,

ich habe ein DOIF mit 3 Bedingungen und habe Fragen zum weiteren Handling, welche sich mir nach Lesen der Commandref noch nicht ganz erschließen:

1. Zum Geltungsbereich bspw. der Wait Attribut Werte: gilt hier
attr meindoif wait 1800:0:0
=
attr meindoif wait 1800
oder gilt die Zahl bei letzterer Definition nur für die 1. Bedingung?

2. Verwendung von Perl Code in Attributen, wie bspw. wait. Lt. Commandref "Dabei werden die Trennzeichen Komma und Doppelpunkt in Klammern geschützt": Sind hier runde Klammern gemeint?
attr meindoif wait ("[$SELF]" eq "initialized")?0(:)1800:0:0
Ich möchte nach manuellen enablen und checkall die Wait Timer vermeiden

3. Wie kann ich nach einem DOIF disable / enable einen wait_timer resetten? Der scheint bei mir weiter zu laufen.

Danke sehr im Voraus!
« Letzte Änderung: 07 Mai 2022, 07:37:14 von FHEMAN »
NUC7i5 | PROXMOX | FHEM 5.9 | 2 HMLAND | HM | UMTS | LMS | HIFIBERRY | DOORBIRD | KM200 | HUE | ECHO | MILIGHT | LUFTDATENINFO | MQTT | INDEGO | ROBOROCK

Offline Damian

  • Moderator
  • Hero Member
  • ***
  • Beiträge: 9654
Antw:Perl Code in doif attr wait und Gültigkeitsbereich
« Antwort #1 am: 05 Mai 2022, 15:20:08 »
Hi,

ich habe ein DOIF mit 3 Bedingungen und habe Fragen zum weiteren Handling, welche sich mir nach Lesen der Commandref noch nicht ganz erschließen:

1. Zum Geltungsbereich bspw. der Wait Attribut Werte: gilt hier
attr meindoif wait 1800:0:0
=
attr meindoif wait 1800
oder gilt die Zahl bei letzterer Definition nur für die 1. Bedingung?

2. Verwendung von Perl Code in Attributen, wie bspw. wait. Lt. Commandref "Dabei werden die Trennzeichen Komma und Doppelpunkt in Klammern geschützt": Sind hier runde Klammern gemeint?
attr meindoif wait ("[$SELF]" eq "initialized")?0(:)1800:0:0
Ich möchte nach manuellen enablen und checkall die Wait Timer vermeiden

3. Wie kann ich nach einem DOIF disable / enable einen wait_timer resetten? Der scheint bei mir weiter zu laufen.

Danke sehr im Voraus!

Zu 1: ja, 1800 gilt nur für die erste Bedingung
Zu 2: eher:
attr meindoif wait ([$SELF] eq "initialized" ? 0 : 1800):0:0Zu 3: bei set disable laufen die Timer weiter, um im Takt zu bleiben (so steht es in der Commandref) - ausgeführt wird aber nichts, bei attr disable 0 werden auch die Timer gelöscht.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Offline FHEMAN

  • Sr. Member
  • ****
  • Beiträge: 707
Antw:Perl Code in doif attr wait und Gültigkeitsbereich
« Antwort #2 am: 07 Mai 2022, 07:36:41 »
Alles klar. Danke, Damian!
NUC7i5 | PROXMOX | FHEM 5.9 | 2 HMLAND | HM | UMTS | LMS | HIFIBERRY | DOORBIRD | KM200 | HUE | ECHO | MILIGHT | LUFTDATENINFO | MQTT | INDEGO | ROBOROCK

 

decade-submarginal