Pular para o conteúdo principal

Conectando SenseCAP ao Twilio via Node-RED

SenseCAP K1100 - The Sensor Prototype Kit representa a Seeed Studio concentrando a essência da comunicação LoRa® em tecnologia e produtos de inteligência de borda, para a implantação e domínio mais fáceis de aplicações LoRa® e IoT.

pir

Atualizável para sensores industriais

Com o controlador S2110 e o registrador de dados S2100 da SenseCAP, você pode facilmente transformar o Grove em um sensor LoRaWAN®. A Seeed não apenas o ajuda com a prototipagem, mas também oferece a possibilidade de expandir seu projeto com a série SenseCAP de robustos sensores industriais.

A carcaça IP66, configuração via Bluetooth, compatibilidade com a rede global LoRaWAN®, bateria interna de 19 Ah e poderoso suporte do APP fazem do SenseCAP S210x a melhor escolha para aplicações industriais. A série inclui sensores para umidade do solo, temperatura e umidade do ar, intensidade de luz, CO2, EC e uma estação meteorológica 8 em 1. Experimente o mais recente SenseCAP S210x no seu próximo projeto industrial bem-sucedido.

Sensor Industrial SenseCAP
S2100
Registrador de Dados
S2101
Temp. e Umidade do Ar
S2102
Luz
S2103
Temp. e Umidade do Ar & CO2
S2104
Umidade e Temp. do Solo
S2105
Umidade e Temp. do Solo & EC
S2110
Controlador LoRaWAN®
S2120
Estação Meteorológica 8 em 1

Twilio

Twilio é uma plataforma de engajamento de clientes usada por centenas de milhares de empresas e mais de dez milhões de desenvolvedores em todo o mundo para criar experiências únicas e personalizadas para seus clientes.

Twilio é conhecida por democratizar canais como voz, texto, chat, vídeo e e-mail por meio de APIs, tornando fácil para qualquer organização construir interações significativas com os clientes nos canais que eles preferem.

pir

Esta seção usará o kit SenseCAP K1100, bem como o console SenseCAP e o Node-RED, para concluir a tarefa de acionar o envio de uma mensagem do Twilio sob certas condições.

Se você ainda não instalou ou não sabe o que é Node-RED, consulte Tutoriais de Node-RED & SenseCAP.

Criar nó MQTT

Passo 1. Inicie o Node-RED

Inicie o Node-RED digitando o comando node-red no terminal e abra um navegador e insira o endereço http://localhost:1880 na barra de endereços para acessar o editor do Node-RED.

Passo 2. Criar nó MQTT

Usamos o nó Network -> mqtt in e configuramos o mqtt no formato da SenseCAP API, conforme solicitado no tutorial anterior.

  • Servidor: openstream.api.sensecap.seeed.cc

  • Porta: 1883

  • Protocolo: MQTT V3.1.1

  • Client ID: O formato é org-<Organization ID>-<Random ID>

    • <Orgnization ID> Seu ID de organização. Nós o obtivemos em Obter a SenseCAP API.
    • <Random ID> use seus próprios números ou letras minúsculas gerados aleatoriamente.
  • Formato do Tópico: /device_sensor_data/<OrgID>/<DeviceEUI>/<Channel>/<Reserved>/<MeasurementID>

OrgIDSeu ID de organização. Nós o obtivemos em Obter a SenseCAP API.
DevEUIIdentificação exclusiva dos dispositivos sensores. Essas informações podem ser encontradas na etiqueta na parte de trás do Grove - Wio E5, bem como no dispositivo do console SenseCAP.
ChannelUma interface física no dispositivo à qual o sensor está conectado. Para o kit K1100, o valor padrão aqui é 1.
ReservedCampos reservados.
MeasurementIDID do valor medido. Este ID pode ser encontrado na seção Measurement IDs da documentação SenseCAP

Passo 3. Validar nós MQTT

Depois de configurado, clique no botão Deploy no canto superior direito para verificar se a configuração foi bem-sucedida. Se estiver tudo preenchido corretamente, a palavra Connected será exibida.

Configurar Twilio

Passo 1. Registrar-se ou fazer login no Twilio

Se você já se registrou no Twilio, faça login no site do Twilio.

Se você não usa ou não se registrou no Twilio, conclua seu registro e faça login aqui.

Passo 2. Obter as informações necessárias

Podemos tentar usar um serviço gratuito que envia mensagens SMS para o celular que verificamos durante o registro.

Clique em Get a trial phone number na tela principal.

O Twilio irá então gerar automaticamente um número de telefone Twilio para você.

Na parte inferior da tela principal, em Account Info, você encontrará o que precisamos para criar uma conexão com o Twilio.

Anote o Account SID, Auth Token e My Twilio phone number, que usaremos depois no Node-RED.

Configurar Node-RED

Passo 1. Baixar Paletts do Twilio

Clique na barra de menu superior direita e selecione Settings.

Pesquise e instale node-red-node-twilio em Paletts -> Install.

Adicione twilio out da barra de armazenamento à esquerda, clique duas vezes nele para entrar na página de configuração e depois clique no botão de edição para editar o nó twilio out.

Passo 2. Editar o nó twilio out

Preencha os campos correspondentes com as informações que obtivemos na configuração anterior do Twilio. Em seguida, basta clicar no botão Add no canto superior direito.

Em seguida, preencha o número de celular que você registrou no Twilio.

nota

Observe que você precisa adicionar o prefixo "+ código do país" ao número de celular que você preencher aqui.

Passo 3. Configurar o nó function

O conteúdo do SMS pode ser definido no bloco function, e as condições de disparo podem ser que os dados relatados pela plataforma PaaS acionem certas regras, tudo isso pode ser personalizado no bloco de construção function.

Arraste o nó function da barra de funções à esquerda, clique duas vezes nele para entrar na página de edição e, em seguida, copie o código para On Message.

Por exemplo, nesta seção, quando um valor de sensor é recebido, o valor do sensor é enviado para o telefone e o código pode ser escrito assim.

var payload = msg.payload;
var topic = msg.topic;
var strs = topic.split("/");
var length = strs.length
if (length >= 2) {
var measurementId = strs[length - 1]
var value = payload.value
if (measurementId == 4100) {
msg.payload = "CO2:" + value
} else if (measurementId == 4103) {
msg.payload = "soilmoisture:" + value
} else if (measurementId == 4150) {
msg.payload = "accelX:" + value
} else if (measurementId == 4151) {
msg.payload = "accelY:" + value
} else if (measurementId == 4152) {
msg.payload = "accelZ:" + value
} else if (measurementId == 4192) {
msg.payload = "sound:" + value
} else if (measurementId == 4193) {
msg.payload = "light:" + value
} else if (measurementId == 4195) {
msg.payload = "tvoc:" + value
} else if (measurementId == 4097) {
msg.payload = "temperature:" + value
} else if (measurementId == 4098) {
msg.payload = "humidity:" + value
} else if (measurementId == 4175) {
msg.payload = "AIdetection_1:" + value
} else if (measurementId == 4176) {
msg.payload = "AIdetection_2:" + value
} else if (measurementId == 4177) {
msg.payload = "AIdetection_3:" + value
} else if (measurementId == 4178) {
msg.payload = "AIdetection_4:" + value
} else if (measurementId == 4179) {
msg.payload = "AIdetection_5:" + value
} else if (measurementId == 4180) {
msg.payload = "AIdetection_6:" + value
} else if (measurementId == 4181) {
msg.payload = "AIdetection_7:" + value
} else if (measurementId == 4182) {
msg.payload = "AIdetection_8:" + value
} else if (measurementId == 4183) {
msg.payload = "AIdetection_9:" + value
} else if (measurementId == 4184) {
msg.payload = "AIdetection_10:" + value
}
}
return msg;
nota

Fique de olho no saldo da sua conta, o código acima enviará um SMS de sensor diferente a cada cinco minutos. Isso pode esgotar rapidamente seu saldo se você usar o código acima diretamente! Recomendamos programar para um sensor específico em vez de enviar cada valor de sensor uma vez.

Passo 4. Deploy

Em seguida, conectamos todos os nós e clicamos no botão Deploy e, se tudo estiver configurado corretamente, você poderá ver o nó mqtt in mostrando connected.

Se você quiser ver as informações de log dos dados, pode adicionar um nó debug após o nó function.

Quando o Wio Terminal começar a ligar e funcionar e começar a enviar dados para o servidor SenseCAP PaaS, então poderemos verificar os dados no log de depuração do Node-RED.

Se tudo correr bem, você também receberá uma mensagem de texto do Twilio com os valores de dados do sensor.

Solução de problemas

P1: Por que não consigo encontrar a Palette no Node-RED?

R: Se você não conseguir encontrar a Palette nas configurações, verifique no seu terminal se há uma mensagem de erro ao iniciar o Node-RED.

O cenário mais comum é que sua versão do npm é muito antiga para iniciar o editor Palette.

Se sua situação for como a descrita acima, execute o Powershell como administrador e insira o seguinte comando para atualizar o npm.

npm install -g npm

Depois, basta reiniciar o Node-RED.

Suporte Técnico & Discussão de Produto

Obrigado por escolher nossos produtos! Estamos aqui para fornecer a você diferentes tipos de suporte para garantir que sua experiência com nossos produtos seja a mais tranquila possível. Oferecemos vários canais de comunicação para atender a diferentes preferências e necessidades.

Loading Comments...