Pushing Device Information Change Notifications
Typical Scenario
After an NA subscribes to device information change notifications (the notification type is deviceInfoChanged) on the IoT platform, the IoT platform sends a notification message to the NA when the device configuration or status (such as manufacturer, location, version and online status) changes.
API Function
This API is used by the IoT platform to push notification messages to an NA that has subscribed to device information change notifications.
Note
The NA must return a response code after receiving a message pushed by the IoT platform.
API Prototype
Method |
POST |
---|---|
URL |
The URL is determined by callbackUrl in the subscription request sent by the NA. |
Transport Protocol |
HTTPS/HTTP |
Request Parameters
Parameter |
Mandatory or Optional |
Type |
Location |
Description |
---|---|---|---|---|
notifyType |
Mandatory |
String |
body |
Indicates the notification type. The value is deviceInfoChanged. |
deviceId |
Mandatory |
String |
body |
Uniquely identifies a device. The value of this parameter is allocated by the IoT platform during device registration. |
gatewayId |
Mandatory |
String |
body |
Identifies a gateway. The gateway ID is the same as the device ID if the device is a directly connected device. If the device is an indirectly connected device, the gateway ID is the device ID of the directly connected device (that is, the gateway) with which it associates. |
deviceInfo |
Mandatory |
DeviceInfo |
body |
Indicates information about the device. For details, see DeviceInfo structure. |
Parameter |
Mandatory or Optional |
Type |
Location |
Description |
---|---|---|---|---|
nodeId |
Mandatory |
String(256) |
body |
Uniquely identifies a device. Generally, the MAC address, serial number, or IMEI is used as the node ID.
NOTE:
When the IMEI is used as the node ID, the node ID varies depending on the chipset provided by the manufacturer.
|
name |
Optional |
String(256) |
body |
Indicates the device name. |
description |
Optional |
String(2048) |
body |
Indicates the device description. |
manufacturerId |
Optional |
String(256) |
body |
Uniquely identifies a manufacturer. |
manufacturerName |
Optional |
String(256) |
body |
Indicates the manufacturer name. |
mac |
Optional |
String(256) |
body |
Indicates the MAC address of the device. |
location |
Optional |
String(2048) |
body |
Indicates the device location. |
deviceType |
Optional |
String(256) |
body |
Indicates the device type. The upper camel case is used, for example, MultiSensor, ContactSensor, and CameraGateway. |
model |
Optional |
String(256) |
body |
Indicates the device model. |
swVersion |
Optional |
String(256) |
body |
Indicates the software version of the device. |
fwVersion |
Optional |
String(256) |
body |
Indicates the firmware version of the device. |
hwVersion |
Optional |
String(256) |
body |
Indicates the hardware version of the device. |
protocolType |
Optional |
String(256) |
body |
Indicates the protocol used by the device. |
bridgeId |
Optional |
String(256) |
body |
Identifies the bridge through which the device accesses the IoT platform. |
status |
Optional |
String |
body |
Indicates whether the device is online. The value options are ONLINE, OFFLINE, INACTIVE, and ABNORMAL.
|
statusDetail |
Optional |
String(256) |
Body |
Indicates the device status details, which vary according to the value of status.
|
mute |
Optional |
String |
body |
Indicates whether the device is in the frozen state. Based on the value of this parameter, the IoT platform determines whether to manage and store data reported by the device.
|
supportedSecurity |
Optional |
String |
body |
Indicates whether the security mode is supported.
|
isSecurity |
Optional |
String |
body |
Indicates whether the security mode is enabled.
|
signalStrength |
Optional |
String(256) |
body |
Indicates the signal strength of the device. |
sigVersion |
Optional |
String(256) |
body |
Indicates the SIG version of the device. |
serialNumber |
Optional |
String(256) |
body |
Indicates the serial number of the device. |
batteryLevel |
Optional |
String(256) |
body |
Indicates the battery level of the device. |
When the device status information is reported over the southbound API, status and statusDetail must be included at the same time. In addition, it is recommended that statusDetail not be used for logical determination.
Response Parameters
Status Code: 200 OK
Request Example
Method: POST Request: {callbackUrl} Header: Content-Type: application/json Body: { "notifyType ": "deviceInfoChanged", "deviceId": "********************************", "gatewayId": "*************", "deviceInfo": { "name": "Sensor_12", "manufacturer": "wulian", "type": 90, "model": "90", "mac": "****************", "swVersion": "...", "fwVersion": "...", "hwVersion": "...", "protocolType": "zigbee", "description": "smock detector" } }
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