Abfallkalender mittels Calendar - Nicht Termine des Tages, sondern des Folgetags

Begonnen von Bucky2k, 10 Mai 2018, 23:29:21

Vorheriges Thema - Nächstes Thema

Bucky2k

Hi,

seit langem läuft bei mir einwandfrei:


#Kalender
define Abfall.Kalender Calendar ical url http://calendar.google.com/calendar/ical/XXXXXXXXXXXXXXXXgroup.calendar.google.com/private-XXXXXXXXXXXXXXXXXXXXXXX/basic.ics 86400
attr Abfall.Kalender userReadings urRead {calendarActive}
define Abfall.Kalender.DI DOIF ([06:00] and [Abfall.Kalender:urRead] ne "")(set EIB_5400 string [Abfall.Kalender:urRead])
attr Abfall.Kalender.DI do always


Und zeigt mir morgens um 6.00 Uhr den an die Straße zu bringenden Müll auf allen MDT Smart KNX Tastern im Haus. Nun hätte ich die Info aber gern am Vortag um 18.00 Uhr gelesen. Könnt ihr mir sagen, wie der DOIF stattdessen aussehen müsste?

Gruß

Bucky

amenomade

Die Funktion calendarActive(vermutlich in deiner 99_myUtils) so ändern, dass sie die Termine vom nächsten Tag holt, und dann dein DOIF auf 18:00 statt 06:00 Uhr setzen.
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

binford6000

Hallo Bucky,
schau dir mal 57_ABFALL.pm an: https://wiki.fhem.de/wiki/ABFALL
Ganz unten sind auch Bsp. zu deinem gewünschten DOIF.  ;)
VG Sebastian

Bucky2k

Zitat von: amenomade am 11 Mai 2018, 00:30:47
Die Funktion calendarActive(vermutlich in deiner 99_myUtils) so ändern, dass sie die Termine vom nächsten Tag holt, und dann dein DOIF auf 18:00 statt 06:00 Uhr setzen.

Aktuell holt er die Summary des Tages ab:

sub calendarActive{

  my $text = fhem("get Abfall.Kalender summary mode=start");
  return $text if($text ne "");
}


Weißt du ad-hoc, wie die Abfrage für den Folgetag aussehen muss?


Zitat von: binford6000 am 11 Mai 2018, 08:38:54
Hallo Bucky,
schau dir mal 57_ABFALL.pm an: https://wiki.fhem.de/wiki/ABFALL
Ganz unten sind auch Bsp. zu deinem gewünschten DOIF.  ;)
VG Sebastian

Da müsste ich dann auf das Modul ABFALL wechseln - möglich, aber zweite Wahl


Bucky2k

Ich glaube ich hab es:

Alarme am Vortag für die Kalendereinträge erzeugen:

attr Abfall.Kalender onCreateEvent { $e->{alarm}= $e->{start}-86400 }

myUtils Eintrag von start zu alarm ändern:

sub calendarActive{

  my $text = fhem("get Abfall.Kalender summary mode=alarm");
  return $text if($text ne "");
}