Saúde dos módulos
Cada linha é verificada direto (systemd + porta interna do serviço), nunca através de outro módulo — continua funcionando mesmo se algo mais estiver fora do ar.
| Módulo | Serviço (systemd) | Resposta HTTP |
|---|
Informações gerais
Usuários
| Nome | Tenant | Ativo |
|---|
Nova estação
Estações cadastradas
| Nome | Tipo | Município/Estado | Lat, Lon |
|---|
Novo tenant
Tenants cadastrados
| Nome | Criado em |
|---|
Novo device
"Decodificador" (campos fixos, formato hex) e "Script de decodificação" (catálogo em Decodificadores) são mecanismos alternativos — use um ou outro, não os dois. Um device com script associado ignora o "formato" do tópico MQTT (o script decide sozinho).
Devices cadastrados
| Device ID | Estação | Modelo | Script (MQTT) | Tenant |
|---|
Variáveis (dicionário de tags)
Tags são criadas automaticamente (importação de CSV, DADDS etc.) - aqui só é possível corrigir o nome de exibição e a unidade de uma tag já existente.
| Tag | Nome | Unidade | Fonte |
|---|
Novo decodificador (formato HEX)
Um decodificador ("decoder profile") define, campo a campo, como interpretar um payload binário (HEX) — só é usado por devices com formato=hex. Formatos "linha" e "json" são auto-descritivos e não precisam disso.
Decodificadores cadastrados
| Nome | Versão | Modelo | Campos |
|---|
Novo script de integração
O script roda periodicamente num ambiente Python isolado, e deve inserir os dados chamando a API de recepção (M1) — veja a variável de ambiente M1_INGEST_BASE_URL e, se uma estação alvo for escolhida, TARGET_DEVICE_ID.
Hora base ancora o agendamento a um horário do dia (ex: intervalo 1440 min + hora base 01:00 = todo dia às 01:00). Sem hora base, o intervalo só conta a partir de quando o script foi (re)agendado.
Scripts cadastrados
| Nome | Ativo | Intervalo | Estação | Última execução |
|---|
Importar CSV
A primeira coluna do arquivo é sempre o timestamp. Informe ao menos a linha de cabeçalho ou a linha de tags.
Preview
Progresso da importação
Configuração geral do GIS (M13)
Vale pra todas as camadas com histórico (linha do tempo) — REDEMET/NASA FIRMS/INMET. A camada de estações (M5) fica de fora (sempre ao vivo, sem cache).
Configuração por camada
Camadas sem intervalo ficam com a captura periódica pausada (ex: REDEMET-AMDAR, cujo endpoint da fonte externa está fora do ar). A camada de estações (M5) não usa cache — sem intervalo, sempre ao vivo. Retenção em branco = usa o valor geral acima (as camadas de imagem — radar/satélite — já vêm com retenção própria mais curta, por causa do volume de disco). Cor: só se aplica a camadas genéricas sem escala automática por variável (ex: SIGMET, AMDAR); em branco = cor cíclica automática.
| Camada | Submódulo | Intervalo (min) | Retenção (dias) | Cor |
|---|
Camadas de desenho — trocar dono
Cada camada de desenho (pontos/linhas/polígonos criados no mapa por um usuário) tem um único dono, que é quem edita — o admin só visualiza. Trocar o dono aqui muda quem administra a camada (não altera o conteúdo desenhado). Usado também quando um usuário é excluído: a(s) camada(s) dele passam automaticamente para o admin, mas ficam listadas aqui pra redistribuir depois.
| Camada | Dono atual | Novo dono |
|---|
Nova plataforma (DCP)
Plataformas cadastradas
Mensagens de sincronização de GPS (a cada ~24h) sempre começam com aspas (") e não são decodificadas — só atualizam "Última sinc. GPS". "Última transmissão" cobre qualquer mensagem com conteúdo real.
| Platform ID | Estação | Última transmissão | Última sinc. GPS | Script | Ativo |
|---|
Scripts de decodificação: gerenciados em Decodificadores (catálogo central, compartilhado por Satélite/Recepção Genérica/FTP).
Nova estação
Estações cadastradas
O sistema externo deve enviar um POST pra <URL base>/m10-generico/api/receber/<token>, com a mensagem no corpo da requisição (texto puro). O token é o segredo que identifica a estação — trate como senha.
| Nome | Estação | Token | Última mensagem | Script | Ativo |
|---|
Scripts de decodificação: gerenciados em Decodificadores (catálogo central, compartilhado por Satélite/Recepção Genérica/FTP).
Nova estação
Estações cadastradas
O datalogger deve enviar o arquivo por FTP direto pro IP da VM, porta 2121, usando a pasta (usuário) e senha da estação — nunca pelo domínio/nginx. Cada estação só enxerga a própria pasta.
| Nome | Estação | Pasta/usuário FTP | Último arquivo | Script | Ativo |
|---|
Scripts de decodificação: gerenciados em Decodificadores (catálogo central, compartilhado por Satélite/Recepção Genérica/FTP).
Catálogo de scripts
Compartilhado por Satélite (DADDS), Recepção Genérica, Recepção FTP e devices MQTT — um script cadastrado aqui fica disponível pra ser associado em qualquer uma dessas origens. Contrato: payload bruto no stdin, JSON {"leituras": {"TAG": valor}} (ou lista de objetos, um por leitura/timestamp) no stdout.
| Nome |
|---|
Associações (quem usa qual script)
Esta tabela é só consulta. Pra criar ou trocar qual script uma estação/device usa, use o campo "Script de decodificação" no cadastro da própria origem — Satélite: aba Satélite (DADDS), campo do formulário da plataforma; Recepção Genérica/FTP: aba correspondente, campo do formulário da estação; Device MQTT: aba Cadastros → Devices, campo "Modelo do device"/decoder. O botão "Editar na origem" abaixo leva direto pra aba certa.
| Origem | Identificação | Script | Criado em |
|---|
Manuais da plataforma
Documentação completa do sistema, em HTML (leitura no navegador) e PDF (download) — arquivos estáticos, sem depender de nenhuma API.
| Manual |
|---|
API Externa (M9)
Uso das APIs de leitura consumidas por sistemas externos via token — tokens são criados em Cadastros → Usuários → Configurar de cada usuário.
Requisições por dia (últimos 30 dias)
| Dia | Requisições |
|---|
Requisições por usuário
| Usuário | Token | Total de requisições | Último uso |
|---|
Configuração da plataforma (whitelabel.config.json)
Editar e salvar aqui já aplica no M7 — não precisa rebuild, só recarregar a página do frontend.