Fabricante{{ $camera->manufacturer?->name ?? '—' }}
Modelo{{ $camera->model?->name ?? '—' }}
Localização{{ $camera->location ?? '—' }}
ONVIF / RTSP{{ $camera->onvif_port }} / {{ $camera->rtsp_port }}
Protocolo{{ $camera->primary_protocol }}
Gravação / Live{{ $camera->record_stream_role }} / {{ $camera->live_stream_role }}
Status / Gravação{{ $camera->status }} · {{ $camera->recording_enabled ? 'habilitada' : 'desabilitada' }} · {{ $camera->recorder_state }}
Último segmento{{ $camera->last_segment_at?->timezone(config('app.timezone'))?->format('d/m/Y H:i:s') ?? '—' }}
{{ $camera->health_headline }}
Quedas (offline): {{ $healthStats['drops'] }}
· tempo acumulado sem gravação: {{ \App\Support\Duration::human($healthStats['no_recording_seconds']) }}
Streams
@forelse ($camera->streams as $stream)
{{ $stream->role }}
· origem {{ $stream->source }}
@if ($stream->codec)
{{ $stream->codec }} {{ $stream->width }}×{{ $stream->height }} @ {{ $stream->fps }} fps
@if ($stream->bitrate_kbps) · {{ $stream->bitrate_kbps }} kbps @endif
@if ($stream->has_audio) · áudio {{ $stream->audio_codec }} @else · sem áudio @endif
@endif
@if ($stream->redactedUrl())
{{ $stream->redactedUrl() }}
@endif
@if ($stream->probed_at)
Último probe: {{ $stream->probed_at->timezone(config('app.timezone'))->format('d/m/Y H:i:s') }}
@endif
@empty
Nenhum stream cadastrado. Use “Descobrir ONVIF” ou informe a URL RTSP manual na edição.
@endforelse
@endif
@if ($camera->capabilities->isNotEmpty())
@php $cap = $camera->capabilities->sortByDesc('discovered_at')->first(); @endphp
Última descoberta ONVIF
Fonte: {{ $cap->source }} · {{ $cap->discovered_at?->timezone(config('app.timezone'))?->format('d/m/Y H:i:s') }}
@if (!empty($cap->capabilities['summary']))
Media: {{ !empty($cap->capabilities['summary']['media']) ? 'sim' : 'não' }}
· Eventos: {{ !empty($cap->capabilities['summary']['events']) ? 'sim' : 'não' }}
· PTZ: {{ !empty($cap->capabilities['summary']['ptz']) ? 'sim' : 'não' }}
@endif
@if (!empty($cap->capabilities['firmware']))
Firmware: {{ $cap->capabilities['firmware'] }}
@endif