首页 文章

为什么cepheus不会在没有引号的情况下向orion发送int?

提问于
浏览
2

在这个问题中,我有一个问题,即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 回答

  • 2

    您似乎在Cepheus和Orion之间的NGSIv1协议实现中遇到了不兼容问题 .

    NGSIv1已经很好地定义了它的XML格式(作为OMA标准),但不是因为它的JSON版本 . Cepheus团队将JSON实现作为定义NGSIv1的JSON格式的唯一现有文档之一:API Walkthough of the Orion documentation .

    在本文档中,所有值都作为字符串进行交换(如标准的XML格式) . 因此,Cepheus使用字符串而不管值的类型 .

    如果我们决定使用除JSON字符串之外的其他表示形式的值,我们需要一个文档(适用于NGSIv1 JSON的规范!),定义哪些类型可以表示为JSON编号 .

相关问题