Hallo,
ich habe meinen Dienstplan im Google-Calender (notfalls könnte ich den auch irgendwie anders abspeichern).
Darin sind die Schichten "Früh", "Spät" und "Nacht" eingetragen.
Gibt es eine Möglichkeit, automatisch einen Wecker in FHEM (oder Alexa) danach zu stellen?
Also, dass ich nicht zusätzlich jeden Tag den Wecker stellen muss?
Danke und viele Grüße
Hi,
ja das geht mit dem Calendar Modul. Ein passendes Beispiel solltest Du in der Commandref finden.
Entgegen dem was hier viele machen brauchst Du dazu kein anderes Modul. Prinzip:
Das Calendar Modul erzeugt Events, Du definierst dazu ein notify als Wecker, fertig. Falls der Termin nicht deiner Weckzeit entspricht kann man das entsprechend behandeln. Für Details brauchte man Details aus deinem Kalender :)
Ansonsten frag einfach nach.
Gruß Otto
Hallo,
danke schonmal. Ich habe im Kalender jeden Tag einen ganztätigen Eintrag "früh", "spät" und "nacht" erstellt
und kann die readings auch abrufen.
Ich würde nun gerne am Vortag (abends) einen Wecker stellen lassen, abhängig von der nächsten Schicht. Gibt es dazu schon
eine Vorlage, an die ich mich halten kann? Ich kenne mich mit dem Programmieren leider nicht besonders gut aus.
Danke und VG
Hi,
dazu "und kann die readings auch abrufen." kann ich mir irgendwie nix vorstellen. Da müsstest Du mich mit einem list von dem Device und/oder Kalender unterstützen.
Ich kann mir auch unter Wecker noch nicht viel vorstellen.
Prinzipiell kannst Du einmal am Tag 18:00 Uhr ? ein at laufen lassen, was den nächsten Tag abfragt, auswertet und deinen Wecker stellt.
So ein Tagestermin ist irgendwie "dumm". Ich dachte ja eher daran da steht Schicht von 10:00 - 18:00 und du willst 2 h vorher aufstehen. Dann könnte man einen Alarm Event im Kalender erzeugen und das wäre Dein Wecker.
Aber ganz wie Du willst, viele Wege führen noch Rom.
Gruß Otto
Hi,
hier ist mal das List:
Internals:
CFGFN
DEF Dienstplankalender 300
FUUID 5d285b8d-f33f-52ef-1fc4-2dee945db4e9456f
INTERVAL 43200
KALENDER Dienstplankalender
NAME Dienstplan
NR 897
NTFY_ORDER 50-Dienstplan
STATE t: 1 td: 0 tm: 1
TYPE CALVIEW
READINGS:
2019-07-12 16:31:42 c-term 1
2019-07-12 16:31:42 c-today 0
2019-07-12 16:31:42 c-tomorrow 1
2019-07-12 16:31:42 state t: 1 td: 0 tm: 1
2019-07-12 16:31:42 t_001_bdate 13.07.2019
2019-07-12 16:31:42 t_001_btime 00:00
2019-07-12 16:31:42 t_001_categories
2019-07-12 16:31:42 t_001_daysleft 1
2019-07-12 16:31:42 t_001_daysleftLong morgen
2019-07-12 16:31:42 t_001_description
2019-07-12 16:31:42 t_001_duration ganztägig
2019-07-12 16:31:42 t_001_edate 14.07.2019
2019-07-12 16:31:42 t_001_etime 00:00
2019-07-12 16:31:42 t_001_location
2019-07-12 16:31:42 t_001_mode next
2019-07-12 16:31:42 t_001_source Dienstplankalender
2019-07-12 16:31:42 t_001_sourcecolor white
2019-07-12 16:31:42 t_001_summary Spät
2019-07-12 16:31:42 t_001_timeshort ganztägig
2019-07-12 16:31:42 t_001_weekday 6
2019-07-12 16:31:42 t_001_weekdayname Samstag
2019-07-12 16:31:42 tomorrow_001_bdate morgen
2019-07-12 16:31:42 tomorrow_001_btime 00:00
2019-07-12 16:31:42 tomorrow_001_categories
2019-07-12 16:31:42 tomorrow_001_daysleft 1
2019-07-12 16:31:42 tomorrow_001_daysleftLong morgen
2019-07-12 16:31:42 tomorrow_001_description
2019-07-12 16:31:42 tomorrow_001_duration ganztägig
2019-07-12 16:31:42 tomorrow_001_edate 14.07.2019
2019-07-12 16:31:42 tomorrow_001_etime 00:00
2019-07-12 16:31:42 tomorrow_001_location
2019-07-12 16:31:42 tomorrow_001_mode next
2019-07-12 16:31:42 tomorrow_001_source Dienstplankalender
2019-07-12 16:31:42 tomorrow_001_sourcecolor white
2019-07-12 16:31:42 tomorrow_001_summary Spät
2019-07-12 16:31:42 tomorrow_001_timeshort ganztägig
2019-07-12 16:31:42 tomorrow_001_weekday 6
2019-07-12 16:31:42 tomorrow_001_weekdayname Samstag
Attributes:
maxreadings 1
modes next
Ich möchte also morgen "t_001_summary Spät" geweckt werden, um 14 Uhr. Dann soll eine Lampe angehen.
Zum Frühdienst soll die Lampe zu einer anderen Zeit eingeschaltet werden.
Ich hab jeden Tag eine andere Schicht und will nicht jeden Tag den Wecker stellen.
Den Schichtplan hab ich als Kalenderdatei zur Verfügung.
Schien mir so am einfachsten, bin aber auch für andere Ideen offen.
Na gut Du hast es mit Calview gemacht, hatte ich irgendwie befürchtet. :D
Was mir da einfällt ist ein DOIF, von der Sache her so:
define Wecker DOIF ([14:00] and [Dienstplan:t_001_summary] eq "Spät")(set Lampe on)
DOELSEIF ([06:00] and [Dienstplan:t_001_summary] eq "Früh")(set Lampe on)
DOELSEIF ([22:00] and [Dienstplan:t_001_summary] eq "Nacht")(set Lampe on)
Vielleicht geht es, aber ich habe keine Ahnung was Calview wirklich macht.
Gruß Otto
Super, danke! Ich probiere mal aus, ob es klappt. Kommt das DOIF auch mit den Tagen
zurecht, wenn es keinen Eintrag gibt (wenn ich frei habe oder an Sonntagen)?
Wie hättest du das ganze denn gelöst? Mir war es wichtig, dass ich Änderungen direkt
im Kalender im Handy tätigen kann und der Wecker mich dann automatisch zur
richtigen Zeit weckt. Das müsste dann ja so klappen.
Nochmal danke!
Du trägst den Kalender im Smartphone ein
das synchronisiert mit dem Googlekalender in der Cloud (oder schreibt bestenfalls direkt den Googlekalender)
Das Kalender Device (Dienstplankalender) liest Deinen Google Kalender regelmäßig ein (default 1x pro h)
Das Calview Device macht irgendwas mit deinem Calendar Device, liefert z.B. ein Reading.
Das DOIF triggert jetzt zu 3 festen Zeiten und fragt das Reading von Calview ab, je nach Inhalt passiert etwas.
Ich hätte wahrscheinlich den Kalendereintrag so gemacht wie der Termin wirklich ist, also nicht einfach Ganztagestermin sondern: von bis.
Das Calendar Device kann nach einer definierbaren Regel daraus einen Alarmtermin erzeugen. Das Calendar Device erzeugt dann zu diesem Zeitpunkt (Alarm) einen Event.
Auf den Event kann man einfach mit einem notify reagieren - das macht einfach die Lampe an. ;)
Das Calview Device ist zum Anzeigen, das ist für mich ein Gerät am Ende der Kette - ich würde es nicht als Anfang vom Wecker nehmen. ;)
Ich habe hier (https://heinz-otto.blogspot.com/2019/01/kalender-in-fhem-auf-bestimmte-termine.html)mal sowas gemacht, damit laut Dienstplan definiert vor Dienstbeginn die Technik aufgeweckt wird.
Aber ich arbeite nicht in Schichten, ich kann mich da an die Organisation des Tagesablaufes nicht hineindenken.
Gruß Otto
vielleicht auch als Lektüre interessant: https://forum.fhem.de/index.php/topic,87895.0.html
ansonsten bitte unbedingt beachten, das Calendar und CalView unterschiedliche Dinge sind! Otto hat da ja auch schon drauf hingewiesen.
Hallo,
mein Wecker hat mich heute morgen geweckt, obwohl es Sonntags in meinem Kalender keinen Eintrag gibt.
CalView zeigt mir ein Ergeignis vom vorletzten Samstag an.
Hier mal das List:
Internals:
DEF Dienstplankalender 300
FUUID 5d285b8d-f33f-52ef-1fc4-2dee945db4e9456f
INTERVAL 43200
KALENDER Dienstplankalender
NAME Dienstplan
NR 60
NTFY_ORDER 50-Dienstplan
STATE t: 3 td: 0 tm: 1
TYPE CALVIEW
READINGS:
2019-07-21 09:03:22 c-term 3
2019-07-21 09:03:22 c-today 0
2019-07-21 09:03:22 c-tomorrow 1
2019-07-21 09:03:22 state t: 3 td: 0 tm: 1
2019-07-21 09:03:22 t_001_bdate 13.07.2019
2019-07-21 09:03:22 t_001_btime 00:00
2019-07-21 09:03:22 t_001_categories
2019-07-21 09:03:22 t_001_daysleft -8
2019-07-21 09:03:22 t_001_daysleftLong in -8 Tagen
2019-07-21 09:03:22 t_001_description
2019-07-21 09:03:22 t_001_duration ganztägig
2019-07-21 09:03:22 t_001_edate 14.07.2019
2019-07-21 09:03:22 t_001_etime 00:00
2019-07-21 09:03:22 t_001_location
2019-07-21 09:03:22 t_001_mode next
2019-07-21 09:03:22 t_001_source Dienstplankalender
2019-07-21 09:03:22 t_001_sourcecolor white
2019-07-21 09:03:22 t_001_summary Spät
2019-07-21 09:03:22 t_001_timeshort ganztägig
2019-07-21 09:03:22 t_001_weekday 6
2019-07-21 09:03:22 t_001_weekdayname Samstag
2019-07-21 09:03:22 t_002_bdate 20.07.2019
2019-07-21 09:03:22 t_002_btime 00:00
2019-07-21 09:03:22 t_002_categories
2019-07-21 09:03:22 t_002_daysleft -1
2019-07-21 09:03:22 t_002_daysleftLong in -1 Tagen
2019-07-21 09:03:22 t_002_description
2019-07-21 09:03:22 t_002_duration ganztägig
2019-07-21 09:03:22 t_002_edate 21.07.2019
2019-07-21 09:03:22 t_002_etime 00:00
2019-07-21 09:03:22 t_002_location
2019-07-21 09:03:22 t_002_mode next
2019-07-21 09:03:22 t_002_source Dienstplankalender
2019-07-21 09:03:22 t_002_sourcecolor white
2019-07-21 09:03:22 t_002_summary Spät
2019-07-21 09:03:22 t_002_timeshort ganztägig
2019-07-21 09:03:22 t_002_weekday 6
2019-07-21 09:03:22 t_002_weekdayname Samstag
2019-07-21 09:03:22 t_003_bdate 22.07.2019
2019-07-21 09:03:22 t_003_btime 00:00
2019-07-21 09:03:22 t_003_categories
2019-07-21 09:03:22 t_003_daysleft 1
2019-07-21 09:03:22 t_003_daysleftLong morgen
2019-07-21 09:03:22 t_003_description
2019-07-21 09:03:22 t_003_duration ganztägig
2019-07-21 09:03:22 t_003_edate 23.07.2019
2019-07-21 09:03:22 t_003_etime 00:00
2019-07-21 09:03:22 t_003_location
2019-07-21 09:03:22 t_003_mode next
2019-07-21 09:03:22 t_003_source Dienstplankalender
2019-07-21 09:03:22 t_003_sourcecolor white
2019-07-21 09:03:22 t_003_summary Spät
2019-07-21 09:03:22 t_003_timeshort ganztägig
2019-07-21 09:03:22 t_003_weekday 1
2019-07-21 09:03:22 t_003_weekdayname Montag
2019-07-21 09:03:22 tomorrow_001_bdate morgen
2019-07-21 09:03:22 tomorrow_001_btime 00:00
2019-07-21 09:03:22 tomorrow_001_categories
2019-07-21 09:03:22 tomorrow_001_daysleft 1
2019-07-21 09:03:22 tomorrow_001_daysleftLong morgen
2019-07-21 09:03:22 tomorrow_001_description
2019-07-21 09:03:22 tomorrow_001_duration ganztägig
2019-07-21 09:03:22 tomorrow_001_edate 23.07.2019
2019-07-21 09:03:22 tomorrow_001_etime 00:00
2019-07-21 09:03:22 tomorrow_001_location
2019-07-21 09:03:22 tomorrow_001_mode next
2019-07-21 09:03:22 tomorrow_001_source Dienstplankalender
2019-07-21 09:03:22 tomorrow_001_sourcecolor white
2019-07-21 09:03:22 tomorrow_001_summary Spät
2019-07-21 09:03:22 tomorrow_001_timeshort ganztägig
2019-07-21 09:03:22 tomorrow_001_weekday 1
2019-07-21 09:03:22 tomorrow_001_weekdayname Montag
Attributes:
maxreadings 3
modes next
Gibt es eine Möglichkeit, die Readings direkt aus dem Calendar zu bekommen ohne den Umweg über Calview?
Ich verstehe nicht so ganz, wieso das Problem überhaupt auftritt.
VG
Zitat von: Kitt am 21 Juli 2019, 12:24:53
Gibt es eine Möglichkeit, die Readings direkt aus dem Calendar zu bekommen ohne den Umweg über Calview?
Ich verstehe nicht so ganz, wieso das Problem überhaupt auftritt.
VG
ja, es gibt die Variante ohne calview, habe ich dir ja beschrieben.
Du läufst jetzt scheinbar in dem typischen Problem,dass alte Termine angezeigt werden. Du kannst mit den hideolder... Attributen experimentieren.
ich habe es mit den Modulen calview, alarmclock und DOIF gemacht.
define Wecker_stellen DOIF ([23:30] and ([?vKalender_..._Schichtplan:tomorrow_001_summary] eq "Zwischenschicht")) (set Wecker load Weekprofile_2)\
DOELSEIF \
([23:30] and ([?vKalender_..._Schichtplan:tomorrow_001_summary] eq "Frühschicht")) (set Wecker load Weekprofile_1) \
DOELSEIF \
([23:30] and ([?vKalender_..._Schichtplan:tomorrow_001_summary] eq "Frühschicht ...straße")) (set Wecker load Weekprofile_1) \
DOELSEIF \
([23:30] and ([?vKalender_..._Schichtplan:tomorrow_001_summary] eq "Frühschicht Bereitschaft")) (set Wecker load Weekprofile_1) \
DOELSE \
(set Wecker AlarmOff All)
mit dem Wecker alarmclock hast du viele Einstellmöglichkeiten.