Neues Modul YAAHM - Yet Another Auto Home Module

Begonnen von Prof. Dr. Peter Henning, 09 August 2017, 08:01:55

Vorheriges Thema - Nächstes Thema

Prof. Dr. Peter Henning

Natürlich. Ich würde erstens diesen Wert gar nicht übergeben, sondern in der Prozedur selbst erzeugen. Und zweitens kann man in den bei YAAHM eingetragenen Kommandos natürlich einen ReadingsVal oder einen weiteren Perl-Aufruf statt des festen Wertes eintragen.

LG

pah

ripper

Zitat von: Prof. Dr. Peter Henning am 18 Februar 2018, 13:03:14
Ich würde erstens diesen Wert gar nicht übergeben, sondern in der Prozedur selbst erzeugen.

Dann schau ich mir mal an wie das funktioniert

Danke für die schnelle Antwort.

Gruß
Flo

tpm88

Hallo pah,

zwei kurze Fragen zu YAAHM:

- was für eine Funktion hat das Kommando set <name> checkstate ? (habe ich weder im Wiki noch in der CommandRef gefunden)
- sind die Attribute event-on-[change|update]-reading geplant?

Mein Logfile füllt sich minütlich:


...
2018-02-18_20:15:58 myHA sec_housestate: secure
2018-02-18_20:16:58 myHA sec_housestate: secure
2018-02-18_20:17:58 myHA sec_housestate: secure
2018-02-18_20:18:58 myHA sec_housestate: secure
2018-02-18_20:19:58 myHA sec_housestate: secure
...


Gruß,
Tobias
Test FHEM Server on RPi, CUL_HM
Prod FHEM Server on Odroid HC1, HM-USB, JeeLink
Devices: diverse HM, IT1500, 1wire, LaCrosse, MQTT

Prof. Dr. Peter Henning

Stimmt nicht - checkstate und das neue correctstate sind in der CommandRef beschrieben, im Wiki muss ich das noch nachziehen. Und nein, ich habe keine Ahnung, warum das im Log auftaucht.

Die automatisch ablaufende Prozedur YAAHM_checkstate() überprüft in einstellbaren Intervallen (Attribute stateInterval), ob tatsächlich alle stateDevices im richtigen Zustand sind. Wenn ja, wird das Attribut sec_housestate auf "secure" gesetzt, sonst auf "insecure". Wenn ein Device nicht im richtigen Zustand ist, wird die Perl-Funktion aufgerufen, die im Attribut stateWarning festgelegt ist.

Der Befehl set <name> checkstate ruft entweder sofort, oder mit einer Verzögerung von 5 oder 10 Sekunden auch diese Prüfung auf.

Der Befehl set <name> correctstate versucht, einen als "insecure" erkannten housestate zu korrigieren:

Beispiel für die Anwendung: Die beiden Türen "Hoftuer" und "Haustuer" sind als stateDevices definiert, sie müssen im housestate "secured" = "Gesichert" auf "locked" stehen. Irgendjemand hat aber die Haustür aufgesperrt und nicht wieder verschlossen. Dann wird bei der Überprüfung durch checkstate festgestellt, dass dies nicht stimmt, und eine Warnung ausgegeben. Oder direkt correctstate aufgerufen, das set dann einen Befehl "set Haustuer locked" ab.

Allerdings ist in der Version 1.48 (gestern eingecheckt) ein fehler drin, der Defaultwert für stateInterval soll nämlich 60 Minuten sein, nicht 60 Sekunden.

Ändere ich umgehend.

LG

pah

LordVoodoo

Hallo,

ich mag das Modul und nutze die Tagesplabung für Rollos.

Der Wochenplan will mir jedoch nicht gelingen.

Ich habe bei Aktionen
set Service.DeutscheBahn.NeckarsulmHbf.HeilbronnHbf off eingesetzt, ein Befehl der kn der FHEM-Zeile funktioniert.

Der Wochenplan ist aktiv, das generische DOIF sieht gut aus:

([Service.YAAHM:ring_3] eq "off")
()
DOELSEIF
(([[Service.YAAHM:ring_3]])
and ([Service.YAAHM:housemode] =~ "(normal)")
and ([Service.YAAHM:todayType] =~ "(workday)|(weekend)"))
(set Service.DeutscheBahn.NeckarsulmHbf.HeilbronnHbf off)


Aber irgendwie Wilkes nicht schalten, auch im Event Monitor kommt kein Ereignis an.

Sieht jemand meinen Fehler?

MaMi7880

Hallo,

erst mal vielen Dank für das tolle Modul. Zusammen mit den Calendar-Modulen und entsprechenden Funktionen in den "Helpern" hat es schon weitgehend meine bisherigen Funktionen ersetzt.
Seit einiger Zeit, leider kann ich nicht mehr genau sagen seit wann genau, erhalte  ich folgende Meldungen im Log.
Scheinbar nicht weiter problematisch... Ich gehe auch davon aus, dass es was mit der Konfiguration meines Raspi-Pis zu tun hat, diesen musste ich vor einiger Zeit neu aufsetzten.



[Wed Apr 11 17:55:51 2018] fhem.pl: Subroutine YAAHM_restore redefined at ./FHEM/95_YAAHM.pm line 973, <$fh> line 4072.
[Wed Apr 11 17:55:51 2018] fhem.pl: Subroutine YAAHM_setWeeklyTime redefined at ./FHEM/95_YAAHM.pm line 1755, <$fh> line 4072.
2018.04.11 17:55:51 1: [YAAHM_Define] data hash restored from save file with date 2018-03-27 11:09:04
2018.04.11 17:55:51 1: [YAAHM] finds 1 Astro devices, module not loaded separately
2018.04.11 17:55:51 1: Including /media/usb0/log/fhem.save
[Wed Apr 11 17:55:52 2018] fhem.pl: Use of uninitialized value $n in hash element at fhem.pl line 4217.
[Wed Apr 11 17:55:52 2018] fhem.pl: Use of uninitialized value $n in hash element at fhem.pl line 4217.
[Wed Apr 11 17:55:52 2018] fhem.pl: Use of uninitialized value $n in hash element at fhem.pl line 4217.
[Wed Apr 11 17:55:52 2018] fhem.pl: Use of uninitialized value $n in hash element at fhem.pl line 4217.
[Wed Apr 11 17:55:52 2018] fhem.pl: Use of uninitialized value $n in hash element at fhem.pl line 4217.
[Wed Apr 11 17:55:52 2018] fhem.pl: Use of uninitialized value $n in hash element at fhem.pl line 4217.
[Wed Apr 11 17:55:52 2018] fhem.pl: Use of uninitialized value $n in hash element at fhem.pl line 4217.
[Wed Apr 11 17:55:52 2018] fhem.pl: Use of uninitialized value $n in hash element at fhem.pl line 4217.
[Wed Apr 11 17:55:52 2018] fhem.pl: Use of uninitialized value $n in hash element at fhem.pl line 4217.
[Wed Apr 11 17:55:52 2018] fhem.pl: Use of uninitialized value $n in hash element at fhem.pl line 4217.
[Wed Apr 11 17:55:52 2018] fhem.pl: Use of uninitialized value $n in hash element at fhem.pl line 4217.
[Wed Apr 11 17:55:52 2018] fhem.pl: Use of uninitialized value $n in hash element at fhem.pl line 4217.
[Wed Apr 11 17:55:52 2018] fhem.pl: Use of uninitialized value $n in hash element at fhem.pl line 4217.
[Wed Apr 11 17:55:52 2018] fhem.pl: Use of uninitialized value $n in hash element at fhem.pl line 4217.
[Wed Apr 11 17:55:52 2018] fhem.pl: Use of uninitialized value $n in hash element at fhem.pl line 4217.
2018.04.11 17:55:59 0: Featurelevel: 5.8
2018.04.11 17:55:59 0: Server started with 387 defined entities (fhem.pl:16569/2018-04-08 perl:5.024001 os:linux user:fhem pid:2713)
2018.04.11 17:56:03 1: [YAAHM_updater] on device myYAAHM called for this day
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
[Wed Apr 11 17:56:03 2018] fhem.pl: Use of uninitialized value in string comparison (cmp) at ./FHEM/95_YAAHM.pm line 266.
.
.
.
.
.
2018.04.11 17:56:09 0: NTFY_SERVER_STARTED
[Wed Apr 11 17:59:22 2018] fhem.pl: Use of uninitialized value in concatenation (.) or string at ./FHEM/95_YAAHM.pm line 3316.
[Wed Apr 11 17:59:22 2018] fhem.pl: Use of uninitialized value in concatenation (.) or string at ./FHEM/95_YAAHM.pm line 3316.
[Wed Apr 11 17:59:23 2018] fhem.pl: Use of uninitialized value in concatenation (.) or string at ./FHEM/95_YAAHM.pm line 3316.
[Wed Apr 11 17:59:23 2018] fhem.pl: Use of uninitialized value in concatenation (.) or string at ./FHEM/95_YAAHM.pm line 3316.


Die Meldungen kommen neben einen Neustart mal mehr oder weniger auch über den Tag verteilt vor.

Bis dahin, wenn noch weitere Informationen benötigt werden einfach melden.

Beste Grüße
Ma.

RaspberryPi 3 mit nanoCUL & JeeLink | FHEM 6.0 mit IT, HM  - Sensoren/Aktoren & Lacrosse Temp./Humi. | Shelly | Amazon Echo | Logitech Harmony Hub | Philips HUE | andFHEM

Prof. Dr. Peter Henning

Ich tippe auf eine YAAHFile-Datei mit Macken. Leider bin ich erstens noch nicht dazu gekommen, und habe zweitens auch noch keine ganz clevere Idee, wie man solche Macken abstellen kann.

Vorschlag: Backup von YAAHMFile, und dann ein neues "save" im YAAHM_Device machen.

LG

pah

MaMi7880

Zitat von: Prof. Dr. Peter Henning am 12 April 2018, 17:36:56
Ich tippe auf eine YAAHFile-Datei mit Macken. Leider bin ich erstens noch nicht dazu gekommen, und habe zweitens auch noch keine ganz clevere Idee, wie man solche Macken abstellen kann.

Vorschlag: Backup von YAAHMFile, und dann ein neues "save" im YAAHM_Device machen.

LG

pah

Das war es.
Wenn man es weiß kann man es ja mit einem neuen "save" abstellen, und es scheint ja auch nur in Ausnahmefällen vorzukommen.

Vielen lieben Dank

Gruß
Ma.
RaspberryPi 3 mit nanoCUL & JeeLink | FHEM 6.0 mit IT, HM  - Sensoren/Aktoren & Lacrosse Temp./Humi. | Shelly | Amazon Echo | Logitech Harmony Hub | Philips HUE | andFHEM

tpm88

Hallo pah,

habe bemerkt, daß mein YAAHM Device trotz gepflegten Kalenders für Feiertage heute den Tagestyp Arbeitstag statt korrekt Feiertag ( Christi Himmelfahrt ) ermittelt hat.

Hier ein Auszug aus dem YAAHM Log:

2018-03-19_00:00:33 myHA tr_todayType: Arbeitstag
2018-03-24_00:00:33 myHA tr_todayType: Wochenende
2018-03-26_00:00:33 myHA tr_todayType: Ferientag
2018-03-31_00:00:33 myHA tr_todayType: Wochenende
2018-04-02_00:00:33 myHA tr_todayType: Ferientag
2018-04-04_12:41:50 myHA tr_todayType: Arbeitstag
2018-04-07_00:00:33 myHA tr_todayType: Wochenende
2018-04-09_00:00:33 myHA tr_todayType: Arbeitstag
2018-04-14_00:00:33 myHA tr_todayType: Wochenende
2018-04-16_00:00:34 myHA tr_todayType: Arbeitstag
2018-04-21_00:00:33 myHA tr_todayType: Wochenende
2018-04-23_00:00:33 myHA tr_todayType: Arbeitstag
2018-04-28_00:00:33 myHA tr_todayType: Wochenende
2018-04-30_00:00:33 myHA tr_todayType: Arbeitstag
2018-05-05_00:00:34 myHA tr_todayType: Wochenende
2018-05-07_00:00:33 myHA tr_todayType: Arbeitstag


Bis auf Feiertage wird der Tagestyp also stets korrekt ermittelt.

List des Feiertage Kalenders von heute ( Christi Himmelfahrt ):

list Feiertage

Internals:
   DEF        ical file feiertage_BY.ics 86400
   NAME       Feiertage
   NOTIFYDEV  global
   NR         109
   NTFY_ORDER 50-Feiertage
   STATE      triggered
   TYPE       Calendar
   READINGS:
     2018-05-10 23:06:47   lastUpdate      2018-05-10 23:06:47
     2017-07-21 14:47:31   modeAlarm       
     2018-05-10 00:00:00   modeAlarmOrStart ChristiHimmelfahrt20180510schulferieneu
     2017-07-21 14:47:31   modeAlarmed     
     2018-05-10 03:17:49   modeChanged     
     2018-05-10 23:06:47   modeEnd         TagderArbeit20180501schulferieneu;Ostermontag20180402schulferieneu;HeiligeDreiKoenige20180106schulferieneu;Karfreitag20180330schulferieneu;Neujahr20180101schulferieneu;Ostersonntag20180401schulferieneu
     2018-05-02 03:18:43   modeEnded       
     2018-05-10 00:00:00   modeStart       ChristiHimmelfahrt20180510schulferieneu
     2018-05-10 03:17:49   modeStarted     
     2018-05-10 23:06:47   modeUpcoming    Pfingstsonntag20180520schulferieneu;TagderdeutschenEinheit20181003schulferieneu;SilvesterBankfeiertag20181231schulferieneu;Pfingstmontag20180521schulferieneu;Allerheiligen20181101schulferieneu;Fronleichnam20180531schulferieneu;MariaeHimmelfahrt20180815schulferieneu;1Weihnachtsfeiertag20181225schulferieneu;HeiligerAbendBankfeiertag20181224schulferieneu;2Weihnachtsfeiertag20181226schulferieneu
     2018-05-10 23:06:47   nextUpdate      2018-05-11 23:06:47
     2018-05-10 23:06:47   nextWakeup      2018-05-11 00:00:00
     2018-05-10 23:06:47   state           triggered
Attributes:
   room       Kontrollraum


Und hier noch der List des YAAHM:

list myHA

Internals:
   NAME       myHA
   NOTIFYDEV  global,myHA
   NR         132
   STATE      Initialized
   TYPE       YAAHM
   VERSION    1.50
   DATA:
     savedate   35
     DD:
       HASH(0x37cc5d0)
       HASH(0x37cc258)
     DT:
       aftermidnight:
         00:01
         00:01
         undef
         undef
       afternoon:
         14:00
         undef
         undef
         undef
       aftersunrise:
         06:41
         01:00
         undef
         undef
       aftersunset:
         21:39
         01:00
         undef
         undef
       beforemidnight:
         23:55
         00:05
         undef
         undef
       beforesunrise:
         04:41
         01:00
         undef
         undef
       beforesunset:
         19:39
         01:00
         undef
         undef
       evening:
         18:30
         undef
         undef
         undef
       morning:
         08:00
         undef
         undef
         undef
       night:
         22:00
         undef
         undef
         undef
       noon:
         13:00
         undef
         undef
         undef
       sleep:
         22:30
         undef
         undef
         undef
       sunrise:
         05:41
         undef
         undef
         undef
       sunset:
         20:39
         undef
         undef
         undef
       wakeup:
         06:15
         undef
         undef
         undef
     HSM:
       mode       normal
       state      secured
       time       sleep
     WT:
       HASH(0x37e2420)
       HASH(0x37cb428)
       HASH(0x37e1778)
       HASH(0x37dd6c0)
       HASH(0x37e16b8)
   READINGS:
     2017-10-29 12:47:52   housemode       normal
     2018-05-10 22:30:00   housephase      nighttime
     2018-05-10 22:30:00   housestate      secured
     2018-05-10 22:30:00   housetime       sleep
     2017-10-29 12:10:31   lockstate       0
     2018-05-10 23:11:52   next_0         
     2018-05-10 23:11:52   next_1         
     2018-05-10 23:11:52   next_2         
     2018-05-10 23:11:52   next_3         
     2018-05-10 23:11:52   next_4         
     2018-05-10 22:30:00   next_housetime  morning
     2017-10-29 12:47:52   prev_housemode  absence
     2018-05-10 22:30:00   prev_housestate unsecured
     2018-05-10 22:30:00   prev_housetime  wakeup
     2018-05-10 23:11:52   ring_0          06:15
     2018-05-10 23:11:52   ring_0_1        06:15
     2018-05-10 23:11:52   ring_0_1x       06:15
     2018-05-10 23:11:52   ring_0x         06:15
     2018-05-10 23:11:52   ring_1          22:30
     2018-05-10 23:11:52   ring_1_1        23:00
     2018-05-10 23:11:52   ring_1_1x       23:00
     2018-05-10 23:11:52   ring_1x         22:30
     2018-05-10 23:11:52   ring_2          07:15
     2018-05-10 23:11:52   ring_2_1        07:15
     2018-05-10 23:11:52   ring_2_1x       07:15
     2018-05-10 23:11:52   ring_2x         07:15
     2018-05-10 23:11:52   ring_3          07:30
     2018-05-10 23:11:52   ring_3_1        07:30
     2018-05-10 23:11:52   ring_3_1x       07:30
     2018-05-10 23:11:52   ring_3x         07:30
     2018-05-10 23:11:52   ring_4          07:30
     2018-05-10 23:11:52   ring_4_1        08:30
     2018-05-10 23:11:52   ring_4_1x       08:30
     2018-05-10 23:11:52   ring_4x         07:30
     2018-05-10 23:11:52   s_aftermidnight 00:01
     2018-05-10 23:11:52   s_afternoon     14:00
     2018-05-10 23:11:52   s_aftersunrise  06:41
     2018-05-10 23:11:52   s_aftersunset   21:39
     2018-05-10 23:11:52   s_beforemidnight 23:55
     2018-05-10 23:11:52   s_beforesunrise 04:41
     2018-05-10 23:11:52   s_beforesunset  19:39
     2018-05-10 23:11:52   s_evening       18:30
     2018-05-10 23:11:52   s_morning       08:00
     2018-05-10 23:11:52   s_night         22:00
     2018-05-10 23:11:52   s_noon          13:00
     2018-05-10 23:11:52   s_sleep         22:30
     2018-05-10 23:11:52   s_sunrise       05:41
     2018-05-10 23:11:52   s_sunset        20:39
     2018-05-10 23:11:52   s_wakeup        06:15
     2018-05-10 03:17:40   savedate        35
     2018-05-10 23:30:30   sdev_housestate <html><table><tr><td style="text-align:left;padding:5px">door_SC</td><td style="text-align:left;padding:5px"><div style="color:green">OK</div></td><td></td></tr></table></html>
     2018-05-10 23:30:30   sec_housestate  secure
     2018-05-10 03:17:40   state           Initialized
     2018-05-10 23:30:30   sym_housestate  <html><div style="color:green">✓</div></html>
     2017-10-30 00:00:33   t_aftermidnight 00:01
     2017-10-30 00:00:33   t_aftersunrise  01:00
     2017-10-30 00:00:33   t_aftersunset   01:00
     2017-10-30 00:00:33   t_beforemidnight 00:05
     2017-10-30 00:00:33   t_beforesunrise 01:00
     2017-10-30 00:00:33   t_beforesunset  01:00
     2018-04-04 12:41:50   todayDesc       --
     2018-05-07 00:00:33   todayType       workday
     2018-05-10 23:11:52   today_0         06:15
     2018-05-10 23:11:52   today_0_e       enabled
     2018-05-10 23:11:52   today_1         22:30
     2018-05-10 23:11:52   today_1_e       enabled
     2018-05-10 23:11:52   today_2         07:15
     2018-05-10 23:11:52   today_2_e       enabled
     2018-05-10 23:11:52   today_3         07:30
     2018-05-10 23:11:52   today_3_e       enabled
     2018-05-10 23:11:52   today_4         07:30
     2018-05-10 23:11:52   today_4_e       enabled
     2018-04-04 12:41:50   tomorrowDesc    --
     2018-05-06 00:00:33   tomorrowType    workday
     2018-05-10 23:11:52   tomorrow_0      06:15
     2018-05-10 23:11:52   tomorrow_0_e    enabled
     2018-05-10 23:11:52   tomorrow_1      23:00
     2018-05-10 23:11:52   tomorrow_1_e    enabled
     2018-05-10 23:11:52   tomorrow_2      07:15
     2018-05-10 23:11:52   tomorrow_2_e    enabled
     2018-05-10 23:11:52   tomorrow_3      07:30
     2018-05-10 23:11:52   tomorrow_3_e    enabled
     2018-05-10 23:11:52   tomorrow_4      08:30
     2018-05-10 23:11:52   tomorrow_4_e    enabled
     2018-05-10 22:30:00   tr_errmsg       
     2017-10-29 12:47:52   tr_housemode    Normal
     2018-05-10 22:30:00   tr_housephase   Nachtzeit
     2018-05-10 22:30:00   tr_housestate   Gesichert
     2018-05-10 22:30:00   tr_housetime    Schlafen
     2018-05-07 00:00:33   tr_todayType    Arbeitstag
     2018-05-06 00:00:33   tr_tomorrowType Arbeitstag
     2018-05-10 23:11:52   tr_wake_0       6:15 morgen
     2018-05-10 23:11:52   tr_wake_1       23:00 morgen
     2018-05-10 23:11:52   tr_wake_2       7:15 morgen
     2018-05-10 23:11:52   tr_wake_3       7:30 morgen
     2018-05-10 23:11:52   tr_wake_4       8:30 morgen
   TIMER:
     myHA_aftermidnight:
       HASH       myHA
       MODIFIER   aftermidnight
       NAME       myHA_aftermidnight
     myHA_check:
       HASH       myHA
       MODIFIER   check
       NAME       myHA_check
Attributes:
   holidayDevices Feiertage
   room       ProfileRoom
   stateAuto  1
   stateDevices door_SC::closed:closed:closed
   vacationDevices Ferien   


Gruß
Tobias
Test FHEM Server on RPi, CUL_HM
Prod FHEM Server on Odroid HC1, HM-USB, JeeLink
Devices: diverse HM, IT1500, 1wire, LaCrosse, MQTT

Prof. Dr. Peter Henning

Soll ich das zwischen 23:49 Uhr und Mitternacht überprüfen ?

Witzbold

LG

pah

tpm88

Zitat von: Prof. Dr. Peter Henning am 11 Mai 2018, 07:29:56
Soll ich das zwischen 23:49 Uhr und Mitternacht überprüfen ?

Natürlich nicht. Ich erwarte gar keinen adhoc-Support, schon gar nicht am Feiertag...

Eine Idee, um das Problem einzugrenzen, wäre schön. Demnächst kommt mit dem Pfingstmontag ja wieder eine Möglichkeit zum Testen.

Laut Log oben war das gestern kein Einzelfall. Auch die Osterfeiertage wurden nicht erkannt sondern als Ferientag deklariert, obwohl Feiertag laut Wiki die höchste Priorität haben soll.

Das Feiertage Calendar Device hat um Punkt 00:00 den Status "ChristiHimmelfahrt..." gesetzt.

2018-05-10 00:00:00   modeAlarmOrStart ChristiHimmelfahrt20180510schulferieneu
     2017-07-21 14:47:31   modeAlarmed     
     2018-05-10 03:17:49   modeChanged     
     2018-05-10 23:06:47   modeEnd         TagderArbeit20180501schulferieneu;Ostermontag20180402schulferieneu;HeiligeDreiKoenige20180106schulferieneu;Karfreitag20180330schulferieneu;Neujahr20180101schulferieneu;Ostersonntag20180401schulferieneu
     2018-05-02 03:18:43   modeEnded       
     2018-05-10 00:00:00   modeStart       ChristiHimmelfahrt20180510schulferieneu


YAAHM ermittelt den tr_todayType doch erst etwa 30 Sekunden später.

Noch etwas. Auf dem gleichen System habe ich u.a. noch die "alte" Routine  getDayStatus() von https://forum.fhem.de/index.php/topic,36244.msg299631.html#msg299631 im Einsatz. Diese arbeitet auf dem gleichen Feiertage Kalender hat gestern den Tagestyp korrekt auf "Feiertag" gestellt.

Gruß
Tobias
Test FHEM Server on RPi, CUL_HM
Prod FHEM Server on Odroid HC1, HM-USB, JeeLink
Devices: diverse HM, IT1500, 1wire, LaCrosse, MQTT

Prof. Dr. Peter Henning

Problem gelöst - wie schon mehrfach eines von strftime, in diesem Falle einfach der Unterschied zwischen "18" und "2018". Ist eingecheckt.

LG

pah

ChrisKoh

#177
Hallo zusammen,

Ich habe mich heute daran gemacht dieses Modul zu installieren und einzurichten.

Vielen Dank für die Bereitstellung!

Ich möchte damit meine Rollo Steuerung und Kameraüberwachung bei Abwesenheit usw. realisieren.

Ich würde gerne auch die HouseTimeHelper sub Module nutzen und habe mir mit get YYY Template die Beispiele anzeigen lassen.

Nun scheine ich Tomaten auf den Augen zu haben, denn ich weiß nicht genau wo ich diese definieren soll.
Ich hatte diese in 99_myUtils.pm gesetzt aber da scheint es nicht richtig zu sein denn im Log-File ist zur entsprechende auslösezeit ein Fehler zu lesen der sub Routine nicht findet.


Internals:
   NAME       YYY
   NOTIFYDEV  global,YYY
   NR         22
   STATE      Initialized
   TYPE       YAAHM
   VERSION    1.54
   DATA:
     savedate   2018-05-18 15:43:43
     DD:
       HASH(0x2ba4be0)
       HASH(0x2ba4d60)
       HASH(0x2de5998)
     DT:
       aftermidnight:
         00:01
         00:01
         {HouseTimeHelper('aftermidnight')}
         ;
       afternoon:
         14:00
         undef
         {HouseTimeHelper('afternoon')}
         ;
       aftersunrise:
         06:38
         01:00
         {HouseTimeHelper('aftersunrise')}
         ;
       aftersunset:
         22:01
         01:00
         {HouseTimeHelper('aftersunset')}
         ;
       beforemidnight:
         23:55
         00:05
         {HouseTimeHelper('beforemidnight')}
         ;
       beforesunrise:
         04:38
         01:00
         {HouseTimeHelper('beforesunrise')}
         ;
       beforesunset:
         20:01
         01:00
         {HouseTimeHelper('beforesunset')}
         ;
       evening:
         18:30
         undef
         {HouseTimeHelper('evening')}
         ;
       morning:
         08:00
         undef
         {HouseTimeHelper('morning')}
         ;
       night:
         22:00
         undef
         {HouseTimeHelper('night')}
         ;
       noon:
         13:00
         undef
         {HouseTimeHelper('noon')}
         ;
       sleep:
         22:30
         undef
         undef
         undef
       sunrise:
         05:38
         undef
         {HouseTimeHelper('sunrise')}
         ;
       sunset:
         21:01
         undef
         {HouseTimeHelper('sunset')}
         ;
       wakeup:
         06:15
         undef
         undef
         undef
     HSM:
       mode       normal
       state      unsecured
       time       afternoon
     WT:
       HASH(0x2ba4bb0)
       HASH(0x2ba4b98)
   OLDREADINGS:
   READINGS:
     2018-05-18 15:43:24   housemode       normal
     2018-05-18 15:43:42   housephase      daytime
     2018-05-18 15:43:13   housestate      unsecured
     2018-05-18 15:37:00   housetime       afternoon
     2018-05-17 22:50:10   lockstate       0
     2018-05-18 15:37:00   next_housetime  afternoon
     2018-05-18 15:43:24   prev_housemode  party
     2018-05-18 15:43:13   prev_housestate unsecured
     2018-05-18 15:37:00   prev_housetime 
     2018-05-18 15:43:46   ring_0          06:15
     2018-05-18 15:43:46   ring_0_1        off
     2018-05-18 15:43:46   ring_0_1x       off
     2018-05-18 15:43:46   ring_0x         06:15
     2018-05-18 15:43:46   ring_1          23:00
     2018-05-18 15:43:46   ring_1_1        23:00
     2018-05-18 15:43:46   ring_1_1x       23:00
     2018-05-18 15:43:46   ring_1x         23:00
     2018-05-18 15:43:46   s_aftermidnight 00:01
     2018-05-18 15:43:46   s_afternoon     14:00
     2018-05-18 15:43:46   s_aftersunrise  06:38
     2018-05-18 15:43:46   s_aftersunset   22:01
     2018-05-18 15:43:46   s_beforemidnight 23:55
     2018-05-18 15:43:46   s_beforesunrise 04:38
     2018-05-18 15:43:46   s_beforesunset  20:01
     2018-05-18 15:43:46   s_evening       18:30
     2018-05-18 15:43:46   s_morning       08:00
     2018-05-18 15:43:46   s_night         22:00
     2018-05-18 15:43:46   s_noon          13:00
     2018-05-18 15:43:46   s_sleep         22:30
     2018-05-18 15:43:46   s_sunrise       05:38
     2018-05-18 15:43:46   s_sunset        21:01
     2018-05-18 15:43:46   s_wakeup        06:15
     2018-05-18 15:43:43   savedate        2018-05-18 15:43:43
     2018-05-18 09:11:09   state           Initialized
     2018-05-18 15:43:46   t_aftermidnight 00:01
     2018-05-18 15:43:46   t_aftersunrise  01:00
     2018-05-18 15:43:46   t_aftersunset   01:00
     2018-05-18 15:43:46   t_beforemidnight 00:05
     2018-05-18 15:43:46   t_beforesunrise 01:00
     2018-05-18 15:43:46   t_beforesunset  01:00
     2018-05-17 22:47:44   todayDesc       --
     2018-05-17 22:47:44   todayType       workday
     2018-05-18 15:43:46   today_0         06:15
     2018-05-18 15:43:46   today_0_e       enabled
     2018-05-18 15:43:46   today_1         23:00
     2018-05-18 15:43:46   today_1_e       enabled
     2018-05-17 22:47:44   tomorrowDesc    --
     2018-05-18 00:00:33   tomorrowType    weekend
     2018-05-18 15:43:46   tomorrow_0      off
     2018-05-18 15:43:46   tomorrow_0_e    enabled
     2018-05-18 15:43:46   tomorrow_1      23:00
     2018-05-18 15:43:46   tomorrow_1_e    enabled
     2018-05-18 15:43:24   tr_errmsg       
     2018-05-18 15:43:24   tr_housemode    Normal
     2018-05-18 15:43:42   tr_housephase   Daytime
     2018-05-18 15:43:13   tr_housestate   Not Secured
     2018-05-18 15:37:00   tr_housetime    Afternoon
     2018-05-17 22:47:44   tr_todayType    Workday
     2018-05-18 00:00:33   tr_tomorrowType Weekend
     2018-05-17 22:47:44   tr_twodaysType  Weekend
     2018-05-18 15:43:46   tr_wake_0       off tomorrow
     2018-05-18 15:43:46   tr_wake_1       23:00 today
     2018-05-17 22:47:44   twodaysDesc     --
     2018-05-18 00:00:33   twodaysType     weekend
   TIMER:
     YYY_aftermidnight:
       HASH       YYY
       MODIFIER   aftermidnight
       NAME       YYY_aftermidnight
     YYY_check:
       HASH       YYY
       MODIFIER   check
       NAME       YYY_check
     YYY_daytime:
       HASH       YYY
       MODIFIER   daytime
       NAME       YYY_daytime
     YYY_nighttime:
       HASH       YYY
       MODIFIER   nighttime
       NAME       YYY_nighttime
Attributes:
   room       00_Wohnung
   timeHelper HouseTimeHelper



2018.05.13 19:55:00 1: ERROR evaluating {HouseTimeHelper('sunset')}: Undefined subroutine &main::HouseTimeHelper called at (eval 2895975) line 1.2018.05.13 19:55:00 2: YYY.dtimer.IF: {HouseTimeHelper('sunset')}: Undefined subroutine &main::HouseTimeHelper called at (eval 2895975) line 1.




ODROID H2 + Docker: Portainer; FHEM; HomeBridge; Node-RED; Nextcloud; PiHole; MQTT.
FS20; HM; ZigBee; Z-Wave

ChrisKoh

#178
Zitat von: Prof. Dr. Peter Henning am 11 August 2017, 19:58:33
In die eigene 99_myUtils (o.ä) kopieren und dort anpassen.

Ja.

LG

pah

Ok habe es doch gefunden... jetzt muss ich nur noch herausfinden warum der Fehler im Logfile kommt...

UPDATE: Warum auch immer, aber jetzt gehts :)

Jetzt kommen nur noch diverse Meldungen im Logfile:

2018.05.20 21:21:19 1: PERL WARNING: Use of uninitialized value $check in substitution (s///) at ./FHEM/95_YAAHM.pm line 1605.
2018.05.20 21:21:19 3: eval: {main::YAAHM_startDayTimer("YYY")}
2018.05.20 21:21:19 1: PERL WARNING: Use of uninitialized value $check in numeric le (<=) at ./FHEM/95_YAAHM.pm line 1606.
ODROID H2 + Docker: Portainer; FHEM; HomeBridge; Node-RED; Nextcloud; PiHole; MQTT.
FS20; HM; ZigBee; Z-Wave

ChrisKoh

#179
Jetzt muss ich mich leider noch mal melden.

Ich habe leider ab und zu das Problem das YAAHM nicht ausgeführt wird, bzw. meine Aktionen die ich in den HelperModulen eingetragen habe.

Ich vermute es hängt damit zusammen das nach einem Neustart von FHEM irgendetwas nicht korrekt läuft, denn ich bekomme immer die "speichern" Meldung mit diesen Einträgen (siehe Anhang)

Im Log ist nur zu sehen das ein ecxecuting stattfindet...
ODROID H2 + Docker: Portainer; FHEM; HomeBridge; Node-RED; Nextcloud; PiHole; MQTT.
FS20; HM; ZigBee; Z-Wave