DOIF Wochentagssteuerung bei Kalender mit FHEM2FHEM?

Begonnen von Morgennebel, 03 Juli 2019, 19:37:02

Vorheriges Thema - Nächstes Thema

Morgennebel

Moin Moin,


mein "Kalender" wird auf der meinem 1. FHEM-Server A gepflegt und mein 2. FHEM-Server B holt sich diesen mit FHEM2FHEM ab.

Kalender auf A:


Internals:
   FUUID      5c586582-f33f-4ba1-f5e0-a9649e167c284ae0
   FVERSION   95_holiday.pm:0.197290/2019-06-28
   HOLIDAYFILE ./FHEM/SH.holiday
   NAME       SH
   NR         350
   READONLY   0
   STATE      Sommerferien
   TRIGGERTIME 1562191202.13704
   TYPE       holiday
   Helper:
     DBLOG:
       state:
         DBLOG:
           TIME       1562174904.15219
           VALUE      Sommerferien
   READINGS:
     2019-07-03 19:28:24   state           Sommerferien
     2019-07-03 19:28:24   tomorrow        Sommerferien
     2019-07-03 19:28:24   yesterday       Sommerferien
Attributes:
   room       SYS_Events


FHEM2FHEM-Definition auf B:


Internals:
   DEF        192.168.1.9 LOG:(HM_AUSSEN.Scheune_Weather|SH).*
   FD         18
   FUUID      5d07a655-f33f-a7fe-397e-8af8cb81b392165e
   Host       192.168.1.9:7072
   NAME       F2F_SpecificEvents
   NR         28
   PARTIAL   
   STATE      connected
   TYPE       FHEM2FHEM
   informType LOG
   regexp     (HM_AUSSEN.Scheune_Weather|SH).*
Attributes:
   room       SYS_Backend,SYS_Events


und ein Dummy mit identischen Namen auf B:


Internals:
   FUUID      5d1c617d-f33f-a7fe-2f1b-746a95c6ba554a76
   NAME       SH
   NR         74
   STATE      Sommerferien
   TYPE       dummy
   READINGS:
     2019-07-03 19:28:24   state           Sommerferien
     2019-07-03 19:28:24   tomorrow        Sommerferien
     2019-07-03 19:28:24   yesterday       Sommerferien
Attributes:
   room       SYS_Backend,SYS_Events


DOIF behandelt die Wochentagssteuerung wie WE oder AT auf Grundlage eines Kalenders. Nun habe ich auf FHEM Server B DOIF-Anweisungen, die auf den Kalender (dummy) reagieren sollen.

Gibt es einen Weg, wie ich DOIF erklären kann, dass "SH" obwohl ein Dummy einen Kalender darstellt und bei der Feiertagsermittlung zu berücksichtigen ist?

Danke, -MN
Einziger Spender an FHEM e.V. mit Dauerauftrag seit >= 24 Monaten

FHEM: MacMini/ESXi, 2-3 FHEM Instanzen produktiv
In-Use: STELLMOTOR, VALVES, PWM-PWMR, Xiaomi, Allergy, Proplanta, UWZ, MQTT,  Homematic, Luftsensor.info, ESP8266, ESERA

Damian

Dann musst du einfach zu deiner Zeit deinen Dummy abfragen:

DOIF ([10:00] and [SH] eq "none") (...) DOELSE (... )
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Morgennebel

Danke, Damian,


so hatte ich es auch gelöst, aber der Ansatz verliert natürlich den Charme der einfachen Wochentagssteuerung. Ich hatte gehofft, es gebe einen Weg, den Kalender-Dummy als Kalender zu "sehen"...

Ciao, -MN
Einziger Spender an FHEM e.V. mit Dauerauftrag seit >= 24 Monaten

FHEM: MacMini/ESXi, 2-3 FHEM Instanzen produktiv
In-Use: STELLMOTOR, VALVES, PWM-PWMR, Xiaomi, Allergy, Proplanta, UWZ, MQTT,  Homematic, Luftsensor.info, ESP8266, ESERA

Damian

Zitat von: Morgennebel am 04 Juli 2019, 10:07:41
Danke, Damian,


so hatte ich es auch gelöst, aber der Ansatz verliert natürlich den Charme der einfachen Wochentagssteuerung. Ich hatte gehofft, es gebe einen Weg, den Kalender-Dummy als Kalender zu "sehen"...

Ciao, -MN

Nein, es werden intern Routinen benutzt, die mit holiday-Dateien arbeiten.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

nils_

warum geht das nicht mit:
https://commandref.fhem.de/commandref_DE.html#DOIF_weekdays
??


dort ist mir noch ein typo in der cref aufgefallen:
ZitatAnwendungsbeispiel: Der Wochentag soll über einen Dummy bestimmt werden.

define dummy myweekday
set myweekday monday wednesday thursday weekend
das define müsste doch eigentlich
define myweekday dummy
sein, oder?
viele Wege in FHEM es gibt!

Morgennebel

Zitat von: nils_ am 04 Juli 2019, 10:37:49
warum geht das nicht mit: https://commandref.fhem.de/commandref_DE.html#DOIF_weekdays??

Weil "SH" auf FHEM B ein dummy und kein Kalendermodul ist. Der dummy erhält von FHEM2FHEM von Rechner A nur die Readings.

Ciao, -MN
Einziger Spender an FHEM e.V. mit Dauerauftrag seit >= 24 Monaten

FHEM: MacMini/ESXi, 2-3 FHEM Instanzen produktiv
In-Use: STELLMOTOR, VALVES, PWM-PWMR, Xiaomi, Allergy, Proplanta, UWZ, MQTT,  Homematic, Luftsensor.info, ESP8266, ESERA

nils_

Zitat aus der cref:
ZitatAnstatt einer direkten Wochentagangabe, kann ein Status oder Reading in eckigen Klammern angegeben werden. Dieser muss zum Triggerzeitpunkt mit der gewünschten Angabe für Wochentage, wie oben definiert, belegt sein.

Anwendungsbeispiel: Der Wochentag soll über einen Dummy bestimmt werden.
viele Wege in FHEM es gibt!

Damian

Das ist aber die Angabe, die der Anwender für den Wochentag angibt, er will aber einen Kalendereintrag auswerten - das ist etwas anderes.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

nils_

ok danke für die Erklärung, dann hab ich das irgendwie "missverstanden"  :-[
viele Wege in FHEM es gibt!