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 时发生错误。