nl::Weave::Profiles::DataManagement_Current::SubscriptionHandler

สรุป

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

@142 enum
EventCallback)(void *const aAppState, EventID aEvent, const InEventParam &aInParam, OutEventParam &aOutParam) Typedef
void(*
EventID enum
HandlerId Typedef
uint8_t

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

DefaultEventHandler(EventID aEvent, const InEventParam & aInParam, OutEventParam & aOutParam)
void

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

AbortSubscription(void)
void
ฟังก์ชันนี้จะยุติการสมัครใช้บริการทันที โดยเป็นการโทรแบบพร้อมกัน
AcceptSubscribeRequest(const uint32_t aLivenessTimeoutSec)
EndSubscription(const uint32_t aReasonProfileId, const uint16_t aReasonStatusCode)
ฟังก์ชันนี้จะเริ่มต้นการปิดการสมัครใช้บริการอย่างมีชั้นเชิงและล้างออบเจ็กต์ของเครื่องจัดการ
GetBinding(void) const
GetMaxNotificationSize(void) const
uint32_t
GetPeerNodeId(void) const
uint64_t
GetSubscriptionId(uint64_t *const apSubscriptionId)
IsActive(void)
bool
IsCanceling() const
bool
IsEstablishedIdle()
bool
IsFree()
bool
IsTerminated()
bool
SetMaxNotificationSize(const uint32_t aMaxPayload)
void

โครงสร้าง

nl::Weave::Profiles::DataManagement_Current::SubscriptionHandler::TraitInstanceInfo

สหภาพ

nl::Weave::Profiles::DataManagement_Current::SubscriptionHandler::InEventParam
nl::Weave::Profiles::DataManagement_Current::SubscriptionHandler::OutEventParam

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

@142

 @142

EventCallback

void(* EventCallback)(void *const aAppState, EventID aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)

EventID

 EventID

HandlerId

uint8_t HandlerId

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

DefaultEventHandler

void DefaultEventHandler(
  EventID aEvent,
  const InEventParam & aInParam,
  OutEventParam & aOutParam
)

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

AbortSubscription

void AbortSubscription(
  void
)

ฟังก์ชันนี้จะยุติการสมัครใช้บริการทันที โดยเป็นการโทรแบบพร้อมกัน

ล้มเลิกการสมัครรับข้อมูลของผู้เผยแพร่

เราจะไม่พยายามแจ้งให้ลูกค้าทราบถึงการสิ้นสุดข้อตกลง รวมถึงไม่มีการระงับบริบทด้านการแลกเปลี่ยนที่เป็นพื้นฐาน (หากมี) ทันที หลังจากการเรียกนี้ แอปพลิเคชันจะไม่ได้รับการแจ้งเตือนเกี่ยวกับกิจกรรมอื่นๆ ในออบเจ็กต์นี้ นอกจากนี้ แอปพลิเคชันจะไม่ได้รับอนุญาตให้โต้ตอบกับออบเจ็กต์นี้ด้วยวิธีการใดๆ ก็ตามหลังจากนั้น

ยุติการสมัครใช้บริการสิ้นสุดของผู้เผยแพร่โฆษณาโดยไม่แจ้งไคลเอ็นต์การสมัครใช้บริการและไม่ส่งเหตุการณ์ OnSubscriptionTerminated ไปยังเครื่องจัดการเหตุการณ์ของแอปพลิเคชัน หากมีการสมัครใช้บริการร่วมกัน การสมัครใช้บริการที่โต้แย้งจากผู้เผยแพร่กลับไปยังลูกค้าจะสิ้นสุดลงด้วย

เมื่อเรียกใช้ AbortSubscription() แล้ว ออบเจ็กต์ SubscriptionHandler จะเข้าสู่สถานะ Terminated หากไม่มีการอ้างอิงออบเจ็กต์เพิ่มเติมเมื่อกระบวนการสิ้นสุดการทำงานเสร็จสิ้น ออบเจ็กต์ SubscriptionHandler จะเป็นอิสระ

AcceptSubscribeRequest

WEAVE_ERROR AcceptSubscribeRequest(
  const uint32_t aLivenessTimeoutSec
)

EndSubscription

WEAVE_ERROR EndSubscription(
  const uint32_t aReasonProfileId,
  const uint16_t aReasonStatusCode
)

ฟังก์ชันนี้จะเริ่มต้นการปิดการสมัครใช้บริการอย่างมีชั้นเชิงและล้างออบเจ็กต์ของเครื่องจัดการ

ยุติการสมัครใช้บริการผู้จัดพิมพ์อย่างค่อยเป็นค่อยไป

การโทรนี้เป็นการโทรแบบไม่พร้อมกันและจะแจ้งไคลเอ็นต์เกี่ยวกับการหยุดให้บริการที่กำลังจะเกิดขึ้นผ่านข้อความ SubscriptionCancel/StatusReport หากเกี่ยวข้อง

สิ่งที่ควรทราบคือการยกเลิกการมีส่วนร่วมของแอปพลิเคชันในการสมัครใช้บริการนี้ หลังจากการเรียกนี้ แอปพลิเคชันจะไม่ได้รับการแจ้งเตือนเกี่ยวกับกิจกรรมอื่นๆ ในออบเจ็กต์นี้ นอกจากนี้ แอปพลิเคชันจะไม่ได้รับอนุญาตให้โต้ตอบกับออบเจ็กต์นี้ด้วยวิธีการใดๆ ก็ตามหลังจากนั้น

ยุติการสมัครรับข้อมูลของผู้เผยแพร่เนื้อหาอย่างค่อยเป็นค่อยไป หากเปิดใช้งานการสนับสนุนการยกเลิกการสมัครสมาชิก ข้อความการสมัครCancelRequest จะถูกส่งไปยังไคลเอ็นต์ที่สมัครสมาชิก และระบบจะรอการตอบกลับก่อนที่จะยุติการสมัครสมาชิก ไม่เช่นนั้น การสมัครใช้บริการจะสิ้นสุดลงทันทีในลักษณะเดียวกับ AbortSubscription() หากมีการสมัครใช้บริการร่วมกัน การสมัครใช้บริการที่โต้แย้งจากผู้เผยแพร่กลับไปยังลูกค้าจะสิ้นสุดลงด้วย

รายละเอียด
พารามิเตอร์
[in] aReasonProfileId
ProfileId ของ StatusCode ที่ระบุเหตุผลของการสิ้นสุด
[in] aReasonStatusCode
StatusCode ที่ระบุเหตุผลของการสิ้นสุด
ผลลัพธ์
Returns
รหัสข้อผิดพลาดของ Weave มีวัตถุประสงค์เพื่อให้ข้อมูลเท่านั้น หากเกิดข้อผิดพลาด ออบเจ็กต์จะสิ้นสุดลงพร้อมกัน (เช่น ล้มเลิก)

ระหว่างรอการตอบกลับสำหรับการสมัครCancelRequest "SubscriptionHandler" จะเข้าสู่สถานะ Canceling

เมื่อกระบวนการสิ้นสุดเริ่มขึ้น ออบเจ็กต์ SubscriptionHandler จะเข้าสู่สถานะ Terminated และนำส่งเหตุการณ์ OnSubscriptionTerminated ไปยังเครื่องจัดการเหตุการณ์ของแอปพลิเคชัน โปรดทราบว่าหากไม่ได้เปิดใช้การยกเลิกการสนับสนุน ระบบอาจเรียกใช้เครื่องจัดการเหตุการณ์พร้อมกันภายในการเรียก EndSubscription()

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

GetBinding

Binding * GetBinding(
  void
) const 

GetMaxNotificationSize

uint32_t GetMaxNotificationSize(
  void
) const 

GetPeerNodeId

uint64_t GetPeerNodeId(
  void
) const 

GetSubscriptionId

WEAVE_ERROR GetSubscriptionId(
  uint64_t *const apSubscriptionId
)

IsActive

bool IsActive(
  void
)

IsCanceling

bool IsCanceling() const 

IsEstablishedIdle

bool IsEstablishedIdle()

IsFree

bool IsFree()

IsTerminated

bool IsTerminated()

SetMaxNotificationSize

void SetMaxNotificationSize(
  const uint32_t aMaxPayload
)