Closed
Description
- Implement operations for entities (see also Create notifications database model and their CRUD operations #13329)
-
Templates-
Create -
Update -
Prevent manual deletion
-
- Messages
- Enqueue
- Dequeue
- Update
- Purge old
- Deduplication
-
Preferences-
Create -
Update
-
-
- Template Renderer (see also Create notification templates for key events #13328)
- Implement HTML renderer which takes
notifications_messages
labels as input - Implement text renderer which takes
notifications_messages
labels as input
- Implement HTML renderer which takes
- Basic REST API
- Pause/resume all notifications
- Add CLI command
-
CRUDnotification_preferences
- Pause/resume all notifications
- Implement receivers
- Create retry mechanism
- SMTP
- Handle successful delivery
- Handle unsuccessful delivery (retries)
- Handle exceeded retries
- Webhook
- Handle successful delivery
- Handle unsuccessful delivery (retries)
- Handle exceeded retries
- Amend
dbpurge
to delete oldnotification_messages
after a configurable number of days - Observability of key operations
- Notifications sent (by receiver, notification_template)
- Notifications failed (by receiver, notification_template)
- Notifications retried (by receiver, notification_template)
- Notifications paused
- Notifications purged
- Queue operations
- Enqueue time (delta between start of operation and accepted into db)
- Dequeue time (delta between enqueued and dequeued)
- Receiver operations
- Send time (response time from server, by response status)