Pushing Device Event Notifications
Typical Scenario
After an NA subscribes to device event notifications (the notification type is deviceEvent) on the IoT platform, the IoT platform sends a notification message to the NA when the IoT platform receives the event message reported by the device.
API Function
This API is used by the IoT platform to push notification messages to an NA that has subscribed to device event notifications.
Note
- When subscribing to platform service data, an NA must subscribe to the specified callback address in the API description. The server and port in the callback address are the public IP address and specified port of the NA.
- An NA receives the content of a push message by inheriting the PushMessageReceiver class and rewriting the callback API.
- If the callback address is not the address of the NA, the NA must implement the original callback API. For details on the API content, see Message Push in the Huawei IoT Platform Northbound API Reference.
API Description
Callback URL |
https://server:port/v1.0.0/messageReceiver |
---|---|
Callback API |
function handleDeviceEvent(NotifyDeviceEventDTO $body) |
Class |
PushMessageReceiver |
Parameter Description
NotifyDeviceEventDTO structure
Parameter |
Mandatory or Optional |
Location |
Description |
---|---|---|---|
$notifyType |
Mandatory |
body |
Indicates the notification type. The value is deviceEvent. |
$header |
Mandatory |
body |
For details, see DeviceEventHeader structure. |
$body |
Mandatory |
body |
Indicates the content of the event message. |
Parameter |
Mandatory or Optional |
Location |
Description |
---|---|---|---|
$eventType |
Mandatory |
body |
Indicates the event type. |
$from |
Mandatory |
body |
Indicates the address of the message sender.
|
$timestamp |
Mandatory |
body |
Indicates the timestamp. The value is in the format of yyyyMMdd'T'HHmmss'Z', for example, 20151212T121212Z. |
$eventTime |
Mandatory |
body |
Indicates the time when an event is reported. The value is in the format of yyyyMMdd'T'HHmmss'Z', for example, 20151212T121212Z. |
$deviceId |
Mandatory |
body |
Identifies a device. |
$serviceType |
Mandatory |
body |
Indicates the type of the service to which a command belongs. |
Response Parameters
Status Code: 200 OK
Request Example
Method: POST Request: {callbackUrl} Header: Content-Type:application/json Body: { "notifyType":"deviceEvent", "header":{ "eventType":"*******", "from":"/devices/{deviceId}/services/{serviceId}", "deviceId":"*******", "serviceType":"*******", "timestamp":"20151212T121212Z", "eventTime":"20151212T121212Z" }, "body":{ "usedPercent":80 } }
Response Example
Response: Status Code: 200 OK
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