Reputation: 75
Here is the image of the asset information widget, which can add a property called c8y_Address
I would like my device to show their address information on the asset information widget, but I don't really know how to upload these properties to a device.
I am using MQTT. So I created a customised SMQRT Template, which is a POST inventory method 001,<region>,<street>,<territory>
. And then I publish it using client.publish('s/uc/TemplateName',
001,${region},${address},${territory});
. But it doesn't work.
I'm just wondering how can we use API to add the address information as a property of a device?
Thank you.
Upvotes: 1
Views: 231
Reputation: 2049
POST would create a new object. I guess what you want to do is updating the device with this properties. So a PUT template would be the correct choice.
Note that the preview shown in the UI currently is incorrect for PUT templates.
It says:
999,<c8y_Address.region>,<c8y_Address.street>,<c8y_Address.territory>
but it actually needs to be (like described in the SmartREST 2.0 guide):
999,<externalId>,<c8y_Address.region>,<c8y_Address.street>,<c8y_Address.territory>
The externalId needs to be from the device you want to update (if you only have a single device without children it would be what you also use as MQTT clientId).
Upvotes: 3