Sobre este proyecto
it-programming / web-development
Abierto
Preciso de um sistema completo de vigilância por câmeras IP com arquitetura dividida em dois componentes principais: front-end e worker. O sistema deve gerenciar gravações de câmeras ip através de fluxos rtsp e rtmp, com armazenamento em s3 e diferentes níveis de acesso.
Arquitetura Geral
Front-end
Interface web para visualização ao vivo
Visualização das gravações arquivadas
Download das gravações por período selecionado
Painel administrativo com diferentes níveis de acesso
Worker
Deve ser usado o ZLMediakit para gravação e transmissão do HLS
Serviço de back-end responsável pela gravação dos streams
Gerenciamento do banco de dados de metadados das imagens
Upload das gravações para armazenamento S3
Limpeza automática de gravações antigas conforme regras de retenção
Transmissão ao vivo via HLS
Funcionalidades por Tipo de Fluxo
Fluxos RTSP
Interface para inserção manual do link RTSP
Teste de conectividade com o link fornecido
Inicialização da gravação após teste bem-sucedido
Fluxos RTMP
Geração automática de links RTMP para cada câmera
Utilização do SRS (Simple RTMP Server) para gerenciamento desses links
Interface para copiar o link gerado para configurar na câmera
Níveis de Acesso
Nível Administrador
Monitoramento de espaço utilizado no storage S3
Cadastro e gerenciamento de integradores
Dashboard com:
Quantidade de câmeras online/offline
Lista de câmeras que mais consomem armazenamento
Logs completos de acesso às gravações e visualizações ao vivo
Controle de cotas de câmeras por integrador
Logs de câmeras cadastradas por cada integrador
Nível Integrador
Cadastro de clientes (com email e senha)
Cadastro de câmeras associadas a clientes específicos
Configuração do período de retenção (dias) para cada câmera
Monitoramento de status online/offline das câmeras cadastradas
Acesso a todas as gravações e visualização ao vivo das câmeras que cadastrou
Histórico de status (quando câmeras ficaram offline/online)
Logs de acesso dos clientes às câmeras
Configuração de alertas por e-mail para notificações de status das câmeras
Nível Cliente
Visualização ao vivo das câmeras associadas à sua conta
Acesso às gravações históricas
Download de períodos específicos das gravações
Detalhes do Worker
Utilização do ZLMediaKit para:
Processamento dos streams de vídeo (rtsp/rtmp)
geração de streams hls para visualização ao vivo
gravação dos streams recebidos
scripts para:
upload automático das gravações para s3
limpeza de gravações antigas conforme período de retenção configurado
monitoramento de status das câmeras
notificações de eventos (câmeras offline/online)
gerenciamento do banco de dados com metadados das gravações
requisitos técnicos
interface web responsiva e intuitiva
api restful para comunicação entre front-end e worker
sistema de autenticação seguro
armazenamento em buckets s3
gerenciamento eficiente de banda e armazenamento
logs detalhados para auditoria
este sistema deve permitir a expansão fácil conforme a necessidade de adicionar mais câmeras ou integradores, com alta confiabilidade na gravação e disponibilidade dos vídeos arquivados.
De preferência usar docker para facilitar instalação.
Categoría Programación y Tecnología
Subcategoría Programación Web
¿Cuál es el alcance del proyecto? Cambio mediano
¿Es un proyecto o una posición? Un proyecto
Actualmente tengo Tengo las especificaciones
Disponibilidad requerida Según se necesite
Integraciones de API Cloud Storage (Dropbox, Google Drive, etc.), Otros (Otras APIs)
Roles necesarios Programador
Plazo de Entrega: No definido
Habilidades necesarias