Add Home Assistant calendar sync via webhook
All checks were successful
Deploy / deploy (push) Successful in 42s

Every successful menu fetch now POSTs the day's items to HA_WEBHOOK_URL
(when set), so an HA automation can turn it into a calendar event. Surface
the push result as a "Calendar Sync" badge on the status card, hidden
unless HA_WEBHOOK_URL is configured.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KsJqAZ82Veyf5oihBr71S5
This commit is contained in:
Barely Removable 2026-09-03 07:05:31 -07:00
parent 83533d339d
commit a9ea0a2d87
3 changed files with 45 additions and 3 deletions

View file

@ -20,6 +20,12 @@ Runs as one Docker container on the user's Unraid home server.
first time, before a settings file exists.
- Vacation ranges suppress sends without disabling the schedule — checked
fresh on every run via `is_on_vacation()`.
- **Home Assistant integration (2026-09-02):** if `HA_WEBHOOK_URL` is set,
every successful menu fetch also POSTs `{"date": ..., "items": [...]}` to
that webhook, independent of whether the SMS send itself succeeds. An HA
automation (webhook trigger → `calendar.create_event`) turns this into an
all-day calendar event with the menu. This makes the scrape here the
single source of truth — HA doesn't poll or re-scrape anything.
## Local development