API da câmera corporal
A API da câmera corporal Shelleyes 4G (S7P/S4) oferece uma interface de integração aberta que permite que plataformas, sistemas de software e aplicativos de terceiros se comuniquem com as câmeras corporais Shelleyes 4G.
A API da Câmera Corporal oferece uma interface de comunicação segura entre câmeras corporais 4G e plataformas de terceiros.
Por meio dessa API, os desenvolvedores podem integrar câmeras corporais às suas próprias plataformas, incluindo:
- Sistemas de Gerenciamento de Vídeo (VMS)
- Sistemas de Gestão de Provas Digitais (DEMS)
- Plataformas de comando de segurança pública
- Aplicativos de monitoramento personalizados
A API oferece suporte a:
- Registro e gerenciamento de dispositivos
- Controle remoto da câmera
- Rastreamento por GPS em tempo real
- Transmissão ao vivo de vídeo e áudio
A arquitetura de comunicação consiste em três canais de dados independentes:
| Canal de dados | Descrição |
|---|---|
| Dados de controle | Registro de dispositivos, sinal de vida, monitoramento de status e comandos remotos |
| Dados de GPS | Informações de localização em tempo real enviadas a partir do dispositivo |
| Dados de VÍDEO/ÁUDIO (RTMPS) | Transmissão de vídeo e áudio em tempo real |

Todos os canais de comunicação utilizam transmissão segura com criptografia TLS.
Arquitetura de comunicação da API
A câmera corporal se comunica com o servidor por meio de canais de comunicação dedicados.
| Canal de dados | Porta do servidor | Protocolo |
|---|---|---|
| Dados de controle | 1901 | TCP sobre TLS |
| Dados de GPS | 7095 | TCP sobre TLS |
| Dados de VÍDEO/ÁUDIO (RTMPS) | 1935 | RTMPS |
O canal de streaming de vídeo/áudio utiliza o RTMPS (RTMP sobre TLS), proporcionando transmissão criptografada de mídia em tempo real entre a câmera corporal e o servidor.
1. Dados de controle
Visão geral
Os dados de controle são o principal canal de comunicação entre a câmera corporal e o servidor.
É responsável por:
- Registro do dispositivo
- Comunicação por batimento cardíaco
- Execução remota de comandos
- Consulta do status do dispositivo
- Feedback de resposta ao comando
A comunicação de controle utiliza um protocolo leve baseado em JSON e requer largura de banda mínima.
Configuração de portas
| Canal | Porta do servidor | Porta para câmera corporal |
|---|---|---|
| Dados de controle | 1901 | 1902 |
Registro de dispositivos
Quando a câmera corporal se conecta à rede, ela envia uma solicitação de registro ao servidor.
As informações de inscrição incluem:
| Campo | Descrição |
|---|---|
| IMEI | Número de identificação do dispositivo |
| DEVID | ID do dispositivo definido pelo usuário |
| SW_VER | Versão do firmware |
| PROTO_VER | Versão do protocolo de comunicação |
| MARCAÇÃO DE DATA E HORA | marca de tempo UTC |
| AGENTID | ID do usuário/operador do dispositivo |
Após o registro bem-sucedido, o servidor fornece uma chave de sessão utilizada para a autenticação de mensagens.
Batimento cardíaco
Após o registro, o dispositivo envia periodicamente mensagens de verificação para manter o status de conexão.
As informações sobre os batimentos cardíacos podem incluir:
- Nível da bateria
- Espaço de armazenamento restante
- Intensidade do sinal de rede
- Status da gravação
- Status do GPS
Intervalo padrão do heartbeat:
- A cada 3 segundos
Se o servidor não receber mensagens de heartbeat por 60 segundos, o dispositivo pode ser considerado offline.
Comandos do controle remoto
O servidor pode enviar comandos para controlar remotamente a câmera corporal.
Os comandos suportados incluem:
| Comando | Função |
|---|---|
| Iniciar transmissão de vídeo | Iniciar transmissão de vídeo ao vivo |
| Interromper a transmissão de vídeo | Interromper a transmissão ao vivo |
| Iniciar gravação de vídeo | Iniciar gravação local |
| Interromper a gravação de vídeo | Parar a gravação |
| Iniciar upload do GPS | Ativar envio de dados de GPS |
| Interromper o envio de dados do GPS | Desativar o envio de dados do GPS |
| Tirar foto | Capturar imagem remotamente |
| Vibrar | Ativar a vibração do dispositivo |
| Consultar bateria | Obter informações sobre a bateria |
| Consultar o status do dispositivo | Obter o status atual do dispositivo |
O dispositivo retorna os resultados da execução do comando por meio do campo CTRLFB.
2. Dados de GPS
Visão geral
Os dados de GPS fornecem informações de localização em tempo real da câmera corporal para o servidor.
O modo de comunicação do GPS é:
Câmera corporal → Servidor

As informações de GPS são transmitidas por meio de um canal de GPS independente.
Configuração de portas
| Canal | Porta do servidor |
|---|---|
| Dados de GPS | 7095 |
Frequência de envio de dados do GPS
Quando o GPS está ativado:
- O dispositivo envia informações de GPS a cada 2 segundos.
As mensagens GPS utilizam:
MSGTYPE = 3
e são transmitidos exclusivamente pelo canal GPS.
Campos de dados do GPS
A mensagem do GPS inclui:
| Campo | Descrição |
|---|---|
| LAT | Latitude |
| LON | Longitude |
| VELOCIDADE | Velocidade atual |
| ALTITUDE | Altitude |
| TÍTULO | Direção do movimento |
| HDOP | Indicador de precisão do GPS |
| SAT_COUNT | Número de satélites |
| GPS_VALID | Status de validade do GPS |
| MARCAÇÃO DE DATA E HORA | marca de tempo UTC |
3. Dados de VÍDEO/ÁUDIO (RTMPS)
Visão geral
A API de VÍDEO/ÁUDIO oferece a capacidade de transmissão de vídeo e áudio em tempo real entre a câmera corporal e plataformas externas.
O protocolo de streaming é:
RTMPS (RTMP sobre TLS)
Permite a transmissão segura de vídeo ao vivo para integração com:
- Plataformas VMS
- Centros de comando
- Sistemas de monitoramento
- Aplicativos personalizados
Configuração de portas
| Canal | Porta do servidor |
|---|---|
| Dados de VÍDEO/ÁUDIO (RTMPS) | 1935 |
Fluxo de trabalho de transmissão ao vivo
O processo de transmissão ao vivo:
1. O servidor envia o comando “Iniciar transmissão de vídeo”
↓
2. A câmera corporal recebe CTRLMSG = 0
↓
3. A câmera inicia a transmissão via RTMPS
↓
4. O servidor recebe o fluxo de vídeo/áudio ao vivo
Formato de transmissão RTMPS
URL da transmissão:
rtmps://server_ip:1935/live/DEVID
A conexão de stream é protegida por meio de um controle de acesso do lado do servidor, permitindo apenas conexões de dispositivos registrados.
Codificação de vídeo e áudio
Vídeo
Codecs compatíveis:
- H.264
- H.265
Áudio
Codec compatível:
- AAC
Servidor de mídia recomendado:
SRS (Servidor Simples em Tempo Real)
O SRS pode converter fluxos RTMPS em formatos compatíveis com a web, tais como:
- HLS
- WebRTC
para reprodução no navegador.
Segurança
Criptografia TLS
Todos os canais de comunicação são compatíveis com TLS 1.2 ou superior:
| Canal | Segurança |
|---|---|
| Dados de controle | TCP sobre TLS |
| Dados de GPS | TCP sobre TLS |
| Dados de VÍDEO/ÁUDIO | RTMPS |
Controle de acesso ao fluxo
O serviço de streaming utiliza controle de acesso baseado em IP.
Mecanismo de segurança:
- O servidor registra o endereço IP do dispositivo durante o cadastro
- Somente os endereços IP de dispositivos registrados podem estabelecer conexões de transmissão
- O servidor verifica a identidade do dispositivo antes de aceitar transmissões
Não é necessário nenhum token de transmissão adicional.
Autenticação de mensagens
Uso de mensagens de controle e GPS:
HMAC-SHA256
Recursos de segurança:
- Autenticação por chave de sessão
- Troca de chaves a cada 24 horas
- Proteção contra reprodução SERIALNO
Fluxo de trabalho de integração
Processo típico de integração:
A câmera corporal se conecta à rede
↓
Registro do dispositivo
↓
Autenticação no servidor
↓
Comunicação de pulso
↓
Controle remoto de comandos
↓
Envio de dados de GPS / Transmissão ao vivo via RTMPS
↓
Integração com plataformas de terceiros
Aplicativos de integração compatíveis
A API da Body Camera pode ser integrada a:
Soluções de software personalizadas
Plataformas VMS
Plataformas de segurança pública
Sistemas de monitoramento de segurança