Meu projeto baseia-se em um ESP32 que recebe a informação BSSID do ponto de acesso. O mesmo deve enviar este código juntamente com o seu MAC ADRESS próprio para o servidor wnology.
Já tenho um código para envio.
O que preciso:
Configurar o frontend do servidor para receber estes dados, fazer uma comparativa com a base de dados, onde estes identificadores já estarão previamente mapeados. a partir da comparação, um template com tabelas com marca, modelo, numero de serie, BSSID e Setor deverá ser gerado.
Alguém pode me ajudar com estes passos ?
Agora, uma vez subindo estes dados, crie um workflow para acessar eles e comparar com uma DataTable, por exemplo.
1 - Para acessar estes dados, temos o bloco "Device State" (trigger)
2 - Com os blocos de “datatable” é possível pesquisar qual é o Setor correspondente.
3 - Usando um bloco “Device State” (de saída), é possível persistir o dado no atributo de um device
FZijvjc.png)
Olá ! Em minha ocasião, estou utilizando o simulador de Esp32 Workwi. ele envia os dados do BSSID e Macadress do dispositivo atribulado para o Wegnology. O servidor deve receber o bssid e comparar com a tabela BSSIDxSetor, e retornar a qual setor pertence o dispositivo.
A mesma lógica para o mac, comparar com tabela macadress x Equipamento, e retornar os dados completos do equipamento.
a parte do envio pelo simulador é bem sucedida, porém no debug do Wegnology não a recebo. Mesmo já tendo configurado o Endpoint.
Não estamos entendendo o que você cita “configurar o front do servidor”.
Não é necessário nenhum trabalho de front-end na Plataforma WEGnology, ou seja, desde que seja enviado o payload corretamente, nos valores já são salvos nos atributos do Device.
Você poderia anexar todo o código do ESP32 aqui?
Talvez poderemos te auxiliar nele, provavelmente o payload não está sendo gerado de acordo.
O que ocorre é o seguinte.
O programa roda e obtém o mac e o bssid, e envia para o token da wegnology. No console do programa do ESP retorna “myCustomData”: “Dados obtidos com sucesso no wegnology”, mostrando que está enviando corretamente para o servidor.
Após isto, segui as orientações de criação do workflow, porém dentro de cada um deles não sei direito como manusear. o Payload, o result path… e por fim, criar o template do usuário mostrando os valores, para ver aonde será necessário acertar o casamento de variáveis.
Pelo que entendi, você quer enviar as informações de BSSID e MAC ADRESS do ESP32. Então realizar uma consulta a um data table, com essas informações, para buscar informações referentes a Setor e Equipamento, mas não ficou claro o que gostaria de fazer com essas informações, se seria somente responder nessa API (endpoint) criado, ou se gostaria de publicar essas informações no timeseries do dispositivo. E após isso desenvolver uma interface que permita consultar essas informações.
No caso da imagem do flow que você enviou, você utilizou um Experience Endpoint, provavelmente sem autenticação, o que não é recomendado por questões de segurança. Recomendo utilizar conforme o tópico que o Alexandre comentou, utilizando MQTT, e passando credenciais de autenticação do dispositivo.
Após isso, no recebimento dos dados você teria que utilizar as queries de data table, Table: Get Rows Node, para buscar as informações de Setor e Equipamento das respectivas tabelas, usando filtros como BSSID == "{{data.BSSID}} nas consultas as tabelas, para retornar a linha referente a esse dispositivo, mas depende de como seus dados estão estruturados na tabela.
Então você tera que manipular esses dados retornado para o formato desejado, recomendo a leitura dessa documentação Accessing Payload Data, que trás referências de como manipular os dados em workflows.
Assim, você poderá utilizar esses dados para responder a API, ou então salvar esses dados no dispositivo, conforme sua necessidade, e então desenvolver uma interface para consulta posteriormente.