Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

概念

Sylvia-IoT 提供了 HTTP API 管理以下實體:

  • 使用者帳號(User Account)
    • 透過使用者帳號可以存取 Sylvia-IoT 的管理介面。
    • 可以透過客戶端取得訪問令牌(access token)存取 HTTP API。
  • 客戶端應用程式(Client)
    • 存取 HTTP API 的實體。
    • 第三方可以透過 HTTP API 開發 Sylvia-IoT 的管理功能。
    • 透過 OAuth2 讓使用者授權客戶端存取資源。
  • 單位(Unit)
    • 每個單位可以指派一個擁有者和多個成員。
    • 每個單位可以管理自己的裝置、網路、應用。
  • 裝置(Device)
    • 如感應器、追蹤器等物聯網的終端裝置。
  • 應用(Application)
    • 依據需求,分析裝置的資料並呈現,比如智慧家電控制中心。
  • 網路(Network)
    • 依裝置的通訊需求,連接不同的網路伺服器來收送裝置資料。
    • 常見的通訊協定有 LoRa、WiFi 等。也可以直接使用 TCP/IP。
    • 可以開發網路連接器(network adapter),將既有的網路伺服器(network server,如 TTN、ChirpStack)和 Sylvia-IoT 整合。
  • 路由規則(Routing Rules)
    • 裝置和應用的關聯。
    • 可以將個別裝置透過網路位址(network address)綁定、或是將整個網路綁定到特定應用。
    • 多對多的關係。也就是多個裝置可以綁定一個應用,也可以一個裝置綁定多個應用。

傳輸協定

目前 Sylvia-IoT 支援以下協定,和應用與網路進行訊息傳輸:

  • AMQP 0-9-1
  • MQTT 3.1.1

只要能符合明確名稱(不含萬用字元)的消息佇列模式(message queuing model)都可以支援。比如 AMQP 1.0、Apache Kafka、NATS 等。 目前還不支援主題式發布訂閱(topic publish/subscribe)或廣播(broadcast)、多播(multicast)的模式。