@if (session('success'))
{{ session('success') }}
@endif @if (session('error'))
{{ session('error') }}
@endif

Communication Center

Send announcements and monitor communication delivery.

@can('create', App\Models\EmailCampaign::class) New Email Campaign @endcan @can('create', App\Models\SmsCampaign::class) New SMS Campaign @endcan @can('viewAny', App\Models\BirthdayGreetingLog::class) Birthday Greetings @endcan

Email Recipients Sent

{{ number_format($emailStatistics['sent_recipients']) }}

Across {{ number_format($emailStatistics['total_campaigns']) }} campaign(s)

SMS Recipients Sent

{{ number_format($smsStatistics['sent_recipients']) }}

Across {{ number_format($smsStatistics['total_campaigns']) }} campaign(s)

Birthdays Processed Today

{{ number_format($birthdayStatistics['processed_today']) }}

{{ number_format($birthdayStatistics['emails_sent_today']) }} email and {{ number_format($birthdayStatistics['sms_sent_today']) }} SMS sent

Overall Success Rate

{{ number_format($successRate, 1) }}%

{{ number_format($totalSent) }} successful and {{ number_format($totalFailed) }} failed

Pending Queue Jobs

{{ number_format($queueStatistics['pending_jobs']) }}

Email Queue

{{ number_format($queueStatistics['email_jobs']) }}

SMS Queue

{{ number_format($queueStatistics['sms_jobs']) }}

Failed Queue Jobs

{{ number_format($queueStatistics['failed_jobs']) }}

Recent Email Campaigns

Latest bulk email activity.

View all
@forelse ($recentEmailCampaigns as $campaign) @php $statusClasses = match ($campaign->status) { 'completed' => 'bg-green-100 text-green-700', 'sending' => 'bg-amber-100 text-amber-700', 'queued' => 'bg-blue-100 text-blue-700', 'failed' => 'bg-red-100 text-red-700', 'partially_completed' => 'bg-orange-100 text-orange-700', default => 'bg-gray-100 text-gray-700', }; @endphp

{{ $campaign->name }}

{{ number_format($campaign->total_recipients) }} recipient(s)

{{ str($campaign->status)->replace('_', ' ')->title() }}
@empty
No email campaigns found.
@endforelse

Recent SMS Campaigns

Latest bulk SMS activity.

View all
@forelse ($recentSmsCampaigns as $campaign) @php $statusClasses = match ($campaign->status) { 'completed' => 'bg-green-100 text-green-700', 'sending' => 'bg-amber-100 text-amber-700', 'queued' => 'bg-blue-100 text-blue-700', 'failed' => 'bg-red-100 text-red-700', 'partially_completed' => 'bg-orange-100 text-orange-700', default => 'bg-gray-100 text-gray-700', }; @endphp

{{ $campaign->name }}

{{ number_format($campaign->total_recipients) }} recipient(s)

{{ str($campaign->status)->replace('_', ' ')->title() }}
@empty
No SMS campaigns found.
@endforelse

Recent Communication Activity

Latest email, SMS and birthday greeting activity.

@forelse ($recentActivity as $activity) @php $typeLabel = match ($activity['type']) { 'email_campaign' => 'Email', 'sms_campaign' => 'SMS', 'birthday_greeting' => 'Birthday', default => str($activity['type']) ->replace('_', ' ') ->title(), }; $statusClasses = match ($activity['status']) { 'completed' => 'bg-green-100 text-green-700', 'partially_completed' => 'bg-orange-100 text-orange-700', 'sending' => 'bg-amber-100 text-amber-700', 'queued' => 'bg-blue-100 text-blue-700', 'failed' => 'bg-red-100 text-red-700', default => 'bg-gray-100 text-gray-700', }; @endphp @empty @endforelse
Type Activity Status Date
{{ $typeLabel }} {{ $activity['title'] }}

{{ $activity['description'] }}

{{ str($activity['status'])->replace('_', ' ')->title() }} {{ $activity['created_at']->format('d M Y, h:i A') }}
No communication activity found.