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

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

คลาสผู้ส่งฮาร์ตบีตของ Weave

สรุป

ผู้ผลิตและผู้ทำลาย

WeaveHeartbeatSender(void)

ประเภทสาธารณะ

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

แอตทริบิวต์สาธารณะ

AppState
void *

ฟังก์ชันสาธารณะ

GetBinding() const
รับออบเจ็กต์การเชื่อมโยงที่เชื่อมโยงกับผู้ส่งฮาร์ตบีต
GetConfiguration(uint32_t & interval, uint32_t & phase, uint32_t & window) const
void
รับการกำหนดค่าจังหวะเวลาของฮาร์ตบีต
GetEventCallback() const
EventCallback
แสดงผลฟังก์ชันที่จะเรียกใช้เพื่อแจ้งเตือนแอปพลิเคชันของเหตุการณ์หรือการเปลี่ยนแปลงที่เกิดขึ้นใน WeaveHeartbeatSender
GetRequestAck() const
bool
แสดงค่าสถานะที่ระบุว่าจะส่งข้อความฮาร์ตบีตอย่างน่าเชื่อถือโดยใช้ Weave Reliable Messaging หรือไม่
GetSubscriptionState() const
uint8_t
รับค่าสถานะการสมัครใช้บริการปัจจุบัน
Init(WeaveExchangeManager *exchangeMgr, Binding *binding, EventCallback eventCallback, void *appState)
เริ่มต้นผู้ส่ง Weave Heartbeat
ScheduleHeartbeat(void)
กำหนดเวลาส่งข้อความ ฮาร์ตบีต ของ Weave
SendHeartbeatNow(void)
ส่งข้อความฮาร์ตบีตของ Weave เลย
SetConfiguration(uint32_t interval, uint32_t phase, uint32_t window)
void
กำหนดค่าเวลาฮาร์ตบีต
SetEventCallback(EventCallback eventCallback)
void
ตั้งค่าฟังก์ชันที่จะเรียกใช้เพื่อแจ้งเตือนแอปพลิเคชันเกี่ยวกับเหตุการณ์หรือการเปลี่ยนแปลงที่เกิดขึ้นใน WeaveHeartbeatSender
SetRequestAck(bool val)
void
ตั้งค่าการทำเครื่องหมายที่ระบุว่าควรส่งข้อความฮาร์ตบีตอย่างน่าเชื่อถือโดยใช้ Weave Reliable Messaging หรือไม่
SetSubscriptionState(uint8_t val)
void
ตั้งสถานะการสมัครใช้บริการปัจจุบัน
Shutdown(void)
ปิดระบบผู้ส่ง ฮาร์ตบีตของ Weave
StartHeartbeat(void)
เริ่มส่งข้อความ ฮาร์ตบีต ของ Weave
StopHeartbeat(void)
หยุดส่งข้อความฮาร์ตบีตของ Weave

ฟังก์ชันสาธารณะแบบคงที่

DefaultEventHandler(void *appState, EventType eventType, const InEventParam & inParam, OutEventParam & outParam)
void
ฟังก์ชันตัวแฮนเดิลเริ่มต้นสำหรับเหตุการณ์ API WeaveHeartbeatSender

โครงสร้าง

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

ป้อนพารามิเตอร์ไปยังเหตุการณ์ WeaveHeartbeatSender API

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

เอาต์พุตพารามิเตอร์ไปยังเหตุการณ์ WeaveHeartbeatSender API

ประเภทสาธารณะ

EventCallback

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

EventType

 EventType
พร็อพเพอร์ตี้
kEvent_DefaultCheck

ใช้เพื่อยืนยันการจัดการเหตุการณ์เริ่มต้นที่ถูกต้องในแอปพลิเคชัน

แอปพลิเคชันไม่ควรจัดการเหตุการณ์นี้อย่างชัดแจ้ง

kEvent_HeartbeatFailed

ส่งข้อความฮาร์ตบีตไปยังแอปเทียบเท่าไม่สำเร็จ

kEvent_HeartbeatSent

ส่งข้อความฮาร์ตบีตไปยังแอปเทียบเท่าเรียบร้อยแล้ว

หากเปิดใช้การส่งที่เชื่อถือได้ เหตุการณ์นี้จะระบุว่ารับทราบข้อความแล้ว

kEvent_UpdateSubscriptionState

แอปพลิเคชันจะขอให้อัปเดตสถานะการสมัครใช้บริการ

แอตทริบิวต์สาธารณะ

AppState

void * AppState

ฟังก์ชันสาธารณะ

GetBinding

Binding * GetBinding() const 

รับออบเจ็กต์การเชื่อมโยงที่เชื่อมโยงกับผู้ส่งฮาร์ตบีต

GetConfiguration

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

รับการกำหนดค่าจังหวะเวลาของฮาร์ตบีต

รายละเอียด
พารามิเตอร์
[out] interval
การอ้างอิงจำนวนเต็มเพื่อรับช่วงฮาร์ตบีต
[out] phase
การอ้างอิงจำนวนเต็มสำหรับช่วงฮาร์ตบีต
[out] window
การอ้างอิงจำนวนเต็มเพื่อรับหน้าต่างการสุ่มฮาร์ตบีต

GetEventCallback

EventCallback GetEventCallback() const 

แสดงผลฟังก์ชันที่จะเรียกใช้เพื่อแจ้งเตือนแอปพลิเคชันของเหตุการณ์หรือการเปลี่ยนแปลงที่เกิดขึ้นใน WeaveHeartbeatSender

GetRequestAck

bool GetRequestAck() const 

แสดงค่าสถานะที่ระบุว่าจะส่งข้อความฮาร์ตบีตอย่างน่าเชื่อถือโดยใช้ Weave Reliable Messaging หรือไม่

GetSubscriptionState

uint8_t GetSubscriptionState() const 

รับค่าสถานะการสมัครใช้บริการปัจจุบัน

Init

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

เริ่มต้นผู้ส่ง Weave Heartbeat

รายละเอียด
พารามิเตอร์
[in] exchangeMgr
ตัวชี้ไปยังระบบ Weave Exchange Manager
[in] binding
ตัวชี้ไปยังออบเจ็กต์การเชื่อมโยงของ Weave ซึ่งจะใช้ในการระบุโหนดเพียร์
[in] eventCallback
ตัวชี้ไปยังฟังก์ชันที่จะเรียกใช้เพื่อแจ้งการใช้เหตุการณ์หรือการเปลี่ยนแปลงสถานะที่เกิดขึ้นในผู้ส่ง
[in] appState
ตัวชี้ไปยังข้อมูลเฉพาะแอปพลิเคชัน ระบบจะแสดงผลเคอร์เซอร์นี้ในการติดต่อกลับไปยังแอปพลิเคชัน
ผลลัพธ์
WEAVE_ERROR_INCORRECT_STATE
หากออบเจ็กต์ WeaveHeartbeatSender เริ่มต้นแล้ว
WEAVE_ERROR_INVALID_ARGUMENT
หากอาร์กิวเมนต์ใดที่ระบุเป็นค่าว่าง
WEAVE_NO_ERROR
สำเร็จแล้ว

ScheduleHeartbeat

WEAVE_ERROR ScheduleHeartbeat(
  void
)

กำหนดเวลาส่งข้อความ ฮาร์ตบีต ของ Weave

รายละเอียด
ผลลัพธ์
WEAVE_SYSTEM_ERROR_NO_MEMORY
หาก StartTimer() ล้มเหลว
WEAVE_NO_ERROR
สำเร็จแล้ว

SendHeartbeatNow

WEAVE_ERROR SendHeartbeatNow(
  void
)

ส่งข้อความฮาร์ตบีตของ Weave เลย

รายละเอียด
ผลลัพธ์
WEAVE_ERROR_INCORRECT_STATE
หาก WeaveHeartbeatSender ไม่ได้เริ่มต้น
WEAVE_NO_ERROR
สำเร็จแล้ว

SetConfiguration

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

กำหนดค่าเวลาฮาร์ตบีต

รายละเอียด
พารามิเตอร์
[in] interval
ช่วงเวลาที่จะใช้เมื่อส่งข้อความฮาร์ตบีตของ Weave
[in] phase
ระยะที่จะใช้เมื่อส่งข้อความฮาร์ตบีตของ Weave
[in] window
ช่วงของหน้าต่างที่จะใช้สำหรับการเลือกช่วงเวลาแบบสุ่ม

SetEventCallback

void SetEventCallback(
  EventCallback eventCallback
)

ตั้งค่าฟังก์ชันที่จะเรียกใช้เพื่อแจ้งเตือนแอปพลิเคชันเกี่ยวกับเหตุการณ์หรือการเปลี่ยนแปลงที่เกิดขึ้นใน WeaveHeartbeatSender

SetRequestAck

void SetRequestAck(
  bool val
)

ตั้งค่าการทำเครื่องหมายที่ระบุว่าควรส่งข้อความฮาร์ตบีตอย่างน่าเชื่อถือโดยใช้ Weave Reliable Messaging หรือไม่

โปรดทราบว่าแฟล็กนี้จะมีความหมายก็ต่อเมื่อใช้ UDP เป็นการรับส่งข้อมูลเท่านั้น

รายละเอียด
พารามิเตอร์
[in] val
เป็นจริงหากควรส่งข้อความฮาร์ตบีตอย่างน่าเชื่อถือ

SetSubscriptionState

void SetSubscriptionState(
  uint8_t val
)

ตั้งสถานะการสมัครใช้บริการปัจจุบัน

รายละเอียด
พารามิเตอร์
[in] val
ค่าสถานะการสมัครใช้บริการแบบ 8 บิตที่จะถ่ายทอดด้วยข้อความฮาร์ตบีต

ปิดการทำงาน

WEAVE_ERROR Shutdown(
  void
)

ปิดระบบผู้ส่ง ฮาร์ตบีตของ Weave

รายละเอียด
ผลลัพธ์
WEAVE_NO_ERROR
สำเร็จแล้ว

StartHeartbeat

WEAVE_ERROR StartHeartbeat(
  void
)

เริ่มส่งข้อความ ฮาร์ตบีต ของ Weave

รายละเอียด
ผลลัพธ์
INET_ERROR_NO_MEMORY
หาก StartTimer() ล้มเหลว
WEAVE_NO_ERROR
สำเร็จแล้ว

StopHeartbeat

WEAVE_ERROR StopHeartbeat(
  void
)

หยุดส่งข้อความฮาร์ตบีตของ Weave

รายละเอียด
ผลลัพธ์
WEAVE_NO_ERROR
ไม่มีเงื่อนไข

WeaveHeartbeatSender

 WeaveHeartbeatSender(
  void
)

ฟังก์ชันสาธารณะแบบคงที่

DefaultEventHandler

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

ฟังก์ชันตัวแฮนเดิลเริ่มต้นสำหรับเหตุการณ์ API WeaveHeartbeatSender

แอปพลิเคชันต้องเรียกใช้ฟังก์ชันนี้เมื่อเกิดเหตุการณ์ API ที่ตนเองไม่ได้จัดการ