是否可以创建仅通知已更改的上下文属性的订阅?



有没有办法在 Orion 上下文代理中创建订阅以通知上下文中的任何更改,但只通知那些已更改的属性?

目前,我发现这样做的唯一方法是创建多个订阅,每个订阅都指向上下文的某个属性的更改并仅通知该属性(类似于此处所说的(。问题是此解决方案在实践中不可维护,因为您需要创建与上下文中的属性一样多的订阅。

有什么帮助吗?

要包含在通知中的属性由notification中的attrsexceptAttrs字段控制(有关详细信息,请参阅 NGSIv2 规范(。因此,当前选项是"所有属性"、"除固定列表之外的所有属性"或"属性的固定列表"。

但是,请在 Orion 存储库中注意此问题。我想这正是你的意思。请随时对该问题添加评论或表示您对此的支持。

编辑:解决方法是使用previousValue元数据。因此,您可以订阅所有属性(使用"attrs": [ ]或省略字段(,包括通知中的previousValue元数据(使用"metadata": [ "previousValue" ](。因此,您的通知接收器知道属性是否实际更改,只需比较属性的值和previousValue元数据的值即可。

最新更新