command

要讓受控設備執行一條 command 需要傳遞兩個參數

  1. uint32 command,這指示了具體要執行的命令
  2. string parameters,這是使用 utf8 編碼的字符串,對於不同的 command,其對應一個不同的參數結構

Upgrade

command=1

{
	// 目標版本 vX.Y.Z,如果設置爲非空字符串則升級到此版本如果受控設備版本比此版本新受控設備不應該升級並應該回報錯誤
	//
	// 如果此值無效則受控設備自動確定要升級的版本號
	version: string
	// 如果爲true 在查找升級版號時包括測試版本,否則只查找穩定版本進行升級
	dev: bool
	// 如果爲true 在查找升級版本號時包括不兼容的版本
	force: bool
}

這個指令通知受控設備檢查升級

Sleep

command=2

{
	// 要等待的秒數
	seconds: uint32
}

這個指令通知受控設備暫停處理 command 一段時間,通常用於測試

Restart

command=10

{
}

這個指令通知受控設備重新啓動

Server

command=11

{
	// 服務器工作地址,格式爲 host:port 的字符串,如爲空字符串則表示服務器沒有提供此功能
	// 例如:
	//  * 域名 cdsdxh.cn:3443
	//  * ipv4 192.168.251.1:443
	//  * ipv6 2001:3984:3989::10:8080
	safe: string
	// 服務器工作 http 地址,格式爲 host:port 的字符串,如爲空字符串則表示服務器沒有提供此功能
	http: string
}

這個指令通知受控設備服務器新的工作地址,設備通常應該向新的地址註冊自己並接收新地址的控制。(這個指令一般用在將產品出廠前修改產品連接地址到真實的客戶服務器地址)

這個指令可能同時包含了 http 和 https 地址,爲了安全受控設備應該首選 https 地址進行連接,只有在測試或受限無法使用 https 時才應該使用 http 地址進行連接

Volume

command=100

{
	value: int32
}

這個指令通知受控設備調整播放音量,推薦有效值應該爲 0 到 100,0表示禁音 100 表示最大音量。但具體有效值有硬件設備自己確定

Talkie

command=200

{
	open: bool
}

這個指令通知受控設備是否打開對講功能

TalkieOption

command=201

{
	// 工作頻率
	frequency: uint32
	// 亞音
	subtone: float32
}

這個指令通知受控設備調整對講機參數