主要内容

mqttclient

创建连接到代理的MQTT客户端

描述

一个icomm.mqtt.Client对象在MATLAB中表示MQTT客户端®它连接到外部MQTT代理。

创建

描述

例子

mqttClient= mqttclient (brokerAddr创建连接到指定的代理的MQTT客户机brokerAddrbrokerAddr是MQTT代理的主机名或IP地址,包括连接协议。支持的协议包括TCP、WS、SSL和WSS。

mqttClient= mqttclient (brokerAddr名称=值)的函数选项和属性mqttClient使用可选的名称-值对。

输入参数

全部展开

MQTT代理的位置作为带有协议的URL,指定为字符串或字符向量。

例子:“tcp: / / broker.hivemq.com”

数据类型:字符串|字符

名称-值参数

指定可选参数对为Name1 = Value1,…,以=家,在那里的名字参数名称和价值对应的值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。

例子:端口= 8883

名称-值参数可以指定属性港口ClientID超时,KeepAliveDuration;以及以下选项:

连接到代理的用户名,指定为字符串或字符向量。

数据类型:字符|字符串

连接到代理的用户密码,指定为字符串或字符向量。

数据类型:字符|字符串

在安全连接期间用于代理身份验证的服务器根证书,指定为字符串或字符向量。

数据类型:字符|字符串

在安全连接期间用于客户端身份验证的证书,指定为字符串或字符向量。

数据类型:字符|字符串

用于客户端身份验证的私钥文件,与ClientCertificate用于安全连接期间的身份验证。

数据类型:字符|字符串

解密私有的密码ClientKey文件,指定为字符串或字符向量。

数据类型:字符|字符串

属性

全部展开

此属性是只读的。

连接到MQTT代理时使用的套接字端口号,指定为整数值。

例子:8883

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑

此属性是只读的。

连接到代理的客户端标识符,指定为字符串或字符向量。

数据类型:字符|字符串

此属性是只读的。

允许连接完成的时间,指定为以秒为单位的数值整数值或持续时间。

例子:Timeout = 60

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|持续时间

此属性是只读的。

代理和客户端之间允许的最大空闲时间,指定为以秒为单位的数值整数值或持续时间。如果在这段时间内没有流量,则客户端发出一个keep alive报文。

例子:KeepAliveDuration =分钟(5)

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|持续时间

此属性是只读的。

MQTT代理的位置,指定为字符串或字符向量。BrokerAddress标识MQTT代理的主机名或IP地址,包括连接协议。支持的协议包括TCP、WS、SSL和WSS。

例子:“tcp: / / broker.hivemq.com”

数据类型:字符|字符串

此属性是只读的。

客户端订阅的主题表。

数据类型:表格

此属性是只读的。

到代理的客户端连接的状态,作为逻辑返回1(连接)或0(没有连接)。如果连接状态是0,这可能表明与经纪人有问题;检查是否有正确的地址,清除对象,然后尝试重新创建它。

例子:1

数据类型:逻辑

对象的功能

订阅 订阅MQTT主题
退订 从MQTT主题取消订阅
从MQTT主题读取可用消息
偷看 查看来自MQTT主题的最新消息
冲洗 清除接收到的MQTT消息
将消息写入MQTT主题

例子

全部折叠

使用默认设置创建到HiveMQ公共代理的非安全MQTT客户端连接。

mqttClient = mqttClient (“tcp: / / broker.hivemq.com”
mqttClient =带有属性的客户端:BrokerAddress: "tcp://broker.hivemq.com" Port: 1883 ClientID: "" Timeout: 5 KeepAliveDuration: 60 Subscriptions: [0×3 table] Connected: 1 .连接

使用端口1883创建到HiveMQ公共代理的非安全MQTT客户端连接,并指定客户端ID为myClient

mqttClient = mqttClient (“tcp: / / broker.hivemq.com”ClientID =“myClient”、港口= 1883)
mqttClient = Client with properties: BrokerAddress: "tcp://broker.hivemq.com" Port: 1883 ClientID: "myClient" Timeout: 5 KeepAliveDuration: 60订阅:[0×3 table] Connected: 1 .连接

使用证书进行身份验证,在SSL上创建具有安全连接的MQTT客户机。在端口8884上将客户端连接到Eclipse mosquito™公共代理,并指定代理根证书、客户端证书和私钥。

mqttClientSSL = mqttclient(“ssl: / / mosquitto.org”端口= 8884,...CARootCertificate =“C: \ mqtt \ mosquitto.org.pem”...ClientCertificate =“C: \ mqtt \ client.pem”...ClientKey =“C: \ mqtt \ client.key”

创建一个与ThingSpeak™websockets连接的MQTT客户端。连接ThingSpeak上的MQTT接口需要ClientID用户名,密码

mqttClient = mqttClient (“ws: / / mqtt3.thingspeak.com”端口= 80,...用户名=“MyUserID”ClientID =“MyClientID”密码=“我的密码”

版本历史

R2022a中引入

Baidu
map