Modulfamilie für das Zuhause / 00_HOMESTATE, 01_ZONESTATE, 02_ROOMSTATE

Begonnen von Loredo, 08 Mai 2017, 10:51:48

Vorheriges Thema - Nächstes Thema

Loredo

Hallo zusammen,

mit Hinweis auf die inzwischen etablierte Modulfamilie für Bewohner startet nun die Preview-Phase für die komplementäre Modulfamilie für das Zuhause:

00_HOMESTATE
01_ZONESTATE
02_ROOMSTATE

(00_HOMESTATE wurde ja auch bereits schonmal vorangekündigt  ;) )

Auch hier werden die Module wieder hierarchisch aufeinander aufbauen und entsprechend ihrer Bezeichnung einzelne Räume, Flure und Wohneinheiten repräsentieren. Außerdem ist eine enge Verzahnung mit den vorhandenen Funktionen der Module RESIDENTS, ROOMMATE, PET und GUEST (sowie deren Unterfunktionen wie z.B. dem Wakeuptimer) gegeben.
Alle Module sind Multi-Language und können sowohl in Englisch als auch gleichzeitig in Deutsch verwendet werden (weitere Sprachen können einfach hinzugefügt werden, sofern sich Übersetzer finden).

Den Anfang macht 00_HOMESTATE, welches in einer ersten Ausbaustufe im Anhang dieses Beitrags herunterladbar ist. Gesucht sind nun Freiwillige zwecks ausprobieren und Feedback.

Nachdem die Datei ins FHEM Verzeichnis nach /opt/fhem/FHEM kopiert wurde, wird das Gerät wie folgt in FHEM definiert:


define Home HOMESTATE


Wichtig: Voraussetzung ist eine FHEM Installation, die auf dem aktuellsten Stand sein muss, da große Teile des Moduls in einer zentralen Datei gespeichert sind, die sich alle Module teilen.

Sofern vorhanden, wird ein RESIDENTS, ROOMMATE oder PET Device direkt verknüpft und auch dessen Spracheinstellung übernommen (ansonsten wird ein neues RESIDENTS Gerät angelegt). Sofern eine globale Spracheinstellung gewählt wurde, wird diese verwendet.
Sind mehrere RESIDENTS, ROOMMATE, PET oder GUEST Geräte vorhanden, kann man dies über das Attribut "ResidentsDevices" ändern und auch weitere hinzufügen, sofern ein anderes Gerät oder auch mehrere berücksichtigt werden sollen.
Außerdem setzt das Modul auf die Attribute altitude, longitude und holiday2we des global-Devices, welche man optimalerweise zuvor bereits konfiguriert hatte (Beschreibung siehe Commandref).

Die konfigurierbaren Attribute am HOMESTATE Device sind übersichtlich:

       
  • DebugDate: setzt den Gerätestatus auf ein bestimmtes Datum und eine feste Uhrzeit, um zu überprüfen, wie sich das Gerät zu diesem Zeitpunkt verhält.
    Beispiele:
    05-09
    05-09 13:00
    05-09 13:00:30
    2017-05-09
    2017-05-09 13:00
    2017-05-09 13:00:30
  • HolidayDevices: kann eine Liste von Geräten des Typs "holiday" enthalten, welche als Urlaubstage gewertet werden sollen. Diese sind ergänzend zu der Definition des Attributs "holiday2we" beim global-Device zu sehen.
  • Lang: setzt explizit eine Spracheinstellung, unabhängig des Attributs "language" am global-Device
  • ResidentsDevices: gibt an, welche RESIDENTS, ROOMMATE, PET und GUEST Devices für den Aktivitäts- und Anwesenheitsstatus verwendet werden. Achtung: Es ist nicht notwendig ROOMMATE, PET oder GUEST Geräte hier mit anzugeben, die bereits einem RESIDENTS Gerät zugeordnet sind, welches man bereits hier mit angibt. Ansonsten wird deren Status doppelt gewertet. Derzeit ist noch kein Schutz eingebaut, der doppelt zugewiesene Geräte erkennt und verhindert.

Readings


Das HOMESTATE Gerät stellt direkt eine Vielzahl von Readings bereit:

       
  • autoMode: erlaubt es den Hausmodus unabhängig der Tageszeit zu setzen
  • cal[Tod|Tom]: Datum in langer Schreibweise
  • cal[Tod|Tom]S: Datum in kurzer Schreibweise
  • cal[Tod|Tom]DaytimeStageLn: Länge eines Tageszeitabschnitts
  • cal[Tod|Tom]DaytimeT: Gesamtlänge des lichten Tages zwischen Sonnenauf- und Sonnenuntergang
  • cal[Tod|Tom]Desc: Beschreibung zum Tag
  • cal[Tod|Tom]DST: gibt an, ob die Uhr auf Sommerzeit oder Normalzeit gestellt ist
  • cal[Tod|Tom]Holiday: ist 1, wenn der Tag ein Feier- oder Urlaubtstag ist
  • cal[Tod|Tom]Leapyear: ist 1, wenn das Jahr ein Schaltjahr ist
  • cal[Tod|Tom]TodWeekend: ist 1, wenn der Tag ein Wochenendtag ist
  • cal[Tod|Tom]Monthday: Tag des Monats
  • cal[Tod|Tom]MonthdayRem: verbleibende Tage bis zum Monatswechsel
  • cal[Tod|Tom]MonthN: Monat als Zahl
  • cal[Tod|Tom]Month: Monat in langer Schreibweise
  • cal[Tod|Tom]MonthS: Monat in kurzer Schreibweise
  • cal[Tod|Tom]Rel: Bezeichnung des Tages relativ zu heute
  • cal[Tod|Tom]SAstroChng: ist 2, wenn am Folgetag ein Wechsel der astronomischen Jahreszeit stattfindet. 1 bedeutet, dass es der erste Tag der neuen Jahreszeit ist
  • cal[Tod|Tom]SAstro: astronomische Jahreszeit
  • cal[Tod|Tom]SMeteoChng: ist 2, wenn am Folgetag ein Wechsel der meteorologischen Jahreszeit stattfindet. 1 bedeutet, dass es der erste Tag der neuen Jahreszeit ist
  • cal[Tod|Tom]SMeteo: meteorologische Jahreszeit
  • cal[Tod|Tom]SPheno: (noch nicht enthalten) - phenologische Jahreszeit, berechnet basierend auf einer Mischung aus astronomischer und meteorologischer Jahreszeit. Frühlungs- und Herbstanfang wird dynamisch für den eigenen Standort über die Bezugspunkte Süd-West Portugal (Frühling) sowie Helsinki (Herbst) berechnet.
  • cal[Tod|Tom]Sunrise: Uhrzeit des Sonnenaufgangs (nutzt 99_SUNRISE_EL in Standardeinstellung HORIZON=CIVIL; kann derzeit noch nicht angepasst werden)
  • cal[Tod|Tom]Sunset: Uhrzeit des Sonnenuntergangs (nutzt 99_SUNRISE_EL in Standardeinstellung HORIZON=CIVIL; kann derzeit noch nicht angepasst werden)
  • cal[Tod|Tom]WeekdayN: Wochentag als Zahl in ISO Format (1=Mo, 2=Di, 3=Mi, 4=Do, 5=Fr, 6=Sa, 7=So)
  • cal[Tod|Tom]Weekday: Wochentag in langer Schreibweise
  • cal[Tod|Tom]WeekdayS: Wochentag in kurzer Schreibweise
  • cal[Tod|Tom]Week: Woche des Jahres
  • cal[Tod|Tom]Yearday: Tag des Jahres
  • cal[Tod|Tom]YeardayRem: Verbleibende Tage des Jahres
  • cal[Tod|Tom]Year: Jahr
  • daytime: aktuelle Tageszeit, berechnet aus dem aktuellen Tageszeitabschnitt
  • daytimeStage: der aktuelle Tageszeitabschnitt. 0 bedeutet Nacht.
  • daytimeStages: Gesamtzahl der Tageszeitabschnitte, in die der lichte Tag eingeteilt wird. Ist fest auf 12 Abschnitte eingestellt. Siehe auch Temporale Stunden bei Wikipedia.
  • mode: aktueller Hausmodus; wird automatisch mit daytime synchronisiert, wenn autoMode=on gesetzt ist. Zu einem späteren Modus kann manuell oder durch Fremdmodule gesteuert vorzeitig gewechselt werden. Ein Wechsel in die Vergangenheit ist nicht möglich = die Tageszeit in daytime gibt den Mindestmodus an.
  • security: Sicherheitsstatus, abgeleitet vom aktuellen Status der Bewohner aus dem Attribut ResidentsDevices
  • state: kombinierter Status aus mode und security, abhängig vom Status der Bewohner aus dem Attribut ResidentsDevices. Der homealoneSubtype aus den ResidentsDevices wird als Präfix übernommen.

set Befehle


Den Gerätestatus kann man über die folgenden set Befehle beeinflussen:

       
  • autoMode: gibt an, ob die fortschreitende Tageszeit automatisch den Mindeststatus für den Hausmodus bestimmen soll.
  • mode: setzt den Hausmodus vorab auf einen zukünftigen Modus bevor die Tageszeit erreicht wurde. Wenn autoMode=off steht, kann jede Tageszeit gewählt werden und wird durch die fortschreitende Tageszeit nicht beeinflusst.
  • toggle: wechselt zum nächsten Hausmodus

get Befehle


       
  • schedule: Zeigt den Event Zeitplan für den aktuellen Tag an. Darin kann man sehen, wann welcher Tageszeitabschnitt beginnt und bei welchem Tageszeitabschnitt sich die Tageszeit (daytime) mit verändern wird. Optional kann man ein bestimmtes Datum sowie Uhrzeit angeben, um den berechneten Zeitplan für einen anderen Zeitpunkt anzusehen. Das nächste anstehende Event kann man außerdem immer im INTERNAL "NEXT_EVENT" sehen, welches die Uhrzeit und Beschreibung aus dem Event Zeitplan enthält.
    Beispiele:
    05-09
    05-09 13:00
    05-09 13:00:30
    2017-05-09
    2017-05-09 13:00
    2017-05-09 13:00:30
Für den heutigen Tag wurde für meinen Standort beispielsweise folgender Zeitplan errechnet:


1494194400:
      DESC       Begin night time and new calendar day
      TIME       2017-05-08 00:00:00
    1494212975:
      DESC       Begin morning time and daytime stage 1
      TIME       2017-05-08 05:09:35
    1494217791:
      DESC       Begin daytime stage 2
      TIME       2017-05-08 06:29:51
    1494222607:
      DESC       Begin daytime stage 3
      TIME       2017-05-08 07:50:07
    1494227422:
      DESC       Begin midmorning time and daytime stage 4
      TIME       2017-05-08 09:10:22
    1494232238:
      DESC       Begin daytime stage 5
      TIME       2017-05-08 10:30:38
    1494237054:
      DESC       Begin noon time and daytime stage 6
      TIME       2017-05-08 11:50:54
    1494241870:
      DESC       Begin daytime stage 7
      TIME       2017-05-08 13:11:10
    1494246686:
      DESC       Begin afternoon time and daytime stage 8
      TIME       2017-05-08 14:31:26
    1494251502:
      DESC       Begin daytime stage 9
      TIME       2017-05-08 15:51:42
    1494256317:
      DESC       Begin daytime stage 10
      TIME       2017-05-08 17:11:57
    1494261133:
      DESC       Begin daytime stage 11
      TIME       2017-05-08 18:32:13
    1494265949:
      DESC       Begin evening time and daytime stage 12
      TIME       2017-05-08 19:52:29
    1494270765:
      DESC       End of daytime
      TIME       2017-05-08 21:12:45
    1494280800:
      DESC       End calendar day and begin night time
      TIME       2017-05-08 24:00:00


Wie man sieht, ist bestimmten Tageszeitabschnitten eine bestimmte Tageszeit zugeordnet. Diese Verbindung zwischen Tageszeitabschnitt (daytimeStage) und der Tageszeit (daytime) ist derzeit noch fest hinterlegt. Es ist geplant diese konfigurierbar zu haben. Es gibt unterschiedliche Zuordnungen je nach Jahreszeit und Normal-/Sommerzeit, um die unterschiedliche Länge des lichten Tages zu berücksichtigen. Über den get-Befehl "schedule" kann man sehr gut vorab überprüfen, wie die Tageszeitabschnitte sich verteilen.

Wichtig ist zu betonen, dass die Tageszeit natürlich fortlaufend weiterberechnet wird und dass diese quasi den "Mindest-Modus" für den Hausmodus angibt. Man kann aber jederzeit einen Modus weiter in der Zukunft anwählen (während des Tages bis maximal zur Nacht, während der Nacht bis maximal zum Nachmittag).
Wenn man also beispielsweise über einen Helligkeitssensor, dem Twilight Modul oder einfach einer festen Uhrzeit früher in den Abendmodus springen möchte, kann man das unbehelligt über ein Notify/DOIF tun.



Liste der Tageszeiten / Hausmodi

es werden 7 Hausmodi im Reading "mode" unterschieden:

       
  • Morgen (morning)
  • Vormittag (midmorning)
  • Mittag (noon)
  • Nachmittag (afternoon)
  • Vorabend (evening)
  • Abend (midevening)
  • Nacht (night)

Liste der Sicherheitsmodi


Es werden folgende Sicherheitsmodi im Reading "security" unterschieden:

       
  • unverriegelt (unlocked) - bei Anwesenheit der Bewohner in den Hausmodi Morgen, Vormittag, Mittag, Nachmittag und Vorabend
  • verriegelt (locked) - bei Anwesenheit der Bewohner in den Hausmodi Abend und Nacht
  • geschützt (protected) - während die Bewohner schlafen ODER wenn ein Haustier alleine zuhause ist
  • gesichert (secured) - während vorübergehender Abwesenheit der Bewohner
  • überwacht (guarded) - während längerer Abwesenheit der Bewohner
Sobald 00_HOMESTATE weitestgehend Feature-complete ist, werden die Sub-Module 01_ZONESTATE und 02_ROOMSTATE entsprechend angegangen.



Viele Grüße
Julian
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

l2r

danke!

ich hab's mal runtergeladen und werde testen. Bis jetzt funktioniert alles wie gewünscht.

Da ich auch Dan's Modul HOMEMODE verwende bin ich mal gespannt ob die sich irgendwann in die quere kommen  ;)

Gruß Michael
Wissen ist Macht.
Ich weiß nix.
Macht nix.

Phiolin

Sieht gut aus, werde mir das auch nachher mal anschauen.
Vor allem die Einteilung in die daytimeStages gefällt mir ganz gut, das könnte nützlich sein. :)

ralfix

Hallo Julian,
Modul ist im Einsatz und hat das erste Sonnenstatus-Dummy abgelöst.
Grüble gerade über use cases für phenologische Jahreszeiten und temporale Stunden.

Viel Erfolg beim entwicklen
Ralf

ComputerZOO

Moin,
sobald ich mein Holiday-Device per attr sys.homestate HolidayDevices sys.holiday.mv einfügen will stürzt mir FHEM ab.

CoolTux

Hilfreiche Informationen für den Entwickler findest Du im FHEM Logfile.
Diese Infos bitte hier in Codetags posten.


Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

l2r

das FHEM abstürzt kann ich auch bestätigen.

viel mehr als:
Undefined subroutine &main::AttVal called at FHEM/HOMESTATEtk.pm line 1094.

sagt das log auch nicht.

ich würde sagen klassischer Tippfehler ;-)

Gruß Michael
Wissen ist Macht.
Ich weiß nix.
Macht nix.

Loredo

Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

Phiolin

Mein Haus hat heute nicht auf "evening" geschaltet, sondern ist auf "afternoon" in DaytimeStage 11 stehen geblieben. Laut Schedule hätte gegen 20:39 auf Stage 12 gewechselt werden sollen. Das Umschalten auf "midevening" um 22:05 hingegen hat funktioniert. Eine Idee, warum er die eine Stage ausgelassen hat?

Internals:
   CHANGED
   NAME       Haus
   NEXT_EVENT 2017-05-19 22:05:44 - Begin midevening time
   NOTIFYDEV  global,Haus,rgr_Bewohner
   NR         178
   NTFY_ORDER 50-Haus
   READY      1
   RESIDENTS  rgr_Bewohner
   STATE      secured
   TYPE       HOMESTATE
   Readings:
     2017-05-19 00:00:00   calTod          Friday, May 19
     2017-05-09 08:07:42   calTodDST       daylight
     2017-05-19 00:00:00   calTodDaytimeStageLn 01:26:05
     2017-05-19 00:00:00   calTodDaytimeT  17:13:09
     2017-05-19 00:00:00   calTodDesc      Holland
     2017-05-19 00:00:00   calTodHoliday   1
     2017-05-09 08:07:42   calTodLeapyear  0
     2017-05-09 08:07:42   calTodMonth     May
     2017-05-09 08:07:42   calTodMonthN    5
     2017-05-09 08:07:42   calTodMonthS    May
     2017-05-19 00:00:00   calTodMonthday  19
     2017-05-19 00:00:00   calTodMonthdayRem 12
     2017-05-09 08:07:42   calTodRel       today
     2017-05-19 00:00:00   calTodS         May 19
     2017-05-09 08:07:42   calTodSAstro    Spring
     2017-05-09 08:07:42   calTodSAstroChng 0
     2017-05-09 08:07:42   calTodSMeteo    Spring
     2017-05-09 08:07:42   calTodSMeteoChng 0
     2017-05-19 00:00:00   calTodSunrise   04:52:35
     2017-05-19 00:00:00   calTodSunset    22:05:44
     2017-05-19 00:00:00   calTodTodWeekend 2
     2017-05-15 00:00:00   calTodWeek      20
     2017-05-19 00:00:00   calTodWeekday   Friday
     2017-05-19 00:00:00   calTodWeekdayN  5
     2017-05-19 00:00:00   calTodWeekdayS  Fri
     2017-05-09 08:07:42   calTodYear      2017
     2017-05-19 00:00:00   calTodYearday   138
     2017-05-19 00:00:00   calTodYeardayRem 227
     2017-05-19 00:00:00   calTom          Saturday, May 20
     2017-05-09 08:07:42   calTomDST       daylight
     2017-05-18 00:00:00   calTomDesc      Holland
     2017-05-18 00:00:00   calTomHoliday   1
     2017-05-09 08:07:42   calTomMonth     May
     2017-05-09 08:07:42   calTomMonthN    5
     2017-05-09 08:07:42   calTomMonthS    May
     2017-05-19 00:00:00   calTomMonthday  20
     2017-05-19 00:00:00   calTomMonthdayRem 11
     2017-05-09 08:07:42   calTomRel       tomorrow
     2017-05-19 00:00:00   calTomS         May 20
     2017-05-14 00:00:01   calTomWeek      20
     2017-05-19 00:00:00   calTomWeekday   Saturday
     2017-05-19 00:00:00   calTomWeekdayN  6
     2017-05-19 00:00:00   calTomWeekdayS  Sat
     2017-05-19 00:00:00   calTomWeekend   3
     2017-05-09 08:07:42   calTomYear      2017
     2017-05-19 00:00:00   calTomYearday   139
     2017-05-19 00:00:00   calTomYeardayRem 226
     2017-05-19 16:21:21   daytime         afternoon
     2017-05-19 19:13:33   daytimeStage    11
     2017-05-09 08:07:42   daytimeStages   12
     2017-05-19 16:21:21   lastMode        noon
     2017-05-19 11:16:11   lastSecurity    unlocked
     2017-05-19 11:16:11   lastState       midmorning
     2017-05-19 16:21:21   mode            afternoon
     2017-05-19 11:16:11   security        secured
     2017-05-19 11:16:11   state           secured
Attributes:
   ResidentsDevices rgr_Bewohner
   alias      Mode
   devStateIcon {(HOMESTATEtk_devStateIcon($name),"toggle")}
   group      Home State
   icon       control_building_control
   room       Residents
   webCmd     mode

Phiolin

Da scheint bei mir öfter vorzukommen.

Laut Schedule müsste ich in Stage 5 sein.

DESC       Begin daytime stage 5
      TIME       2017-05-20 10:36:27


Jedoch aktuell steht in DaytimeStage eine 4. (Uhrzeit gerade 11:21)

Prof. Dr. Peter Henning

#10
Guter Ansatz, hier ein erstes Feedback:

Ein paar kleine Fehler: Zeile 362 im Toolkit macht eine Fehlermeldung, wenn keine Residents definiert sind. Die deutsche Übersetzung "Flurstatus" sollte wohl eher "Geschossstatus/Etagenstatus" sein.

Die wichtigste Ergänzung wäre die zeitliche Konfigurierbarkeit der einzelnen Stufen - weil es doch z.B. sehr unterschiedlich ist, wann "midevening time" anfängt.

Wenn die Benennung so bleiben soll, tritt dasselbe Problem wie schon bei RESIDENTS auf: Eine Familie von Modulen, die sehr eng zusammenarbeiten - aber an ganz unterschiedlichen Stellen in der CommandRef stehen, und deren Zusammengehörigkeit nicht ohne Weiteres erkennbar ist. Ich plädiere dafür, sich einen generischen Namen auszudenken. Sagen wir HOMESTATE (oder etwas Kürzeres, sagen wir HS) und das zum Anfang des Modulnamens auch bei den Untermodulen zu machen. Also HSMAIN, HSFLOOR, HSROOM oder so.


LG

pah

Phiolin

Mir fehlt gerade wieder eine DaytimeStage.
Hier die Schedule für heute:

1495317600.02332:
      DESC       Begin night time and new calendar day, holiday: Holland
      TIME       2017-05-21 00:00:00
    1495334966:
      DESC       Begin morning time and daytime stage 1
      TIME       2017-05-21 04:49:26
    1495340164:
      DESC       Begin daytime stage 2
      TIME       2017-05-21 06:16:04
    1495345362:
      DESC       Begin daytime stage 3
      TIME       2017-05-21 07:42:42
    1495350561:
      DESC       Begin midmorning time and daytime stage 4
      TIME       2017-05-21 09:09:21
    1495355759:
      DESC       Begin daytime stage 5
      TIME       2017-05-21 10:35:59
    1495360957:
      DESC       Begin noon time and daytime stage 6
      TIME       2017-05-21 12:02:37
    1495366155:
      DESC       Begin daytime stage 7
      TIME       2017-05-21 13:29:15
    1495371353:
      DESC       Begin afternoon time and daytime stage 8
      TIME       2017-05-21 14:55:53
    1495376551:
      DESC       Begin daytime stage 9
      TIME       2017-05-21 16:22:31
    1495381750:
      DESC       Begin daytime stage 10
      TIME       2017-05-21 17:49:10
    1495386948:
      DESC       Begin daytime stage 11
      TIME       2017-05-21 19:15:48
    1495392146:
      DESC       Begin evening time and daytime stage 12
      TIME       2017-05-21 20:42:26
    1495397344:
      DESC       Begin midevening time
      TIME       2017-05-21 22:09:04
    1495404000.02332:
      DESC       End calendar day and begin night time, holiday: Urlaub
      TIME       2017-05-22 24:00:00


Aktuell ist es 08:43, demnach müsste ich in Stage 3 sein. Das Device steht aber in Stage 2:

Internals:
   NAME       Haus
   NEXT_EVENT 2017-05-21 09:09:21 - Begin midmorning time and daytime stage 4
   NOTIFYDEV  global,Haus,rgr_Bewohner
   NR         178
   NTFY_ORDER 50-Haus
   READY      1
   RESIDENTS  rgr_Bewohner
   STATE      guarded
   TYPE       HOMESTATE
   Readings:
     2017-05-21 00:00:00   calTod          Sunday, May 21
     2017-05-09 08:07:42   calTodDST       daylight
     2017-05-21 00:00:00   calTodDaytimeStageLn 01:26:38
     2017-05-21 00:00:00   calTodDaytimeT  17:19:38
     2017-05-19 00:00:00   calTodDesc      Holland
     2017-05-19 00:00:00   calTodHoliday   1
     2017-05-09 08:07:42   calTodLeapyear  0
     2017-05-09 08:07:42   calTodMonth     May
     2017-05-09 08:07:42   calTodMonthN    5
     2017-05-09 08:07:42   calTodMonthS    May
     2017-05-21 00:00:00   calTodMonthday  21
     2017-05-21 00:00:00   calTodMonthdayRem 10
     2017-05-09 08:07:42   calTodRel       today
     2017-05-21 00:00:00   calTodS         May 21
     2017-05-09 08:07:42   calTodSAstro    Spring
     2017-05-09 08:07:42   calTodSAstroChng 0
     2017-05-09 08:07:42   calTodSMeteo    Spring
     2017-05-09 08:07:42   calTodSMeteoChng 0
     2017-05-21 00:00:00   calTodSunrise   04:49:26
     2017-05-21 00:00:00   calTodSunset    22:09:04
     2017-05-20 00:00:00   calTodTodWeekend 3
     2017-05-15 00:00:00   calTodWeek      20
     2017-05-21 00:00:00   calTodWeekday   Sunday
     2017-05-21 00:00:00   calTodWeekdayN  7
     2017-05-21 00:00:00   calTodWeekdayS  Sun
     2017-05-09 08:07:42   calTodYear      2017
     2017-05-21 00:00:00   calTodYearday   140
     2017-05-21 00:00:00   calTodYeardayRem 225
     2017-05-21 00:00:00   calTom          Monday, May 22
     2017-05-09 08:07:42   calTomDST       daylight
     2017-05-21 00:00:00   calTomDesc      Urlaub
     2017-05-18 00:00:00   calTomHoliday   1
     2017-05-09 08:07:42   calTomMonth     May
     2017-05-09 08:07:42   calTomMonthN    5
     2017-05-09 08:07:42   calTomMonthS    May
     2017-05-21 00:00:00   calTomMonthday  22
     2017-05-21 00:00:00   calTomMonthdayRem 9
     2017-05-09 08:07:42   calTomRel       tomorrow
     2017-05-21 00:00:00   calTomS         May 22
     2017-05-21 00:00:00   calTomWeek      21
     2017-05-21 00:00:00   calTomWeekday   Monday
     2017-05-21 00:00:00   calTomWeekdayN  1
     2017-05-21 00:00:00   calTomWeekdayS  Mon
     2017-05-21 00:00:00   calTomWeekend   2
     2017-05-09 08:07:42   calTomYear      2017
     2017-05-21 00:00:00   calTomYearday   141
     2017-05-21 00:00:00   calTomYeardayRem 224
     2017-05-21 04:49:26   daytime         morning
     2017-05-21 07:42:42   daytimeStage    2
     2017-05-09 08:07:42   daytimeStages   12
     2017-05-21 04:49:26   lastMode        night
     2017-05-20 03:16:10   lastSecurity    secured
     2017-05-20 03:16:10   lastState       secured
     2017-05-21 04:49:26   mode            morning
     2017-05-20 03:16:10   security        guarded
     2017-05-20 03:16:10   state           guarded
Attributes:
   ResidentsDevices rgr_Bewohner
   alias      Mode
   devStateIcon {(HOMESTATEtk_devStateIcon($name),"toggle")}
   group      Home State
   icon       control_building_control
   room       Residents
   webCmd     mode

Loredo

Zitat von: Phiolin am 19 Mai 2017, 22:07:45
Mein Haus hat heute nicht auf "evening" geschaltet, sondern ist auf "afternoon" in DaytimeStage 11 stehen geblieben. Laut Schedule hätte gegen 20:39 auf Stage 12 gewechselt werden sollen. Das Umschalten auf "midevening" um 22:05 hingegen hat funktioniert. Eine Idee, warum er die eine Stage ausgelassen hat?


Danke, das Log war hilfreich. Tatsächlich hat es da nichts ausgelassen, aber die Neuberechnung erfolgt zur exakten Sekunde, in der auch das neue Ergebnis dann herauskommt. Es kann aber aufgrund von Nachkommastellen vorkommen, dass eine leichte Abweichung beim Ergebnis da ist, welches dann noch für den Bruchteil einer Sekunde den alten Tageszeitabschnitt als Ergebnis liefert.


Das habe ich jetzt gefixt denke ich. Ein Update gibt es morgen zusammen mit dem normalen FHEM Update.


Zitat von: Prof. Dr. Peter Henning am 21 Mai 2017, 03:19:33
Ein paar kleine Fehler: Zeile 362 im Toolkit macht eine Fehlermeldung, wenn keine Residents definiert sind.


Danke dir, das habe ich gerade gleich mit korrigiert.


Zitat von: Prof. Dr. Peter Henning am 21 Mai 2017, 03:19:33
Die deutsche Übersetzung "Flurstatus" sollte wohl eher "Geschossstatus" sein.


Eigentlich ist Flur nicht nur als Geschoss gemeint, sondern auch als Abschnitt/Bereich (ein Geschoss sollte man auch in mehrere Abschnitte unterteilen können; für einige fängt sprachlich gesehen je nach Kontext auch nach jeder Abbiegung ein neuer "Flur" an). Dafür aber wieder einen eigenen TYPE zu definieren erschien mir nicht lohnenswert. Ich habe das Modul intern schonmal auf SECTIONSTATE (resp. "Bereichstatus" bzw "Section State") umbenannt, vielleicht ist das allgemeingültiger.


Zitat von: Prof. Dr. Peter Henning am 21 Mai 2017, 03:19:33
Wenn die Benennung so bleiben soll, tritt dasselbe Problem wie schon bei RESIDENTS auf: Eine Familie von Modulen, die sehr eng zusammenarbeiten - aber an ganz unterschiedlichen Stellen in der CommandRef stehen, und deren Zusammengehörigkeit nicht ohne Weiteres erkennbar ist. Ich plädiere dafür, sich einen generischen Namen auszudenken. Sagen wir HOMESTATE (oder etwas Kürzeres, sagen wir HS) und das zum Anfang des Modulnamens auch bei den Untermodulen zu machen. Also HSMAIN, HSFLOOR, HSROOM oder so.


Das ist ein guter Punkt, über den ich mal nachdenken muss. Generische Ausdrücke finde ich eher nicht so gut, da man die Abkürzung erstmal kennen muss um zu verstehen, wofür das Modul in etwa da ist. Das ist bei ganz vielen Modulen inzwischen so, dass man aus dem kryptischen Namen nicht mehr immer unbedingt etwas ableiten kann, ohne die Kurzbeschreibung zu lesen (und zu verstehen).


Vielleicht dreht man das ganze einfach um und nennt es dann STATEHOME, STATESECTION, STATEROOM. Ist sprachlich nicht so geschickt, lässt aber mehr Rückschlüsse auf die Funktion zu.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER


ComputerZOO

Moin,
so richtig scheint der Wechsel auch nach dem Update nicht zu funktionieren:

Loredo


Danke für die Rückmeldung.Ich habe derzeit leider keine Zeit mir das genauer anzusehen oder über den Tag verteilt real das Verhalten zu beobachten.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

ComputerZOO

Ich habe mir gerade nen FileLog für Homestate erstellt und lasse dieses Mal nen Tag mit .* mitlaufen.
Morgen Abend stelle ich das dann mal hier rein (wenn es denn weiterhilft).

Loredo

Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

ComputerZOO

Moin,
anbei das Log der letzten 23 Stunden (Security-Events der Übersichtlichkeit halber entfernt):
2017-05-23_00:00:00 sys.homestate calTod: Tuesday, May 23
2017-05-23_00:00:00 sys.homestate calTom: Wednesday, May 24
2017-05-23_00:00:00 sys.homestate calTodS: May 23
2017-05-23_00:00:00 sys.homestate calTomS: May 24
2017-05-23_00:00:00 sys.homestate calTodDaytimeStageLn: 01:30:16
2017-05-23_00:00:00 sys.homestate calTodDaytimeT: 18:03:13
2017-05-23_00:00:00 sys.homestate daytime: night
2017-05-23_00:00:00 sys.homestate calTodMonthday: 23
2017-05-23_00:00:00 sys.homestate calTomMonthday: 24
2017-05-23_00:00:00 sys.homestate calTodMonthdayRem: 8
2017-05-23_00:00:00 sys.homestate calTomMonthdayRem: 7
2017-05-23_00:00:00 sys.homestate calTodSunrise: 04:06:13
2017-05-23_00:00:00 sys.homestate calTodSunset: 22:09:26
2017-05-23_00:00:00 sys.homestate calTodWeekday: Tuesday
2017-05-23_00:00:00 sys.homestate calTomWeekday: Wednesday
2017-05-23_00:00:00 sys.homestate calTodWeekdayS: Tue
2017-05-23_00:00:00 sys.homestate calTomWeekdayS: Wed
2017-05-23_00:00:00 sys.homestate calTodWeekdayN: 2
2017-05-23_00:00:00 sys.homestate calTomWeekdayN: 3
2017-05-23_00:00:00 sys.homestate calTodYearday: 142
2017-05-23_00:00:00 sys.homestate calTomYearday: 143
2017-05-23_00:00:00 sys.homestate calTodYeardayRem: 223
2017-05-23_00:00:00 sys.homestate calTomYeardayRem: 222
2017-05-23_00:00:00 sys.homestate calTod_DE: Dienstag, 23. Mai
2017-05-23_00:00:00 sys.homestate calTom_DE: Mittwoch, 24. Mai
2017-05-23_00:00:00 sys.homestate calTodS_DE: 23. Mai
2017-05-23_00:00:00 sys.homestate calTomS_DE: 24. Mai
2017-05-23_00:00:00 sys.homestate daytime_DE: Nacht
2017-05-23_00:00:00 sys.homestate calTodWeekday_DE: Dienstag
2017-05-23_00:00:00 sys.homestate calTomWeekday_DE: Mittwoch
2017-05-23_00:00:00 sys.homestate calTodWeekdayS_DE: Di
2017-05-23_00:00:00 sys.homestate calTomWeekdayS_DE: Mi
2017-05-23_04:06:13 sys.homestate daytimeStage: 1
2017-05-23_04:06:13 sys.homestate daytime: morning
2017-05-23_04:06:13 sys.homestate daytime_DE: Morgen
2017-05-23_04:06:13 sys.homestate lastMode: night
2017-05-23_04:06:13 sys.homestate mode: morning
2017-05-23_04:06:13 sys.homestate lastMode_DE: Nacht
2017-05-23_04:06:13 sys.homestate mode_DE: Morgen
2017-05-23_05:29:44 sys.homestate morning
2017-05-23_05:29:44 sys.homestate lastState_DE: geschützt
2017-05-23_05:29:44 sys.homestate state_DE: Morgen
2017-05-23_05:36:30 sys.homestate daytimeStage: 2
2017-05-23_06:11:44 sys.homestate lastState: morning
2017-05-23_06:11:44 sys.homestate lastState_DE: Morgen
2017-05-23_07:06:46 sys.homestate daytimeStage: 3
2017-05-23_08:37:01 sys.homestate daytimeStage: 4
2017-05-23_08:37:01 sys.homestate daytime: midmorning
2017-05-23_08:37:01 sys.homestate daytime_DE: Vormittag
2017-05-23_08:37:01 sys.homestate lastMode: morning
2017-05-23_08:37:01 sys.homestate mode: midmorning
2017-05-23_08:37:01 sys.homestate lastMode_DE: Morgen
2017-05-23_08:37:01 sys.homestate mode_DE: Vormittag
2017-05-23_10:07:17 sys.homestate daytimeStage: 5
2017-05-23_10:45:15 sys.homestate midmorning
2017-05-23_10:45:15 sys.homestate state_DE: Vormittag
2017-05-23_11:37:33 sys.homestate daytimeStage: 6
2017-05-23_11:37:33 sys.homestate daytime: noon
2017-05-23_11:37:33 sys.homestate daytime_DE: Mittag
2017-05-23_11:37:33 sys.homestate lastMode: midmorning
2017-05-23_11:37:33 sys.homestate mode: noon
2017-05-23_11:37:33 sys.homestate lastMode_DE: Vormittag
2017-05-23_11:37:33 sys.homestate mode_DE: Mittag
2017-05-23_11:37:33 sys.homestate lastState: midmorning
2017-05-23_11:37:33 sys.homestate noon
2017-05-23_11:37:33 sys.homestate lastState_DE: Vormittag
2017-05-23_11:37:33 sys.homestate state_DE: Mittag
2017-05-23_13:07:50 sys.homestate daytimeStage: 7
2017-05-23_14:38:06 sys.homestate daytimeStage: 8
2017-05-23_14:38:06 sys.homestate daytime: afternoon
2017-05-23_14:38:06 sys.homestate daytime_DE: Nachmittag
2017-05-23_14:38:06 sys.homestate lastMode: noon
2017-05-23_14:38:06 sys.homestate mode: afternoon
2017-05-23_14:38:06 sys.homestate lastMode_DE: Mittag
2017-05-23_14:38:06 sys.homestate mode_DE: Nachmittag
2017-05-23_14:38:06 sys.homestate lastState: noon
2017-05-23_14:38:06 sys.homestate afternoon
2017-05-23_14:38:06 sys.homestate lastState_DE: Mittag
2017-05-23_14:38:06 sys.homestate state_DE: Nachmittag
2017-05-23_16:02:31 sys.homestate lastState: afternoon
2017-05-23_16:02:31 sys.homestate lastState_DE: Nachmittag
2017-05-23_16:08:23 sys.homestate daytimeStage: 9
2017-05-23_16:20:33 sys.homestate afternoon
2017-05-23_16:20:33 sys.homestate state_DE: Nachmittag
2017-05-23_17:38:39 sys.homestate daytimeStage: 10
2017-05-23_19:08:54 sys.homestate daytimeStage: 11
2017-05-23_20:39:10 sys.homestate daytimeStage: 12
2017-05-23_20:39:10 sys.homestate daytime: evening
2017-05-23_20:39:10 sys.homestate daytime_DE: Vorabend
2017-05-23_20:39:10 sys.homestate lastMode: afternoon
2017-05-23_20:39:10 sys.homestate mode: evening
2017-05-23_20:39:10 sys.homestate lastMode_DE: Nachmittag
2017-05-23_20:39:10 sys.homestate mode_DE: Vorabend
2017-05-23_20:39:10 sys.homestate lastState: afternoon
2017-05-23_20:39:10 sys.homestate evening
2017-05-23_20:39:10 sys.homestate lastState_DE: Nachmittag
2017-05-23_20:39:10 sys.homestate state_DE: Vorabend
2017-05-23_22:09:26 sys.homestate daytimeStage: 0
2017-05-23_22:09:26 sys.homestate daytime: midevening
2017-05-23_22:09:26 sys.homestate daytime_DE: Abend
2017-05-23_22:09:26 sys.homestate lastMode: evening
2017-05-23_22:09:26 sys.homestate mode: midevening
2017-05-23_22:09:26 sys.homestate lastMode_DE: Vorabend
2017-05-23_22:09:26 sys.homestate mode_DE: Abend
2017-05-23_22:09:26 sys.homestate lastState: evening
2017-05-23_22:09:26 sys.homestate midevening
2017-05-23_22:09:26 sys.homestate lastState_DE: Vorabend
2017-05-23_22:09:26 sys.homestate state_DE: Abend


Mir fällt dazu folgendes ein:
mode: afternoon besser bei daytimeStage 7 beginnen,
mode: evening besser bei daytimeStage 11 beginnen.

Loredo

Zitat von: ComputerZOO am 23 Mai 2017, 23:07:48
anbei das Log der letzten 23 Stunden (Security-Events der Übersichtlichkeit halber entfernt)


Danke dir! Sofern ich nichts übersehen habe, kann ich da jetzt erstmal nicht sehen, dass etwas gefehlt hätte.


Zitat von: ComputerZOO am 23 Mai 2017, 23:07:48
Mir fällt dazu folgendes ein:
mode: afternoon besser bei daytimeStage 7 beginnen,
mode: evening besser bei daytimeStage 11 beginnen.


Jaein, bitte folgendes bedenken:


1. Wir orientieren uns hier am lichten Tag. Das bedeutet beispielsweise, dass Mittag und Nachmittag dann ist, wenn die Sonne entsprechend steht - nicht wenn wir um 11:30 in die Kantine gehen ;-) Will heißen: Dein Lebensrhythmus kann und darf davon abweichen, weshalb du entweder manuell oder auch durch Sensoren oder per Zeitschaltung (Notify, DOIF, Watchdog) bereits früher in den nächsten Modus schalten kannst (der toggle Setter hilft dabei). Das ist die präferierte Methode, obgleich auch noch vorgesehen ist die Modus-Zuordnung zu den Tageszeitabschnitten selbst konfigurierbar zu machen. Durch die starken Schwankungen zwischen den Jahreszeiten bzw. Normal- und Sommerzeit wird es immer dazu kommen können, dass der Lebensrhythmus nicht exakt dem der Natur entspricht. Die Idee des Wertes daytime ist hier vor allem, dass sich das Haus bei seinen Automationen (Licht, Klima, Beschattung) an der Natur orientieren kann. Für wen also mittags immer exakt 12:00 Uhr ist, der muss das entsprechend einprogrammieren.


2. Da die 12 Tageszeitabschnitte sich exakt zwischen Sonnenauf- und Sonnenuntergang befinden, ist rechnerisch der höchste Sonnenstand (und somit der eigentliche Mittag) am Ende des 6. bzw. bei Beginn des 7. Zeitabschnittes. Es ist also sinnvoll einen Zeitraum drum herum als Mittagszeit zu bezeichnen, weshalb wir dann auf die Zeitabschnitte 6+7 kommen. In der Sommerzeit kommt hinzu, dass man dadurch automatisch eine recht gut passende Zeitspanne erhält, zu der man besonders vorsichtig sein sollte, um in die senkende Sonne zu gehen.
Diese Zuordnung kann man IMHO ganz gut unabhängig von Normal-/Sommerzeit und der Jahreszeit machen, weshalb die Vorbelegung aktuell auch für alle Tage des Jahres so ist.


3. Durch die Sommerzeit ist die Mittagszeit um eine Stunde zeitversetzt (also später als eigentlich normal).


4. Ähnlich wie bei der Mittagszeit ist es auch beim Beginn des Vorabends bzw. der Abendzeit. Sommertage sind naturgemäß bereits sehr lang und durch die Sommerzeitumstellung sind sie auf der Uhr noch viel länger. Ich vermute, dass die wenigsten fest um 19:00 Uhr ihr Haus verrammeln, nur weil es 19:00 ist. Die meisten werden sich eher daran orientieren, ob es draußen noch hell ist oder nicht. Wenn es also erst gegen 20:30 anfängt dunkel zu werden, ist das der natürliche Verlauf der Dinge ;-)
Auch hier kann man ja manuell jederzeit übersteuern und bereits zum nächsten Modus vorwechseln (beispielsweise für ein Kinderzimmer, wenn das Modul ROOMSTATE verfügbar sein wird).


Kurz zusammengefasst: Der Hausmodus im Automatikbetrieb orientiert sich vornehmlich an der Umwelt, nicht am Lebensstil der Bewohner. Gleichwohl wird versucht das in einem sinnvollen Verhältnis in Einklang zu bringen, indem man insbesondere beim Übergang in den Abend individuell und per externer Sensorik Einfluss nehmen kann.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

ralfix

Hallo Julian,

als Feature Request werfe ich mal eine kalkulierte Tageslichtintensität als Reading im HOMESTATE in den Raum.
zum Beispiel:
morning 0.5  ;  midmorning 0.9 ;  noon  1 ; afternoon 0.9 ;  evening  0.5 ;  midevening 0.3 ; night 0   

Per daytimeStage die Beleuchtung/Bewässerung  zu steuern ist etwas unhandlich.
... nur falls du noch Features suchst

Gruß Ralf

chris1284

ich will kurz fragen welchen Sinn diese Modulfamilie hat. Aus dem Einleitungspost und folgenden geht dieser, für mich, nicht ganz hervor bzw. über diesen wird gar kein Wort verloren.
Ich verstehe es so das HOMESTATE mir nichts weiter sagt als das es Morgens, Mittags oder Abends ist korrekt? Das setzen des Modus per Hand stellt dann eigentlich keine Modi ein sondern setz nur den State manuell oder (ich finde hier wird zu oft Mode und State verwechselt bzw hätte ich vom Modulnahmen ehr eine konsequentere Namensgebung in Richtung state erwartet und wenn meine Annahme über das Modul richtig ist stellt es auch nur den vorlaufenden Status des Tages dar)

Welchen Sinn haben FLOORSTATE/ROOMSTATE?  Ist das so zu sehen das es im Home(state) schon Mittag sein kann aber auf bestimmten Etagen/Räumen schon Nachmittag oder  Morgens, verwirrt?!

Hubi22

Hi, habe gerade RESIDENT und ROOMMATE in Betrieb genommen und bin dabei auf dieses Thema gestossen.

In diesem Thema wurde seit 120 Tagen nichts mehr geschrieben.

Ist dies kein Thema mehr? Wird das Modul nicht weiter verfolgt?

Gruss, Hubi

Phiolin

Hat noch jemand das "Problem", das HOMESTATE aktuell in der Schedule keine Daytime "Evening" mehr generiert?
Meine Schedule für heute sieht so aus:

1512082800.84119:
      DESC       Begin of night time and new calendar day, holiday: Urlaub
      TIME       2017-12-01 00:00:00
      TYPE       dayshift
      VALUE      1
    1512110164:
      DESC       Begin of morning time and daytime stage 1
      TIME       2017-12-01 07:36:04
      TYPE       daytime
      VALUE      morning
    1512113012:
      DESC       Begin of daytime stage 2
      TIME       2017-12-01 08:23:32
      TYPE       daytimeStage
      VALUE      2
    1512115860:
      DESC       Begin of midmorning time and daytime stage 3
      TIME       2017-12-01 09:11:00
      TYPE       daytime
      VALUE      midmorning
    1512118708:
      DESC       Begin of daytime stage 4
      TIME       2017-12-01 09:58:28
      TYPE       daytimeStage
      VALUE      4
    1512121556:
      DESC       Begin of daytime stage 5
      TIME       2017-12-01 10:45:56
      TYPE       daytimeStage
      VALUE      5
    1512124403:
      DESC       Begin of noon time and daytime stage 6
      TIME       2017-12-01 11:33:23
      TYPE       daytime
      VALUE      noon
    1512127251:
      DESC       Begin of daytime stage 7
      TIME       2017-12-01 12:20:51
      TYPE       daytimeStage
      VALUE      7
    1512130099:
      DESC       Begin of afternoon time and daytime stage 8
      TIME       2017-12-01 13:08:19
      TYPE       daytime
      VALUE      afternoon
    1512132947:
      DESC       Begin of daytime stage 9
      TIME       2017-12-01 13:55:47
      TYPE       daytimeStage
      VALUE      9
    1512135795:
      DESC       Begin of daytime stage 10
      TIME       2017-12-01 14:43:15
      TYPE       daytimeStage
      VALUE      10
    1512138643:
      DESC       Begin of daytime stage 11
      TIME       2017-12-01 15:30:43
      TYPE       daytimeStage
      VALUE      11
    1512141491:
      DESC       Begin of daytime stage 12
      TIME       2017-12-01 16:18:11
      TYPE       daytimeStage
      VALUE      12
    1512144339:
      DESC       End of daytime
      TIME       2017-12-01 17:05:39
      TYPE       daytime
      VALUE      midevening
    1512169200.84119:
      DESC       End of calendar day and begin night time
      TIME       2017-12-01 24:00:00
      TYPE       dayshift


Wir steigen also offenbar direkt mit "midevening" ein. Ich meine aber, dass sonst auch immer vorher noch ein "Evening" generiert wurde. Dies kann ich aktuell dann nur manuell setzen.

Hier noch ein List, falls es hilft:

Internals:
   CHANGED
   NAME       Haus
   NEXT_EVENT 2017-12-01 16:18:11 - Begin of daytime stage 12
   NOTIFYDEV  global,Haus,rgr_Bewohner
   NR         155
   NTFY_ORDER 50-Haus
   READY      1
   RESIDENTS  rgr_Bewohner
   STATE      afternoon
   TYPE       HOMESTATE
   READINGS:
     2017-09-15 10:03:33   autoMode        on
     2017-12-01 00:00:00   calTod          Friday, December 1
     2017-10-29 05:44:53   calTodDST       standard
     2017-12-01 00:00:00   calTodDaytimeStageLn 00:47:27
     2017-12-01 00:00:00   calTodDaytimeT  09:29:35
     2017-12-01 00:00:00   calTodDesc      Urlaub
     2017-12-01 00:00:00   calTodHoliday   1
     2017-05-09 08:07:42   calTodLeapyear  0
     2017-12-01 00:00:00   calTodMonth     December
     2017-12-01 00:00:00   calTodMonthN    12
     2017-12-01 00:00:00   calTodMonthS    Dec
     2017-12-01 00:00:00   calTodMonthday  1
     2017-12-01 00:00:00   calTodMonthdayRem 30
     2017-05-09 08:07:42   calTodRel       today
     2017-12-01 00:00:00   calTodS         December 1
     2017-09-23 00:00:00   calTodSAstro    Autumn
     2017-09-24 00:00:00   calTodSAstroChng 0
     2017-12-01 00:00:00   calTodSMeteo    Winter
     2017-12-01 00:00:00   calTodSMeteoChng 1
     2017-12-01 00:00:00   calTodSunrise   07:36:03
     2017-12-01 00:00:00   calTodSunset    17:05:38
     2017-12-01 00:00:00   calTodTodWeekend 2
     2017-11-27 00:00:00   calTodWeek      48
     2017-12-01 00:00:00   calTodWeekday   Friday
     2017-12-01 00:00:00   calTodWeekdayN  5
     2017-12-01 00:00:00   calTodWeekdayS  Fri
     2017-05-09 08:07:42   calTodYear      2017
     2017-12-01 00:00:00   calTodYearday   334
     2017-12-01 00:00:00   calTodYeardayRem 31
     2017-12-01 00:00:00   calTom          Saturday, December 2
     2017-10-28 07:43:14   calTomDST       standard
     2017-12-01 00:00:00   calTomDesc      weekend
     2017-05-18 00:00:00   calTomHoliday   1
     2017-11-30 00:00:00   calTomMonth     December
     2017-11-30 00:00:00   calTomMonthN    12
     2017-11-30 00:00:00   calTomMonthS    Dec
     2017-12-01 00:00:00   calTomMonthday  2
     2017-12-01 00:00:00   calTomMonthdayRem 29
     2017-05-09 08:07:42   calTomRel       tomorrow
     2017-12-01 00:00:00   calTomS         December 2
     2017-06-22 00:00:00   calTomSAstroChng 1
     2017-05-31 00:00:00   calTomSMeteoChng 1
     2017-11-26 00:00:00   calTomWeek      48
     2017-12-01 00:00:00   calTomWeekday   Saturday
     2017-12-01 00:00:00   calTomWeekdayN  6
     2017-12-01 00:00:00   calTomWeekdayS  Sat
     2017-12-01 00:00:00   calTomWeekend   1
     2017-05-09 08:07:42   calTomYear      2017
     2017-12-01 00:00:00   calTomYearday   335
     2017-12-01 00:00:00   calTomYeardayRem 30
     2017-12-01 13:08:18   daytime         afternoon
     2017-12-01 15:30:42   daytimeStage    11
     2017-05-09 08:07:42   daytimeStages   12
     2017-12-01 13:08:18   lastMode        noon
     2017-12-01 13:09:58   lastSecurity    secured
     2017-12-01 13:09:58   lastState       secured
     2017-12-01 13:08:18   mode            afternoon
     2017-12-01 13:09:58   security        unlocked
     2017-12-01 13:09:58   state           afternoon
Attributes:
   ResidentsDevices rgr_Bewohner
   alias      Mode
   devStateIcon {(HOMESTATEtk_devStateIcon($name),"toggle")}
   group      Home State
   icon       control_building_control
   room       Residents
   webCmd     mode



Dazu kommt, jetzt wo es etwas später ist, hat er auf "midevening" geschaltet, wie es auch in der Schedule oben steht. Dafür steht jetzt aber die daytimeStage auf 0, was ja so auch nicht sein sollte, da von "dunkel" bis Mitternacht die daytimeStage ja eigentlich 12 ist?

List:

Internals:
   NAME       Haus
   NEXT_EVENT 2017-12-01 24:00:00 - End of calendar day and begin night time
   NOTIFYDEV  global,Haus,rgr_Bewohner
   NR         155
   NTFY_ORDER 50-Haus
   READY      1
   RESIDENTS  rgr_Bewohner
   STATE      midevening
   TYPE       HOMESTATE
   READINGS:
     2017-09-15 10:03:33   autoMode        on
     2017-12-01 00:00:00   calTod          Friday, December 1
     2017-10-29 05:44:53   calTodDST       standard
     2017-12-01 00:00:00   calTodDaytimeStageLn 00:47:27
     2017-12-01 00:00:00   calTodDaytimeT  09:29:35
     2017-12-01 00:00:00   calTodDesc      Urlaub
     2017-12-01 00:00:00   calTodHoliday   1
     2017-05-09 08:07:42   calTodLeapyear  0
     2017-12-01 00:00:00   calTodMonth     December
     2017-12-01 00:00:00   calTodMonthN    12
     2017-12-01 00:00:00   calTodMonthS    Dec
     2017-12-01 00:00:00   calTodMonthday  1
     2017-12-01 00:00:00   calTodMonthdayRem 30
     2017-05-09 08:07:42   calTodRel       today
     2017-12-01 00:00:00   calTodS         December 1
     2017-09-23 00:00:00   calTodSAstro    Autumn
     2017-09-24 00:00:00   calTodSAstroChng 0
     2017-12-01 00:00:00   calTodSMeteo    Winter
     2017-12-01 00:00:00   calTodSMeteoChng 1
     2017-12-01 00:00:00   calTodSunrise   07:36:03
     2017-12-01 00:00:00   calTodSunset    17:05:38
     2017-12-01 00:00:00   calTodTodWeekend 2
     2017-11-27 00:00:00   calTodWeek      48
     2017-12-01 00:00:00   calTodWeekday   Friday
     2017-12-01 00:00:00   calTodWeekdayN  5
     2017-12-01 00:00:00   calTodWeekdayS  Fri
     2017-05-09 08:07:42   calTodYear      2017
     2017-12-01 00:00:00   calTodYearday   334
     2017-12-01 00:00:00   calTodYeardayRem 31
     2017-12-01 00:00:00   calTom          Saturday, December 2
     2017-10-28 07:43:14   calTomDST       standard
     2017-12-01 00:00:00   calTomDesc      weekend
     2017-05-18 00:00:00   calTomHoliday   1
     2017-11-30 00:00:00   calTomMonth     December
     2017-11-30 00:00:00   calTomMonthN    12
     2017-11-30 00:00:00   calTomMonthS    Dec
     2017-12-01 00:00:00   calTomMonthday  2
     2017-12-01 00:00:00   calTomMonthdayRem 29
     2017-05-09 08:07:42   calTomRel       tomorrow
     2017-12-01 00:00:00   calTomS         December 2
     2017-06-22 00:00:00   calTomSAstroChng 1
     2017-05-31 00:00:00   calTomSMeteoChng 1
     2017-11-26 00:00:00   calTomWeek      48
     2017-12-01 00:00:00   calTomWeekday   Saturday
     2017-12-01 00:00:00   calTomWeekdayN  6
     2017-12-01 00:00:00   calTomWeekdayS  Sat
     2017-12-01 00:00:00   calTomWeekend   1
     2017-05-09 08:07:42   calTomYear      2017
     2017-12-01 00:00:00   calTomYearday   335
     2017-12-01 00:00:00   calTomYeardayRem 30
     2017-12-01 17:05:39   daytime         midevening
     2017-12-01 17:05:39   daytimeStage    0
     2017-05-09 08:07:42   daytimeStages   12
     2017-12-01 17:05:39   lastMode        afternoon
     2017-12-01 17:05:39   lastSecurity    unlocked
     2017-12-01 17:05:39   lastState       afternoon
     2017-12-01 17:05:39   mode            midevening
     2017-12-01 17:05:39   security        locked
     2017-12-01 17:05:39   state           midevening
Attributes:
   ResidentsDevices rgr_Bewohner
   alias      Mode
   devStateIcon {(HOMESTATEtk_devStateIcon($name),"toggle")}
   group      Home State
   icon       control_building_control
   room       Residents
   webCmd     mode

Phiolin

Das fehlende "Evening" Problem hab ich schon mal selbst gefunden.
In UConv.pm ist die Generierung von Evening im Winter auskommentiert.

    # WINTER SEASON
    3 => {

        # DST = no
        0 => {
            1 => 0,
            3 => 1,
            6 => 2,
            8 => 3,
#           12 => 4,
        },
    },


Wenn man die Zeile 12 => 4 wieder reinnimmt, wird zur DaytimeStage 12 auch wieder die Daytime auf evening gesetzt.

Loredo

Ich weiß nicht mehr genau, warum ich das auskommentiert hatte. Bis mir das wieder einfällt, kommentiere ich das mal wieder ein ;-)
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

Phiolin

Danke :)

Mir fällt neuerdings auf, dass mein HOMESTATE Device nach einem FHEM restart immer im Status "guarded" startet, obwohl Residents Devices present sind. Aktualisieren tut sich das dann erst, wenn ich die Residents einmal absent/home toggle.
Gemerkt habe ich das erstmals vor 2-3 Wochen denke ich. Ist das neu?

Loredo

Hm, das kann ich bei mir hier nicht nachvollziehen.
Hast du vielleicht FHEM nicht normal heruntergefahren? Dann wird der aktuelle Status nicht weggespeichert.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

Loredo

Ich habe jetzt gerade in HOMESTATEtk die Unterstützung für die homealone Funktion aus RESIDENTS eingebaut.
Damit wird nun im status Reading ein Präfix mit dem subType angezeigt, der gerade allein zuhause ist.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

Loredo

Ich habe nun auch die phänologische Jahreszeit hinzugefügt.
Sie eignet sich aufgrund ihrer besseren Differenzierung zumeist sehr viel besser für Steuerungen als die meteorologische oder astronomische Jahreszeit.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

Loredo

Bevor es jetzt mit der Entwicklung von HOMESTATE/ZONESTATE/ROOMSTATE/OUTDOORSTATE weitergeht, habe ich einige der zentralen Funktionen in ein eigenes Modul namens DaySchedule ausgelagert. HOMESTATE und Co werden später mit diesem Modul eng zusammenarbeiten:


https://forum.fhem.de/index.php/topic,101942.0.html
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

Phiolin

Anmerkung dazu:
Homestate hat seit Beginn der Winterzeit bei mir ordentlich Probleme.
Aktuell ist laut Modul noch "Sommer", dayTime bleibt hartnäckig auf "night", Schedules werden wohl auch nicht korrekt generiert.

Das hat allerlei andere Nebeneffekte, wie z.B. das der "security" state auch permanent auf "protected" bleibt, weil ja "Nacht" ist.
Ein schneller Blick in den Code hat mich leider bei der Fehlersuche nicht weitergebracht.

Aktuell bin ich dabei, möglichst viele meiner Funktionen umzubauen und mich nicht mehr auf Homestate zu verlassen. Das ist allerdings ordentlich Arbeit...

Im angehängten "list" wurde der Haus Mode manuell auf "morning" gesetzt um das größte Chaos im Haus zu beseitigen. ;)

Internals:
   FUUID      5c45a0bd-f33f-8c0c-bbdb-41f48616b1da0ff2
   NAME       Haus
   NEXT_EVENT 2019-10-28 08:33:28 - Begin of daytime stage 3
   NOTIFYDEV  global,Haus,rgr_Bewohner
   NR         146
   NTFY_ORDER 50-Haus
   READY      1
   RESIDENTS  rgr_Bewohner
   STATE      morning
   TYPE       HOMESTATE
   READINGS:
     2019-10-28 00:00:01   calTod          Monday, October 28
     2019-10-27 05:40:46   calTodDST       standard
     2019-10-28 00:00:01   calTodDaytimeStageLn 00:55:31
     2019-10-28 00:00:01   calTodDaytimeT  11:06:20
     2019-10-28 00:00:01   calTodDesc      0
     2019-07-01 00:00:00   calTodHoliday   1
     2019-05-14 11:26:44   calTodLeapyear  0
     2019-10-01 00:00:00   calTodMonth     October
     2019-10-01 00:00:00   calTodMonthN    10
     2019-10-01 00:00:00   calTodMonthS    Oct
     2019-10-28 00:00:01   calTodMonthday  28
     2019-10-28 00:00:01   calTodMonthdayRem 3
     2019-05-14 11:26:44   calTodRel       today
     2019-10-28 00:00:01   calTodS         October 28
     2019-06-23 00:00:00   calTodSAstro    Summer
     2019-06-24 00:00:00   calTodSAstroChng 0
     2019-06-01 00:00:00   calTodSMeteo    Summer
     2019-06-02 00:00:00   calTodSMeteoChng 0
     2019-07-01 00:00:00   calTodSPheno    Midsummer
     2019-07-02 00:00:00   calTodSPhenoChng 0
     2019-10-28 00:00:01   calTodSunrise   06:42:25
     2019-10-28 00:00:01   calTodSunset    17:48:45
     2019-05-14 11:26:44   calTodTodWeekend 2
     2019-10-28 00:00:01   calTodWeek      44
     2019-10-28 00:00:01   calTodWeekday   Monday
     2019-10-28 00:00:01   calTodWeekdayN  1
     2019-10-28 00:00:01   calTodWeekdayS  Mon
     2019-10-28 00:00:01   calTodWeekend   2
     2019-05-14 11:26:44   calTodYear      2019
     2019-10-28 00:00:01   calTodYearday   300
     2019-10-28 00:00:01   calTodYeardayRem 65
     2019-10-28 00:00:01   calTom          Tuesday, October 29
     2019-10-26 07:05:00   calTomDST       standard
     2019-10-27 01:00:01   calTomDesc      0
     2019-06-30 00:00:00   calTomHoliday   1
     2019-05-22 08:36:11   calTomLeapyear  0
     2019-09-30 00:00:00   calTomMonth     October
     2019-09-30 00:00:00   calTomMonthN    10
     2019-09-30 00:00:00   calTomMonthS    Oct
     2019-10-28 00:00:01   calTomMonthday  29
     2019-10-28 00:00:01   calTomMonthdayRem 2
     2019-05-14 11:26:44   calTomRel       tomorrow
     2019-10-28 00:00:01   calTomS         October 29
     2019-06-22 00:00:00   calTomSAstro    Summer
     2019-06-23 00:00:00   calTomSAstroChng 0
     2019-05-31 00:00:00   calTomSMeteo    Summer
     2019-06-01 00:00:00   calTomSMeteoChng 0
     2019-06-30 00:00:00   calTomSPheno    Midsummer
     2019-07-01 00:00:00   calTomSPhenoChng 0
     2019-10-27 01:00:01   calTomWeek      44
     2019-10-28 00:00:01   calTomWeekday   Tuesday
     2019-10-28 00:00:01   calTomWeekdayN  2
     2019-10-28 00:00:01   calTomWeekdayS  Tue
     2019-10-27 01:00:01   calTomWeekend   2
     2019-05-14 11:26:44   calTomYear      2019
     2019-10-28 00:00:01   calTomYearday   301
     2019-10-28 00:00:01   calTomYeardayRem 64
     2019-10-28 00:00:01   daytime         night
     2019-10-28 07:37:57   daytimeStage    2
     2019-05-14 11:26:44   daytimeStages   12
     2019-10-28 07:29:00   lastMode        night
     2019-10-28 07:29:00   lastSecurity    locked
     2019-10-28 07:29:00   lastState       night
     2019-10-28 07:29:00   mode            morning
     2019-10-28 07:29:00   security        unlocked
     2019-10-28 07:29:00   state           morning
Attributes:
   ResidentsDevices rgr_Bewohner
   alias      Mode
   devStateIcon {(HOMESTATEtk_devStateIcon($name),"toggle")}
   group      Home State
   icon       control_building_control
   room       Residents
   webCmd     mode


Hier noch die Schedule für heute. Wie man sieht, wird als einziges dayTime Event "midevening" generiert. Von Morning, Afternoon etc ist nichts zu sehen.

1572217200.01321:
      DESC       Begin of night time and new calendar day, holiday: 0
      TIME       2019-10-28 00:00:00
      TYPE       dayshift
    1572241345:
      DESC       Begin of daytime stage 1
      TIME       2019-10-28 06:42:25
      TYPE       daytimeStage
      VALUE      1
    1572244677:
      DESC       Begin of daytime stage 2
      TIME       2019-10-28 07:37:57
      TYPE       daytimeStage
      VALUE      2
    1572248008:
      DESC       Begin of daytime stage 3
      TIME       2019-10-28 08:33:28
      TYPE       daytimeStage
      VALUE      3
    1572251340:
      DESC       Begin of daytime stage 4
      TIME       2019-10-28 09:29:00
      TYPE       daytimeStage
      VALUE      4
    1572254672:
      DESC       Begin of daytime stage 5
      TIME       2019-10-28 10:24:32
      TYPE       daytimeStage
      VALUE      5
    1572258003:
      DESC       Begin of daytime stage 6
      TIME       2019-10-28 11:20:03
      TYPE       daytimeStage
      VALUE      6
    1572261335:
      DESC       Begin of daytime stage 7
      TIME       2019-10-28 12:15:35
      TYPE       daytimeStage
      VALUE      7
    1572264667:
      DESC       Begin of daytime stage 8
      TIME       2019-10-28 13:11:07
      TYPE       daytimeStage
      VALUE      8
    1572267998:
      DESC       Begin of daytime stage 9
      TIME       2019-10-28 14:06:38
      TYPE       daytimeStage
      VALUE      9
    1572271330:
      DESC       Begin of daytime stage 10
      TIME       2019-10-28 15:02:10
      TYPE       daytimeStage
      VALUE      10
    1572274662:
      DESC       Begin of daytime stage 11
      TIME       2019-10-28 15:57:42
      TYPE       daytimeStage
      VALUE      11
    1572277993:
      DESC       Begin of daytime stage 12
      TIME       2019-10-28 16:53:13
      TYPE       daytimeStage
      VALUE      12
    1572281325:
      DESC       End of daytime
      TIME       2019-10-28 17:48:45
      TYPE       daytime
      VALUE      midevening
    1572303600.01321:
      DESC       End of calendar day and begin night time, holiday: 0
      TIME       2019-10-28 24:00:00
      TYPE       dayshift

Loredo

Viele der Kalendar relevanten Infos sind in das DaySchedule Modul gewandert und werden über Kurz oder Lang aus HOMESTATE verschwinden.
DaySchedule ist aber noch nicht released, ich kann nicht sagen, wann das sein wird.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

Phiolin

Ja, habe ich mir schon gedacht.
Habe mir das DaySchedule Modul aus dem entsprechenden Thema auch bereits installiert und bis auf ein paar Kleinigkeiten (siehe Kommentar zu recomputeAt im anderen Thema), funktioniert das aktuell wohl schon ganz gut.

Phiolin

Hierzu aber noch eine Anmerkung.
Im Juli gab es in UConv.pm eine größere Aufräumarbeit als Vorbereitung zum Aufräumen von HOMESTATEtk.

Aus meiner Sicht hätte das niemals eingecheckt werden dürfen. Damit wurden viele Funktionen in HOMESTATE quasi geschrottet, ohne die User ausreichend darauf hinzuweisen. Zumindest habe ich nirgendwo gelesen, dass man HOMESTATE jetzt besser nicht mehr benutzen sollte. Immerhin ist es noch Teil des offiziellen Repositories.
Ich hab jetzt sicherlich 3 Stunden mit dem Quellcode verbracht, um herauszufinden wo plötzlich die ganzen Probleme herkommen und nur durch Zufall jetzt gesehen, dass es durch das Update von UConv.pm im Juli passiert ist, nachdem ich mich vorher ewig gefragt habe, wo wohl die Jahreszeiten-Berechnung im Code versteckt ist... Klarer Fall: Seit dem Juli-Update ist diese Berechnung im Code nicht mehr enthalten.
Also wenn schon Änderungen eingecheckt werden, dann doch bitte "komplett" und nicht die eine Datei aufgeräumt und die andere nicht... das verursacht allerlei Inkonsistenzen die wie in meinem Fall nicht unbedingt sofort sichtbar sind. >:(

Immerhin handelt es sich hier um Module im "offiziellen" Repository. Da sollte man schon erwarten können, dass genau sowas nicht passiert.
Ich habe mir jetzt die UConv.pm aus Revision 19757 wiederhergestellt und natürlich funktioniert jetzt alles wieder. Das hätte man allerdings auch einfacher haben können.

Loredo

HOMESTATE ist kein offizielles Modul, es befand/befindet sich im Entwicklungsstadium und ist bisher nie für den produktiven Einsatz vorgesehen gewesen, sondern zum ausprobieren und Feedback geben. Man konnte HOMESTATE bisher nie ohne das herunterladen einer Datei hier aus dem Forum in Betrieb nehmen. Dass Bibliotheken in FHEM genutzt werden und diese Änderungen unterlegen, ist zweitrangig, denn die offiziellen Module aus dem Repository sind entsprechend gepflegt.
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

Phiolin

Stimmt, du hast recht. Das Homestate nicht offiziell war ist mir entgangen, sorry.

Ein Hinweis auf die UConv Änderungen hier im Thema wäre aber trotzdem schön gewesen. Selbst wenn man den nicht sofort gesehen hätte, schaue ich meistens vor der Fehlersuche ins Forum und dann wäre es zumindest aufgefallen.

kjmEjfu

Gibt es hier eigentlich zufällig etwas neues? Bin gerade bei mir einiges am Umbauen und fände sowas wie echte Räume (sprich mit Eigenschaften und nicht als Filterfunktion) sehr praktisch und eventuell könnte das 02_ROOMSTATE in die Richtung gehen. Bevor ich mir da jetzt was selber zusammenbastele, ...  ;)
Migriere derzeit zu Home Assistant

Loredo

Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER