MQTT Sub


MQTT Sub 节点建立一个 MQTT 客户端,用以订阅第三方 MQTT 服务器。

节点类型

Input。

输入和输出能力

该节点没有入口点,仅有 1 个出口点。输出为客户端从所订阅服务器检索到的消息,可以是任何格式。


存储输出的 topic 信息保存在 metadata 中,可由表达式 ${metadata.topic} 引用。

节点属性

../../_images/mqtt_sub.png


名称

该节点的名称。


Host

MQTT 服务器的 URL。


端口

MQTT 服务器的端口。


鉴权

验证该节点所发出请求所用的方法。其值如下所述。

  • 匿名:每次使用不同的 IP 地址发出匿名请求。
  • 用户名/密码:在鉴权请求中传递用户名/密码。如果选中此项,则必须填写以下字段。
    • 用户名:客户端登录服务器所用的用户名。
    • 密码:客户端登录服务器所用的密码。
  • 单向:在 MQTT 客户端对从服务器获取的凭证进行鉴权时,使用加密通信。如果选中此项,则需要填写以下字段。
    • 证书:由 MQTT 进行鉴权的、来自服务器的证书。
  • 双向:在 MQTT 客户端和服务器对彼此的凭证进行鉴权时,使用加密通信。如果选中此项,则需要填写以下字段。
    • 证书:由 MQTT 进行鉴权的、来自服务器的证书。
    • 客户端证书:由 MQTT 服务器进行鉴权的客户端证书。
    • 客户端证书密钥:要鉴权的客户端证书密钥。
    • 客户端密码:要鉴权的客户端密码。


Topic

MQTT 客户端所订阅 MQTT 服务器的 topic。最多可以指定 5 个 topics。


清除先前会话

每当客户端重新连接到服务器时,清除客户端和服务器之间的先前会话。


描述

该节点的描述。


测试连接

你可以点击 测试连接 按钮来测试 MQTT 连接。

使用限制

  • 连接数:1
  • 最大 topic 数:5
  • 由于 MQTT 服务器并非 EnOS 管理,EnOS 不保证每次连接都能成功,连接问题可能是由于服务器停机或其他 EnOS 无法控制的因数造成。

示例

输入示例

JSON 对象作为输入的示例:

{
   "externalId":"externalId",
   "timestamp":24214324324,
   "measurepoints":{
     "speed":32,
     "heat":40
   }
 }

输出示例

从 MQTT 服务器检索到的 JSON 对象示例。其主题信息存储在 metadata 中。

{
    "MetaData":{
        "topic":"office/temp"
    },
    "Body":{
        "externalId":"externalId",
        "timestamp":24214324324,
        "measurepoints":{
            "speed":32,
            "heat":40
        }
    }
}

相关节点