Vergisst du manchmal, deine E-Mails zu checken? 😅 Keine Sorge – dein Smart Home kann dir unter die Arme greifen! In diesem Video zeige ich dir die Home Assistant IMAP-Integration, mit der du ungelesene E-Mails live im Dashboard siehst und sogar Mails löschen oder als gelesen markieren kannst 🔥
Inhaltsverzeichnis
Voraussetzungen
Ressourcen
Doku von HA, falls du etwas selbst nachlesen möchtest | https://www.home-assistant.io/integrations/imap/ |
M365-Mail Integration für Home Assistant | https://github.com/RogerSelwyn/MS365-Mail / Doku: https://rogerselwyn.github.io/MS365-Mail/ |
Code-Snippets
Hier die gezeigten Codes / Dashboards / Automationen Video, damit du möglichst viel kopieren kannst! Natürlich musst du die Entitäten-IDs, Geräte-IDs, Dienste usw. gegebenenfalls durch deine eigenen ersetzen!
Dashboard
Kachel-Karte mit ungelesenen Mails

type: tile entity: sensor.imap_m_mustermann_gmx_de_nachrichten features_position: bottom vertical: false grid_options: columns: 12 rows: 1 visibility: - condition: numeric_state entity: sensor.imap_m_mustermann_gmx_de_nachrichten above: 0 tap_action: action: navigate navigation_path: /lovelace/mail icon_tap_action: action: more-info name: IMAP (GMX) Nachrichten
Unter-Ansicht für E-Mails (erfordert Skripte für Buttons & Template)

title: Dashboard-Name views: - type: sections max_columns: 4 title: Mail path: mail icon: mdi:email sections: - type: grid cards: - type: heading heading: E-Mails (GMX) heading_style: title icon: mdi:email badges: - type: entity show_state: true show_icon: true entity: sensor.imap_m_mustermann_gmx_de_nachrichten tap_action: action: more-info color: green visibility: - condition: numeric_state entity: sensor.imap_m_mustermann_gmx_de_nachrichten below: 1 - type: entity show_state: true show_icon: true entity: sensor.imap_m_mustermann_gmx_de_nachrichten tap_action: action: more-info color: red visibility: - condition: numeric_state entity: sensor.imap_m_mustermann_gmx_de_nachrichten above: 0 - type: heading heading: Aktionen heading_style: title icon: mdi:gesture-double-tap badges: - type: entity show_state: true show_icon: false entity: sensor.imap_content visibility: - condition: numeric_state entity: sensor.imap_m_mustermann_gmx_de_nachrichten above: 0 - show_name: true show_icon: true type: button tap_action: action: perform-action perform_action: script.neuste_nachricht_als_gelesen_markieren_m_mustermann_gmx_de target: {} show_state: false grid_options: columns: 6 rows: 2 icon_height: 50px entity: sensor.imap_content name: Gelesen icon: mdi:read visibility: - condition: numeric_state entity: sensor.imap_m_mustermann_gmx_de_nachrichten above: 0 - show_name: true show_icon: true type: button tap_action: action: perform-action perform_action: script.neuste_nachricht_loschen_m_mustermann_gmx_de target: {} show_state: false grid_options: columns: 6 rows: 2 icon_height: 50px entity: sensor.imap_content name: Löschen icon: mdi:delete visibility: - condition: numeric_state entity: sensor.imap_m_mustermann_gmx_de_nachrichten above: 0 - type: markdown content: |- ### Betreff: {{ states("sensor.imap_content") }} ### Absender: {{ state_attr("sensor.imap_content", "Sender") }} ## Nachricht: {{ state_attr("sensor.imap_content", "Message") }} title: Vorschau visibility: - condition: numeric_state entity: sensor.imap_m_mustermann_gmx_de_nachrichten above: 0 - type: grid cards: - type: markdown content: '# Perfekt, alles erledigt 🙌' - show_name: true show_icon: true type: button tap_action: action: navigate navigation_path: /lovelace/home entity: sensor.imap_content icon: mdi:keyboard-backspace name: Zurück zum Dashboard hold_action: action: none grid_options: columns: 12 rows: 2 visibility: - condition: numeric_state entity: sensor.imap_m_mustermann_gmx_de_nachrichten below: 1
Template
template: ####### ############ E-Mail Zeugs ####### - trigger: - trigger: event event_type: "imap_content" sensor: - name: imap_content state: "{{ trigger.event.data['subject'] }}" attributes: Entry: "{{ trigger.event.data['entry_id'] }}" UID: "{{ trigger.event.data['uid'] }}" Message: "{{ trigger.event.data['text'] }}" Server: "{{ trigger.event.data['server'] }}" Username: "{{ trigger.event.data['username'] }}" Search: "{{ trigger.event.data['search'] }}" Folder: "{{ trigger.event.data['folder'] }}" Sender: "{{ trigger.event.data['sender'] }}" Date: "{{ trigger.event.data['date'] }}" Subject: "{{ trigger.event.data['subject'] }}" Initial: "{{ trigger.event.data['initial'] }}" To: "{{ trigger.event.data['headers'].get('Delivered-To', ['n/a'])[0] }}" Return-Path: "{{ trigger.event.data['headers'].get('Return-Path',['n/a'])[0] }}" Received-first: "{{ trigger.event.data['headers'].get('Received',['n/a'])[0] }}" Received-last: "{{ trigger.event.data['headers'].get('Received',['n/a'])[-1] }}"
Hinweis für mehrere Postfächer
Falls du mehrere Postfächer hast, musst du das Template um die jeweilige entry_id ergänzen:
triggers: - trigger: event event_type: imap_content event_data: entry_id: 91fadb3617c5a3ea692aeb62d92aa869
Skript
Als ungelesen markieren
sequence: - action: imap.seen metadata: {} data: uid: "{{ state_attr('sensor.imap_content', 'UID') }}" entry: 01JRMGBYV49H9ZVKTAM9GWPF71 alias: Neuste Nachricht als gelesen markieren (m.mustermann@gmx.de) description: ""
Löschen
sequence: - action: imap.delete metadata: {} data: uid: "{{ state_attr('sensor.imap_content', 'UID') }}" entry: 01JRMGBYV49H9ZVKTAM9GWPF71 alias: Neuste Nachricht löschen (m.mustermann@gmx.de) description: ""
Fazit
Mit der IMAP-Integration holst du dir deine E-Mails direkt ins Home Assistant Dashboard – und zwar so, dass du sie nicht mehr ignorieren kannst 😁
Ob als smarte Erinnerung, optischer Hinweis oder mit echten Aktionen wie Löschen oder Als gelesen markieren – dein Smart Home wird zur Mail-Zentrale 💌
Natürlich ist das Setup etwas technischer, aber mit den Snippets & dem Video oben solltest du das gut hinbekommen. Und wie immer gilt: Passe alles an deine eigenen Bedürfnisse an – dann wird’s richtig cool 🔥
Viel Spaß beim Automatisieren – und vergiss deine Mails ab jetzt nie wieder 😉📬
Hi Simon,
du hast unter Ressourcen die falschen verlinkt.
Außerdem fehlt mir der Code für das Template.
Danke dir für den Hinweis, es gab ein Problem mit dem Server-Cache, irgendwie war da noch die Entwurfsversion gespeichert 😅