{{ __('Total messages') }}
{{ ($stats['deltaPct'] ?? 0) >= 0 ? '+' : '' }}{{ $stats['deltaPct'] ?? 0 }}%
vs last period
{{ number_format($stats['total'] ?? 0) }}
{{ $rangeKey }}
{{ __('Sent') }}
{{ $stats['sentPct'] ?? 0 }}%
{{ number_format($stats['sent'] ?? 0) }}
{{ __('outgoing') }}
{{ __('Received') }}
{{ $stats['receivedPct'] ?? 0 }}%
{{ number_format($stats['received'] ?? 0) }}
{{ __('incoming') }}
{{ __('Failed') }}
{{ $stats['failPct'] ?? 0 }}%
{{ number_format($stats['failed'] ?? 0) }}
{{ __('retry queue') }}
{{ __('Avg response') }}
{{ $hasReplyTime ? 'healthy' : 'n/a' }}
{{ $stats['avgReplyHuman'] ?? '—' }}
{{ __('to first reply') }}
{{ __('Volume') }}
{{ __('Messages over time') }}
@foreach (['daily', 'hourly', 'weekly'] as $b)
@endforeach
{{ __('Direction split') }}
{{ __('Sent vs received') }}
Sent{{ number_format($direction['sent'] ?? 0) }}
Received{{ number_format($direction['received'] ?? 0) }}
Failed{{ number_format($direction['failed'] ?? 0) }}
| {{ __('When') }} | {{ __('Dir') }} | {{ __('Contact') }} | {{ __('Message') }} | {{ __('Type') }} | {{ __('Status') }} | {{ __('Open') }} |
|---|
{{ __('Showing') }} {{ $shownFrom }}–{{ $shownTo }} of {{ number_format($total) }}
@php $base = request()->only(['range','dir','type','device_id','q','bucket']); @endphp
@if ($page > 1)
Prev
@else
@endif
@php
$pagesToShow = [];
for ($i = max(1, $page - 2); $i <= min($pageCount, $page + 2); $i++) {
$pagesToShow[] = $i;
}
if (!in_array(1, $pagesToShow, true)) {
array_unshift($pagesToShow, 1);
}
if (!in_array($pageCount, $pagesToShow, true)) {
$pagesToShow[] = $pageCount;
}
@endphp
@foreach ($pagesToShow as $p)
@if ($p === $page)
@else
{{ $p }}
@endif
@endforeach
@if ($page < $pageCount)
Next
@else
@endif
{{ __('Top conversations') }}
Most active threads ({{ $rangeKey }})
{{ __('No active threads in this range yet.') }}
@else
@foreach ($topConvos as $c)
{{ $c['initials'] }}
@endforeach
@endif
{{ $c['title'] }}
{{ $c['count'] }} msgs · last
{{ $c['lastAt'] }}
{{ __('By message type') }}