完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我正在使用 RTOS SDK 附带的示例之一:(examples/protocols/mqtt/tcp) 并且我添加了串行端口,因为我想发送要发布到 MQTT 代理的数据。所以在我的 UART 队列中,我调用
代码:全选esp_mqtt_client_publish() 但我没有客户端句柄,它只在回调中设置。我尝试使用客户端句柄的全局副本,但它没有用,除了是个坏主意: 代码:全选esp_mqtt_client_handle_t gclient = NULL; static esp_err_t mqtt_event_handler_cb(esp_mqtt_event_handle_t event) { esp_mqtt_client_handle_t client = event->client; gclient = client; int msg_id; // your_context_t *context = event->context; switch (event->event_id) { case MQTT_EVENT_CONNECTED: ESP_LOGI(TAG, \"MQTT_EVENT_CONNECTED\"); msg_id = esp_mqtt_client_subscribe(client, \"debug/test1\", 0); ESP_LOGI(TAG, \"sent subscribe successful, msg_id=%d\", msg_id); msg_id = esp_mqtt_client_subscribe(client, \"debug/test2\", 1); ESP_LOGI(TAG, \"sent subscribe successful, msg_id=%d\", msg_id); /* msg_id = esp_mqtt_client_publish(client, \"/topic/qos1\", \"data_3\", 0, 1, 0); ESP_LOGI(TAG, \"sent publish successful, msg_id=%d\", msg_id); 有没有什么优雅的方法可以让客户端在回调之外处理?或者另一种方法是创建自定义事件并将该消息发送到回调? |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
201个成员聚集在这个小组
加入小组493 浏览 1 评论
1903 浏览 2 评论
为blufi_device设置自定义名称,但是无法修改,为什么?
398浏览 4评论
请问ESP32-S2-WROOM怎么获得ESP32-S2外接FLASH的唯一序列号?
189浏览 3评论
ESP-Jumpstart例程中第5个工程:5_cloud连接报错是哪里的问题?
230浏览 2评论
用AT+CIPSNTPCFG=1,8,\"cn.ntp.org.cn\",\"ntp.sjtu.edu.cn\"更新不了时间怎么处理?
598浏览 2评论
279浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-3-15 06:07 , Processed in 0.583668 second(s), Total 39, Slave 33 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191