Skip to main content
Todo VMS diz se a câmera está online. Esta rota diz por que ela não está, e qual é a próxima ação — sem abrir chamado e sem esperar alguém olhar.

A resposta, em três partes

summary é o que você mostra na tela. headline e next_action são escritos para o operador ler — mostre-os como vieram, não traduza. media_route.label diz por onde o vídeo chega, em termos do mundo dele.

A regra que faz isso valer: a primeira falha é a causa

checks vem na ordem da cadeia real de falha. Então:
A primeira entrada com status: "fail" é a causa raiz. Todas as seguintes são sintoma. Mostrar as sete linhas vermelhas de uma vez faz o operador perseguir o sintoma mais visível em vez da causa.

Os elos, na ordem em que falham

Cada entrada traz id, label, status, detail, remediation e, quando existe, evidence. status é um de: ok · warn (funciona, com ressalva) · fail (está quebrado aqui) · skip (não se aplica a esta câmera — uma câmera que envia o vídeo por conta própria não tem usuário e senha para conferir).
evidence é material de suporte, não texto de tela. Guarde no seu log, mande junto quando abrir chamado, e não desenhe para o operador.

Os vereditos, e o que fazer com cada um

unknown não é “câmera caída”. Ele quer dizer que nenhum elo conseguiu concluir nada — tratar isso como falha gera alarme falso, e alarme falso é o que faz o operador parar de olhar para os alarmes.

Imagem chegando ganha do resto

Se o elo recepcao_de_video está ok, o pior veredito possível é degraded — nunca fail. Há o que ajustar, não há o que socorrer. É uma regra que existe por experiência: a mesma tela já mostrou o texto “Falha” por cima de um vídeo que estava rodando, e quem lê acredita no texto vermelho, não no vídeo que está vendo.

O custo, e como não estourar o teto

probe=true (o padrão) disca na câmera de verdade. É diagnóstico sob demanda — para quando alguém vai olhar —, não vigília.
Não construa a sua vigilância varrendo esta rota. A conta não fecha: 40 condomínios × 25 câmeras = 1.000 chamadas por volta, cada uma abrindo uma sessão no equipamento. O desenho certo tem dois níveis:
1

Varra a frota com UMA chamada por conta

transmitting é o eixo de IMAGEM: no = já chegou quadro desta câmera alguma vez, mas não dentro da janela. É a lista de “quem está sem imagem agora”, pela conta inteira, numa requisição.Confira transmitting_witness_fresh no envelope: em false, a medição está parada e “0 sem imagem” significa não deu para medir.
2

Diagnostique só as que apareceram

Agora sim com probe=true: são poucas, e alguém vai agir sobre o resultado.
Precisa do estado de muitas câmeras sem discar em nenhuma? probe=false devolve só o que já se sabe, sem tocar a rede:

Da falha à ocorrência, inteiro

O que ele não faz

Diagnóstico é leitura: ele não conserta, não reinicia e não muda cadastro. A next_action aponta para onde a correção acontece — e é uma pessoa que a faz.