【问题标题】:Can MQTT-SN v1.2 support the request-response pattern that is supported by MQTT v5?MQTT-SN v1.2 能否支持 MQTT v5 支持的请求-响应模式?
【发布时间】:2020-06-21 12:09:56
【问题描述】:

我阅读了 MQTT-SN 规范,但我不确定它是否也可以支持请求-响应模式。有谁知道吗?

试图实现这样的东西...... http://www.steves-internet-guide.com/mqttv5-request-response/

MQTT v5 发布命令可以指定响应主题,如 MQTT v5 规范中所示: https://docs.oasis-open.org/mqtt/mqtt/v5.0/mqtt-v5.0.html

4.10.1 基本请求响应(非规范) 请求/响应交互过程如下:

  1. MQTT 客户端(请求者)向主题发布请求消息。请求消息是具有响应主题的>应用程序消息。

  2. 另一个 MQTT 客户端(响应者)订阅了与发布请求消息时使用的主题名称匹配的主题过滤器。结果,它接收到请求消息。 >可能有多个响应者订阅了该主题名称,也可能没有。

  3. 响应者根据请求消息采取适当的行动,然后将>响应消息发布到请求>消息中携带的响应主题属性中的主题名称。

  4. 在典型用法中,请求者订阅了响应主题,从而接收到 >响应消息。但是,其他一些客户端可能订阅了响应主题,在这种情况下,该客户端也将接收和处理>响应消息。与请求消息一样,发送响应消息的>主题可以被多个客户端订阅,也可以不被订阅。

MQTT-SN 规范在这里 http://mqtt.org/new/wp-content/uploads/2009/06/MQTT-SN_spec_v1.2.pdf

只是写法不同,我不知道是否支持此功能。

最终,对于某些消息,我需要有一个不能留给 pub/sub fire and forget 模式的响应。连接需要 MQTT-SN v1.2,因为它通过 BLE 并且不支持 TCP/IP,因此没有常规的 MQTT v5。

我想我可以组成一个“响应主题”字段来放入接收客户端可以处理和响应的请求的有效负载中。但是,MQTT-SN v1.2 规范是否已经支持它?

【问题讨论】:

    标签: mqtt ios-mqtt-client-framework


    【解决方案1】:

    不,MQTT-SN v1.2 不包含在 v5 中添加到 MQTT 的功能。

    正如您所说,没有什么可以阻止您在消息负载中包含您自己的响应主题字段。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-25
      • 2020-05-10
      相关资源
      最近更新 更多