设备管理 IOTDM(联通用户专用)-设备登录:示例

时间:2024-07-03 16:54:07

示例

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
Config_Get(DeviceId,pcDeviceId); 
Config_Get(DeviceSecret,pcDeviceSecret); 
Config_Get(AppId,pcAppId); 
Config_Get(HAAddr,pcHAServerAddr); 
Config_Get(LVSAddr,pcLVSServerAddr); 

IOTA_SetConfig(EN_IOTA_CFG_DEVICEID, pcDeviceId); 
IOTA_SetConfig(EN_IOTA_CFG_DEVI CES ECRET, pcDeviceSecret); 
IOTA_SetConfig(EN_IOTA_CFG_APPID, pcAppId); 
IOTA_SetConfig(EN_IOTA_CFG_HA_ADDR, pcHAServerAddr); 
IOTA_SetConfig(EN_IOTA_CFG_LVS_ADDR, pcLVSServerAddr); 

IOTA_Login();

然后等待Agent Lite的连接状态广播

需要提前实现连接状态通知广播接收处理函数,建议:

  1. 对于网关设备,在连接成功的处理函数中需要进行非直连设备状态上报的处理,并且将缓存的所有上报数据进行上报。
  2. 在连接断开的处理函数中记录设备断开状态,之后如果有数据上报,需要进行缓存,等到连接成功后再进行上报。
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
// 开发者注册该函数进行连接成功后的处理 
HW_iNT Device_ConnectedHandler(HW_UiNT uiCookie, HW_MSG pstMsg) 
{
    //update device states 
    //send buffer data 
    return 0;
}
// 开发者注册该函数进行连接失败后的处理 
HW_iNT Device_DisconnectHandler(HW_UiNT uiCookie, HW_MSG pstMsg) 
{
    //stop reporting data 
    return 0;
}
//绑定广播接收处理函数 
HW_BroadCastReg(IOTA_TOPIC_CONNECTED_NTY, Device_ConnectedHandler);
HW_BroadCastReg(IOTA_TOPIC_DISCONNECT_NTY, Device_DisconnectHandler);

设备登录后,表示该设备已经成功的连接到 物联网平台

连接成功后,如果因为网络或服务器原因导致连接断开,Agent Lite会自动尝试重新连接,并将实时状态通过这两个广播上报给第三方应用。

support.huaweicloud.com/sdkreference-iot/iot_06_1113.html