MQTT协议

入门

MQTT基础

MQTT是一种轻量级的发布-订阅消息传递协议,它可能最适合各种物联网设备。

你可以在此处找到有关MQTT的更多信息,ThingsBoard服务器支持QoS级别0(最多一次)和QoS级别1(至少一次)以及一组预定义主题的MQTT代理。

客户端

你可以在网上找到大量的MQTT客户端库,本文中的示例将基于Mosquitto和MQTT.js您可以使用我们的Hello World指南中的说明。

MQTT连接

我们将在本文中使用令牌凭据对进行设备访问,这些凭证稍后将称为$ACCESS_TOKEN应用程序需要发送用户名包含$ACCESS_TOKEN的MQTT CONNECT消息。

连接状态码说明:

  • 0x00 连接成功 - 成功连接

  • 0x04 连接失败 - 用户名或密码错误。

  • 0x05 连接未授权 - -用户名包含无效的 $ACCESS_TOKEN

Key-value格式

支持以JSON格式的key-value字符串,值可以是string、bool、float、long或者二进制格式的序列化字符串;

MQTT连接配置

userName: GP1109N12345678(在平台获取访问令牌password: (无)

TOPIC主题发布接口列表

topic

Qos-级别

认证方式

注释

1

v1/gateway/connect

1

accessToken

连接到网关

2

v1/gateway/disconnect

1

accessToken

断开网关

3

v1/gateway/attributes

1

accessToken

设备属性

4

v1/gateway/telemetry

1

accessToken

数据遥测

payload格式例如:

v1/gateway/telemetry

网关心跳包实例:

终端数据包实例:

在上面的示例中我们"ts":"1609144280398",是具有毫秒精度的Unix时间戳。例如:值’1609140420031’转换后是’2020-12-28 16:31:20’。

最后更新于

这有帮助吗?