Cadastro de mesas de áudio, microfones/entradas e o vínculo de cada vereador a um ponto. O sistema
legislativo nunca fala o protocolo da mesa diretamente — tudo passa pelo Audio Bridge configurado abaixo.
{{-- Dispositivos --}}
Dispositivos (mesas)
Cada dispositivo tem seu próprio Audio Bridge — permite múltiplas mesas simultâneas.
@error('novoNome')
{{ $message }}
@enderror
@error('novoBridgeUrl')
{{ $message }}
@enderror
@forelse($this->dispositivos as $d)
{{ $d->nome }} — {{ $d->fabricante }} {{ $d->modelo }} ({{ $d->pontos_count }} pontos)
Status
{{ $d->ativo ? 'Desativar' : 'Ativar' }}
driver: {{ $d->driver }} · bridge: {{ $d->bridge_url }}
@if(isset($statusPorDispositivo[$d->id]))
[{{ $statusPorDispositivo[$d->id]['quando'] }}] {{ $statusPorDispositivo[$d->id]['mensagem'] }}
@endif
@empty
Nenhum dispositivo cadastrado.
@endforelse
{{-- Pontos --}}
Pontos de áudio (microfones/entradas)
Ponto protegido nunca é afetado por "mute todos" nem "liberar exclusivo".
Dispositivo...
@foreach($this->dispositivos as $d)
{{ $d->nome }}
@endforeach
Ponto protegido (tribuna, sem fio, técnico...)
+ Cadastrar ponto
@error('pontoDispositivoId')
{{ $message }}
@enderror
@error('novoPontoIdentificador')
{{ $message }}
@enderror
@error('novoPontoConfigJson')
{{ $message }}
@enderror
@forelse($this->pontos as $p)
{{ $p->nome }} ({{ $p->dispositivo->nome }})
@if($p->protegido) · protegido @endif
@if($p->vinculos->isNotEmpty()) · {{ $p->vinculos->first()->pessoa->name }} @endif
{{ $p->protegido ? 'Desmarcar prot.' : 'Marcar prot.' }}
{{ $p->ativo ? 'Desativar' : 'Ativar' }}
@empty
Nenhum ponto cadastrado.
@endforelse
{{-- Vínculos --}}
Vínculos (pessoa ↔ ponto)
Sessão opcional: em branco vale como vínculo padrão em qualquer sessão.
Vereador/Presidente...
@foreach($this->pessoasDisponiveis as $pessoa)
{{ $pessoa->name }}
@endforeach
Ponto de áudio...
@foreach($this->pontos as $p)
{{ $p->dispositivo->nome }} — {{ $p->nome }}
@endforeach
Vínculo padrão (qualquer sessão)
@foreach($this->sessoesRecentes as $s)
Sessão #{{ $s->id }} — {{ $s->data_sessao?->format('d/m/Y') }}
@endforeach
+ Criar vínculo
@error('vinculoPontoId')
{{ $message }}
@enderror
@error('vinculoUserId')
{{ $message }}
@enderror
@forelse($this->vinculosAtivos as $v)
{{ $v->pessoa->name }} → {{ $v->ponto->nome }}
({{ $v->ponto->dispositivo->nome }}{{ $v->sessao_id ? ' · sessão #'.$v->sessao_id : ' · padrão' }})
Encerrar
@empty
Nenhum vínculo ativo.
@endforelse
{{-- Log de operações --}}
Últimas operações de áudio
Diagnóstico — separado do histórico formal de sessão/votação.
@forelse($this->logsRecentes as $log)
●
{{ $log->created_at?->format('d/m H:i:s') }} —
{{ $log->acao }}
@if($log->vereador) · {{ $log->vereador->name }} @endif
@if($log->dispositivo) · {{ $log->dispositivo->nome }} @endif
@if($log->mensagem) — {{ $log->mensagem }} @endif
@empty
Nenhuma operação registrada ainda.
@endforelse