void mqtt_message_handle(void* client, message_data_t* msg)
{
//始终进不来
printf("message comes...\n");
char *buf = msg->message->payload;
if (strstr(msg->topic_name, "command_resp")) {
//
}
}
static int get_token(mqtt_client_t *client){
mqtt_set_host(client, server);
mqtt_set_port(client, he_wu_port);
mqtt_set_user_name(client, imei);
mqtt_set_password(client, pid);
mqtt_set_client_id(client, imei);
mqtt_set_clean_session(client, true);
mqtt_connect(client);
char pub_topic[256] = {0};
char sub_topic[256] = {0};
//device/products/382381/devices/355750075160144/command
//device/products/382381/devices/355750075160144/command_resp
sprintf(pub_topic, "device/products/%s/devices/%s/command",pid, imei);
sprintf(sub_topic, "device/products/%s/devices/%s/command_resp",pid, imei);
printf("pub_topic:%s\n",pub_topic);
printf("sub_topic:%s\n",sub_topic);
//这里设置了handle
mqtt_subscribe(client, sub_topic, QOS0, mqtt_message_handle);
return he_wu_publish(client,pub_topic);
}
int main(void)
{
mqtt_client_t *client = NULL;
printf("welcome to mqtt client...\n");
client = mqtt_lease();
// mqtt_set_interceptor_handler(client,mqtt_message_handle);
get_token(client);
sprintf(creq_topic, "$sys/%s/%s/creq/+", pid, imei);
sprintf(crsp_topic, "$sys/%s/%s/crsp/", pid, imei);
sprintf(sqdata_topic, "$sys/%s/%s/sqdata", pid, imei);
while (1) {}
}