- 此工具為thingsboard-tools的第二版本,點我前往 thingsboard-tools github
- 此工具仍在開發階段,功能尚未完成
- 此工具提供API的服務,透過API可以使用下列功能:
- 取得tenant token
- 新增/刪除虛擬裝置
- 修改虛擬裝置行為 (subscribeRPC or sendData)
- 目前尚未提供CLI的執行方式,若不想執行成一支Service,可以使用thingsboard-tools第一個版本
- 有關設計細節,我有一個公開的notion可供參考
- 不需手動登入來取得tenant token,二次開發的過程中常常會需要這token貼在程式碼內做測試。
- 想要有虛擬裝置上傳資料或是接收RPC請求,可以透過API設定哪些裝置要做什麼行為,這樣二次開發會有些擬真的裝置可以參考
預設情況下,此工具會透過下列帳號去嘗試登入
sysadmin@thingsboard.org
sysadmin
當此工具登入成功後,會嘗試搜尋此帳號的Tenants,若成功搜尋到,會接著尋找特定的Tenant帳號,並嘗試取得tenant jwt token。可以修改.env的環境變數來改變搜尋的對象。
可透過API新增虛擬裝置,成功新增裝置後會回傳所有的裝置資訊,也可以透過API刪除多台裝置。
可以透過API設定虛擬裝置的行為,目前支援兩種行為: 1. 上傳資料 2. 訂閱RPC topic。
此工具還在開發階段,若有新的功能會更新此文件
npm i
src/config
內有兩種範例檔案可供修改,可根據自身需求修改參數
# 此專案執行設定
PORT=3000
DEBUT=true
# TB Server所在位置,部屬時可以換成container name
TB_SERVER_HOST=127.0.0.1:1618
TB_MQTT_HOST=127.0.0.1:1883
# TB 帳號相關設定
TB_ADMIN_EMAIL=sysadmin@thingsboard.org
TB_ADMIN_PASSWORD=sysadmin
TENANT_ADMIN_NAME=thingsboard-tools-tenant-admin
TENANT_NAME=thingsboard-tools-tenant
TENANT_EMAIL=test@gmail.com
npm run start
or
npm run start:dev
TB_APIs.postman_collection.json
是我在測試API的postman設定,由於目前尚未新增swagger,暫時只能使用postman匯出的檔案提供API測試。
- 自訂上傳裝置的資料結構 (優先)
- 更多的功能
此專案被收錄在Awesome Thingsboard,若想了解其他好用的工具,可以前往參考看看