nl::Weave::Profiles::DeviceControl

此命名空間包含 Weave 中 Weave Device Control 設定檔的所有介面。

摘要

「裝置控制設定檔」可執行用戶端伺服器作業,讓用戶端 (控制裝置) 可以在伺服器上觸發特定公用程式功能 (設定中的裝置),協助支援及啟用裝置設定和佈建程序。這包括重設伺服器裝置設定及啟用失敗安全機制,定義設定程序太早取消時的行為。

列舉

@172{
  kStatusCode_FailSafeAlreadyActive = 1,
  kStatusCode_NoFailSafeActive = 2,
  kStatusCode_NoMatchingFailSafeActive = 3,
  kStatusCode_UnsupportedFailSafeMode = 4,
  kStatusCode_RemotePassiveRendezvousTimedOut = 5,
  kStatusCode_UnsecuredListenPreempted = 6,
  kStatusCode_ResetSuccessCloseCon = 7,
  kStatusCode_ResetNotAllowed = 8,
  kStatusCode_NoSystemTestDelegate = 9
}
列舉
裝置控制狀態碼。
@173{
  kMsgType_ResetConfig = 1,
  kMsgType_ArmFailSafe = 2,
  kMsgType_DisarmFailSafe = 3,
  kMsgType_EnableConnectionMonitor = 4,
  kMsgType_DisableConnectionMonitor = 5,
  kMsgType_RemotePassiveRendezvous = 6,
  kMsgType_RemoteConnectionComplete = 7,
  kMsgType_StartSystemTest = 8,
  kMsgType_StopSystemTest = 9,
  kMsgType_LookingToRendezvous = 10
}
列舉
裝置控制訊息類型。
@174{
  kArmMode_New = 1,
  kArmMode_Reset = 2,
  kArmMode_ResumeExisting = 3
}
列舉
ArmFailSafe 模式值。
@175{
  kResetConfigFlag_All = 0x00FF,
  kResetConfigFlag_NetworkConfig = 0x0001,
  kResetConfigFlag_FabricConfig = 0x0002,
  kResetConfigFlag_ServiceConfig = 0x0004,
  kResetConfigFlag_OperationalCredentials = 0x0008,
  kResetConfigFlag_FactoryDefaults = 0x8000
}
列舉
ResetConfig 標記。
@176{
  kMessageLength_ResetConfig = 2,
  kMessageLength_ArmFailsafe = 5,
  kMessageLength_DisarmFailsafe = 0,
  kMessageLength_EnableConnectionMonitor = 4,
  kMessageLength_DisableConnectionMonitor = 0,
  kMessageLength_RemotePassiveRendezvous = 20,
  kMessageLength_StartSystemTest = 8,
  kMessageLength_StopSystemTest = 0
}
列舉
訊息長度。

函式

SendLookingToRendezvous(ExchangeContext *ec)
傳送 SeeToRendezvous 訊息給同儕。

類別

nl::Weave::Profiles::DeviceControl::DeviceControlDelegate

在伺服器裝置上執行傳入的裝置控製作業的委派類別。

nl::Weave::Profiles::DeviceControl::DeviceControlServer

實作 Device Control 設定檔的伺服器類別。

列舉

@172

 @172

裝置控制狀態碼。

屬性
kStatusCode_FailSafeAlreadyActive

已啟用佈建失敗的安全防護機制。

kStatusCode_NoFailSafeActive

沒有啟用佈建失敗的安全模式。

kStatusCode_NoMatchingFailSafeActive

佈建失敗安全權杖與活動中的失敗安全憑證不符。

kStatusCode_NoSystemTestDelegate

系統測試無法在沒有委派的情況下執行。

kStatusCode_RemotePassiveRendezvousTimedOut

在用戶端指定的時間範圍內,沒有任何裝置與裝置控制伺服器交換。

kStatusCode_ResetNotAllowed

裝置拒絕允許要求重設。

kStatusCode_ResetSuccessCloseCon

ResetConfig 方法會成功,但會先關閉連線。

kStatusCode_UnsecuredListenPreempted

另一個應用程式已強制取代裝置控制伺服器,因為此 Weave 堆疊的不安全連線處理常式。

kStatusCode_UnsupportedFailSafeMode

裝置不支援指定的失敗安全模式。

@173

 @173

裝置控制訊息類型。

屬性
kMsgType_ArmFailSafe

請在裝置上啟動設定故障安全機制。

kMsgType_DisableConnectionMonitor

停用連線有效性監控。

kMsgType_DisarmFailSafe

解除使用中設定的安全失敗機制。

kMsgType_EnableConnectionMonitor

啟用連線有效性監控。

kMsgType_LookingToRendezvous

正在搜尋 Rendezvouz 訊息。

酬載為空白,其中唯一有意義的信號是來源節點 ID。

kMsgType_RemoteConnectionComplete

告知裝置控制用戶端,遠端被動 Rendezvous 已順利完成,且連線通道已開啟。

kMsgType_RemotePassiveRendezvous

透過裝置控制伺服器要求遠端被動網路。

kMsgType_ResetConfig

重設裝置的設定狀態。

kMsgType_StartSystemTest

啟動系統測試。

kMsgType_StopSystemTest

停止系統測試。

@174 號

 @174

ArmFailSafe 模式值。

屬性
kArmMode_New

啟動新的容錯機制;如果已啟用,則傳回錯誤。

kArmMode_Reset

重設所有裝置設定,並啟動新的故障安全措施。

kArmMode_ResumeExisting

恢復已啟用的故障安全機制;如果沒有進行中的失敗安全措施,或故障憑證不相符,系統會傳回錯誤。

@175

 @175

ResetConfig 標記。

屬性
kResetConfigFlag_All

重設所有裝置設定資訊。

kResetConfigFlag_FabricConfig

重設織布設定資訊。

kResetConfigFlag_FactoryDefaults

將裝置重設為原廠預設值。

kResetConfigFlag_NetworkConfig

重設網路設定資訊。

kResetConfigFlag_OperationalCredentials

重設裝置作業憑證。

kResetConfigFlag_ServiceConfig

重設服務設定資訊。

@176

 @176

訊息長度。

屬性
kMessageLength_ArmFailsafe

Arm Failsafe 訊息長度。

kMessageLength_DisableConnectionMonitor

停用連線監控器訊息長度。

kMessageLength_DisarmFailsafe

解除 Filsafe 訊息長度。

kMessageLength_EnableConnectionMonitor

啟用連線監控器訊息長度。

kMessageLength_RemotePassiveRendezvous

遠端被動式 Rendezvous 訊息長度。

kMessageLength_ResetConfig

重設設定訊息長度。

kMessageLength_StartSystemTest

啟動系統測試訊息長度。

kMessageLength_StopSystemTest

停止系統測試訊息長度。

函式

SendLookingToRendezvous

WEAVE_ERROR SendLookingToRendezvous(
  ExchangeContext *ec
)

傳送 SeeToRendezvous 訊息給同儕。

詳細說明
參數
[in] ec
ExchangeContext 用於傳送訊息
傳回值
WEAVE_NO_ERROR
成功時。
WEAVE_ERROR_NO_MEMORY
如果我們無法為訊息分配緩衝區。
other