【 Cloud 】透過 Postman 建立 Azure Indoor Map
內容
- 學習目標
- 前置準備作業
- 建立 Azure Maps 服務
- Postman 前置準備
- 透過 Postman 操作 Creator
- 透過 Web 顯示 Azure Indoor Map
學習目標
- 如何透過 Postman 建立 Azure Indoor Map
前置準備作業
- 已建立 Azure 帳號並能正常登入。
- 本地端電腦已安裝瀏覽器。
建立 Azure Maps 服務
Step 1. 在上方搜尋框輸入 map 關鍵字並點選 Azure Maps Accounts 的搜尋結果
Step 2. 點選 + Create
Step 3. 輸入相關資訊
Subscription欄位選擇所要使用的訂閱。Resource group欄位輸入此 Map 所要歸屬於的群組。Name欄位輸入一個可識別的名稱。Region欄位請選擇East US。Pricing tier欄位請選擇此 Map 服務所要使用的等級,請選擇Gen2 (Maps and Location Insights)。- 請勾選
I confirm that I have read and agree to the License and Privacy Statement. - 當輸入完成後點選
Review + create。
Step 4. 建立服務
- 確認資訊正確則點選
Create。
Step 5. 點選 Go to resource
Step 6. 建立 Creator
- 點選左側
Creator> 再點選+ Create a Creator resource
- 輸入相關資訊
Creator name欄位請輸入可識別的名稱。Storage Units欄位請輸入所需要的使用單位。- 當輸入完成後點選
Review + create。
- 確認資訊正確則點選
Create
Step 7. 取得 Primary Key
- 點選左側的
Authentication> 再點選Primary Key右邊的複製按鈕
Postman 前置準備
Step 1. 下載相關檔案
- ① 透過瀏覽器開啟 https://github.com/ArcherHuang/Azure-Indoor-Map-Tools
- ② 點選
Code>Download ZIP - ③ 將下載的 ZIP 進行解壓縮
Step 2. 下載 Postman 並開啟 Postman
Step 3. 匯入 Collection
- 點選上方的
Import
- 點選
Upload Files
- 選擇
Step 1所解壓縮後的Postman資料夾中的Postman-for-Azure-Indoor-Map.postman_collection.json檔案並點選打開
- 點選
Import
- 匯入成功
透過 Postman 操作 Creator
Step 1. 上傳 DWG 與 manifest.json 的 ZIP 到 Azure Maps
- 點選 Postman 左側選單中的
1. Upload a Drawing package
- 將 URL 中的
InputKey改成Azure Maps取得Primary Key
- 點選
Body>Select File
- 選擇之前解壓縮資料夾中的
Sample - Contoso Drawing Package.zip再點選右下角的打開
- 點選
Send
- Request 送出後的結果
- 取得
OperationID供Step 2使用- 點選
Headers頁籤裡Location中的OperationID
- 點選
Step 2. 檢查繪圖套件上傳狀態
- 點選 Postman 左側選單中的
2. 檢查繪圖套件上傳狀態,再將 URL 中的OperationID改成Step 1取得OperationID
- 將
InputKey改成Azure Maps取得Primary Key
- 點選
Send
- Request 送出後的結果並取得
UDID供Step 3使用- 從 Response Body 中的
resourceLocation取得UDID
- 從 Response Body 中的
Step 3. 取出繪圖套件中繼資料
- 點選 Postman 左側選單中的
3. 取出繪圖套件中繼資料,再將 URL 中的UDID改成Step 2取得UDID
- 將
InputKey改成Azure Maps取得Primary Key
- 點選
Send
- Request 送出後的結果
Step 4. 轉換繪圖套件
- 點選 Postman 左側選單中的
4. 轉換繪圖套件,再將 URL 中的UDID改成Step 2取得UDID
- 將
InputKey改成Azure Maps取得Primary Key
- 點選
Send
- Request 送出後的結果並取得
OperationID供Step 5使用- 從 Response Header 中的
Operation-Location取得OperationID
- 從 Response Header 中的
Step 5. 檢查繪圖套件轉換狀態
- 點選 Postman 左側選單中的
5. 檢查繪圖套件轉換狀態,再將 URL 中的OperationID改成Step 4取得OperationID
- 將
InputKey改成Azure Maps取得Primary Key
- 點選
Send
- Request 送出後的結果並取得
ConversionID供Step 6使用- 從 Response Header 中的
Resource-Location取得ConversionID
- 從 Response Header 中的
Step 6. 建立資料集
- 點選 Postman 左側選單中的
6. 建立資料集,再將 URL 中的ConversionID改成Step 5取得ConversionID
- 將
InputKey改成Azure Maps取得Primary Key
- 點選
Send
- Request 送出後的結果並取得
OperationID供Step 7使用- 從 Response Header 中的
Operation-Location取得OperationID
- 從 Response Header 中的
Step 7. 檢查資料集建立狀態
- 點選 Postman 左側選單中的
7. 檢查資料集建立狀態,再將 URL 中的OperationID改成Step 6取得OperationID
- 將
InputKey改成Azure Maps取得Primary Key
- 點選
Send- 執行會花不少時間
- Request 送出後的結果並取得
DatasetID供Step 8使用- 從 Response Header 中的
Resource-Location取得DatasetID
- 從 Response Header 中的
Step 8. 建立圖格集
- 點選 Postman 左側選單中的
8. 建立圖格集,再將 URL 中的DatasetID改成Step 7取得DatasetID
- 將
InputKey改成Azure Maps取得Primary Key
- 點選
Send
- Request 送出後的結果並取得
OperationID供Step 9使用- 從 Response Header 中的
Operation-Location取得OperationID
- 從 Response Header 中的
Step 9. 檢查 tileset 建立狀態
- 點選 Postman 左側選單中的
9. 檢查 tileset 建立狀態,再將 URL 中的OperationID改成Step 8取得OperationID
- 將
InputKey改成Azure Maps取得Primary Key
- 點選
Send- 執行會花不少時間
- Request 送出後的結果並取得
TilesetId- 從 Response Header 中的
Resource-Location取得TilesetId
- 從 Response Header 中的
Step 10. 查詢資料集中的所有集合
- 點選 Postman 左側選單中的
10. 查詢資料集中的所有集合,再將 URL 中的DatasetID改成Step 7取得DatasetID
- 將
InputKey改成Azure Maps取得Primary Key
- 點選
Send
- Request 送出後的結果
Step 11. 查詢資料集中的單位集合
- 點選 Postman 左側選單中的
11. 查詢資料集中的單位集合,再將 URL 中的DatasetID改成Step 7取得DatasetID
- 將
InputKey改成Azure Maps取得Primary Key
- 點選
Send
- Request 送出後的結果
- Response 中的
id代表各區塊的編號,例如: 第 86 行的值為UNIT25,此編號在Step 13需要用到。
- Response 中的
Step 12. 建立功能狀態集
- 點選 Postman 左側選單中的
12. 建立功能狀態集,再將 URL 中的DatasetID改成Step 7取得DatasetID
- 將
InputKey改成Azure Maps取得Primary Key
- 設定 Request Body
- 點選
Body並於紅色框處輸入下方設定
- 點選
- 點選
Send
- Request 送出後的結果並取得
StatesetID供Step 13使用- 從 Response Body 中取得
StatesetID
- 從 Response Body 中取得
Step 13. 更新功能狀態
- 點選 Postman 左側選單中的
13. 更新功能狀態,再將 URL 中的StatesetID改成Step 11取得StatesetID
- 設定 FeatureID
- 將 URL 中的
FeatureID改成Step 11取得id
- 將 URL 中的
- 將
InputKey改成Azure Maps取得Primary Key
- 設定 Request Body
- 點選
Body並於紅色框處輸入下方設定 - 每次進行設定時,
eventTimestamp的值需比前次所設定的時間再更新才會設定成功
- 點選
- 點選
Send
- Request 送出後的結果
透過 Web 顯示 Azure Indoor Map
Step 1. 經由瀏覽器開啟 Map
Step 2. 輸入相關資訊
Key欄位請輸入Azure Maps取得Primary KeyTileset ID欄位請輸入透過 Postman 操作 Creator段落中Step 9所取得的TilesetIDStateset ID欄位請輸入透過 Postman 操作 Creator段落中Step 12所取得的StatesetID- 以上資訊輸入完成後點選
顯示 Map按鈕
Step 3. 顯示 Map 結果
- 結果顯示
- 請
Zoom In地圖- 紅色區域為
透過 Postman 操作 Creator段落中Step 13會id為UNIT25進行alarm的 Style 設定
- 紅色區域為