Reporting Device Service Data
API Function
This API is used by the gateway to report data of directly connected devices or indirectly connected devices to the IoT platform.
API Description
1 2 |
HW_INT IOTA_ServiceDataReport(HW_UINT uiCookie, const HW_CHAR *pcRequstId,
const HW_CHAR *pcDeviceId, const HW_CHAR *pcServiceId, const HW_CHAR *pcServiceProperties);
|
Parameter Description
Parameter |
Mandatory or Optional |
Type |
Description |
---|---|---|---|
uiCookie |
Optional |
unsign int |
The value ranges from 1 to 65535. |
pcRequstId |
Mandatory |
String |
Identifies a request. The request ID is used to match the service command delivered by the IoT platform. This parameter is mandatory if the reported data is the response to the command request initiated by the IoT platform. The value must end with \0. |
pcDeviceId |
Mandatory |
String |
Identifies a device. The value must end with \0. |
pcServiceId |
Mandatory |
String |
Identifies a service. The value must end with \0. |
pcServiceProperties |
Mandatory |
String |
Specifies the service attribute. The value must end with \0. |
Return Value
For details, see 4.2 Function Return Values.
Output
Broadcast Name |
Broadcast Parameter |
Member |
Description |
---|---|---|---|
IOTA_TOPIC_DATATRANS_REPORT_RSP/{deviceId} |
HW_MSG object |
EN_IOTA_DATATRANS_IE_RESULT |
Specifies the data reporting result. The value is 0 or 1.
|
Example
A user uses JSON components to assemble service attributes (pcServiceProperties) based on the format of profiles.
1 2 3 |
HW_UINT *uiLen;
IOTA_ServiceDataReport(1211, NULL, "xxxx_xxxx_xxxx_xxxx" , "DoorWindow", "{\"status\":\"OPEN\"}");
|
The device waits for the data reporting result.
1 2 3 4 5 6 7 8 9 10 11 12 |
//Developers call this API to register the function for subsequent processing after the device service data is reported.
HW_iNT Device_DataReportResultHandler(HW_UiNT uiCookie, HW_MSG pstMsg)
{
uiResult = HW_MsgGetUint(pstMsg, EN_IOTA_DATATRANS_IE_RESULT);
if (HW_SUCCESS != uiResult)
{
// retry with uiCookie
return 0;
}
return 0;
}
//After the device is added, register a broadcast to receive the service data reporting result: HW_BroadCastReg ("IOTA_TOPIC_DATATRANS_REPORT_RSP/XXXX_XXXX_XXXX_XXXX", Device_AddResultHandler).
|
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot