修改设备 - IoTAgentUL

Modify device - IoTAgentUL

我需要修改 IoTAgent UltraLight 中注册的设备。修改我的意思是添加一些属性并删除其他属性。

我也想更新 Orion CB 中的实体。

可以吗?我该怎么做?

IoTA(以及一般的 IoTA 库)公开了用于设备创建的北方配置接口。核心思想是当您在 IoTA 中(直接或通过 IoTA Manager)配置设备时,会在 Context Broker 中自动创建一个实体。这样的 nothr 配置接口也允许检索、删除和更新

话虽如此,IoTA 的南接口设计为仅接受来自设备的措施和命令执行结果。因此,如果一个新属性开始发挥作用,并且您通过 IoTA 为该新属性提供值,则新属性将不会附加到 Context Broker;简单地说,这些信息将被删除。

为了接受有关新属性的数据,首先您必须使用上述 IoTA 的配置接口,特别是 update 设备操作,以便提供这样的新属性;这将在 Context Broker 级别自动将新属性附加到实体。从这里开始,发送到 IoTA 的新属性的值将在 Context Broker 中更新。

这样的更新请求看起来像:

PUT http://iota_host:iota_port/iot/devices/<dev_id>?protocol=<protocol_type>
Fiware-Service: <service>
Fiware-ServicePath: <subservice>

{
   "entity_type": <entity_type>,
   "attributes": [ <new_active_attrs_if_any> ],
   "lazy": [ <new_lazy_attrs_if_any> ],
   "commands": [ <new_commands_if_any> ],
   "statis_attributes": [ <new_static_attrs_if_any> ]
}

遗憾的是,暂时无法删除已经存在的属性。