如何開始

簡介

如何開始將提供簡易的開發步驟,使新手開發者能夠迅速上手,只要遵循下圖之開發流程,您即可一步步了解本平台之架構,並成為IoT智慧聯網大平台開發者的一員,將智慧設備終端聯網,完成一個簡易的IoT應用程式。
步驟一、註冊會員

想要成為中華電信IoT智慧聯網大平台會員,您必須透過一個CHT 會員中心帳號 ,才可以於自己的帳號之下,新增專案、裝置、感測器,並存取相關的數據(Data)。
步驟二、新增專案

在透過IoT智慧聯網大平台帳號登入之後,請於IoT智慧聯網大平台網站右上方 專案管理 頁面新增專案,並在【基本資料】的頁籤中,輸入專案名稱以及專案描述,另外在【權限資料】的頁籤中,相關的設定預設會自動產生,您就可以獲取18碼英數字組合之 Project Key,這把金鑰將在您呼叫 API 時需要代入參數之中;當然,您也可以調整它所擁有的權限,預設是 Admin (完整權限),以下為流程操作圖,以及各個欄位之簡要說明:
* 專案管理/增加專案
* 填寫基本資料
* 瀏覽權限資料
步驟三、新增裝置

在您新增專案成功後,可於專案管理的頁面中 點擊專案名稱,即可進入到下一層的裝置管理頁面, 此時就能著手於新增裝置,在新增時所必填的資訊為裝置名稱,其它皆為彈性填寫之欄位, 其中 Key / Value 的設計,讓裝置可以自行增加想要的屬性;而 裝置金鑰( Device Key ) 則是在您呼叫 API 時所需填入的參數,流程以及各個欄位詳細說明如下:
* 專案管理/點擊專案名稱/裝置管理/增加裝置
* 填寫裝置基本資訊
步驟四、新增感測器

在您新增裝置成功後,可於裝置管理的頁面中點擊裝置編號,即可在下方之列表,看到目前該裝置所擁有的感測器,此時我們即可著手於新增感測器,新增之流程以及各個欄位說明如下所示:
* 裝置管理/點擊裝置編號/增加感測器
* 填寫感測器資本資訊
步驟五、上傳數據

在新增完感測器後,我們可以選擇透過 RESTful 或 MQTT 的 API 來上傳資料,在範例開始前,您必須先在 Chrome 瀏覽器中安裝相關的套件 Postman (for Restful) MQTTLens (for MQTT) Simple WebSocket Client (for WebSocket),方便進行以下的演練;除了可以透過瀏覽器套件進行資料之上傳,你也可以於自己開發的 IoT 應用程式中,善用豐富的 API 來達成物聯網智慧應用。
1. RESTful API 上傳數據
本範例將展示如何將單一數據(Rawdata)上傳至特定一個感測器(Sensor),請參考下圖詳盡之說明來進行操作,圖的左方為參考之 RESTful API 文件,右邊則是 Postman Tool 操作說明(上半部是 HTTP Method、URI 與 Header 參數,下半部則是 Body 內容),若您有更多樣化的需求,如: 上傳圖片( Snapshot )、新增專案、新增裝置、新增感測器、修改裝置描述...等,請查看詳細的 RESTful API 文件說明
* 以 Postman 呼叫 RESTful API 上傳 Rawdata
* 成功上傳Rawdata
2. MQTT API 上傳數據
本範例將展示如何將單一數據( Rawdata )上傳至特定一個感測器( Sensor ),請參考下圖詳盡之說明來進行操作,圖的左方為參考之 MQTT API 文件,右邊則是 MQTTLens 操作說明(上半部是設定 Hostname 、 Port 以及帳密,下半部則是 Topic 、Message 等欲 Publish 之內容),若您有更多樣化的需求,如: 發送 HeartBeat,請查看詳細的 MQTT API 文件說明
* 以 MQTTLens 呼叫 MQTT API 上傳 Rawdata
* MQTT 成功上傳 Rawdata
步驟六、取回數據

在上傳完數據( Rawdata )之後,我們可以選擇透過 RESTful API 主動去訪問平台端,進而取得感測器上的數據,也可以藉由 MQTT API 或 WebSocket API 來訂閱數據的異動通知,意即當平台所儲存之數據有所更新時,平台端將自行發出通知給有訂閱此主題的訂閱端,訂閱端只需 被動等待通知即可;在範例開始前,您必須先在 Chrome 瀏覽器中安裝相關的套件 Postman 用以測試 RESTful API,並安裝 MQTTLens 用以測試 MQTT API,而安裝Simple WebSocket Client Simple WebSocket Client 則用來測試WebSocket API ;除了透過上述之瀏覽器套件獲取數據以外,你也可以於自己開發的 IoT 應用程式中,善用豐富的 API 來達成物聯網智慧應用。
1. RESTful API 主動取回數據
本範例將展示如何藉由 RESTful API 主動來取得特定一個感測器( Sensor )之單一數據( Rawdata ), 請參考下圖詳盡之說明來進行操作,圖的左方為參考之 RESTful API 文件,右邊則是 Postman Tool 操作說明(上半部是 HTTP Method、URI 與 Header 參數,下半部則是平台端回應之 Body 內容),若您有更多樣化的需求,如: 取得最新一張圖片( Snapshot )、讀取時間區間內多筆圖片、讀取時間區間內多筆數據...等,請查看詳細的 RESTful API 文件說明
* 以RESTful API 成功取回 Rawdata
2. MQTT API 被動接收數據異動通知
本範例將展示如何藉由 MQTT API 被動來取得特定一個感測器( Sensor )之單一數據( Rawdata ), 請參考下圖詳盡之說明來進行操作,圖的左方為參考之 MQTT API 文件,右邊則是 MQTTLens 操作說明(上半部是設定 Hostname 、 Port 以及帳密,下半部則是欲訂閱之 Topic ),若您有更多樣化的需求,如: 訂閱感測數據變動通知、訂閱裝置組態設定異動通知、訂閱 HeartBeat 通知...等,請查看詳細的 MQTT API 文件說明
* 以 MQTT 訂閱 Rawdata 異動通知
3. WebSocket API 被動接收數據異動通知
本範例將展示如何藉由 WebSocket API 被動來取得特定一個感測器( Sensor )之單一數據( Rawdata ), 請參考下圖詳盡之說明來進行操作,圖的左方為參考之 WebSocket API 文件,右邊則是 Simple WebSocket Client (上半部是設定 URL ,下半部則是訂閱之Request ),請查看詳細的 WebSocket API 文件說明
* 以 WebSocket 訂閱 Rawdata 異動通知