mqtt订阅(接收)一条消息
支持芯片: ESP32-S3系列void mqtt_sub(str topic,int qos);
//topic:mqtt消息的topic
//qos:mqtt消息的qos
关于订阅产生的消息事件
mqtt会产生onWIFI32事件,消息编号7;在onWIFI32事件中,可以通过wifi_getinfo函数调用下面参数
编号 | 内容 | 返回 | 描述 |
---|---|---|---|
0 | wifi_m | int | WIFI事件编号,即app.onWIFI32(int m)中的m,在本函数下m=7 |
2 | msgnum | int | 消息编号,详见下表 |
3 | p1 | int | 返回参数1,详见参见下表 |
4 | p2 | int | 返回参数2,详见参见下表 |
21 | d1 | int | 消息参数d1,详见对应语句描述 |
22 | d2 | int | 消息参数d2,详见对应语句描述 |
23 | topic | str | mqtt消息的topic |
24 | mqttdata | str | mqtt消息的数据 |
其中对于不同的msgnum,各参数定义如下:
msgnum | 内容 | 说明 | p1 | p2 | d1 | d2 |
---|---|---|---|---|---|---|
1 | CONNECTED | 服务器连接成功 | - | - | - | - |
2 | DISCONNECTED | 连接断开 | - | - | - | - |
3 | SUBSCRIBED | 订阅消息 | msg_id | - | topic_len | data_len |
4 | UNSUBSCRIBED | 退订 | msg_id | - | - | - |
5 | PUBLISHED | 发布消息 | msg_id | - | - | - |
6 | DATA | 收到消息 | msg_id | qos | topic_len | data_len |
7 | ERROR | 出现错误 | - | - | - | - |
示例
mqtt_init(); //配置文件初始化
mqtt_setv(0,"mqtt://i.a-diy.cn");
mqtt_connect();
mqtt_sub("hello",1);
//......