更新时间:2022-02-24 GMT+08:00
设备登录
接口功能
设备在第一次绑定后,或者在设备重启后需要进行登录的流程。
接口描述
1 |
HW_INT IOTA_Login();
|
参数说明
无
接口返回值
说明:
此返回值是调用接口的同步返回结果,返回0只是说明接口调用成功,并不说明登录成功,登录成功需要收到IOTA_TOPIC_CONNECTED_NTY广播。登录前通过参数配置接口(IOTA_SetConfig)传入所需的登录信息。
返回结果
广播名称 |
广播参数 |
成员 |
描述 |
---|---|---|---|
IOTA_TOPIC_CONNECTED_NTY |
HW_MSG对象 |
无 |
登录成功或重连成功。 |
IOTA_TOPIC_DISCONNECT_NTY |
HW_MSG对象 |
EN_ULGN_IE_ERR_REASON |
登录失败或连接断开。 |
示例
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_DEVICESECRET, 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 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会自动尝试重新连接,并将实时状态通过这两个广播上报给第三方应用。
父主题: 直连设备接入