IoT 设备网络通信与蓝牙低功耗技术全解析
1. MQTT 协议概述
MQTT(Message Queuing Telemetry Transport)是一种为轻量级物联网客户端设备设计的发布 - 订阅协议。服务器(在 MQTT 中有时称为“代理”)更为复杂,通常不会在资源受限的设备上实现。与 MQTT 服务器之间的消息按主题组织,特定服务器可能支持多个主题,但客户端仅接收其订阅主题的消息。
MQTT 协议的客户端由 mqtt
模块实现:
import MQTT from "mqtt";
2. 连接到 MQTT 服务器
MQTT 构造函数通过一个包含三个必需参数的字典进行配置:
- host
:指示要连接的 MQTT 服务器。
- port
:连接的端口号。
- id
:此设备的唯一 ID。若两个具有相同 ID 的设备连接到 MQTT 服务器会出错,需确保 ID 真正唯一。
示例代码如下:
let mqtt = new MQTT({
host: "test.mosquitto.org",
port: 1883,
id: "iot_" + Net.get("MAC")
});
若 MQTT 服务器需要身份验证,可在配置字典中添加