NL::编织::简介:: Echo_Next::织回声服务器
#include <src/lib/profiles/echo/Next/WeaveEchoServer.h>
Accepts EchoRequest messages from a peer node and responds with an EchoResponse message.
概括
所述WeaveEchoServer类实现编织回声协议的应答侧。与 ICMP ping 协议类似,Weave Echo 协议可用于测试 Weave 节点的活跃度和可达性。
应用程序可以使用WeaveEchoServer类,以使进入的消息的EchoRequest自动响应。相应的类存在用于启动回波请求(见WeaveEchoClient )。
默认情况下, WeaveEchoServer立即响应一个的EchoRequest与含相同有效载荷作为请求响应。但是,在处理 EchoRequestReceived API 事件期间,应用程序可以更改此行为。
API 事件
在其运作过程中, WeaveEchoServer对象将调用的应用程序要求的具体行动或交付的重要事件的通知。这些 API 事件调用是对服务器对象上当前配置的回调函数进行的。除非另有说明,应用程序可以在事件回调期间自由更改服务器的状态。一个总的例外是对象的关机()方法,它可从来没有一个回调过程中被调用。
定义了以下 API 事件:
收到回声请求
收到来自对等方的 EchoRequest 消息。事件的参数包含请求有效负载、接收消息的交换上下文以及有关请求消息的元信息。
如果应用程序选择,它可能会更改事件的输出参数以强制延迟响应或完全抑制响应。此外,它可能会改变有效载荷缓冲区的内容,这将成为响应消息的有效载荷。
已发送回声响应
EchoResponse 消息已发送,或发送失败。事件的参数包含由发送消息(如果有)和发送消息的交换上下文导致的错误。
遗产
:从继承NL ::编织:: WeaveServerBase直接已知子类: NL ::纺织品:: DeviceLayer ::内部:: EchoServer的
构造函数和析构函数 | |
---|---|
WeaveEchoServer (void) 默认构造WeaveEchoServer 。 |
公共类型 | |
---|---|
EchoFunct )(uint64_t nodeId, IPAddress nodeAddr, PacketBuffer *payload) | 类型定义void(* |
EventCallback )(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam) | 类型定义void(* |
EventType { | 枚举 |
公共属性 | |
---|---|
AppState | void * 指向应用程序特定数据的指针。 |
OnEchoRequestReceived | EchoFunct |
公共职能 | |
---|---|
GetEventCallback (void) const | EventCallback 返回指向当前配置的API事件回调函数WeaveEchoServer对象。 |
Init ( WeaveExchangeManager *exchangeMgr, EventCallback eventCallback, void *appState) | 初始化WeaveEchoServer对象。 |
Init ( WeaveExchangeManager *exchangeMgr) | 初始化WeaveEchoServer对象。 |
SetEventCallback (EventCallback eventCallback) | void 设置的API事件回调函数WeaveEchoServer对象。 |
Shutdown (void) | 关闭一个以前初始化WeaveEchoServer对象。 |
公共静态函数 | |
---|---|
DefaultEventHandler (void *appState, EventType eventType, const InEventParam & inParam, OutEventParam & outParam) | void 默认处理程序WeaveEchoServer API事件。 |
结构 | |
---|---|
NL ::编织::概况:: Echo_Next :: WeaveEchoServer :: InEventParam | 输入参数WeaveEchoServer API事件。 |
NL ::编织::概况:: Echo_Next :: WeaveEchoServer :: OutEventParam | 输出参数WeaveEchoServer API事件。 |
公共类型
回声函数
void(* EchoFunct)(uint64_t nodeId, IPAddress nodeAddr, PacketBuffer *payload)
事件回调
void(* EventCallback)(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam)
事件类型
EventType
公共属性
应用状态
void * AppState
指向应用程序特定数据的指针。
OnEchoRequestReceived
EchoFunct OnEchoRequestReceived
公共职能
在里面
WEAVE_ERROR Init( WeaveExchangeManager *exchangeMgr, EventCallback eventCallback, void *appState )
初始化WeaveEchoServer对象。
初始化一个WeaveEchoServer对象以响应从对等回声消息。
细节 | |||||||
---|---|---|---|---|---|---|---|
参数 |
|
在里面
WEAVE_ERROR Init( WeaveExchangeManager *exchangeMgr )
初始化WeaveEchoServer对象。
初始化一个WeaveEchoServer对象以响应从对等回声消息。
推荐使用:请使用初始化(WeaveExchangeManager * exchangeMgr,EventCallback eventCallback,无效* APPSTATE) 。
细节 | |||||||
---|---|---|---|---|---|---|---|
参数 |
|
公共静态函数
默认事件处理程序
void DefaultEventHandler( void *appState, EventType eventType, const InEventParam & inParam, OutEventParam & outParam )
默认处理程序WeaveEchoServer API事件。
应用程序需要为它们无法识别或处理的任何 API 事件调用此方法。提供的参数必须与服务器对象传递给应用程序的事件处理函数的参数相同。
细节 | |||||||||
---|---|---|---|---|---|---|---|---|---|
参数 |
|