Een Fool‑Proof Pushover Meldingssysteem in Home Assistant
Stap‑voor‑stap handleiding + volledig script
In een slim huis draait alles om betrouwbaarheid. Een melding die te laat komt, of helemaal niet, kan het verschil maken tussen op tijd reageren of iets belangrijks missen. Daarom wilde ik mijn meldingssysteem in Home Assistant naar een hoger niveau tillen. Niet alleen een simpel berichtje, maar een volledig geautomatiseerde, foutloze Pushover‑melding — mét prioriteiten, camerabeelden, geluiden en een automatische titel.
Tijdens het bouwen ontdekte ik dat veel standaardoplossingen nét niet doen wat je wilt. File‑selectors werken niet altijd, prioriteit 2 vereist extra parameters, en bijlagen moeten aan strikte voorwaarden voldoen. Daarom besloot ik een eigen script te maken dat:
- altijd werkt
- geen fouten toestaat
- automatisch slimme keuzes maakt
- en flexibel genoeg is voor elke situatie
In deze handleiding laat ik stap voor stap zien hoe je dit script zelf kunt toevoegen aan Home Assistant. Aan het einde vind je het volledige script dat je direct kunt gebruiken. Hiermee heb je een professioneel, fool‑proof meldingssysteem dat je smart home een stuk slimmer maakt.
Waarom een eigen Pushover‑script?
De standaard Pushover‑integratie is prima, maar beperkt. Ik wilde:
- een melding sturen met geluid naar keuze
- prioriteit 2 gebruiken voor urgente meldingen
- een afbeelding meesturen uit mijn cameramappen
- een automatische titel wanneer ik er zelf geen invul
- een systeem dat nooit faalt, ook niet als ik een veld vergeet
Stap 1 — Voorbereiding
1.1 Zorg dat Pushover werkt in Home Assistant
Je moet al een notify‑service hebben, zoals:
notify.entity_id
Zie Pushover - Home Assistant
Pas dit in het script aan als jouw service anders heet.
1.2 Maak een map voor je camerabeelden
Gebruik de map:
/media/cam_captures/
Plaats daar je afbeeldingen, bijvoorbeeld:
- 1_tuin.jpg
- 1_voordeur.jpg
- 2_tuin.jpg
- 2_voordeur.jpg
- 3_tuin.jpg
- 3_voordeur.jpg
- 4_tuin.jpg
- 4_voordeur.jpg
- poort.jpg
- tuin.jpg
- voordeur.jpg
Stap 2 — Script toevoegen in Home Assistant
- Ga naar Instellingen → Automatiseringen & Scènes → Scripts
- Klik op “+ Script toevoegen”
- Kies “Script bewerken in YAML”
- Verwijder alles wat er staat
- Plak het volledige script hieronder
- Sla het script op
Stap 3 — Het volledige Pushover‑script
Dit script is fool‑proof:
- Bericht mag niet leeg zijn
- Prioriteit heeft standaard waarde 0
- Titel wordt automatisch gegenereerd (dagnaam + datum + tijd)
- Bijlagen komen uit een dropdown
- Priority 2 werkt correct met retry/expire
pushover_melding:
alias: "Pushover melding"
fields:
message:
name: Bericht
selector:
text:
default: ""
title:
name: Titel
selector:
text:
default: ""
sound:
name: Geluid
selector:
select:
options:
- pushover
- bike
- bugle
- cashregister
- classical
- cosmic
- falling
- gamelan
- incoming
- intermission
- magic
- mechanical
- pianobar
- siren
- spacealarm
- tugboat
- alien
- climb
- persistent
- echo
- updown
- vibrate
- none
priority:
name: Prioriteit
selector:
select:
options:
- "-2"
- "-1"
- "0"
- "1"
- "2"
default: "0"
url:
name: URL
selector:
text:
url_title:
name: URL titel
selector:
text:
attachment_file:
name: Bijlage kiezen (uit /media/cam_captures/)
selector:
select:
options:
- 1_tuin.jpg
- 1_voordeur.jpg
- 2_tuin.jpg
- 2_voordeur.jpg
- 3_tuin.jpg
- 3_voordeur.jpg
- 4_tuin.jpg
- 4_voordeur.jpg
- poort.jpg
- tuin.jpg
- voordeur.jpg
sequence:
- condition: template
value_template: "{{ message is string and message | trim != '' }}"
- choose:
- conditions: >
{{ priority | int == 2 and attachment_file is string and attachment_file != '' }}
sequence:
- service: notify.entity_id
data:
message: "{{ message }}"
title: "{{ title | default(
(now().strftime('%A')
| replace('Monday','maandag')
| replace('Tuesday','dinsdag')
| replace('Wednesday','woensdag')
| replace('Thursday','donderdag')
| replace('Friday','vrijdag')
| replace('Saturday','zaterdag')
| replace('Sunday','zondag')
) ~ ' ' ~ now().strftime('%d-%m-%Y %H:%M')
) }}"
data:
sound: "{{ sound }}"
priority: 2
retry: 30
expire: 300
url: "{{ url }}"
url_title: "{{ url_title }}"
attachment: "/media/cam_captures/{{ attachment_file }}"
- conditions: "{{ priority | int == 2 }}"
sequence:
- service: notify.home_assistant_peter
data:
message: "{{ message }}"
title: "{{ title | default(
(now().strftime('%A')
| replace('Monday','maandag')
| replace('Tuesday','dinsdag')
| replace('Wednesday','woensdag')
| replace('Thursday','donderdag')
| replace('Friday','vrijdag')
| replace('Saturday','zaterdag')
| replace('Sunday','zondag')
) ~ ' ' ~ now().strftime('%d-%m-%Y %H:%M')
) }}"
data:
sound: "{{ sound }}"
priority: 2
retry: 30
expire: 300
url: "{{ url }}"
url_title: "{{ url_title }}"
- conditions: >
{{ priority | int != 2 and attachment_file is string and attachment_file != '' }}
sequence:
- service: notify.home_assistant_peter
data:
message: "{{ message }}"
title: "{{ title | default(
(now().strftime('%A')
| replace('Monday','maandag')
| replace('Tuesday','dinsdag')
| replace('Wednesday','woensdag')
| replace('Thursday','donderdag')
| replace('Friday','vrijdag')
| replace('Saturday','zaterdag')
| replace('Sunday','zondag')
) ~ ' ' ~ now().strftime('%d-%m-%Y %H:%M')
) }}"
data:
sound: "{{ sound }}"
priority: "{{ priority | int }}"
url: "{{ url }}"
url_title: "{{ url_title }}"
attachment: "/media/cam_captures/{{ attachment_file }}"
default:
- service: notify.home_assistant_peter
data:
message: "{{ message }}"
title: "{{ title | default(
(now().strftime('%A')
| replace('Monday','maandag')
| replace('Tuesday','dinsdag')
| replace('Wednesday','woensdag')
| replace('Thursday','donderdag')
| replace('Friday','vrijdag')
| replace('Saturday','zaterdag')
| replace('Sunday','zondag')
) ~ ' ' ~ now().strftime('%d-%m-%Y %H:%M')
) }}"
data:
sound: "{{ sound }}"
priority: "{{ priority | int }}"
url: "{{ url }}"
url_title: "{{ url_title }}"
Stap 4 — Script testen
- Open het script in Home Assistant
- Vul een bericht in (verplicht)
- Laat de titel leeg om de automatische titel te testen, dus vinkje weg halen
- Kies een geluid
- Kies een prioriteit
- Selecteer eventueel een bijlage
- Klik op Uitvoeren
Je ontvangt nu een nette Pushover‑melding met:
- jouw bericht
- automatische titel (dagnaam + datum + tijd)
- gekozen geluid
- juiste prioriteit
- optioneel een camerabeeld
Conclusie
Met dit script heb je een professioneel, foutloos en flexibel meldingssysteem dat perfect integreert met Home Assistant. Het is ontworpen om altijd te werken, ongeacht welke velden je wel of niet invult. Ideaal voor alarmmeldingen, camerabeelden, deurbelnotificaties en alle andere situaties waarin je snel en betrouwbaar geïnformeerd wilt worden.
In een automation kun je nu bij Add action, script.pushover_melding kiezen en invullen.
![]()