mirror of
https://github.com/Dispatcharr/Dispatcharr.git
synced 2026-07-18 00:55:50 +00:00
Real-time notifications for system events and alerts Per-user notification management and dismissal Update check on startup and every 24 hours to notify users of available versions Notification center UI component Automatic cleanup of expired notifications
43 lines
No EOL
2.4 KiB
JSON
43 lines
No EOL
2.4 KiB
JSON
{
|
|
"_schema_documentation": {
|
|
"description": "Developer notification definitions. Each notification is evaluated at sync time.",
|
|
"fields": {
|
|
"id": "[REQUIRED] Unique identifier (notification_key in database).",
|
|
"notification_type": "[OPTIONAL] Type: 'version_update', 'setting_recommendation', 'announcement', 'warning', 'info'. Default: 'info'",
|
|
"priority": "[OPTIONAL] Priority level: 'low', 'normal', 'high', 'critical'. Default: 'normal'",
|
|
"title": "[REQUIRED] Notification title/heading.",
|
|
"message": "[REQUIRED] Detailed notification message body.",
|
|
"min_version": "[OPTIONAL] Minimum version (inclusive). null = no minimum. Example: '0.17.0'",
|
|
"max_version": "[OPTIONAL] Maximum version (inclusive). null = no maximum. Example: '0.18.1'",
|
|
"created_at": "[OPTIONAL] ISO timestamp when notification was created. For tracking only.",
|
|
"expires_at": "[OPTIONAL] ISO timestamp when notification expires. null = never expires. Example: '2026-12-31T23:59:59Z'",
|
|
"condition": "[OPTIONAL] Array of condition check names that must all pass. Empty/null = always show. Example: ['m3u_epg_network_insecure']",
|
|
"user_level": "[OPTIONAL] User level required: 'all' or 'admin'. Default: 'all'",
|
|
"action_url": "[OPTIONAL] Internal URL to navigate to when action button clicked. Example: '/settings#network-access'",
|
|
"action_text": "[OPTIONAL] Text for action button. Required if action_url is set. Example: 'Review Settings'"
|
|
},
|
|
"notes": [
|
|
"Notifications are synced from this file to database on startup and when relevant settings change",
|
|
"Out-of-range versions are automatically removed from database",
|
|
"Expired notifications are automatically removed from database",
|
|
"Conditions are evaluated per-user at display time (see CONDITION_CHECKS in developer_notifications.py)"
|
|
]
|
|
},
|
|
"notifications": [
|
|
{
|
|
"id": "network_security_m3u_epg",
|
|
"notification_type": "warning",
|
|
"priority": "high",
|
|
"title": "Network Access Security Warning",
|
|
"message": "Your EPG/M3U output is accessible from any network. Consider restricting access to improve security.",
|
|
"min_version": null,
|
|
"max_version": null,
|
|
"created_at": "2026-02-02T00:00:00Z",
|
|
"expires_at": null,
|
|
"condition": ["m3u_epg_network_insecure"],
|
|
"user_level": "admin",
|
|
"action_url": "/settings#network-access",
|
|
"action_text": "Review Settings"
|
|
}
|
|
]
|
|
} |