Atualizar README.md

This commit is contained in:
2026-03-14 22:53:53 +00:00
parent 0adfa53f09
commit 1c99bd9ea7
+27 -58
View File
@@ -1,68 +1,37 @@
🔥 V-Fire Monitor - Notifier Master (v1.0) # 🔥 V-Fire Monitor - Notifier Master (v1.0)
O V-Fire Monitor é uma solução avançada de monitoramento e gestão para centrais de alarme de incêndio da linha Notifier (NFS-320, NFS-640, NFS-3030). Desenvolvido para a Voltec, o software atua como um gateway inteligente entre o protocolo Modbus/TCP das placas BACNET-GW-3 e o sistema de monitoramento Zabbix, oferecendo uma interface web intuitiva e um sistema de licenciamento proprietário.
🚀 Funcionalidades Principais O **V-Fire Monitor** é uma solução robusta de monitoramento e gestão para centrais de alarme de incêndio da linha **Notifier (NFS-320, NFS-640, NFS-3030)**. Desenvolvido para a **Voltec**, o software atua como um gateway inteligente entre o protocolo Modbus/TCP das placas BACNET-GW-3 e o sistema de monitoramento Zabbix, oferecendo uma interface web intuitiva e um sistema de licenciamento proprietário.
Monitoramento Multi-Node: Capacidade de monitorar múltiplas centrais simultaneamente via IP.
Auto-Discovery Ultra: Varredura inteligente de endereços Modbus (1-600) para identificação automática de dispositivos. ---
Integração Nativa Zabbix: Envio automatizado de Descoberta de Baixo Nível (LLD), status de eventos e integridade de comunicação. ## 🚀 Funcionalidades Principais
Gestão de Licenciamento: Proteção por Hardware ID (HWID) e controle de expiração por data. * **Monitoramento Multi-Node:** Gerenciamento de múltiplas centrais simultaneamente via IP/Modbus.
* **Auto-Discovery Ultra:** Varredura automática de endereços Modbus (registradores 1-600) para identificação instantânea de dispositivos.
* **Integração Nativa Zabbix:** * Envio de **LLD (Low Level Discovery)** para autocadastro de itens.
* Monitoramento de **Status de Evento** (Alarme, Normal, Removido).
* Monitoramento de **Integridade de Comunicação** (Link de dados do ponto).
* **Gestão de Licenciamento:** * Proteção por **Hardware ID (HWID)** vinculada à máquina física.
* Controle de expiração por data com contador regressivo no painel.
* **Persistência de Dados:** Nomes personalizados de sensores são preservados no banco de dados local (`.json`), mesmo após novos scans.
* **Interface Web Profissional:** Painel em *Dark Mode* com indicadores visuais coloridos e status em tempo real.
Persistência de Dados: Nomes personalizados de sensores são preservados mesmo após novas varreduras. ---
Interface Web Responsiva: Painel escuro (Dark Mode) com atualização em tempo real e indicadores visuais de status (Normal, Incidente, Removido). ## 📂 Estrutura do Projeto
📂 Estrutura do Repositório * `monitor.py`: Core do sistema. Gerencia o loop de leitura Modbus, o servidor Flask e o envio de métricas via Zabbix Sender.
monitor.py: O "cérebro" do sistema. Gerencia o loop Modbus, o servidor Flask e a integração com Zabbix. * `generator.py`: Ferramenta administrativa da Voltec para gerar seriais de ativação criptografados.
* `templates/`:
* `login.html`: Interface de autenticação segura.
* `index.html`: Dashboard principal com monitoramento de nós, sensores e licença.
* `config_nodes.json`: Arquivo de persistência para IPs das centrais e endereços do servidor Zabbix.
* `mapa_dispositivos.json`: Mapeamento detalhado de cada endereço Modbus e seu rótulo personalizado.
generator.py: Ferramenta interna da Voltec para geração de seriais de ativação baseados em HWID. ---
templates/: ## 🛠️ Instalação e Requisitos
login.html: Tela de acesso restrito. ### Dependências Python
```bash
index.html: Dashboard principal com indicadores de sensores e status de licença. pip install flask flask-login pyModbusTCP zabbix-utils cryptography
config_nodes.json: Armazena as configurações de IP das centrais e dados do servidor Zabbix.
mapa_dispositivos.json: Banco de dados local com o mapeamento de endereços e nomes dos sensores.
🛠️ Requisitos de Instalação
Dependências Python
Bash
pip install flask flask-login pyModbusTCP zabbix-utils cryptography
Configuração no Zabbix
Para o funcionamento pleno, o Host no Zabbix deve possuir:
Regra de Descoberta (LLD): Chave notifier.discovery (Tipo: Zabbix Trapper).
Protótipos de Itens:
notifier.status[{#PONTO_LABEL}]: Status do evento.
notifier.comm[{#PONTO_LABEL}]: Integridade da comunicação do ponto.
node.status[{#NODE_NOME}]: Status online/offline da central.
🔑 Sistema de Licenciamento
O software opera sob um regime de licença protegida.
Ao iniciar pela primeira vez, o sistema exibirá o Hardware ID.
Utilize o generator.py para criar um serial válido para este ID.
Insira o serial na interface web para liberar as funções de monitoramento.
🛡️ Segurança e Docker (Preview)
O projeto está preparado para ser conteinerizado. O uso de volumes é mandatório para as seguintes persistências:
/etc/machine-id (Leitura do hardware real).
Arquivos .json (Configurações e Mapas).
Arquivo .key (Licença ativa).
📝 Autor e Suporte
Desenvolvido por Syllas para Voltec - Soluções em Prevenção de Incêndio.