mqtt的全局变量
mqtt_client_t *lwip_mqtt;
mqtt的连接,不要直接复制粘贴哦,记得把参数设置成你项目中用到的数据
char LWIP_Connect(mqtt_client_t *client)
{
struct mqtt_connect_client_info_t ci;
err_t err;
ip_addr_t my_ip_addr;
memset(&ci, 0, sizeof(ci));
ci.client_user = "user name";
ci.client_pass = "user pwd";
ci.client_id = "mqtt_topic@@@client_id";
ci.keep_alive = 40;
IP4_ADDR(&my_ip_addr,1,1,1,1);
err = mqtt_client_connect(client, (const ip_addr_t *)&my_ip_addr, 1883,MQTT_connect_cb, 0, &ci);
if(err != ERR_OK ) {
if(err != ERR_ISCONN){
printf("mqtt connect err,ecode %d",err);
return -1;
}
}
return 0;
}
该函数执行完之后只是告诉你是否可以进行连接。连接没连接上需要对回调函数MQTT_connect_cb()进行判断;
void MQTT_connect_cb(mqtt_cl