您可以找到 MQTTSubscribe 和 MQTTPublish 节点用于处理 MQTT 消息的值。 您还可以使用本地环境中的字段来动态变更 MQTTPublish 节点的行为。
LocalEnvironment 字段
使用
MQTTSubscribe 节点时,它会存储您可以在 LocalEnvironment.MQTT.Input 消息树。 下表描述了此结构中的字段。
表 1. LocalEnvironment.MQTT.Input 子树中的元素列表
| 元素名 |
元素数据类型 |
描述 |
| Duplicate |
字符 |
此消息是否与先前消息重复。 设置为TRUE或者FALSE. |
| Retained |
字符 |
此消息是否为保留的消息。 设置为TRUE或者FALSE。保留设置为TRUE如果消息由服务器保留,并且现在在客户机首次连接到服务器时发送。 |
| 主题 |
字符 |
这是将所接收消息发布到的 MQTT 主题的名称。 |
| QualityOfService |
字符 |
这是已接收到的消息的服务质量。 设置为0(最多一次) ,1(至少一次) ,或2(正好一次)。 |
此结构中填充了写入
MQTTSubscribe 节点的 Out 终端的每条消息。
LocalEnvironment.Destination 字段
使用
MQTTPublish 节点时,可以使用 LocalEnvironment中的元素覆盖某些属性。Destination.MQTT.Output 消息树。 下表描述了此结构中的字段。
表 2. LocalEnvironment.Destination.MQTT.Output 子树中的元素列表
| 元素名 |
元素数据类型 |
描述 |
| 已保留 |
字符 |
此消息是否为保留的消息。 设置为TRUE或者FALSE. 缺省值为FALSE. 设置为TRUE如果在传递到所有当前连接的客户机之后,主题的消息必须由 MQTT 服务器保存,然后在这些客户机连接到该主题时传递到新客户机。 为主题保留的每条消息将替换为该主题保留的先前消息。 这样,设备在连接到主题时将立即接收到保留的最新消息。 |
| TopicName |
字符 |
这是消息将发布到的 MQTT 主题的名称。 |
| qos |
字符 |
这是所发布的消息的服务质量。 设置为0(最多一次) ,1(至少一次) ,或2(正好一次)。 |
| URL |
字符 |
用于连接到 MQTT 服务器的 URL。 URL 包含协议、主机名和端口。 例如:tcp://myMQTTserver.com:1883 或者,如果连接已加密,该 URL 为:ssl://myMQTTserver.com:8883 如果设置了, URL 属性的值优先于以下MQTT消息流节点属性的值:
|
LocalEnvironment.WrittenDestination 字段
当您使用
MQTTPublish节点时,它会将信息存储在 LocalEnvironment.WrittenDestination.MQTT消息树中,您可以访问这些信息。 下表描述了此结构中的字段。
表 3. LocalEnvironment.WrittenDestination.MQTT 子树中的元素列表
| 元素名 |
元素数据类型 |
描述 |
| ClientId |
字符 |
这是客户机的唯一名称。 |
| DeliveryToken.isComplete |
BOOLEAN |
指示消息是否已成功发布到 MQTT 主题。 设置为TRUE或者FALSE. |
此结构中填充了写入
MQTTPublish 节点的 Out 终端的每条消息。