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

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

Classe Weave Heartbeat Sender.

Riepilogo

Costruttori e distruttori

WeaveHeartbeatSender(void)

Tipi pubblici

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

Attributi pubblici

AppState
void *

Funzioni pubbliche

GetBinding() const
Recupera l'oggetto di associazione associato al mittente heartbeat.
GetConfiguration(uint32_t & interval, uint32_t & phase, uint32_t & window) const
void
Ottieni la configurazione dei tempi di heartbeat.
GetEventCallback() const
EventCallback
Restituisce la funzione che verrà chiamata per notificare all'applicazione gli eventi o i cambiamenti che si verificano in WeaveHeartbeatSender.
GetRequestAck() const
bool
Restituisce un flag che indica se i messaggi heartbeat verranno inviati in modo affidabile utilizzando Weave Reliable Messaging.
GetSubscriptionState() const
uint8_t
Ottieni il valore dello stato della sottoscrizione attuale.
Init(WeaveExchangeManager *exchangeMgr, Binding *binding, EventCallback eventCallback, void *appState)
Inizializza il mittente Weave Heartbeat.
ScheduleHeartbeat(void)
Programma l'invio di messaggi Weave Heartbeat.
SendHeartbeatNow(void)
Invia subito un messaggio Weave Heartbeat.
SetConfiguration(uint32_t interval, uint32_t phase, uint32_t window)
void
Imposta la configurazione del tempo dell'heartbeat.
SetEventCallback(EventCallback eventCallback)
void
Imposta la funzione che verrà chiamata per notificare l'applicazione degli eventi o dei cambiamenti che si verificano in WeaveHeartbeatSender.
SetRequestAck(bool val)
void
Imposta un flag che indica se i messaggi heartbeat devono essere inviati in modo affidabile tramite Weave Reliable Messaging.
SetSubscriptionState(uint8_t val)
void
Imposta lo stato dell'abbonamento attuale.
Shutdown(void)
Arresta il mittente Weave Heartbeat.
StartHeartbeat(void)
Inizia a inviare messaggi Weave Heartbeat.
StopHeartbeat(void)
Interrompi l'invio di messaggi Weave Heartbeat.

Funzioni statiche pubbliche

DefaultEventHandler(void *appState, EventType eventType, const InEventParam & inParam, OutEventParam & outParam)
void
Funzione gestore predefinito per gli eventi API WeaveHeartbeatSender.

Strutture

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

Inserisci i parametri per l'evento API WeaveHeartbeatSender.

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

Parametri di output per l'evento API WeaveHeartbeatSender.

Tipi pubblici

EventCallback

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

EventType

 EventType
Proprietà
kEvent_DefaultCheck

Utilizzato per verificare la corretta gestione predefinita degli eventi nell'applicazione.

Le applicazioni NON devono gestire espressamente questo evento.

kEvent_HeartbeatFailed

Impossibile inviare un messaggio Heartbeat al peer.

kEvent_HeartbeatSent

Un messaggio heartbeat è stato inviato correttamente al peer.

Se è abilitata una trasmissione affidabile, questo evento indica che il messaggio è stato confermato.

kEvent_UpdateSubscriptionState

All'applicazione viene richiesto di aggiornare lo stato dell'abbonamento.

Attributi pubblici

AppState

void * AppState

Funzioni pubbliche

GetBinding

Binding * GetBinding() const 

Recupera l'oggetto di associazione associato al mittente heartbeat.

GetConfiguration

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

Ottieni la configurazione dei tempi di heartbeat.

Dettagli
Parametri
[out] interval
Un riferimento a un numero intero per ricevere l'intervallo di battito cardiaco.
[out] phase
Un riferimento a un numero intero per ricevere la fase di battito cardiaco.
[out] window
Un riferimento a un numero intero per ricevere la finestra di randomizzazione dell'heartbeat.

GetEventCallback

EventCallback GetEventCallback() const 

Restituisce la funzione che verrà chiamata per notificare all'applicazione gli eventi o i cambiamenti che si verificano in WeaveHeartbeatSender.

GetRequestAck

bool GetRequestAck() const 

Restituisce un flag che indica se i messaggi heartbeat verranno inviati in modo affidabile utilizzando Weave Reliable Messaging.

GetSubscriptionState

uint8_t GetSubscriptionState() const 

Ottieni il valore dello stato della sottoscrizione attuale.

Inizia

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

Inizializza il mittente Weave Heartbeat.

Dettagli
Parametri
[in] exchangeMgr
Un puntatore al sistema Weave Exchange Manager.
[in] binding
Un puntatore a un oggetto di associazione Weave che verrà utilizzato per indirizzare il nodo peer.
[in] eventCallback
Un puntatore a una funzione che verrà chiamata per notificare l'applicazione di eventi o cambiamenti di stato che si verificano nel mittente.
[in] appState
Un puntatore ai dati specifici dell'applicazione. Questo puntatore verrà restituito nei callback all'applicazione.
Valori restituiti
WEAVE_ERROR_INCORRECT_STATE
Se l'oggetto WeaveHeartbeatSender è già stato inizializzato.
WEAVE_ERROR_INVALID_ARGUMENT
Se uno degli argomenti forniti è nullo.
WEAVE_NO_ERROR
In caso di successo.

ScheduleHeartbeat

WEAVE_ERROR ScheduleHeartbeat(
  void
)

Programma l'invio di messaggi Weave Heartbeat.

Dettagli
Valori restituiti
WEAVE_SYSTEM_ERROR_NO_MEMORY
se StartTimer() non è riuscito
WEAVE_NO_ERROR
in caso di esito positivo

SendHeartbeatNow

WEAVE_ERROR SendHeartbeatNow(
  void
)

Invia subito un messaggio Weave Heartbeat.

Dettagli
Valori restituiti
WEAVE_ERROR_INCORRECT_STATE
se WeaveHeartbeatSender non viene inizializzato
WEAVE_NO_ERROR
in caso di esito positivo

SetConfiguration

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

Imposta la configurazione del tempo dell'heartbeat.

Dettagli
Parametri
[in] interval
Intervallo da utilizzare per l'invio di messaggi Weave Heartbeat.
[in] phase
Fase da utilizzare per l'invio di messaggi Weave Heartbeat.
[in] window
Intervallo di finestre da utilizzare per scegliere l'intervallo casuale

SetEventCallback

void SetEventCallback(
  EventCallback eventCallback
)

Imposta la funzione che verrà chiamata per notificare l'applicazione degli eventi o dei cambiamenti che si verificano in WeaveHeartbeatSender.

SetRequestAck

void SetRequestAck(
  bool val
)

Imposta un flag che indica se i messaggi heartbeat devono essere inviati in modo affidabile tramite Weave Reliable Messaging.

Tieni presente che questo flag è significativo solo quando utilizzi UDP come trasporto.

Dettagli
Parametri
[in] val
True se i messaggi heartbeat devono essere inviati in modo affidabile.

SetSubscriptionState

void SetSubscriptionState(
  uint8_t val
)

Imposta lo stato dell'abbonamento attuale.

Dettagli
Parametri
[in] val
Un valore dello stato di sottoscrizione a 8 bit da comunicare con il messaggio heartbeat.

Arresto

WEAVE_ERROR Shutdown(
  void
)

Arresta il mittente Weave Heartbeat.

Dettagli
Valori restituiti
WEAVE_NO_ERROR
In caso di successo.

StartHeartbeat

WEAVE_ERROR StartHeartbeat(
  void
)

Inizia a inviare messaggi Weave Heartbeat.

Dettagli
Valori restituiti
INET_ERROR_NO_MEMORY
se StartTimer() non è riuscito
WEAVE_NO_ERROR
in caso di esito positivo

StopHeartbeat

WEAVE_ERROR StopHeartbeat(
  void
)

Interrompi l'invio di messaggi Weave Heartbeat.

Dettagli
Valori restituiti
WEAVE_NO_ERROR
incondizionatamente

WeaveHeartbeatSender

 WeaveHeartbeatSender(
  void
)

Funzioni statiche pubbliche

DefaultEventHandler

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

Funzione gestore predefinito per gli eventi API WeaveHeartbeatSender.

Le applicazioni devono chiamare questa funzione per tutti gli eventi API che non gestiscono.