nl :: Tecer:: Perfis :: Echo_Next :: WeaveEchoServer
#include <src/lib/profiles/echo/Next/WeaveEchoServer.h>
Accepts EchoRequest messages from a peer node and responds with an EchoResponse message.
Resumo
Os WeaveEchoServer classe implementa o lado respondedor do protocolo tecer eco. Semelhante ao protocolo de ping ICMP, o protocolo Weave Echo pode ser usado para testar a vivacidade e acessibilidade de um nó Weave.
Os aplicativos podem usar o WeaveEchoServer classe para permitir uma resposta automática para mensagens EchoRequest recebidas. Existe uma classe correspondente para iniciar solicitações de eco (ver WeaveEchoClient ).
Por padrão, o WeaveEchoServer responde imediatamente a um EchoRequest com resposta contendo a mesma carga que a solicitação. No entanto, esse comportamento pode ser alterado pelo aplicativo durante o processamento do evento da API EchoRequestReceived.
Eventos API
Durante o curso de sua operação, o WeaveEchoServer objeto irá chamar-se à aplicação de medidas específicas de solicitação ou entregar notificações de eventos importantes. Essas chamadas de eventos de API são feitas para a função de retorno de chamada atualmente configurada no objeto do servidor. Exceto onde indicado, os aplicativos são livres para alterar o estado do servidor durante um retorno de chamada de evento. Uma excepção é o total do objecto de desligamento () método, que nunca pode ser chamada durante uma chamada de retorno.
Os seguintes eventos de API são definidos:
EchoRequestReceived
Uma mensagem EchoRequest foi recebida de um par. Os argumentos para o evento contêm a carga útil do pedido, o contexto de troca sobre o qual a mensagem foi recebida e meta-informações sobre a mensagem do pedido.
Se o aplicativo escolher, ele pode alterar os argumentos de saída para o evento para forçar um atraso na resposta ou suprimir a resposta por completo. Além disso, pode alterar o conteúdo do buffer de carga útil, que se tornará a carga útil para a mensagem de resposta.
EchoResponseSent
Uma mensagem EchoResponse foi enviada ou não foi enviada. Os argumentos para o evento contêm o erro que resultou do envio da mensagem (se houver) e o contexto de troca sobre o qual a mensagem foi enviada.
Herança
Herda: nl :: Weave :: WeaveServerBaseDirigir Subclasses conhecidas: nl :: Weave :: DeviceLayer :: Interno :: EchoServer
Construtores e Destruidores | |
---|---|
WeaveEchoServer (void) Construtor padrão para WeaveEchoServer . |
Tipos públicos | |
---|---|
EchoFunct )(uint64_t nodeId, IPAddress nodeAddr, PacketBuffer *payload) | typedefvoid(* |
EventCallback )(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam) | typedefvoid(* |
EventType { | enum |
Atributos públicos | |
---|---|
AppState | void * Um ponteiro para dados específicos do aplicativo. |
OnEchoRequestReceived | EchoFunct |
Funções públicas | |
---|---|
GetEventCallback (void) const | EventCallback Retorna um ponteiro para a função de evento de retorno de chamada API atualmente configurado no WeaveEchoServer objeto. |
Init ( WeaveExchangeManager *exchangeMgr, EventCallback eventCallback, void *appState) | Inicializar um WeaveEchoServer objeto. |
Init ( WeaveExchangeManager *exchangeMgr) | Inicializar um WeaveEchoServer objeto. |
SetEventCallback (EventCallback eventCallback) | void Define a função de retorno de eventos API na WeaveEchoServer objeto. |
Shutdown (void) | Desligamento anteriormente inicializado um WeaveEchoServer objecto. |
Funções estáticas públicas | |
---|---|
DefaultEventHandler (void *appState, EventType eventType, const InEventParam & inParam, OutEventParam & outParam) | void Manipulador padrão para WeaveEchoServer eventos API. |
Structs | |
---|---|
nl :: Weave :: Profiles :: Echo_Next :: WeaveEchoServer :: InEventParam | Parâmetros de entrada para WeaveEchoServer evento API. |
nl :: Weave :: Profiles :: Echo_Next :: WeaveEchoServer :: OutEventParam | Parâmetros de saída para WeaveEchoServer evento API. |
Tipos públicos
EchoFunct
void(* EchoFunct)(uint64_t nodeId, IPAddress nodeAddr, PacketBuffer *payload)
EventCallback
void(* EventCallback)(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam)
Tipo de evento
EventType
Atributos públicos
AppState
void * AppState
Um ponteiro para dados específicos do aplicativo.
OnEchoRequestReceived
EchoFunct OnEchoRequestReceived
Funções públicas
GetEventCallback
EventCallback GetEventCallback( void ) const
Retorna um ponteiro para a função de evento de retorno de chamada API atualmente configurado no WeaveEchoServer objeto.
Iniciar
WEAVE_ERROR Init( WeaveExchangeManager *exchangeMgr, EventCallback eventCallback, void *appState )
Inicializar um WeaveEchoServer objeto.
Inicializar um WeaveEchoServer objeto para responder a eco mensagens de um par.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
Iniciar
WEAVE_ERROR Init( WeaveExchangeManager *exchangeMgr )
Inicializar um WeaveEchoServer objeto.
Inicializar um WeaveEchoServer objeto para responder a eco mensagens de um par.
DEPRECADO: Utilize Init (WeaveExchangeManager * exchangeMgr, EventCallback eventCallback, void * AppState) .
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
SetEventCallback
void SetEventCallback( EventCallback eventCallback )
Define a função de retorno de eventos API na WeaveEchoServer objeto.
Desligar
WEAVE_ERROR Shutdown( void )
Desligamento anteriormente inicializado um WeaveEchoServer objecto.
Note que este método só pode ser chamado se o Init () método tem sido chamado anteriormente.
Funções estáticas públicas
DefaultEventHandler
void DefaultEventHandler( void *appState, EventType eventType, const InEventParam & inParam, OutEventParam & outParam )
Manipulador padrão para WeaveEchoServer eventos API.
Os aplicativos são obrigados a chamar esse método para quaisquer eventos de API que eles não reconhecem ou manipulam. Os parâmetros fornecidos devem ser iguais aos passados pelo objeto do servidor para a função de tratamento de eventos do aplicativo.
Detalhes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|