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

这是一个抽象类。

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

用于在服务器设备上实现传入的设备控制操作的委托类。

摘要

继承

沿用自: nl::Weave::WeaveServerDelegateBase
直接已知的子类: nl::Weave::DeviceLayer::Internal::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
表示远程被动 Rendezvous 进程已完成。
OnRemotePassiveRendezvousStarted(void)=0
virtual void
表示远程被动 Rendezvous 进程已开始。
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
准备停止远程被动 Rendezvous。
WillStartRemotePassiveRendezvous(void)=0
virtual WEAVE_ERROR
准备远程被动 Rendezvous。

公共函数

EnforceAccessControl

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
用于描述所收到消息的访问权限控制政策评估结果的枚举值。进入该方法后,该值表示评估过程中当前点的暂定结果。返回后,结果应体现对消息的访问权限控制政策的最终评估。

IsPairedToAccount

virtual bool IsPairedToAccount() const 

调用以确定设备当前是否已与账户配对。

IsResetAllowed

virtual bool IsResetAllowed(
  uint16_t resetFlags
)=0

检查是否允许重置指定配置。

详细信息
参数
[in] resetFlags
用于指定要重置的配置的标志。
返回值
TRUE
是否允许重置配置。
FALSE
如果不允许重置配置,则会发生此错误。

OnConnectionMonitorTimeout

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

表示远程被动 Rendezvous 进程已完成。

OnRemotePassiveRendezvousStarted

virtual void OnRemotePassiveRendezvousStarted(
  void
)=0

表示远程被动 Rendezvous 进程已开始。

OnResetConfig

virtual WEAVE_ERROR OnResetConfig(
  uint16_t resetFlags
)=0

重置全部或部分设备配置。

此函数的实现应根据重置标志,将网络、Weave 结构或服务配置的任何组合重置为已知状态。

详细信息
参数
[in] resetFlags
用于指定要重置的配置的标志。
返回值
WEAVE_NO_ERROR
成功时。
other
其他 Weave 或平台特定的错误代码,表示发生了错误,导致设备无法重置其配置。

OnSystemTestStarted

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

准备停止远程被动 Rendezvous。

另请参阅
WillStartRemotePassiveRendezvous(void)

WillStartRemotePassiveRendezvous

virtual WEAVE_ERROR WillStartRemotePassiveRendezvous(
  void
)=0

准备远程被动 Rendezvous。

例如,将 15.4/Thread 网络设为可加入。

详细信息
返回值
WEAVE_NO_ERROR
成功时。
other
其他 Weave 或平台特定的错误代码,表示在准备启动远程被动 Rendezvous 时出错。