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

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

Weave-Klasse Heartbeat Sender

Zusammenfassung

Konstruktoren und Zerstörer

WeaveHeartbeatSender(void)

Öffentliche Typen

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

Öffentliche Attribute

AppState
void *

Öffentliche Funktionen

GetBinding() const
Ruft das Bindungsobjekt ab, das dem Heartbeat-Sender zugeordnet ist.
GetConfiguration(uint32_t & interval, uint32_t & phase, uint32_t & window) const
void
Konfiguration des Heartbeat-Timings abrufen.
GetEventCallback() const
EventCallback
Gibt die Funktion zurück, die aufgerufen wird, um die Anwendung von Ereignissen oder Änderungen zu informieren, die im WeaveHeartbeatSender auftreten.
GetRequestAck() const
bool
Gibt eine Markierung zurück, die angibt, ob Heartbeat-Nachrichten zuverlässig mit Weave Zuverlässig Messaging gesendet werden.
GetSubscriptionState() const
uint8_t
Ruft den aktuellen Wert für den Abostatus ab.
Init(WeaveExchangeManager *exchangeMgr, Binding *binding, EventCallback eventCallback, void *appState)
Initialisieren Sie den Weave-Heartbeat-Sender.
ScheduleHeartbeat(void)
Hiermit kannst du das Senden von Weave-Heartbeat-Nachrichten planen.
SendHeartbeatNow(void)
Sende jetzt eine Weave-Heartbeat-Nachricht.
SetConfiguration(uint32_t interval, uint32_t phase, uint32_t window)
void
Legt die Konfiguration für das Heartbeat-Timing fest.
SetEventCallback(EventCallback eventCallback)
void
Legt die Funktion fest, die aufgerufen wird, um die Anwendung von Ereignissen oder Änderungen zu informieren, die im WeaveHeartbeatSender auftreten.
SetRequestAck(bool val)
void
Legt ein Flag fest, das angibt, ob Heartbeat-Nachrichten zuverlässig mit Weave Zuverlässig Messaging gesendet werden sollen.
SetSubscriptionState(uint8_t val)
void
Legen Sie den aktuellen Abostatus fest.
Shutdown(void)
Schalten Sie den Weave-Heartbeat-Sender aus.
StartHeartbeat(void)
Sende neue Weave-Heartbeat-Nachrichten.
StopHeartbeat(void)
Keine Weave-Heartbeat-Nachrichten mehr senden.

Öffentliche statische Funktionen

DefaultEventHandler(void *appState, EventType eventType, const InEventParam & inParam, OutEventParam & outParam)
void
Standardmäßige Handler-Funktion für API-Ereignisse vom Typ WeaveHeartbeatSender.

Strukturen

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

Eingabeparameter für das API-Ereignis WeaveHeartbeatSender.

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

Ausgabeparameter für das API-Ereignis WeaveHeartbeatSender

Öffentliche Typen

EventCallback

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

EventType

 EventType
Attribute
kEvent_DefaultCheck

Wird verwendet, um die korrekte Verarbeitung von Standardereignissen in der Anwendung zu überprüfen.

Anwendungen sollten dieses Ereignis NICHT ausdrücklich verarbeiten.

kEvent_HeartbeatFailed

Eine Heartbeat-Nachricht konnte nicht an den Peer gesendet werden.

kEvent_HeartbeatSent

Eine Heartbeat-Nachricht wurde erfolgreich an den Peer gesendet.

Wenn die zuverlässige Übertragung aktiviert ist, zeigt dieses Ereignis an, dass die Nachricht bestätigt wurde.

kEvent_UpdateSubscriptionState

Die Anwendung wird aufgefordert, den Abostatus zu aktualisieren.

Öffentliche Attribute

AppState

void * AppState

Öffentliche Funktionen

GetBinding

Binding * GetBinding() const 

Ruft das Bindungsobjekt ab, das dem Heartbeat-Sender zugeordnet ist.

GetConfiguration

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

Konfiguration des Heartbeat-Timings abrufen.

Details
Parameter
[out] interval
Ein Verweis auf eine Ganzzahl, um das Heartbeat-Intervall zu erhalten.
[out] phase
Ein Verweis auf eine Ganzzahl, um die Heartbeat-Phase zu erhalten.
[out] window
Ein Verweis auf eine Ganzzahl, um das Fenster zur Randomisierung des Heartbeats zu erhalten.

GetEventCallback

EventCallback GetEventCallback() const 

Gibt die Funktion zurück, die aufgerufen wird, um die Anwendung von Ereignissen oder Änderungen zu informieren, die im WeaveHeartbeatSender auftreten.

GetRequestAck

bool GetRequestAck() const 

Gibt eine Markierung zurück, die angibt, ob Heartbeat-Nachrichten zuverlässig mit Weave Zuverlässig Messaging gesendet werden.

GetSubscriptionState

uint8_t GetSubscriptionState() const 

Ruft den aktuellen Wert für den Abostatus ab.

Init

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

Initialisieren Sie den Weave-Heartbeat-Sender.

Details
Parameter
[in] exchangeMgr
Ein Verweis auf das Weave Exchange Manager-System.
[in] binding
Ein Zeiger auf ein Weave-Binding-Objekt, das zum Adressieren des Peer-Knotens verwendet wird.
[in] eventCallback
Ein Zeiger auf eine Funktion, die aufgerufen wird, um die Anwendung über Ereignisse oder Statusänderungen zu informieren, die beim Absender auftreten.
[in] appState
Ein Zeiger auf anwendungsspezifische Daten. Dieser Zeiger wird in Callbacks an die Anwendung zurückgegeben.
Rückgabewerte
WEAVE_ERROR_INCORRECT_STATE
Wenn das Objekt WeaveHeartbeatSender bereits initialisiert wurde.
WEAVE_ERROR_INVALID_ARGUMENT
Wenn eines der angegebenen Argumente null ist.
WEAVE_NO_ERROR
Bei Erfolg.

ScheduleHeartbeat

WEAVE_ERROR ScheduleHeartbeat(
  void
)

Hiermit kannst du das Senden von Weave-Heartbeat-Nachrichten planen.

Details
Rückgabewerte
WEAVE_SYSTEM_ERROR_NO_MEMORY
wenn StartTimer() fehlgeschlagen ist
WEAVE_NO_ERROR
bei Erfolg

SendHeartbeatNow

WEAVE_ERROR SendHeartbeatNow(
  void
)

Sende jetzt eine Weave-Heartbeat-Nachricht.

Details
Rückgabewerte
WEAVE_ERROR_INCORRECT_STATE
WeaveHeartbeatSender wurde nicht initialisiert.
WEAVE_NO_ERROR
bei Erfolg

SetConfiguration

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

Legt die Konfiguration für das Heartbeat-Timing fest.

Details
Parameter
[in] interval
Das zu verwendende Intervall beim Senden von Weave-Heartbeat-Nachrichten.
[in] phase
Phase, die beim Senden von Weave-Heartbeat-Nachrichten verwendet wird.
[in] window
Fensterbereich zur Auswahl eines zufälligen Intervalls

SetEventCallback

void SetEventCallback(
  EventCallback eventCallback
)

Legt die Funktion fest, die aufgerufen wird, um die Anwendung von Ereignissen oder Änderungen zu informieren, die im WeaveHeartbeatSender auftreten.

SetRequestAck

void SetRequestAck(
  bool val
)

Legt ein Flag fest, das angibt, ob Heartbeat-Nachrichten zuverlässig mit Weave Zuverlässig Messaging gesendet werden sollen.

Dieses Flag ist nur aussagekräftig, wenn UDP als Transport verwendet wird.

Details
Parameter
[in] val
Dieser Wert ist „True“, wenn Heartbeat-Nachrichten zuverlässig gesendet werden sollen.

SetSubscriptionState

void SetSubscriptionState(
  uint8_t val
)

Legen Sie den aktuellen Abostatus fest.

Details
Parameter
[in] val
Ein 8-Bit-Abostatuswert, der mit der Heartbeat-Nachricht übertragen wird.

Herunterfahren

WEAVE_ERROR Shutdown(
  void
)

Schalten Sie den Weave-Heartbeat-Sender aus.

Details
Rückgabewerte
WEAVE_NO_ERROR
Bei Erfolg.

StartHeartbeat

WEAVE_ERROR StartHeartbeat(
  void
)

Sende neue Weave-Heartbeat-Nachrichten.

Details
Rückgabewerte
INET_ERROR_NO_MEMORY
wenn StartTimer() fehlgeschlagen ist
WEAVE_NO_ERROR
bei Erfolg

StopHeartbeat

WEAVE_ERROR StopHeartbeat(
  void
)

Keine Weave-Heartbeat-Nachrichten mehr senden.

Details
Rückgabewerte
WEAVE_NO_ERROR
bedingungslos

WeaveHeartbeatSender

 WeaveHeartbeatSender(
  void
)

Öffentliche statische Funktionen

DefaultEventHandler

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

Standardmäßige Handler-Funktion für API-Ereignisse vom Typ WeaveHeartbeatSender.

Anwendungen müssen diese Funktion für alle API-Ereignisse aufrufen, die sie nicht verarbeiten.