園區空間和設備綁定關系變更訂閱
當園區SaaS端想要獲取園區的空間和設備綁定關系變化消息時,可以通過如下方式進行訂閱。
1、消息訂閱
1、獲取項目appkey和appSecret
使用阿里云賬號登錄數字園區引擎,登錄后如下圖所示
點擊對應的園區,則會進入該園區的管理頁面,在園區概覽菜單下,可以查看園區項目的appKey和appSecret
2、獲取實例ID
3、獲取數據模型id
在園區管理頁面,選中應用管理菜單,選擇數據管理菜單,可以看到園區空間和設備關系變化事件模型,模型編號為iotx_campus_space_device_change_event,如下圖所示
4、建立連接
根據以上信息,建立消息連接通道,使用方法參考連接,選擇AMQP方式建立連接http://bestwisewords.com/document_detail/140317.html#h2-va4-r81-xq3
?
2、使用控制臺進行空間和設備的綁定關系變更
變更操作包括:綁定、解綁,下面以綁定操作舉例。
?
選中具體園區項目,進入后在左邊菜單欄,選中基礎能力菜單,選擇空間管理菜單,會顯示出空間和空間單元的信息,樹狀圖表示空間的層級關系,點擊空間后,右邊的界面顯示空間內包含的空間單元信息,如下圖所示
1、空間位置綁定設備
在空間管理界面,選擇對應的空間后,點擊界面右側的查看設備
打開查看設備頁面后,點擊綁定設備按鈕,如下圖所示
點擊綁定設備按鈕后,彈出綁定頁面,選擇需要綁定的設備,點擊綁定按鈕,如下圖所示
點擊綁定按鈕后,會彈出綁定對話框,可以填寫備注信息,點擊確定按鈕,即可完成空間和設備的綁定
2、空間單元綁定設備
在空間管理頁面,選擇對應的空間位置后,右側界面會列出當前空間位置包含的空間單元信息,選擇想要綁定的空間單元名稱,點擊后部的查看設備,如下圖所示
打開查看設備頁面后,點擊綁定設備按鈕,如下圖所示
點擊綁定設備按鈕后,彈出綁定頁面,選擇需要綁定的設備,點擊綁定按鈕,如下圖所示
點擊綁定按鈕后,會彈出綁定對話框,可以填寫備注信息,點擊確定按鈕,即可完成空間單元和設備的綁定
3、消息接收
當空間信息有變更(綁定、解綁)的時候,可以收到對應的變更消息,如下所示
{
"dataIds": [
22
],
"dataInstanceId": "iot-pre06****0a", //園區實例id
"logicalModelIsoId": "oxs_***_id",
"modelId": "iotx_campus_space_device_change_event", // 數據模型id
"operateType": "insert", //通常是insert,注意區別于payload內的operate_type
"payload": "payload info", // 消息體,JSON字符串
"scopeId": "a123pe****2uP3cK" // 通常是當前園區項目id
}
?
在使用的時候可以根據modelId字段,進行不同數據模型消息的區分
?
4、payload詳細信息
payload字段為JSON字符串,具體字段見下表
名稱 | 數據類型 | 是否必須 | 屬性名稱 | 數據描述 |
root_space_id | String | 是 | 根空間id | ? |
event_type | String | 是 | 事件類型 | 表示空間和設備的關系變化,add 表示綁定 delete表示解綁 update表示更新 |
relation_type | String | 是 | 關聯對象類型 | 比如device |
relation_obj_id | String | 是 | 關聯對象id | relationType為device時,為iotId |
tenant_id | String | 是 | 租戶id | ? |
instance_id | String | 是 | 實例id | 園區項目企業實例 |
timestamp | Long | 是 | 事件時間戳 | ? |
project_id | String | 是 | 項目id | 通常是項目id |
additional | String | 否 | 附加信息 | ? |
current_space_id | String | 是 | 當前空間id | ? |