ไม่มี:: สาน:: โปรไฟล์:: Echo_Next:: WeaveEchoServer
#include <src/lib/profiles/echo/Next/WeaveEchoServer.h>
Accepts EchoRequest messages from a peer node and responds with an EchoResponse message.
สรุป
WeaveEchoServer ระดับการดำเนินการด้านการตอบกลับของโปรโตคอลสานก้อง คล้ายกับโปรโตคอล ping ของ ICMP โปรโตคอล Weave Echo สามารถใช้ทดสอบความมีชีวิตและความสามารถในการเข้าถึงของโหนด Weave
การประยุกต์ใช้งานสามารถใช้ WeaveEchoServer ชั้นเรียนเพื่อช่วยให้การตอบสนองโดยอัตโนมัติไปยังข้อความ EchoRequest เข้า ชั้นที่สอดคล้องกันอยู่แล้วสำหรับการเริ่มต้นการร้องขอก้อง (ดู WeaveEchoClient )
โดยค่าเริ่มต้น WeaveEchoServer ตอบสนองทันทีไปยัง EchoRequest กับการตอบสนองที่มีน้ำหนักบรรทุกเช่นเดียวกับการร้องขอ อย่างไรก็ตาม แอปพลิเคชันสามารถเปลี่ยนแปลงพฤติกรรมนี้ได้ในระหว่างการประมวลผลเหตุการณ์ EchoRequestReceived API
เหตุการณ์ API
ในช่วงของการดำเนินงานที่ WeaveEchoServer วัตถุจะเรียกขึ้นไปประยุกต์ใช้ในการดำเนินการเฉพาะการร้องขอหรือให้ส่งการแจ้งเตือนเหตุการณ์สำคัญ การเรียกเหตุการณ์ API เหล่านี้เกิดขึ้นกับฟังก์ชันการเรียกกลับที่กำหนดค่าไว้ในปัจจุบันบนวัตถุเซิร์ฟเวอร์ ยกเว้นที่ระบุไว้ แอปพลิเคชันสามารถเปลี่ยนแปลงสถานะของเซิร์ฟเวอร์ในระหว่างการโทรกลับของเหตุการณ์ได้ ยกเว้นโดยรวมเป็นวัตถุ Shutdown () วิธีการซึ่งอาจไม่ถูกเรียกว่าในระหว่างการติดต่อกลับ
มีการกำหนดเหตุการณ์ API ต่อไปนี้:
EchoRequestReceived
ได้รับข้อความ EchoRequest จากเพื่อน อาร์กิวเมนต์ของเหตุการณ์ประกอบด้วยเพย์โหลดคำขอ บริบทการแลกเปลี่ยนที่ได้รับข้อความและข้อมูลเมตาเกี่ยวกับข้อความคำขอ
หากแอปพลิเคชันเลือก อาจเปลี่ยนอาร์กิวเมนต์เอาต์พุตของเหตุการณ์เพื่อบังคับให้ตอบสนองล่าช้าหรือระงับการตอบสนองโดยสิ้นเชิง นอกจากนี้ อาจเปลี่ยนแปลงเนื้อหาของบัฟเฟอร์ส่วนข้อมูล ซึ่งจะกลายเป็นส่วนของข้อมูลสำหรับข้อความตอบกลับ
EchoResponseส่งแล้ว
ส่งข้อความ EchoResponse หรือส่งไม่สำเร็จ อาร์กิวเมนต์ของเหตุการณ์ประกอบด้วยข้อผิดพลาดที่เกิดจากการส่งข้อความ (ถ้ามี) และบริบทการแลกเปลี่ยนที่ส่งข้อความ
มรดก
สืบทอดจาก: NL :: สาน :: WeaveServerBaseตรง Subclasses เป็นที่รู้จัก: NL :: สาน :: DeviceLayer :: ภายใน :: EchoServer
ตัวสร้างและตัวทำลาย | |
---|---|
WeaveEchoServer (void) คอนสตรัคเริ่มต้นสำหรับ WeaveEchoServer |
ประเภทสาธารณะ | |
---|---|
EchoFunct )(uint64_t nodeId, IPAddress nodeAddr, PacketBuffer *payload) | typedefvoid(* |
EventCallback )(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam) | typedefvoid(* |
EventType { | enum |
คุณลักษณะสาธารณะ | |
---|---|
AppState | void * ตัวชี้ไปยังข้อมูลเฉพาะแอปพลิเคชัน |
OnEchoRequestReceived | EchoFunct |
งานสาธารณะ | |
---|---|
GetEventCallback (void) const | EventCallback ส่งกลับชี้ไปยัง API ฟังก์ชั่นการเรียกกลับเหตุการณ์กำหนดค่าในปัจจุบันใน WeaveEchoServer วัตถุ |
Init ( WeaveExchangeManager *exchangeMgr, EventCallback eventCallback, void *appState) | เริ่มต้น WeaveEchoServer วัตถุ |
Init ( WeaveExchangeManager *exchangeMgr) | เริ่มต้น WeaveEchoServer วัตถุ |
SetEventCallback (EventCallback eventCallback) | void การตั้งค่าฟังก์ชั่นการเรียกกลับเหตุการณ์ API บน WeaveEchoServer วัตถุ |
Shutdown (void) | ปิดเริ่มต้นก่อนหน้านี้ WeaveEchoServer วัตถุ |
ฟังก์ชั่นคงที่สาธารณะ Public | |
---|---|
DefaultEventHandler (void *appState, EventType eventType, const InEventParam & inParam, OutEventParam & outParam) | void จัดการเริ่มต้นสำหรับ WeaveEchoServer เหตุการณ์ API |
โครงสร้าง | |
---|---|
NL :: สาน :: โปรไฟล์ :: Echo_Next :: WeaveEchoServer :: InEventParam | ป้อนพารามิเตอร์เพื่อ WeaveEchoServer เหตุการณ์ API |
NL :: สาน :: โปรไฟล์ :: Echo_Next :: WeaveEchoServer :: OutEventParam | พารามิเตอร์ที่ส่งออกไป WeaveEchoServer เหตุการณ์ API |
ประเภทสาธารณะ
EchoFunct
void(* EchoFunct)(uint64_t nodeId, IPAddress nodeAddr, PacketBuffer *payload)
EventCallback
void(* EventCallback)(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam)
ประเภทเหตุการณ์
EventType
คุณลักษณะสาธารณะ
AppState
void * AppState
ตัวชี้ไปยังข้อมูลเฉพาะแอปพลิเคชัน
ได้รับคำขอแล้วRe
EchoFunct OnEchoRequestReceived
งานสาธารณะ
GetEventCallback
EventCallback GetEventCallback( void ) const
ส่งกลับชี้ไปยัง API ฟังก์ชั่นการเรียกกลับเหตุการณ์กำหนดค่าในปัจจุบันใน WeaveEchoServer วัตถุ
ในนั้น
WEAVE_ERROR Init( WeaveExchangeManager *exchangeMgr, EventCallback eventCallback, void *appState )
เริ่มต้น WeaveEchoServer วัตถุ
เริ่มต้น WeaveEchoServer วัตถุเพื่อตอบสนองต่อข้อความเสียงสะท้อนจากเพียร์
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
ในนั้น
WEAVE_ERROR Init( WeaveExchangeManager *exchangeMgr )
เริ่มต้น WeaveEchoServer วัตถุ
เริ่มต้น WeaveEchoServer วัตถุเพื่อตอบสนองต่อข้อความเสียงสะท้อนจากเพียร์
เลิก: กรุณาใช้ Init (WeaveExchangeManager * exchangeMgr, EventCallback eventCallback โมฆะ * AppState)
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
SetEventCallback
void SetEventCallback( EventCallback eventCallback )
การตั้งค่าฟังก์ชั่นการเรียกกลับเหตุการณ์ API บน WeaveEchoServer วัตถุ
ปิดตัวลง
WEAVE_ERROR Shutdown( void )
ปิดเริ่มต้นก่อนหน้านี้ WeaveEchoServer วัตถุ
โปรดทราบว่าวิธีการนี้เท่านั้นที่สามารถเรียกว่าถ้า Init () วิธีการได้รับการเรียกว่าก่อนหน้านี้
ฟังก์ชั่นคงที่สาธารณะ Public
DefaultEventHandler
void DefaultEventHandler( void *appState, EventType eventType, const InEventParam & inParam, OutEventParam & outParam )
จัดการเริ่มต้นสำหรับ WeaveEchoServer เหตุการณ์ API
แอปพลิเคชันจำเป็นต้องเรียกใช้เมธอดนี้สำหรับเหตุการณ์ API ใดๆ ที่พวกเขาไม่รู้จักหรือจัดการ พารามิเตอร์ที่ให้มาต้องเหมือนกับพารามิเตอร์ที่ส่งผ่านโดยอ็อบเจ็กต์เซิร์ฟเวอร์ไปยังฟังก์ชันตัวจัดการเหตุการณ์ของแอปพลิเคชัน
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|