API de Monitoramento Externo
Objetivo
Para integradores que necessitam de visibilidade em tempo real, a consulta contínua à nossa Telemetry API introduz atrasos e gera sobrecarga tanto no lado do integrador quanto no lado do SmartgridOne. Para resolver isso, o controlador pode ser configurado para enviar telemetria a um endpoint designado fornecido pelo integrador. Este 'mecanismo webhook' permite streams de dados ao vivo com latência quase zero, contornando as limitações da consulta tradicional via API.
Configuração Inicial (Ponto de partida para novos usuários)
1. Verifique sua rede
Certifique-se de que seu SmartgridOne Controller tenha uma conexão de rede ativa.
2. Adicione seus dispositivos
Faça login na interface de comissionamento e verifique se os dispositivos estão adicionados ao SmartgridOne Controller.
3. Configure o webhook via 'fontes de dados externas'



4. Insira os parâmetros
-
A URL e o endpoint da API
-
O token de autorização bearer usado para a requisição da API. Para prevenir que um controlador comprometido seja usado para falsificar dados de outros dispositivos, recomendamos fortemente o uso de tokens únicos por controlador e a vinculação de cada token a uma localização específica na sua implementação.
-
A frequência com que os dados são enviados (em segundos, padrão é 60s)
-
Selecione quais dados devem ser enviados:
- Dados em nível de dispositivo contém todos os campos de dados especificados abaixo, por nó individual conectado ao SmartgridOne Controller.
- Nível por tipo de dispositivo contém dados agregados por tipo de dispositivo (ex: solar, armazenamento, fixo)
Depois, selecione incluir todos os dispositivos.

Dados do Endpoint
O endpoint deve aceitar uma requisição HTTP POST com os seguintes dados:
Se o nível por tipo de dispositivo foi selecionado:
{
"time": "<Unix Timestamp>",
"siteNodeId": "<Site NodeID>",
"grid": "<Campos da Grid>",
"solar": "<Campos Solar>",
"storage": "<Campos Storage>",
"heat_pump": "<Campos de Bomba de Calor>",
"switched_load": "<Campos de Carga Comutada>",
"variable_power_load": "<Campos de Carga de Potência Variável>"
Se o nível por dispositivo foi selecionado:
{
"time": "<Unix Timestamp>",
"siteNodeId": "<Site NodeID>",
"nodeId1": "<Campos do Nó>",
"nodeId2": "<Campos do Nó>",
...
}Mais informações sobre os campos individuais podem ser encontradas aqui: .
