在这个问题中,我有一个问题,即orion条件不满意,但它是通过删除特殊值Why this orion subscription don't works as I want?上的引号来解决的
新的问题是,当我使用cep处理事件来计算mFlag int属性时,它将它发送到orion但显然它是用引号发送的(与之前发布的相关问题中描述的问题相同),因为orion实体已更改但是通知未被触发 .
cepheus cep配置就像这样:
"out":[
{
"id":"algo",
"type":"Event",
"brokers":[
{
"url":"http://localhost:1026" //orion
}
],
"attributes":[
{ "name":"IdEvent", "type":"int" },
{ "name":"mFlag", "type":"int" }
]
}
],
这是cepheus cep的问题,还是一个猎户座bug无法解释条件中的属性类型?
1 回答
您似乎在Cepheus和Orion之间的NGSIv1协议实现中遇到了不兼容问题 .
NGSIv1已经很好地定义了它的XML格式(作为OMA标准),但不是因为它的JSON版本 . Cepheus团队将JSON实现作为定义NGSIv1的JSON格式的唯一现有文档之一:API Walkthough of the Orion documentation .
在本文档中,所有值都作为字符串进行交换(如标准的XML格式) . 因此,Cepheus使用字符串而不管值的类型 .
如果我们决定使用除JSON字符串之外的其他表示形式的值,我们需要一个文档(适用于NGSIv1 JSON的规范!),定义哪些类型可以表示为JSON编号 .