Grant Milesone: Android notification forwarding and actions
- [ ] Notification forwarding
- [x] Global enable/disable option
- [ ] Honor lock screen visibility if possible
- [ ] Show low detail summary when notification is private, if possible
- [ ] Configurable
- [ ] Filtering (#29)
- [x] Mute by package
- [x] Mute by channel
- [ ] Blanket-mute persistent notifications
- [ ] Blanket-mute 'local' notifications
- [ ] Group parsing for Gmail-style notifications
- [x] MessageStyle parsing for conversation threads
- [x] Action detection and forwarding including quick reply (#28)
- [ ] Disable by package
- [x] Open on phone action
- [x] Dismiss notification on watch when dismissed on phone
- [ ] Actions handling (#28)
- [x] Dismiss
- [x] Mute
- [x] Mute app
- [x] Mute [channel name]
- [x] Replying via canned messages / emoji
- [x] Send intents based on original notif actions
- [ ] Snooze
- [ ] Grant completion validation
- Above code is functional
- Discord canned reply
- Discord mark as read
- Dismiss a notification
- Open on phone
- Gmail functions as expected instead of spamming notifications
- Notifications show on watch as configured to
( I did not mean to do that :smile: )
🎉 Grant accepted! The Rebble Alliance will grant $1000 on completion of this work. 🎉
It would be good to have a checklist item for making sure that we handle notification blobdb sync 'correctly', rather than treating notification insert as a single-time event that happens in a vacuum, a la Gadgetbridge. (For instance, one thing that the PebbleCorp app does is buffer notifications for a short period of time when the watch walks loses its Pebble Protocol connection, I think by assigning them UUIDs when the notification is created on the phone and consistently trying to insert the same UUID until it succeeds.)
Sorry I went ahead and added global/enable myself because those notifications were so annoying :). It was just a single toggle though.