outlook_exchangelib
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
| Beide Seiten, vorherige ÜberarbeitungVorherige ÜberarbeitungNächste Überarbeitung | Vorherige Überarbeitung | ||
| outlook_exchangelib [2022/01/01 20:51] – varnholt | outlook_exchangelib [2022/01/01 21:03] (aktuell) – [SNIPS und falsche Intents] varnholt | ||
|---|---|---|---|
| Zeile 2: | Zeile 2: | ||
| Auf Smartphone und Computer wird man immer informiert, ob neue mail eingetroffen ist. Damit aber die Heim-Automation auch die aktuellsten Informationen hat, muss man sie sich über z.B. den Exchange-Server besorgen. Mit der [[https:// | Auf Smartphone und Computer wird man immer informiert, ob neue mail eingetroffen ist. Damit aber die Heim-Automation auch die aktuellsten Informationen hat, muss man sie sich über z.B. den Exchange-Server besorgen. Mit der [[https:// | ||
| + | |||
| + | ==== Installation und Probleme ==== | ||
| < | < | ||
| Zeile 57: | Zeile 59: | ||
| DEBUG: | DEBUG: | ||
| </ | </ | ||
| + | |||
| + | ==== Abfrage der letzten 5 mails in der Inbox ==== | ||
| Hier der funktionierende Aufruf: | Hier der funktionierende Aufruf: | ||
| Zeile 105: | Zeile 109: | ||
| Danach habe ich das ganze noch an den MQTT-Server angebunden, damit nur bei Anwesenheit die ungelesenen Mails | Danach habe ich das ganze noch an den MQTT-Server angebunden, damit nur bei Anwesenheit die ungelesenen Mails | ||
| der letzten paar Stunden vorgelesen werden, sowie ein crontab Aufruf, der das alle 5 Minuten startet. | der letzten paar Stunden vorgelesen werden, sowie ein crontab Aufruf, der das alle 5 Minuten startet. | ||
| + | |||
| + | ==== Kalender-Einträge ==== | ||
| + | |||
| + | Die Anmeldung an den Exchange-Server ist die gleiche wie oben. Um Kalendereinträge abzufragen braucht es diesen Code. Ein wenig Probleme hat die Zeitzone gemacht. | ||
| + | < | ||
| + | now=datetime.now() | ||
| + | current = EWSDateTime(now.year, | ||
| + | future = current + timedelta(days=1) | ||
| + | erg=list(account.calendar.view(start=current, | ||
| + | |||
| + | mytext="" | ||
| + | if not erg: | ||
| + | print(' | ||
| + | mytext=" | ||
| + | else: | ||
| + | mytext=" | ||
| + | for item in erg: | ||
| + | d=item.start.astimezone(EWSTimeZone.localzone()) | ||
| + | print(d.strftime(" | ||
| + | mytext=mytext+" | ||
| + | </ | ||
| + | |||
| + | Nachdem der String erzeugt wurde, kann ich ihn dann von meinem Mac bzw. SNIPS, vorlesen lassen. Dann noch ' | ||
| + | |||
| + | ==== SNIPS und falsche Intents bzw. Weiterleitung von Intents ==== | ||
| + | |||
| + | Es macht leider einen Unterschied, | ||
| + | < | ||
| + | Das ganze ist hier für node.js geschrieben | ||
| + | client.publish(' | ||
| + | JSON.stringify({' | ||
| + | client.publish(' | ||
| + | JSON.stringify({' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | </ | ||
| + | | ||
| Stand Januar 2022 | Stand Januar 2022 | ||
outlook_exchangelib.1641066690.txt.gz · Zuletzt geändert: 2022/01/01 20:51 von varnholt
