簡體   English   中英

全球情境經紀人聯合會

[英]Global Context Broker Federation

到目前為止,我一直在以獨立模式在Fi-Lab / Cloud中創建並使用psb-orion-image的上下文代理實例進行工作。 現在,我想通過http // orion.lab.fi-ware.org聯合該CB的實例。 我使用XML表單創建,更新...,要聯合的實例的名稱為“ UPCT:TEMPERATURE:SENSOR”,而傳感器類型為“ UPCT:SENSOR”。

因此,通過SSH連接,我發送下一個表格:

(curl localhost:1026/NGSI10/subscribeContext -s -S --header 'Content-Type: application/xml' -d @- | xmllint --format -) <<EOF
<?xml version="1.0"?>
<subscribeContextRequest>
  <entityIdList>
    <entityId type="UPCT:SENSOR" isPattern="false">
      <id>UPCT:TEMPERATURE:SENSOR</id>
    </entityId>
  </entityIdList>
  <reference>http://orion.lab.fi-ware.eu:1026/ngsi10/notifyContext</reference>
  <duration>P1M</duration>
  <notifyConditions>
    <notifyCondition>
      <type>ONCHANGE</type>
      <condValueList>
        <condValue>temperature</condValue>
      </condValueList>
    </notifyCondition>
  </notifyConditions>
  <throttling>PT5S</throttling>
</subscribeContextRequest>
EOF

我得到正確的答復,帶有和訂閱ID。 但是,如果更新實例的contextValue並嘗試將查詢發送到http://orion.lab.fi.ware.eu:1026,則會收到錯誤消息:

-:1:解析器錯誤:預期開始標記,在請求標頭^中找不到'<'找不到身份驗證令牌

我認為我應該獲得與實例更新相同的值,如

https://forge.fi-ware.org/plugins/mediawiki/wiki/fiware/index.php/Publish/Subscribe_Broker_-_Orion_Context_Broker_-_User_and_Programmers_Guide#Context_Broker_Federation

我需要知道哪里出了問題以及如何才能成為全球CB的聯合會。

謝謝

該錯誤消息是由於在orion.lab.fi-ware.org上發送到Orion實例的任何請求(包括其他Orion實例發送的通知)必須使用驗證。 目前(即版本0.14.1),Orion不在通知中包括身份驗證所需的X-Auth-Token(請參閱程序員快速入門)。

但是,通常的用例是在Orion.lab.fi-ware.org上將Orion與私有Orion用戶實例(即orion.lab.fi-ware.org->您的Orion)聯合,而不是以相反的方式(即您的Orion- > orion.lab.fi-ware.org)。 假定您通常要做的是將公共信息(例如,桑坦德城市傳感器)與私人信息(例如,傳感器產生的信息)合並。 聯合orion.lab.fi-ware.org->這樣的Orion應該可以正常工作。

編輯: Orion 0.14.1中的限制已被克服,當前的Orion版本(2.0.0)在通知中傳播X-Auth-Token標頭(我不記得哪個確切版本介於0.14.1和2.0.0之間,抱歉...)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM