API文件

文件使用須知

在開始使用平台所提供 API 前,您必須先了解本平台根據兩種不同之面相來詮釋 API 文件,首先從 協定的角度,可以分成三種傳輸協定: (i) RESTful、(ii) MQTT、(iii) WebSocket;而從 功能分類的角度來看,則可分成五大類,分別是: (1) 裝置連網、(2) 智慧服務、(3) 領域服務、(4) MQTT、(5) WebSocket;
依三大協定而分類API

平台所支援的三種傳輸協定: (1)RESTful、(2) MQTT、(3) WebSocket; 無論您是想存取平台中的專案、裝置、感測器或資料,在溝通時都是以HTTP 作為網路傳輸之基礎,藉由呼叫IoT智慧聯網大平台之網域名稱 http://iot.cht.com.tw/iot/ 進行操作並取得結果。而不同的協定有不同的特性,以及其適用之情境,以下將進行說明,
1. RESTful
目前 RESTful API 在平台中支援的功能類最為廣泛,而此協定遵循 REST 的設計風格,允許透過 HTTP URI 與 HTTP Method 進行物聯網裝置和感測器操作與取得資訊,透過不同的 HTTP 動詞(如 GET、POST、PUT、DELETE 等), 使開發者可以清楚地掌握協定參數的用途 ,進而讓開發人員能對 IoT智慧聯網大平台所提供之 API 更快速地上手。
2. MQTT
此協定之全名Message Queuing Telemetry Transport,是一種專門設計給物聯網的協定, 因此它所需要的網路頻寬是很低的,而所需要的硬體資源也是低的,它允許物聯網裝置可以透過 publish & subscribe 的方式來做訊息傳送。
3. WebSocket
此協定提供網路應用服務(WEB App),可以直接進行即時通訊,而不需要不斷的對資料之更改進行輪詢,導致網路資源的浪費。
五大分類API

若以功能來區分 API ,例如:針對 平台介紹 中所提過的基本架構中之元素:專案、裝置、感測器、數據與圖片資料,都設計了相對應之新增、修改、刪除與查詢(CRUD)之 API,除此之外,本平台還額外提供: 事件驅動、HeartBeat、裝置納管、產品管理等其他 API ,因此就形成了以下五大功能類別: (1) 裝置連網、(2) 智慧服務、(3) 領域服務、(4) MQTT、(5) WebSocket ,其詳細說明如下:
1. 裝置連網
提供 RESTful API 以新增、刪除、修改與查詢裝置連網資料。
2. 智慧服務
提供 RESTful API 以新增、刪除、修改與查詢智慧服務資料。
3. 領域服務
提供 RESTful API 以新增、刪除、修改與查詢領域服務資料。
4. MQTT
提供 MQTT。
5. WebSocket
提供 WebSocket。