nl::Weave::Profiles::Heartbeat::WeaveHeartbeatSender

#include <src/lib/profiles/heartbeat/WeaveHeartbeat.h>

Classe de remetente Heartbeat do Weave.

Resumo

Construtores e destruidores

WeaveHeartbeatSender(void)

Tipos públicos

EventCallback)(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam) typedef
void(*
EventType{
  kEvent_UpdateSubscriptionState = 1,
  kEvent_HeartbeatSent = 2,
  kEvent_HeartbeatFailed = 3,
  kEvent_DefaultCheck = 100
}
enum

Atributos públicos

AppState
void *

Funções públicas

GetBinding() const
Recebe o objeto de vinculação associado ao remetente do sinal de funcionamento.
GetConfiguration(uint32_t & interval, uint32_t & phase, uint32_t & window) const
void
Acessa a configuração do tempo do sinal de funcionamento.
GetEventCallback() const
EventCallback
Retorna a função que será chamada para notificar o aplicativo de eventos ou alterações que ocorrerem no WeaveHeartbeatSender.
GetRequestAck() const
bool
Retorna uma sinalização que indica se as mensagens de sinal de funcionamento serão enviadas de maneira confiável usando o Weave Reliable Messaging.
GetSubscriptionState() const
uint8_t
Recebe o valor atual do estado da assinatura.
Init(WeaveExchangeManager *exchangeMgr, Binding *binding, EventCallback eventCallback, void *appState)
Inicialize o remetente do Heartbeat do Weave.
ScheduleHeartbeat(void)
Programar o envio de mensagens do Heartbeat do Weave.
SendHeartbeatNow(void)
Envie uma mensagem do Heartbeat do Weave agora mesmo.
SetConfiguration(uint32_t interval, uint32_t phase, uint32_t window)
void
Define a configuração do tempo do sinal de funcionamento.
SetEventCallback(EventCallback eventCallback)
void
Define a função que será chamada para notificar o aplicativo de eventos ou alterações que ocorrerem no WeaveHeartbeatSender.
SetRequestAck(bool val)
void
Define um sinalizador que indica se as mensagens de sinal de funcionamento devem ser enviadas de maneira confiável usando o Weave Reliable Messaging.
SetSubscriptionState(uint8_t val)
void
Define o estado atual da assinatura.
Shutdown(void)
Encerre o remetente do Heartbeat do Weave.
StartHeartbeat(void)
Comece a enviar mensagens de batimentos do Weave.
StopHeartbeat(void)
Pare de enviar mensagens de batimentos do Weave.

Funções estáticas públicas

DefaultEventHandler(void *appState, EventType eventType, const InEventParam & inParam, OutEventParam & outParam)
void
Função de gerenciador padrão para eventos da API WeaveHeartbeatSender.

Estruturas

nl::Weave::Profiles::Heartbeat::WeaveHeartbeatSender::InEventParam

Parâmetros de entrada para o evento da API WeaveHeartbeatSender.

nl::Weave::Profiles::Heartbeat::WeaveHeartbeatSender::OutEventParam

Parâmetros de saída para o evento da API WeaveHeartbeatSender.

Tipos públicos

EventCallback

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

EventType

 EventType
Propriedades
kEvent_DefaultCheck

Usado para verificar o tratamento correto do evento padrão no aplicativo.

Os aplicativos NÃO devem manipular expressamente esse evento.

kEvent_HeartbeatFailed

Falha ao enviar uma mensagem de sinal de funcionamento ao usuário.

kEvent_HeartbeatSent

Uma mensagem de sinal de funcionamento foi enviada com sucesso ao par.

Se a transmissão confiável estiver ativada, esse evento vai indicar que a mensagem foi confirmada.

kEvent_UpdateSubscriptionState

O aplicativo solicita a atualização do estado da assinatura.

Atributos públicos

AppState

void * AppState

Funções públicas

GetBinding

Binding * GetBinding() const 

Recebe o objeto de vinculação associado ao remetente do sinal de funcionamento.

GetConfiguration

void GetConfiguration(
  uint32_t & interval,
  uint32_t & phase,
  uint32_t & window
) const 

Acessa a configuração do tempo do sinal de funcionamento.

Detalhes
Parâmetros
[out] interval
Uma referência a um número inteiro para receber o intervalo do sinal de funcionamento.
[out] phase
Uma referência a um número inteiro para receber a fase do sinal de funcionamento.
[out] window
Uma referência a um número inteiro para receber a janela de ordem aleatória do sinal de funcionamento.

GetEventCallback

EventCallback GetEventCallback() const 

Retorna a função que será chamada para notificar o aplicativo de eventos ou alterações que ocorrerem no WeaveHeartbeatSender.

GetRequestAck

bool GetRequestAck() const 

Retorna uma sinalização que indica se as mensagens de sinal de funcionamento serão enviadas de maneira confiável usando o Weave Reliable Messaging.

GetSubscriptionState

uint8_t GetSubscriptionState() const 

Recebe o valor atual do estado da assinatura.

Init

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

Inicialize o remetente do Heartbeat do Weave.

Detalhes
Parâmetros
[in] exchangeMgr
Um ponteiro para o sistema do Weave Exchange Manager.
[in] binding
Um ponteiro para um objeto de vinculação do Weave que será usado para endereçar o nó de peering.
[in] eventCallback
Um ponteiro para uma função que será chamada para notificar o aplicativo sobre eventos ou alterações de estado que ocorrem no remetente.
[in] appState
Um ponteiro para dados específicos do aplicativo. Esse ponteiro será retornado em callbacks para o aplicativo.
Valores de retorno
WEAVE_ERROR_INCORRECT_STATE
Se o objeto WeaveHeartbeatSender já tiver sido inicializado.
WEAVE_ERROR_INVALID_ARGUMENT
Se algum dos argumentos fornecidos for nulo.
WEAVE_NO_ERROR
Se a operação for bem-sucedida.

ScheduleHeartbeat

WEAVE_ERROR ScheduleHeartbeat(
  void
)

Programar o envio de mensagens do Heartbeat do Weave.

Detalhes
Valores de retorno
WEAVE_SYSTEM_ERROR_NO_MEMORY
se StartTimer() falhar
WEAVE_NO_ERROR
com o sucesso

SendHeartbeatNow

WEAVE_ERROR SendHeartbeatNow(
  void
)

Envie uma mensagem do Heartbeat do Weave agora mesmo.

Detalhes
Valores de retorno
WEAVE_ERROR_INCORRECT_STATE
se o WeaveHeartbeatSender não for inicializado
WEAVE_NO_ERROR
com o sucesso

SetConfiguration

void SetConfiguration(
  uint32_t interval,
  uint32_t phase,
  uint32_t window
)

Define a configuração do tempo do sinal de funcionamento.

Detalhes
Parâmetros
[in] interval
Intervalo a ser usado ao enviar mensagens de frequência do Weave.
[in] phase
Fase a ser usada ao enviar mensagens de frequência do Weave.
[in] window
Intervalo da janela a ser usado para escolher um intervalo aleatório

SetEventCallback

void SetEventCallback(
  EventCallback eventCallback
)

Define a função que será chamada para notificar o aplicativo de eventos ou alterações que ocorrerem no WeaveHeartbeatSender.

SetRequestAck

void SetRequestAck(
  bool val
)

Define um sinalizador que indica se as mensagens de sinal de funcionamento devem ser enviadas de maneira confiável usando o Weave Reliable Messaging.

Essa sinalização só é relevante quando o UDP é usado como transporte.

Detalhes
Parâmetros
[in] val
Verdadeiro se as mensagens de sinal de funcionamento precisarem ser enviadas de maneira confiável.

SetSubscriptionState

void SetSubscriptionState(
  uint8_t val
)

Define o estado atual da assinatura.

Detalhes
Parâmetros
[in] val
Um valor de estado da assinatura de 8 bits a ser transmitido com a mensagem do sinal de funcionamento.

Encerramento

WEAVE_ERROR Shutdown(
  void
)

Encerre o remetente do Heartbeat do Weave.

Detalhes
Valores de retorno
WEAVE_NO_ERROR
Se a operação for bem-sucedida.

StartHeartbeat

WEAVE_ERROR StartHeartbeat(
  void
)

Comece a enviar mensagens de batimentos do Weave.

Detalhes
Valores de retorno
INET_ERROR_NO_MEMORY
se StartTimer() falhar
WEAVE_NO_ERROR
com o sucesso

StopHeartbeat

WEAVE_ERROR StopHeartbeat(
  void
)

Pare de enviar mensagens de batimentos do Weave.

Detalhes
Valores de retorno
WEAVE_NO_ERROR
incondicionalmente

WeaveHeartbeatSender

 WeaveHeartbeatSender(
  void
)

Funções estáticas públicas

DefaultEventHandler

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

Função de gerenciador padrão para eventos da API WeaveHeartbeatSender.

Os aplicativos precisam chamar essa função para qualquer evento de API que não sejam processados.