[gelöst] Weckautomation - Status ändert sich nicht

Begonnen von Neonblack, 18 Mai 2018, 20:02:26

Vorheriges Thema - Nächstes Thema

Neonblack

Ich erkläre einmal im Vorfeld, was ich bisher verbrochen habe (nach Anleitung auf dieser Website: https://wiki.fhem.de/wiki/Weckautomation

ROOMMATE rr_Micha angelegt
WakeUpTimer erstellt
Default-Weckzeit eingestellt
WakeUpDays = 1-5
Offset 7 min.

List vom WakeUpTimer:

Internals:
   CFGFN     
   NAME       rr_Micha_wakeuptimer1
   NR         1971
   STATE      19:00
   TYPE       dummy
   READINGS:
     2018-05-18 18:47:43   lastRun         18:48
     2018-05-18 18:50:08   nextRun         19:00
     2018-05-18 18:48:44   running         0
     2018-05-18 18:59:00   state           19:00
     2018-05-18 13:24:56   wakeupDays      1,2,3,4,5
     2018-05-18 18:50:03   wakeupDefaultTime 19:00
     2018-05-18 18:47:31   wakeupEnforced  0
     2018-05-18 18:50:26   wakeupOffset    7
     2018-05-18 13:25:10   wakeupResetdays 1,2,3,4,5
Attributes:
   alias      Wake-up Timer 1
   comment    Auto-created by ROOMMATE module for use with RESIDENTS Toolkit
   devStateIcon OFF:general_aus@red:reset running:general_an@green:stop .*:general_an@orange:nextRun%20OFF
   group      Micha
   icon       time_timer
   room       Bewohner
   setList    nextRun:OFF,00:00,00:15,00:30,00:45,01:00,01:15,01:30,01:45,02:00,02:15,02:30,02:45,03:00,03:15,03:30,03:45,04:00,04:15,04:30,04:45,05:00,05:15,05:30,05:45,06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00,10:15,10:30,10:45,11:00,11:15,11:30,11:45,12:00,12:15,12:30,12:45,13:00,13:15,13:30,13:45,14:00,14:15,14:30,14:45,15:00,15:15,15:30,15:45,16:00,16:15,16:30,16:45,17:00,17:15,17:30,17:45,18:00,18:15,18:30,18:45,19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00,22:15,22:30,22:45,23:00,23:15,23:30,23:45 reset:noArg trigger:noArg start:noArg stop:noArg end:noArg wakeupOffset:slider,0,1,120 wakeupDefaultTime:OFF,00:00,00:15,00:30,00:45,01:00,01:15,01:30,01:45,02:00,02:15,02:30,02:45,03:00,03:15,03:30,03:45,04:00,04:15,04:30,04:45,05:00,05:15,05:30,05:45,06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00,10:15,10:30,10:45,11:00,11:15,11:30,11:45,12:00,12:15,12:30,12:45,13:00,13:15,13:30,13:45,14:00,14:15,14:30,14:45,15:00,15:15,15:30,15:45,16:00,16:15,16:30,16:45,17:00,17:15,17:30,17:45,18:00,18:15,18:30,18:45,19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00,22:15,22:30,22:45,23:00,23:15,23:30,23:45 wakeupResetdays:multiple-strict,0,1,2,3,4,5,6 wakeupDays:multiple-strict,0,1,2,3,4,5,6 wakeupHolidays:,andHoliday,orHoliday,andNoHoliday,orNoHoliday wakeupEnforced:0,1,2,3
   sortby     2
   userattr   wakeupOffset:slider,0,1,120 wakeupDefaultTime:OFF,00:00,00:15,00:30,00:45,01:00,01:15,01:30,01:45,02:00,02:15,02:30,02:45,03:00,03:15,03:30,03:45,04:00,04:15,04:30,04:45,05:00,05:15,05:30,05:45,06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00,10:15,10:30,10:45,11:00,11:15,11:30,11:45,12:00,12:15,12:30,12:45,13:00,13:15,13:30,13:45,14:00,14:15,14:30,14:45,15:00,15:15,15:30,15:45,16:00,16:15,16:30,16:45,17:00,17:15,17:30,17:45,18:00,18:15,18:30,18:45,19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00,22:15,22:30,22:45,23:00,23:15,23:30,23:45 wakeupMacro wakeupUserdevice wakeupAtdevice wakeupResetSwitcher wakeupResetdays:multiple-strict,0,1,2,3,4,5,6 wakeupDays:multiple-strict,0,1,2,3,4,5,6 wakeupHolidays:andHoliday,orHoliday,andNoHoliday,orNoHoliday wakeupEnforced:0,1,2,3 wakeupWaitPeriod:slider,0,1,360
   wakeupAtdevice at_rr_Micha_wakeuptimer1
   wakeupMacro Macro_rr_Micha_wakeuptimer1
   wakeupUserdevice rr_Micha
   webCmd     nextRun


List von rr_Micha:

Internals:
   DURATIONTIMER 1526665095.79788
   NAME       rr_Micha
   NOTIFYDEV  global,rr_Micha_wakeuptimer1
   NR         162
   NTFY_ORDER 50-rr_Micha
   READY      1
   STATE      schläft
   TYPE       ROOMMATE
   READINGS:
     2018-05-18 01:04:07   durTimerAbsence 00:00:00
     2018-05-18 01:04:07   durTimerAbsence_cr 0
     2018-05-18 19:37:15   durTimerPresence 18:23:26
     2018-05-18 19:37:15   durTimerPresence_cr 1103
     2018-05-18 19:37:15   durTimerSleep   18:23:26
     2018-05-18 19:37:15   durTimerSleep_cr 1103
     2018-05-18 01:13:49   lastArrival     2018-05-18 01:13:49
     2018-05-18 01:13:49   lastLocation    undefined
     2018-05-18 01:13:49   lastSleep       2018-05-18 01:13:49
     2018-05-18 01:13:49   lastState       initialized
     2018-05-18 18:47:42   lastWakeup      18:48
     2018-05-18 18:47:42   lastWakeupDev   rr_Micha_wakeuptimer1
     2018-05-18 01:13:49   location        home
     2018-05-18 18:59:00   nextWakeup      OFF
     2018-05-18 18:59:00   nextWakeupDev   
     2018-05-18 01:13:49   presence        present
     2018-05-18 01:13:49   state           asleep
     2018-05-18 18:48:44   wakeup          0
     2018-05-18 01:13:49   wayhome         0
   TIMER:
     rr_Micha_DurationTimer:
       HASH       rr_Micha
       MODIFIER   DurationTimer
       NAME       rr_Micha_DurationTimer
Attributes:
   alias      Status
   devStateIcon .*zuhause:user_available:absent .*anwesend:user_available:absent .*abwesend:user_away:home .*verreist:user_ext_away:home .*bettfertig:scene_toilet:asleep .*schlaeft:scene_sleeping:awoken .*schläft:scene_sleeping:awoken .*aufgestanden:scene_sleeping_alternat:home .*:user_unknown:home
   eventMap   home:zuhause absent:abwesend gone:verreist gotosleep:bettfertig asleep:schläft awoken:aufgestanden
   group      Micha
   icon       people_sensor
   room       Bewohner
   rr_realname group
   rr_wakeupDevice rr_Micha_wakeuptimer1
   sortby     1
   verbose    4
   webCmd     state
   widgetOverride state:zuhause,bettfertig,schläft,aufgestanden,abwesend,verreist



Und ein wenig was aus dem Logfile:

2018-05-18 18:50:09 ROOMMATE rr_Micha nextWakeupDev: rr_Micha_wakeuptimer1
2018-05-18 18:50:09 ROOMMATE rr_Micha nextWakeup: 19:00
2018-05-18 18:50:09 dummy rr_Micha_wakeuptimer1 reset
2018-05-18 18:50:09 dummy rr_Micha_wakeuptimer1 nextRun 19:00
2018-05-18 18:50:09 dummy rr_Micha_wakeuptimer1 nextRun: 19:00
2018-05-18 18:50:09 dummy rr_Micha_wakeuptimer1 19:002018-05-18 18:50:27 dummy rr_Micha_wakeuptimer1 wakeupOffset 7
2018-05-18 18:50:27 dummy rr_Micha_wakeuptimer1 wakeupOffset: 7
2018-05-18 18:50:27 dummy rr_Micha_wakeuptimer1 nextRun 19:00
2018-05-18 18:50:27 dummy rr_Micha_wakeuptimer1 19:002018-05-18 18:59:00 ROOMMATE rr_Micha nextWakeupDev:
2018-05-18 18:59:00 ROOMMATE rr_Micha nextWakeup: OFF
2018-05-18 18:59:01 dummy rr_Micha_wakeuptimer1 trigger
2018-05-18 18:59:01 dummy rr_Micha_wakeuptimer1 nextRun 19:00
2018-05-18 18:59:01 dummy rr_Micha_wakeuptimer1 19:00
2018-05-18 18:59:01 at at_rr_Micha_wakeuptimer1 Next: 18:53:00



Ich hoffe ich habe die relevanten Teile aus dem Log getroffen. Ich bastele da jetzt seit Tagen dran (zunächst mit dem RESIDENTS-Modul, dann alles wieder gelöscht und nun nur mit ROOMMATES), aber der Status von rr_Micha "schläft" bleibt. Das Macro ist das, was standardmäßig erstellt wird, nur bereinigt um die auskommentierten Stellen:



Macro_rr_Micha_wakeuptimer1 {

fhem "delete atTmp_.*_".$NAME.":FILTER=TYPE=at";
if ($EVTPART0 eq "start") {
Log3 $NAME, 3, "$NAME: Wake-up program started for $EVTPART4 with target time $EVTPART1. Current state: $EVTPART5";
if ($EVTPART3) {
Log3 $NAME, 3, "$NAME: planning enforced wake-up";
}
}
if ($EVTPART0 eq "stop") {
Log3 $NAME, 3, "$NAME: Wake-up program ended for $EVTPART4 with target time $EVTPART1. Current state: $EVTPART5";
if ($EVTPART3) {
fhem "define atTmp_9_$NAME at +00:05:00 set $EVTPART4:FILTER=state=asleep awoken";
} else {
fhem "define atTmp_9_$NAME at +01:30:00 set $EVTPART4:FILTER=state=asleep home";
    }
}

}



Demnach sollte der Status vom Device doch auf "awoken" geändert werden. Was mache ich falsch (ich nehme mal an, der Fehler liegt bei mir)?

Ich habe zunächst den Wecker gestartet und laufen lassen. Da sich der Status nicht änderte (was anderes brauche ich zunächst vom Wecker erstmal nicht), funktionierten die Rollos natürlich nicht wie erwartet. Dann habe ich mit "start" und "trigger" alle Szenarien durchgespielt (versch. Zeiten, untersch. WakeUpEnforced- und Offseteinstellungen etc.). Der Status bleibt immer auf "asleep".

Hat da jemand einen Tipp für mich?

LG
Micha



Ich habe noch mal alle durch das Anlegen des WakeUpDevices erstellten Files händisch gelöscht, die gesamte Installation nach o.a. Anleitung wiederholt und siehe da: es läuft jetzt! Wo genau es gehakt hat, weiß ich leider nicht.

LG
Micha