OnConnect() is not getting called. [message #1815736] |
Wed, 09 October 2019 13:48 |
Chinmaya Panigrahi Messages: 1 Registered: October 2019 |
Junior Member |
|
|
/* Even though other callbacks are getting called like OnDisconnect() or OnPublish(). Return value from OnDisconnect is 7 which means "Connection Lost". I do not know how to deal with it, would anyone please like to help me ?*/
static void onDisconnect(struct mosquitto *mosq, void *obj, int rc){
std::cout<<__FUNCTION__<<" : "<<__LINE__<<" : "<<mosquitto_strerror(rc)<<std::endl;
cout << "disconnect status..." << rc << endl;
// mosquitto_loop_stop(mosq, false); (void)obj, (void)mosq;
}
static void onConnect(struct mosquitto *mosq, void *userdata, int result){
std::cout<<__FUNCTION__<<" : "<<__LINE__<<" : mosquitto connect callback succeed. \n "<<std::endl;
}
static void onCallback(struct mosquitto *mosq, void *userdata, int level, const char *str){
// Pring all log messages regardless of level. (void)mosq, (void)userdata, (void)level; std::cout<<__FUNCTION__<<" : "<<str<<std::endl;
}
mosquitto_lib_init();
struct mosquitto * mosq = NULL;
const char *clientId = "ClientId";
mosq = mosquitto_new(clientId, true, NULL);
if (!mosq) {
std::cout<<__FUNCTION__<<" : "<<__LINE__<<" mosquitto_new failed. \n "<<std::endl;
return;
}else
std::cout<<__FUNCTION__<<" : "<<__LINE__<<" mosquitto_new succeed. \n "<<std::endl;
mosquitto_tls_opts_set(mosq, 1, NULL, NULL);
mosquitto_tls_set(mosq, "/etc/ssl/certs/ca-certificates.crt", NULL,
"/opt/usr_data/tests/LoaderPoc/certs/cert.pem",
"/opt/usr_data/tests/LoaderPoc/certs/privkey.pem", NULL);
mosquitto_connect_callback_set(mosq, onConnect);
mosquitto_disconnect_callback_set(mosq, onDisconnect);
mosquitto_log_callback_set(mosq, onCallback);
//mosquitto_publish_callback_set(mosq, onPublish);
const char *host = "a2eg3przjv23yh.iot.us-east-1.amazonaws.com";
auto ret = mosquitto_connect(mosq, host, 8883, 60);
cout << "connection status.." << ret <<endl;
auto loop_ret = mosquitto_loop_start(mosq);
cout << "Loop status..." << loop_ret << endl;
|
|
|
|
Powered by
FUDForum. Page generated in 0.03103 seconds