569
A Python middleman for Unifi Gateway ↔ Ntfy human-readable notifications. Unifi sends raw json that can’t be modified before sending, so this small app catches the webhook, formats it and forwards to your Ntfy instance.
services:
unifintfy:
image: axis6779/unifi-ntfy-middleman:latest
restart: unless-stopped
container_name: unifintfy
ports:
- "5000:5000"
environment:
- NTFY_TOPIC=https://ntfy.example.com/TOPIC
- DEDUP_SECONDS=0 # Default 0
- PORT=5000 # Default 5000
- LOG_RAWDATA=false # Default false
healthcheck:
test: ["CMD-SHELL", "curl -fs http://localhost:5000/health || exit 1"]
interval: 30s
timeout: 5s
retries: 3
start_period: 15s
| Path | Description | Expects/returns |
|---|---|---|
| /unifi | Point your Unifi Gateway Alarm/Webhook to this URL | Expects application/json POST |
| /health | Checks whether both itself and your Ntfy instance is reachable | Returns application/json {"ntfy":"ok","service":"ok"} |
| /metrics | Some simple metrics, useful for debugging | Returns text/plain |
| /metrics/unifi_webhooks_received /metrics/unifi_notifications_sent /metrics/unifi_notifications_failed /metrics/unifi_duplicates_suppressed | Returns application/json {"webhooks_received":5} |
Content type
Image
Digest
sha256:601df1b5c…
Size
52.9 MB
Last updated
4 months ago
docker pull axis6779/unifi-ntfy-middleman