roboteo: show tomorrow events after 17:00

This commit is contained in:
Thomas NOËL 2018-08-29 00:16:13 +02:00
parent 84e52af1cf
commit 56bfb6ad40
1 changed files with 16 additions and 5 deletions

View File

@ -103,11 +103,18 @@ def get_future_events(force_update=False):
return _future_events_cache
def get_today_events(force_update=False):
today = date.today()
def get_next_events(force_update=False):
events = get_future_events(force_update=force_update)
return [event for event in events
today = date.today()
today_events = [event for event in events
if event['dtstart'].date() <= today <= event['dtend'].date()]
if datetime.now().hour >= 17:
tomorrow = today + timedelta(days=1)
tomorrow_events = [event for event in events
if event['dtstart'].date() <= tomorrow <= event['dtend'].date()]
else:
tomorrow_events = []
return today_events, tomorrow_events
def display_events(events):
@ -256,10 +263,14 @@ class Robeo(sleekxmpp.ClientXMPP):
self.send_message(mto=self.room,
mbody='/me interroge calendar, un peu de patience ...',
mtype='groupchat')
events = display_events(get_today_events(force_update=force_update))
today, tomorrow = get_next_events(force_update=force_update)
self.send_message(mto=self.room,
mbody=events,
mbody="Aujourd'hui :\n%s" % display_events(today),
mtype='groupchat')
if tomorrow:
self.send_message(mto=self.room,
mbody='Et demain :\n%s' % display_events(tomorrow),
mtype='groupchat')
if __name__ == '__main__':