Google は、黒人コミュニティのための人種的公平の促進に取り組んでいます。詳細をご覧ください。

nl ::織り::プロファイル:: Echo_Next :: WeaveEchoServer

#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に即座に応答します。ただし、この動作は、EchoRequestReceivedAPIイベントの処理中にアプリケーションによって変更される可能性があります。

APIイベント

その動作の過程で、 WeaveEchoServerのオブジェクトは、要求の特定のアクションにアプリケーションを呼び出すか、重要なイベントの通知を配信します。これらのAPIイベント呼び出しは、サーバーオブジェクトで現在構成されているコールバック関数に対して行われます。特に明記されていない限り、アプリケーションはイベントコールバック中にサーバーの状態を自由に変更できます。一つの全体的な例外は、オブジェクトのあるシャットダウン()コールバック中に呼び出されない場合があり方法。

次のAPIイベントが定義されています。

EchoRequestReceived

EchoRequestメッセージがピアから受信されました。イベントの引数には、要求ペイロード、メッセージが受信された交換コンテキスト、および要求メッセージに関するメタ情報が含まれます。

アプリケーションが選択した場合、イベントへの出力引数を変更して、応答の遅延を強制するか、応答を完全に抑制することができます。さらに、応答メッセージのペイロードとなるペイロードバッファの内容を変更する場合があります。

EchoResponseSent

EchoResponseメッセージが送信されたか、送信に失敗しました。イベントの引数には、メッセージの送信に起因するエラー(存在する場合)と、メッセージが送信された交換コンテキストが含まれます。

継承

:から継承NL ::織り:: WeaveServerBase
直系の既知のサブクラス: NL ::織り:: DeviceLayer ::内部:: EchoServer

コンストラクタとデストラクタ

WeaveEchoServer (void)
デフォルトコンストラクタWeaveEchoServer

パブリックタイプ

EchoFunct )(uint64_t nodeId, IPAddress nodeAddr, PacketBuffer *payload) typedef
void(*
EventCallback )(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam) typedef
void(*
EventType {
kEvent_EchoRequestReceived = 1,
kEvent_EchoResponseSent = 2,
kEvent_DefaultCheck = 100
}
列挙型

パブリック属性

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イベント。

パブリックタイプ

EchoFunct

void(* EchoFunct)(uint64_t nodeId, IPAddress nodeAddr, PacketBuffer *payload)

EventCallback

void(* EventCallback)(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam)

イベントタイプ

 EventType
プロパティ
kEvent_DefaultCheck

アプリケーションでの正しいデフォルトのイベント処理を確認するために使用されます。

kEvent_EchoRequestReceived

EchoRequestメッセージがピアから受信されました。

kEvent_EchoResponseSent

EchoResponseメッセージが送信されたか、送信に失敗しました。

パブリック属性

AppState

void * AppState

アプリケーション固有のデータへのポインター。

OnEchoRequestReceived

EchoFunct OnEchoRequestReceived

公の行事

GetEventCallback

EventCallback GetEventCallback(
  void
) const 

現在に設定されたAPIのイベントのコールバック関数へのポインタを返しますWeaveEchoServerのオブジェクト。

初期化

WEAVE_ERROR Init(
  WeaveExchangeManager *exchangeMgr,
  EventCallback eventCallback,
  void *appState
)

初期化WeaveEchoServerのオブジェクトを。

初期化WeaveEchoServerのピアからのエコーメッセージに応答するオブジェクトを。

詳細
パラメーター
[in] exchangeMgr
ポインタWeaveExchangeManagerのオブジェクト。
[in] eventCallback
呼び出される関数へのポインタWeaveEchoServerのアプリケーションにAPIイベントを提供するオブジェクト。
[in] appState
APIイベントが発生するたびにアプリケーションに返されるアプリケーション定義オブジェクトへのポインター。

初期化

WEAVE_ERROR Init(
  WeaveExchangeManager *exchangeMgr
)

初期化WeaveEchoServerのオブジェクトを。

初期化WeaveEchoServerのピアからのエコーメッセージに応答するオブジェクトを。

非推奨:ご使用ください初期化(WeaveExchangeManager * exchangeMgr、EventCallback eventCallback、void *型appStateを)

詳細
パラメーター
[in] exchangeMgr
ポインタWeaveExchangeManagerのオブジェクト。
[in] eventCallback
呼び出される関数へのポインタWeaveEchoServerのアプリケーションにAPIイベントを提供するオブジェクト。
[in] appState
APIイベントが発生するたびにアプリケーションに返されるアプリケーション定義オブジェクトへのポインター。

SetEventCallback

void SetEventCallback(
  EventCallback eventCallback
)

上のAPIイベントコールバック関数を設定しますWeaveEchoServerのオブジェクトを。

シャットダウン

WEAVE_ERROR Shutdown(
  void
)

シャットダウン前に初期化されWeaveEchoServerのオブジェクト。

場合は、この方法でのみ呼び出すことができることに注意してくださいは、init()メソッドが以前に呼び出されています。

WeaveEchoServer

 WeaveEchoServer(
  void
)

デフォルトコンストラクタWeaveEchoServer

パブリック静的関数

DefaultEventHandler

void DefaultEventHandler(
  void *appState,
  EventType eventType,
  const InEventParam & inParam,
  OutEventParam & outParam
)

デフォルトハンドラWeaveEchoServerのAPIイベント。

アプリケーションは、認識または処理しないAPIイベントに対してこのメ​​ソッドを呼び出す必要があります。提供されるパラメーターは、サーバーオブジェクトからアプリケーションのイベントハンドラー関数に渡されるパラメーターと同じである必要があります。

詳細
パラメーター
[in] appState
サーバーオブジェクトに関連付けられたアプリケーション定義の状態情報へのポインター。
[in] eventType
イベントコールバックによって渡されたイベントID
[in] inParam
イベントコールバックによって渡される入力イベントパラメータの参照
[in] outParam
イベントコールバックによって渡された出力イベントパラメーターの参照