我在一台PC (UBUNTU16.04)上安装了ThingsBoard服务器,在另一台PC(UBUNTU18.04)上安装了ThingsBoard网关,为了发送数据到ThingsBoard网关,我在另一台PC上安装了Mosquitto broker。我按照配置指南将broker连接到网关以及服务器(使用访问令牌和主机ip)。
我把温度传感器连接到ESP32。当我试图通过MQTT将数据发送到网关时,数据没有到达我在这里使用的gateway.The主题“v1/网关/遥测”,以便发布数据。
我们可以使用网关设备ID发送数据吗?如何使用主题、设备id或设备访问令牌发送数据?(来自设备)
所有PC都连接到同一网络(专用网络)。
我正面临着这个问题,有没有人能帮我解决一下……
发布于 2020-01-16 20:46:35
您需要在MQTT代理和您的服务器之间创建代理层。
var mqtt = require('mqtt'), url = require('url');
var client = mqtt.connect('mqtt://localhost:1883',
{
username: '<username>',
password: '<password>'
});
console.log("Connected to MQTT Broker:- localhost” + client.toString());
var awsIot = require('aws-iot-device-sdk');
var device = awsIot.device({
keyPath: Certificate key file path,
certPath: Certificate file path,
caPath: Certificate root file path,
clientId: AWS Thing Name,
region: AWS IoT Broker region,
});
device.on('connect', function ()
{
console.log("Connected to AWS IoT Broker:- " + device.toString());
});
client.on('connect', function()
{
//subscribe to a topic (#)
client.subscribe('#', function ()
{
client.on('message', function (topic, message, packet) {
console.log("Received :-" + message + " on " + topic);
device.publish(topic, message);
console.log("Sent :-" + message + " on " + topic);
});
});
});像这样的东西可能会对你有帮助。
https://stackoverflow.com/questions/59769966
复制相似问题