Skip to content

API Watcher: acesso móvel e agentes

Em uma instalação Optic em funcionamento, você pode ativar a compatibilidade com o aplicativo móvel Flussonic Watcher e conectar câmeras por agentes. O Optic precisa de uma origem HTTPS pública acessível pelo telefone, pelos agentes e pelo Peeklio. A API e o vídeo devem estar disponíveis na mesma origem, por exemplo https://optic.example.com.

Ative a API Watcher

Em uma instalação por pacotes, crie /etc/optic/optic.yaml.d/90-mobile.conf:

optic:
  mobile_compat:
    enabled: true

Esse diretório carrega arquivos com extensão .conf ou .json. Um arquivo posterior substitui toda a seção optic: se ela já contiver configurações próprias, mantenha-as no mesmo bloco junto com mobile_compat.

Reinicie o Optic:

systemctl restart optic

A opção ativa a API de cliente Watcher para login e reprodução de câmeras em /watcher/client-api/v3/. Ela está desativada por padrão. As alterações exigem reinicialização; a página Acesso móvel mostra o estado e gera códigos QR de login, mas ainda não altera essa opção.

Conecte o aplicativo móvel

  1. Crie uma conta pessoal do central. Conclua qualquer troca obrigatória de senha temporária antes de conectar o aplicativo.
  2. Entre no console pela origem pública do Optic e abra Acesso móvel.
  3. Gere um QR para sua conta e leia-o no Watcher. O código expira em cinco minutos; um superadministrador pode gerá-lo para outra conta permitida.

Permissões de visualização de câmeras:

  • superadmin e admin — todas as câmeras da instalação.
  • viewer — câmeras conforme content_labels: campo ausente permite todas; lista vazia, nenhuma; lista não vazia, câmeras com pelo menos uma etiqueta correspondente.
  • security e player — acesso móvel negado.

O aplicativo oferece vídeo ao vivo e o arquivo existente. Ativar a API não ativa a gravação da câmera por si só.

Ativar notificações de episódios

Configure a conexão com o Peeklio em Conectar Optic e entre no aplicativo Watcher com sua conta. Permita notificações nas configurações do telefone e ative o sino da câmera. Apenas destinatários que ainda têm permissão para visualizar essa câmera recebem notificações.

Assinaturas compatíveis:

  • Movimento — novos episódios de movimento.
  • Rostos — novos episódios de reconhecimento facial com a análise configurada.
  • Veículos — novos episódios de reconhecimento de veículos com a análise configurada.

O limite de notificações automáticas é compartilhado pelo destinatário: no máximo uma notificação a cada dez minutos entre todas as suas câmeras e dispositivos. Eventos nesse intervalo não geram uma notificação adiada adicional. Reiniciar o Optic ou desativar e reativar o sino não redefine o limite. Falhas temporárias são tentadas novamente após o mesmo intervalo.

Para verificar a entrega, selecione Send test notification nas configurações do aplicativo móvel. O teste é enviado a todos os dispositivos registrados na sua conta e não exige um evento de câmera nem o sino ativado. Você pode solicitá-lo sem aguardar o intervalo das notificações automáticas. A próxima notificação automática só é permitida pelo menos dez minutos após o envio do teste.

Tocar em uma notificação de episódio abre a câmera no horário do episódio. Configure antes a gravação e os eventos da câmera. A assinatura não envia o histórico acumulado. Após migrar do Watcher sem importar os dispositivos, entre novamente e ative as notificações. Bloquear novas conexões de agentes não desativa os push existentes.

Permita adicionar câmeras por agentes

Entre como admin ou superadmin e abra Conexão do Optic no menu do console.

  1. Ative Ativar o registo de agentes.
  2. Informe Origem do serviço Peeklio, por exemplo https://api.peeklio.net, e Origem pública do Optic, por exemplo https://optic.example.com. Insira origens sem caminhos adicionais.
  3. Selecione o Modelo predefinido de câmara entre os modelos existentes do central. Se não houver nenhum, crie um com as configurações da câmera; um único modelo disponível é selecionado automaticamente.
  4. Clique em Guardar e depois em Registar / atualizar instalação. Para uma instalação nova, deixe vazios Operator ID e a chave API da instalação: o Optic gera a chave e salva o Operator ID recebido. Para uma instalação existente, restaure primeiro seus Operator ID e chave API anteriores.
  5. Clique em Verificar conexão e confirme que a verificação foi bem-sucedida.

Salvar as configurações e registrar são ações separadas. Após o registro, o Operator ID pode ser usado para entrar no aplicativo. Reiniciar o Optic não repete o registro.

Adicionar uma câmera pelo telefone está disponível para admin e superadmin. No aplicativo, inicie a adição de uma câmera com agente e siga o procedimento escolhido. O agente contata o Peeklio, que envia seus dados ao Optic. Uma câmera ag-<agent_id> aparece em Streams com o modelo escolhido. Sua presença não confirma a captura de vídeo: o streamer também precisa estar configurado.

Configure a captura de vídeo por agentes

  1. Abra Cluster → Streamers e as configurações do streamer que capturará o vídeo. Em uma instalação de uma máquina, selecione o streamer local.
  2. Em Conexão, informe um Endereço público de mídia acessível pelos agentes. Para uma máquina, use o endereço público do Optic: host optic.example.com, porta 443, esquema https.
  3. Salve as alterações e aguarde o streamer aplicar a configuração.

Ao iniciar o central ou adicionar um novo nó, o central cria e salva automaticamente a chave do túnel de mídia que estiver ausente para cada streamer, incluindo o local. Não é necessário informar streampoint_key manualmente. As chaves existentes são preservadas nas reinicializações.

O agente estabelece sua conexão de controle com o Optic por /endpoint/connect e o túnel de mídia com o streamer atribuído por /streampoint/connect. Se já houver um proxy reverso diante do Optic, ambas as rotas devem permitir conexões persistentes com HTTP Upgrade. Se o agente conectar sem vídeo, verifique o endereço público do streamer e a aplicação de sua configuração.

Verifique o funcionamento

Para verificar o login, use uma conta pessoal; o curl solicitará a senha:

curl -sS --user operator1 --request POST --output /dev/null \
  --write-out '%{http_code}\n' \
  https://optic.example.com/watcher/client-api/v3/login

O resultado esperado é 200. Uma senha incorreta retorna 401; uma conta desativada ou função não permitida retorna 403. Para 404, verifique 90-mobile.conf e a reinicialização do Optic após a alteração.

Em Agentes, verifique a conexão de controle e a associação do agente a um stream e streamer. Abra a câmera e confirme o estado running e a reprodução de vídeo. Depois verifique a mesma câmera no aplicativo móvel.

Desative o acesso

Para desativar o login e a reprodução móveis, configure enabled: false em 90-mobile.conf e reinicie o Optic.

Para impedir a adição de novos agentes, desative Ativar o registo de agentes em Conexão do Optic e salve. Os agentes e streams existentes são preservados; essas configurações não interrompem a gravação das câmeras por si só.

Telefones vinculados

Abra Telefones vinculados no menu do Optic. Administradores podem ver o usuário proprietário, modelo e plataforma, versão, datas de registro e da última confirmação push e contadores de notificações enviadas e sem confirmação. A falta de confirmação, por si só, não prova que a notificação não apareceu no telefone.

Dispositivos e assinaturas são vinculados ao nome de usuário. Recriar uma conta com o mesmo nome preserva os vínculos. Os tokens push não são exibidos.

API do operador: GET /optic/api-v1/devices?offset=0. A resposta contém devices e next_offset. Se next_offset não for null, use-o como offset para a próxima página. Cada página contém até 100 registros.