{% extends 'base.html' %} {% load static %} {% block title %}Notification Analytics{% endblock %} {% block extra_css %} {% endblock %} {% block content %}

Notification Analytics

✈️

Total Notifications

{{ total_notifications|default:0 }}

Total Deliveries

{{ total_deliveries|default:0 }}

⚠️

Escalations

{{ escalation_stats.total|default:0 }}

{{ escalation_stats.resolved|default:0 }} resolved

Batch Jobs

0

0 pending

Delivery Statistics by Channel

Notifications by Type

Channel Performance

{% for channel in delivery_stats %} {% empty %} {% endfor %}
Channel Total Delivered Read Failed Success Rate
{{ channel.channel|title|replace:"_":" " }} {{ channel.total }} {{ channel.delivered }} {{ channel.read }} {{ channel.failed }}
{{ channel.delivery_rate|floatformat:1 }}%
No delivery data available

User Engagement by Role

{% for role_stat in user_stats %}

{{ role_stat.user__role|title|replace:"_":" " }}

{{ role_stat.total }} notifications

{{ role_stat.read_rate|floatformat:1 }}%

{{ role_stat.read }}/{{ role_stat.total }} read

{% empty %}

No user engagement data available

{% endfor %}
{% if recent_escalations %}

Recent Escalations

{% for escalation in recent_escalations %} {% endfor %}
Notification Rule Escalated To Level Status Time
{{ escalation.original_notification.title|truncatechars:40 }}
{{ escalation.original_notification.notification_type }}
{{ escalation.rule.name }} {{ escalation.escalated_to.get_full_name }} {{ escalation.escalation_level }} {% if escalation.resolved_at %} Resolved {% elif escalation.acknowledged_at %} Acknowledged {% else %} Pending {% endif %} {{ escalation.escalated_at|timesince }} ago
{% endif %}

Notification Type Performance

{% for type_stat in type_stats %} {% empty %} {% endfor %}
Type Total Read Read Rate Trend
{{ type_stat.notification_type|title|replace:"_":" " }} {{ type_stat.count }} -
75%
No notification type data available
{% endblock %}