NL::編織::簡介::設備控制::設備控制委託

這是一個抽像類。

#include <src/lib/profiles/device-control/DeviceControl.h>

用於在服務器設備上實現傳入設備控制操作的委託類。

概括

遺產

:從繼承NL ::編織:: WeaveServerDelegateBase
直接已知子類: NL ::紡織品:: DeviceLayer ::內部:: DeviceControlServer

公共職能

EnforceAccessControl ( ExchangeContext *ec, uint32_t msgProfileId, uint8_t msgType, const WeaveMessageInfo *msgInfo, AccessControlResult & result)
virtual void
強制為呼入消息級訪問控制的DeviceControl請求消息。
IsPairedToAccount () const
virtual bool
調用以確定設備當前是否與帳戶配對。
IsResetAllowed (uint16_t resetFlags)=0
virtual bool
檢查是否允許重置指定的配置。
OnConnectionMonitorTimeout (uint64_t peerNodeId, IPAddress peerAddr)=0
virtual void
表示連接監視器超時。
OnFailSafeArmed (void)=0
virtual WEAVE_ERROR
表示設備配置故障安全已被布防。
OnFailSafeDisarmed (void)=0
virtual WEAVE_ERROR
表示設備配置故障安全已解除。
OnRemotePassiveRendezvousDone (void)=0
virtual void
表示遠程被動會合進程已完成。
OnRemotePassiveRendezvousStarted (void)=0
virtual void
表示遠程被動會合進程已啟動。
OnResetConfig (uint16_t resetFlags)=0
virtual WEAVE_ERROR
重置全部或部分設備配置。
OnSystemTestStarted (uint32_t profileId, uint32_t testId)=0
virtual WEAVE_ERROR
開始指定的系統測試。
OnSystemTestStopped (void)=0
virtual WEAVE_ERROR
停止正在進行的系統測試。
ShouldCloseConBeforeResetConfig (uint16_t resetFlags)=0
virtual bool
確定是否應在重置配置之前關閉服務器連接(如果存在)。
WillCloseRemotePassiveRendezvous (void)=0
virtual void
準備停止遠程被動集合。
WillStartRemotePassiveRendezvous (void)=0
virtual WEAVE_ERROR
準備遠程被動會合。

公共職能

強制訪問控制

virtual void EnforceAccessControl(
  ExchangeContext *ec,
  uint32_t msgProfileId,
  uint8_t msgType,
  const WeaveMessageInfo *msgInfo,
  AccessControlResult & result
)

強制為呼入消息級訪問控制的DeviceControl請求消息。

細節
參數
[in] ec
所述ExchangeContext在其上接收該消息。
[in] msgProfileId
接收到的消息的配置文件 ID。
[in] msgType
接收到的消息的消息類型。
[in] msgInfo
WeaveMessageInfo包含有關接收的消息信息的結構。
[in,out] result
描述接收消息的訪問控制策略評估結果的枚舉值。進入方法後,該值表示評估過程中當前點的暫定結果。返回後,結果應代表對消息訪問控制策略的最終評估。

與帳戶配對

virtual bool IsPairedToAccount() const 

調用以確定設備當前是否與帳戶配對。

允許重置

virtual bool IsResetAllowed(
  uint16_t resetFlags
)=0

檢查是否允許重置指定的配置。

細節
參數
[in] resetFlags
指定要重置的配置的標誌。
返回值
TRUE
如果允許重置配置。
FALSE
如果不允許重置配置。

OnConnectionMonitor 超時

virtual void OnConnectionMonitorTimeout(
  uint64_t peerNodeId,
  IPAddress peerAddr
)=0

表示連接監視器超時。

當發生連接監視器超時時,即在一定時間內未檢測到遠程主機的活動檢查時,將調用此函數。

細節
參數
[in] peerNodeId
連接活動已超時的遠程對等方的節點 ID。
[in] peerAddr
遠程對等方的地址。

OnFailSafeArmed

virtual WEAVE_ERROR OnFailSafeArmed(
  void
)=0

表示設備配置故障安全已被布防。

當服務器設備配置故障安全響應客戶端請求時調用此函數。如果配置過程未能成功完成,故障保險會自動將設備配置重置為已知狀態。

細節
返回值
WEAVE_NO_ERROR
關於成功。
other
其他 Weave 或平台特定的錯誤代碼,表明發生了阻止故障安全裝置啟動的錯誤。

OnFailSafeDisarmed

virtual WEAVE_ERROR OnFailSafeDisarmed(
  void
)=0

表示設備配置故障安全已解除。

當服務器設備配置故障安全已被解除以響應來自客戶端的請求時調用此函數。配置完成後,客戶端將解除故障安全。

細節
返回值
WEAVE_NO_ERROR
關於成功。
other
其他 Weave 或特定於平台的錯誤代碼表示發生了阻止故障安全解除武裝的錯誤。

OnRemotePassiveRendezvousDone

virtual void OnRemotePassiveRendezvousDone(
  void
)=0

表示遠程被動會合進程已完成。

OnRemotePassiveRendezvousStarted

virtual void OnRemotePassiveRendezvousStarted(
  void
)=0

表示遠程被動會合進程已啟動。

重置配置

virtual WEAVE_ERROR OnResetConfig(
  uint16_t resetFlags
)=0

重置全部或部分設備配置。

根據重置標誌,此功能的實現有望將網絡、Weave 結構或服務配置的任何組合重置為已知狀態。

細節
參數
[in] resetFlags
指定要重置的配置的標誌。
返回值
WEAVE_NO_ERROR
關於成功。
other
其他 Weave 或特定於平台的錯誤代碼表明發生了錯誤,阻止設備重置其配置。

系統測試開始

virtual WEAVE_ERROR OnSystemTestStarted(
  uint32_t profileId,
  uint32_t testId
)=0

開始指定的系統測試。

細節
參數
[in] profileId
所請求測試的配置文件的 ID。
[in] testId
請求測試的 ID。
返回值
WEAVE_NO_ERROR
關於成功。
other
其他 Weave 或平台特定的錯誤代碼,表明發生了阻止系統測試開始的錯誤。

OnSystemTestStopped

virtual WEAVE_ERROR OnSystemTestStopped(
  void
)=0

停止正在進行的系統測試。

細節
返回值
WEAVE_NO_ERROR
關於成功。
other
其他 Weave 或平台特定的錯誤代碼,表明發生了阻止系統測試停止的錯誤。

ShouldCloseConBeforeResetConfig

virtual bool ShouldCloseConBeforeResetConfig(
  uint16_t resetFlags
)=0

確定是否應在重置配置之前關閉服務器連接(如果存在)。

此函數用於在處理配置重置請求時向委託查詢所需的行為。如果服務器連接當前處於活動狀態,則對此方法的 TRUE 響應將導致該連接在通過 OnResetConfig 方法觸發配置重置之前關閉。

細節
參數
[in] resetFlags
指定要重置的配置的標誌。
返回值
true
如果需要關閉連接。
false
如果不需要關閉連接。

WillCloseRemotePassiveRendezvous

virtual void WillCloseRemotePassiveRendezvous(
  void
)=0

準備停止遠程被動集合。

也可以看看:
WillStartRemotePassiveRendezvous(void)

WillStartRemotePassiveRendezvous

virtual WEAVE_ERROR WillStartRemotePassiveRendezvous(
  void
)=0

準備遠程被動會合。

例如,使 15.4/Thread 網絡可連接。

細節
返回值
WEAVE_NO_ERROR
關於成功。
other
其他 Weave 或平台特定的錯誤代碼,表明在準備啟動 Remote Passive Rendezvous 時發生錯誤。