Repository navigation
Webhook fork v0.1 (debug APK)
·
10 commits
to webhook-http
since this release
First release of the unofficial webhook fork of jonas-l/notificationlog-android (GPL-3.0-or-later).
This is a debug-signed APK (no production signing key). Install with adb install. Replace freely with later releases.
What's in it
- All upstream NotificationLog functionality is intact.
- New: optional ntfy.sh-compatible HTTP webhook per logged notification (Title/Tags/Authorization headers, body = text).
- Per-app filter reuses the existing whitelist/blacklist (one source of truth).
- Offline-resilient: pending deliveries are persisted to Room in the same transaction as the log row, drained by a WorkManager
OneTimeWorkRequestwithNetworkType.CONNECTEDconstraint and exponential backoff. Survives airplane mode / process kill / reboot. - Skip-
ongoingtoggle (default ON) suppresses webhook spam from foreground services (LibreTorrent, step counters, music players, …). Local log keeps full history. - UTF-8 in title encoded via RFC 2047 (
=?utf-8?B?…?=) so Polish/German/etc. characters survive.
Permissions added beyond upstream
INTERNET,ACCESS_NETWORK_STATE— for HTTP deliveryusesCleartextTraffic="true"— for self-hosted ntfy on http:// LAN endpoints
Verification on this device
- 11/11 Robolectric + MockWebServer cases (
./gradlew :app:test) - 2/2 instrumented WebhookE2ETest on real Room + WorkManager + HTTP (
./gradlew :app:connectedAndroidTest, ran on API 28 TCG emulator) - Live tested against a real phone POSTing to a mock ntfy server
Install
```
adb install -r notification-http-debug.apk
adb shell cmd notification allow_listener de.jl.notificationlog/.service.NotificationListenerService
```
Settings → enable "Forward notifications via HTTP", paste your https://ntfy.example.com/<topic> and an optional bearer token. Self-host guide: NTFY.pl.md (Polish).