据official documentation of Orion Context Broker NGSIv2:如何在Orion Context Broker NGSIv2创建高级订阅表达式?
您可以在条件过滤表达式。例如,至 不仅得到通知压力是否变化,但如果它在 变化范围700-800。这是一个高级主题,请参阅NGSIv2 specification中的“订阅” 部分。
在NGSIv2订阅没有notifyConditions
如NGSIv1,它被替换subject.condition对象:
condition
:条件来触发通知。此字段是可选 并且它可以包含两个属性,都可选的:
attrs
:属性名称的数组
expression
:表达式组成的q
,mq
,georel
,geometry
和coords
(请参阅上面关于此 字段的“列表实体”操作)
当我们使用subject.condition.attrs
时,它包含一组属性名称,这些名称定义了“触发属性”,即创建/更改由于实体创建或更新引起的通知的属性。
但是,对于subject.condition.expression
在官方文件中没有示例。
获得拼图碎片可以推断出:
- 可以做结合
subject.condition.expression
和subject.condition.attrs
。如果我设置和表达不同的表达,例如。 attr foo表达'boo> 10'它会做什么?这会像OR
或AND
? - 可以设置多个表达式。这会像
OR
或AND
?
将这些更复杂的订阅的一些例子结合在订阅中定义实体的不同方式将会很好。
注:这个问题是关系到猎户座版本1.7.0+