如何使用Username和Password实现MQTT连云

更新时间:2022-09-13 03:06:15

本文介绍免预注册一型一密接入方式使用UsernamePassword实现MQTT连云的方法。

在一型一密接入方式中,其中免预注册的方式(即设备首次连接物联网平台时,平台自动创建设备身份并下发密钥给设备) 下发的密钥不是Produckey、DeviceName、DeviceSecret,而是ClientId、Username、Password。

对于这种情况,LinkSDK 4.x提供了三个设置选项供设备接入,分别是:AIOT_MQTTOPT_USERNAMEAIOT_MQTTOPT_PASSWORDAIOT_MQTTOPT_CLIENTID

示例代码如下:

    char *user_name  = "demo_user_name";
    char *password = "demo_passwd";
    char *client_id = "demo_client_id";
    aiot_mqtt_setopt(mqtt_handle, AIOT_MQTTOPT_USERNAME, user_name);
    aiot_mqtt_setopt(mqtt_handle, AIOT_MQTTOPT_PASSWORD, password);
    aiot_mqtt_setopt(mqtt_handle, AIOT_MQTTOPT_CLIENTID, client_id);

用户再调用aiot_mqtt_connect就可将设备连接至物联网平台。