产品简介

MQTT是一个客户端服务端架构的发布/订阅模式的消息传输协议。它的设计思想是轻巧、开放、简单、规范,易于实现。这些特点使得它对很多场景来说都是很好的选择,特别是对于受限的环境如机器与机器的通信(M2M)以及物联网环境(IoT)。

  • 主题规范
  • Topic分为两类,事件类和服务类。 事件是由云端订阅,设备发送消息。 服务是由设备侧订阅,云端发送消息。

  • 事件主题
  • 格式:{ProductId}/{DeviceId}/event/{EventName}/{InvokerId}/{RequestId}

  • 事件列表
  • 响应:{ProductId}/{DeviceId}/rsp/event/{EventName}/{InvokerId}/{RequestId}

  • 服务主题
  • 请求:{ProductId}/{DeviceId}/service/{ServiceName}/{InvokerId}/{RequestId}

  • 服务列表
  • 响应:{ProductId}/{DeviceId}/rsp/service/{ServiceName}/{InvokerId}/{RequestId}

    建立连接

    1)平台(或设备)与MQTT服务端建立连接时,平台(或设备)会向服务端发送Connect报文,服务端在收到这个报文之后会发一个Connack报文进行响应,以确认连接可用。
    2)平台与服务端成功建立连接之后,平台会向服务端订阅设备状态主题。
    3)设备与服务端成功建立连接之后,设备会向服务端订阅主题:设置配置、其他服务。

    设备上线

    1)设备向MQTT服务端发送设备上线请求;
    2)MQTT服务端将请求转发给云端;
    3)平台处理之后查询设备配置;
    4)平台向MQTT服务端发布设置配置服务;
    5)MQTT服务端将设置配置服务转发给设备;
    6)设备收到并处理之后向云端发送响应设置配置服务;
    7)MQTT服务端将响应设置配置服务转发给云端。