MQTT(Message Queuing Telemetry Transport)是一种轻量级的、基于发布/订阅模式的通讯协议,主要用于物联网(IoT)设备之间的消息传递。MQTT协议被设计为在低带宽、不稳定的网络环境中使用,因此具有很好的可靠性和高效性。
MQTT协议由三个主要部分组成:客户端、代理(broker)和主题(topic)。客户端是指与代理连接的设备或应用程序,代理是指消息的中间人,它接收客户端的消息并将其传递给订阅了相关主题的其他客户端。主题是一种消息分类的方式,每个主题都有一个唯一的名称,客户端可以通过订阅主题来接收相关的消息。
MQTT协议的通讯流程如下:
客户端可以通过发布消息到代理来向其他客户端发送消息。消息发布需要指定消息内容、主题名称和服务质量(QoS)。服务质量分为三个等级:
客户端可以通过订阅主题来接收相关的消息。订阅需要指定主题名称和服务质量等级。客户端可以订阅多个主题,并且可以使用通配符来订阅多个相关的主题。
客户端可以主动断开连接,也可以由代理端断开连接。在断开连接时,客户端需要发送一个断开连接的消息给代理,以便代理可以清理相关的资源。
在本平台上,关于设备的数据信息、状态信息、错误报警信息都会通过MQTT
进行发布,用户可根据相应的权限和MQTT topic规则订阅相关消息。在本平台上,用户只有订阅自身账户下设备数据的权限,同步不能发布数据只能订阅。