Google cam kết thúc đẩy công bằng chủng tộc cho Cộng đồng người da đen. Xem cách thực hiện.
Trang này được dịch bởi Cloud Translation API.
Switch to English

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

Lớp WeaveEchoServer thực hiện phía phản hồi 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.

Các ứng dụng có thể sử dụng lớp WeaveEchoServer để cho phép phản hồi tự động đối với các tin nhắn EchoRequest đến. Một lớp tương ứng tồn tại để bắt đầu các yêu cầu tiếng vọng (xem WeaveEchoClient ).

Theo mặc định, WeaveEchoServer phản hồi ngay lập tức với một EchoRequest với phản hồi có cùng trọng tải với 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, đối tượng WeaveEchoServer sẽ gọi đến ứng dụng để yêu cầu các hành động cụ thể hoặc gửi thông báo về các 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ệ tổng thể là phương thức Shutdown () của đối tượng, phương thức này có thể không bao giờ được gọi trong khi gọi lại.

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 phản hồi hoàn toàn. 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. Đố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.

Di sản

Kế thừa từ: nl :: Weave :: WeaveServerBase
Các lớp con đã biết trực tiếp: nl :: Weave :: DeviceLayer :: Internal :: EchoServer

Người xây dựng và Người phá hủy

WeaveEchoServer (void)
Hàm tạo mặc định cho WeaveEchoServer .

Các loại công khai

EchoFunct )(uint64_t nodeId, IPAddress nodeAddr, PacketBuffer *payload) typedef
void(*
EventCallback )(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam) typedef
void(*
EventType {
kEvent_EchoRequestReceived = 1,
kEvent_EchoResponseSent = 2,
kEvent_DefaultCheck = 100
}
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 hàm gọi lại sự kiện API hiện được định cấu hình trên đối tượng WeaveEchoServer .
Init ( WeaveExchangeManager *exchangeMgr, EventCallback eventCallback, void *appState)
Khởi tạo một đối tượng WeaveEchoServer .
Init ( WeaveExchangeManager *exchangeMgr)
Khởi tạo một đối tượng WeaveEchoServer .
SetEventCallback (EventCallback eventCallback)
void
Đặt hàm gọi lại sự kiện API trên đối tượng WeaveEchoServer .
Shutdown (void)
Tắt đối tượng WeaveEchoServer đã khởi tạo trước đó.

Chức năng tĩnh công khai

DefaultEventHandler (void *appState, EventType eventType, const InEventParam & inParam, OutEventParam & outParam)
void
Trình xử lý mặc định cho các sự kiện API WeaveEchoServer .

Cấu trúc

nl :: Weave :: Profiles :: Echo_Next :: WeaveEchoServer :: InEventParam

Nhập các tham số cho sự kiện API WeaveEchoServer .

nl :: Weave :: Profiles :: Echo_Next :: WeaveEchoServer :: OutEventParam

Xuất các tham số cho sự kiện API WeaveEchoServer .

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
Tính chất
kEvent_DefaultCheck

Được sử dụng để xác minh xử lý sự kiện mặc định chính xác trong ứng dụng.

kEvent_EchoRequestReceived

Một thông báo EchoRequest đã được nhận từ một người ngang hàng.

kEvent_EchoResponseSent

Tin nhắn EchoResponse đã được gửi hoặc không gửi được.

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 hàm gọi lại sự kiện API hiện được định cấu hình trên đối tượng WeaveEchoServer .

Trong đó

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

Khởi tạo một đối tượng WeaveEchoServer .

Khởi tạo một đối tượng WeaveEchoServer để phản hồi các thông điệp phản hồi từ một đối tượng ngang hàng.

Chi tiết
Thông số
[in] exchangeMgr
Một con trỏ đến đối tượng WeaveExchangeManager .
[in] eventCallback
Một con trỏ tới một hàm sẽ được gọi bởi đối tượng WeaveEchoServer để cung cấp các sự kiện API cho ứng dụng.
[in] appState
Một con trỏ đến một đối tượng do ứng dụng xác định sẽ được chuyển trở lại ứng dụng bất cứ khi nào sự kiện API xảy ra.

Trong đó

WEAVE_ERROR Init(
  WeaveExchangeManager *exchangeMgr
)

Khởi tạo một đối tượng WeaveEchoServer .

Khởi tạo một đối tượng WeaveEchoServer để phản hồi các thông điệp phản hồi từ một đối tượng ngang hàng.

KHÔNG DÙNG ĐƯỢC: Vui lòng sử dụng Init (WeaveExchangeManager * exchangeMgr, EventCallback eventCallback, void * appState) .

Chi tiết
Thông số
[in] exchangeMgr
Một con trỏ đến đối tượng WeaveExchangeManager .
[in] eventCallback
Một con trỏ đến một hàm sẽ được đối tượng WeaveEchoServer gọi để cung cấp các sự kiện API cho ứng dụng.
[in] appState
Một con trỏ đến một đối tượng do ứng dụng xác định sẽ được chuyển trở lại ứng dụng bất cứ khi nào sự kiện API xảy ra.

SetEventCallback

void SetEventCallback(
  EventCallback eventCallback
)

Đặt hàm gọi lại sự kiện API trên đối tượng WeaveEchoServer .

Tắt

WEAVE_ERROR Shutdown(
  void
)

Tắt đối tượng WeaveEchoServer đã khởi tạo trước đó.

Lưu ý rằng phương thức này chỉ có thể được gọi nếu phương thức Init () đã được gọi trước đó.

WeaveEchoServer

 WeaveEchoServer(
  void
)

Hàm tạo mặc định cho WeaveEchoServer .

Chức năng tĩnh công khai

DefaultEventHandler

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

Trình xử lý mặc định cho các sự kiện API WeaveEchoServer .

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ố
[in] appState
Một con trỏ đến thông tin trạng thái do ứng dụng xác định liên kết với đối tượng máy chủ.
[in] eventType
ID sự kiện được chuyển bởi lệnh gọi lại sự kiện
[in] inParam
Tham chiếu các tham số sự kiện đầu vào được truyền bởi lệnh gọi lại sự kiện
[in] outParam
Tham chiếu các tham số sự kiện đầu ra được truyền bởi lệnh gọi lại sự kiện