nl :: Dệt :: Hồ sơ :: Echo_Next :: WeaveEchoServer
#include <src/lib/profiles/echo/Next/WeaveEchoServer.h>
Accepts EchoRequest messages from a peer node and responds with an EchoResponse message.
Tóm lược
Các WeaveEchoServer cụ lớp phía responder của giao thức Weave Echo. Tương tự như giao thức ping ICMP, giao thức Weave Echo có thể được sử dụng để kiểm tra tính khả dụng và khả năng tiếp cận của nút Weave.
Ứng dụng có thể sử dụng WeaveEchoServer lớp để cho phép phản ứng tự động để thông điệp EchoRequest đến. Một lớp học tương ứng tồn tại để bắt đầu echo requests (xem WeaveEchoClient ).
Theo mặc định, WeaveEchoServer đáp ứng ngay lập tức với một EchoRequest với phản ứng có chứa các tải trọng tương tự như yêu cầu. Tuy nhiên, ứng dụng có thể thay đổi hành vi này trong quá trình xử lý sự kiện API EchoRequestReceive.
Sự kiện API
Trong quá trình hoạt động, WeaveEchoServer đối tượng sẽ gọi đến các ứng dụng để hành động cụ thể yêu cầu hoặc cung cấp thông báo về sự kiện quan trọng. Các lệnh gọi sự kiện API này được thực hiện cho hàm gọi lại hiện được định cấu hình trên đối tượng máy chủ. Trừ khi được lưu ý, các ứng dụng có thể tự do thay đổi trạng thái của máy chủ trong khi gọi lại sự kiện. Một ngoại lệ là tổng thể của đối tượng Shutdown () phương pháp, trong đó có thể không bao giờ được gọi trong một callback.
Các sự kiện API sau được xác định:
EchoRequestRenition
Một thông báo EchoRequest đã được nhận từ một người ngang hàng. Các đối số cho sự kiện chứa tải trọng yêu cầu, bối cảnh trao đổi mà thông báo được nhận và siêu thông tin về thông báo yêu cầu.
Nếu ứng dụng chọn, nó có thể thay đổi các đối số đầu ra cho sự kiện để buộc phải trì hoãn phản hồi hoặc triệt tiêu hoàn toàn phản hồi. Ngoài ra, nó có thể thay đổi nội dung của bộ đệm tải trọng, bộ đệm này sẽ trở thành tải trọng cho thông báo phản hồi.
EchoResponseSent
Tin nhắn EchoResponse đã được gửi hoặc không gửi được. Các đối số cho sự kiện chứa lỗi do gửi tin nhắn (nếu có) và bối cảnh trao đổi mà tin nhắn được gửi qua đó.
Di sản
Inherits từ: nl :: Weave :: WeaveServerBaseChỉ đạo lớp con biết: nl :: Weave :: DeviceLayer :: Nội :: EchoServer
Người xây dựng và Người phá hủy | |
---|---|
WeaveEchoServer (void) Constructor mặc định cho WeaveEchoServer . |
Các loại công khai | |
---|---|
EchoFunct )(uint64_t nodeId, IPAddress nodeAddr, PacketBuffer *payload) | typedefvoid(* |
EventCallback )(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam) | typedefvoid(* |
EventType { | enum |
Thuộc tính công cộng | |
---|---|
AppState | void * Một con trỏ đến dữ liệu dành riêng cho ứng dụng. |
OnEchoRequestReceived | EchoFunct |
Chức năng công cộng | |
---|---|
GetEventCallback (void) const | EventCallback Trả về một con trỏ đến các API chức năng sự kiện callback hiện cấu hình trên WeaveEchoServer đối tượng. |
Init ( WeaveExchangeManager *exchangeMgr, EventCallback eventCallback, void *appState) | Khởi tạo một WeaveEchoServer đối tượng. |
Init ( WeaveExchangeManager *exchangeMgr) | Khởi tạo một WeaveEchoServer đối tượng. |
SetEventCallback (EventCallback eventCallback) | void Thiết lập chức năng gọi lại sự kiện API trên WeaveEchoServer đối tượng. |
Shutdown (void) | Shutdown một khởi tạo trước đó WeaveEchoServer đối tượng. |
Chức năng tĩnh công khai | |
---|---|
DefaultEventHandler (void *appState, EventType eventType, const InEventParam & inParam, OutEventParam & outParam) | void Xử lý mặc định cho WeaveEchoServer sự kiện API. |
Cấu trúc | |
---|---|
nl :: Weave :: Profiles :: Echo_Next :: WeaveEchoServer :: InEventParam | Thông số đầu vào để WeaveEchoServer kiện API. |
nl :: Weave :: Profiles :: Echo_Next :: WeaveEchoServer :: OutEventParam | Các thông số đầu ra để WeaveEchoServer kiện API. |
Các loại công khai
EchoFunct
void(* EchoFunct)(uint64_t nodeId, IPAddress nodeAddr, PacketBuffer *payload)
EventCallback
void(* EventCallback)(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam)
Loại sự kiện
EventType
Thuộc tính công cộng
AppState
void * AppState
Một con trỏ đến dữ liệu dành riêng cho ứng dụng.
OnEchoRequestRenition
EchoFunct OnEchoRequestReceived
Chức năng công cộng
GetEventCallback
EventCallback GetEventCallback( void ) const
Trả về một con trỏ đến các API chức năng sự kiện callback hiện cấu hình trên WeaveEchoServer đối tượng.
Trong đó
WEAVE_ERROR Init( WeaveExchangeManager *exchangeMgr, EventCallback eventCallback, void *appState )
Khởi tạo một WeaveEchoServer đối tượng.
Khởi tạo một WeaveEchoServer đối tượng để đáp ứng với tiếng vang thông điệp từ một đồng đẳng.
Chi tiết | |||||||
---|---|---|---|---|---|---|---|
Thông số |
|
Trong đó
WEAVE_ERROR Init( WeaveExchangeManager *exchangeMgr )
Khởi tạo một WeaveEchoServer đối tượng.
Khởi tạo một WeaveEchoServer đối tượng để đáp ứng với tiếng vang thông điệp từ một đồng đẳng.
NỮA: Vui lòng sử dụng Init (WeaveExchangeManager * exchangeMgr, EventCallback eventCallback, void * AppState) .
Chi tiết | |||||||
---|---|---|---|---|---|---|---|
Thông số |
|
SetEventCallback
void SetEventCallback( EventCallback eventCallback )
Thiết lập chức năng gọi lại sự kiện API trên WeaveEchoServer đối tượng.
Tắt
WEAVE_ERROR Shutdown( void )
Shutdown một khởi tạo trước đó WeaveEchoServer đối tượng.
Lưu ý rằng phương pháp này chỉ có thể được gọi là nếu Init () phương pháp được gọi trước đó.
Chức năng tĩnh công khai
DefaultEventHandler
void DefaultEventHandler( void *appState, EventType eventType, const InEventParam & inParam, OutEventParam & outParam )
Xử lý mặc định cho WeaveEchoServer sự kiện API.
Các ứng dụng bắt buộc phải gọi phương thức này cho bất kỳ sự kiện API nào mà chúng không nhận ra hoặc xử lý. Các tham số được cung cấp phải giống với các tham số được chuyển bởi đối tượng máy chủ cho chức năng xử lý sự kiện của ứng dụng.
Chi tiết | |||||||||
---|---|---|---|---|---|---|---|---|---|
Thông số |
|