mosquitto_connect_callback_set()
时间: 2023-07-17 09:01:17 浏览: 130
`mosquitto_connect_callback_set()` 是一个函数,它用于设置在连接到 MQTT 代理(broker)时调用的回调函数。该函数是 Mosquitto MQTT 客户端库提供的一个功能。
当客户端成功连接到 MQTT 代理时,会触发连接回调函数。通过设置连接回调函数,可以在连接建立时执行自定义的操作,例如订阅主题、发送消息等。
以下是 `mosquitto_connect_callback_set()` 函数的示例用法:
```c
#include <mosquitto.h>
void on_connect(struct mosquitto *mosq, void *obj, int rc)
{
if (rc == 0) {
printf("Connected to MQTT broker\n");
// 在这里执行连接成功后的操作
} else {
printf("Failed to connect to MQTT broker: %s\n", mosquitto_strerror(rc));
}
}
int main()
{
struct mosquitto *mosq = NULL;
int rc;
mosquitto_lib_init();
mosq = mosquitto_new(NULL, true, NULL);
if (!mosq) {
fprintf(stderr, "Failed to create Mosquitto instance\n");
return 1;
}
mosquitto_connect_callback_set(mosq, on_connect);
// 其他设置和连接代码...
mosquitto_lib_cleanup();
return 0;
}
```
在这个示例中,`on_connect()` 函数被设置为连接回调函数。当客户端成功连接到 MQTT 代理时,会调用此函数,并根据返回的结果 `rc` 执行相应的操作。
阅读全文