nl::Weave::Profiles::WeaveTunnel::WeaveTunnelControl

Tóm tắt

Hàm khởi tạo và phá huỷ

WeaveTunnelControl(void)

Loại công khai

TunnelStatusRcvdFunct)(uint8_t tType, StatusReport &tunStatus) typedef
void(*
Con trỏ hàm đến trình xử lý do lớp cao hơn thiết lập để hoạt động khi nhận được thông báo StatusReport phản hồi thông báo kiểm soát Đường hầm được gửi đi.

Các thuộc tính công khai

OnTunStatusRcvd
mCtrlResponseTimeout
uint16_t
Thời gian chờ(tính bằng giây) cho phản hồi đối với thông báo kiểm soát.
mShortcutTunnelAdvInterval
uint16_t
Khoảng thời gian tính bằng giây cho quảng cáo đường hầm lối tắt định kỳ.

Hàm công khai

Close(void)
Đóng WeaveTunnelControl bằng cách đóng mọi ngữ cảnh trao đổi chưa xử lý và đặt lại thành viên.
DisableShortcutTunneling(void)
void
Tắt tính năng tạo đường hầm lối tắt để gửi quảng cáo từ Cổng biên giới hoặc Ứng dụng khách dành cho thiết bị di động và đồng thời nghe quảng cáo từ các đối tác đường hầm lối tắt.
EnableShortcutTunneling(void)
void
Bật tính năng tạo đường hầm lối tắt bằng cách gửi quảng cáo từ Cổng biên giới hoặc Ứng dụng khách dành cho thiết bị di động và đồng thời nghe quảng cáo từ các đối tác đường hầm lối tắt.
Init(WeaveTunnelAgent *tunAgent, TunnelStatusRcvdFunct statusRcvd)
Khởi chạy WeaveTunnelControl để thiết lập các thành phần có liên quan như Weave Tunnel Agent và các lệnh gọi lại.
IsPeerInShortcutTunnelCache(uint64_t peerId)
bool
Xác minh xem ứng dụng ngang hàng có trong bộ nhớ đệm lối tắt của đường hầm hay không để gửi cục bộ.
Reconnect(WeaveTunnelConnectionMgr *conMgr)
Kết nối lại với nút ngang hàng.
SendBorderRouterAdvertise(void)
Gửi tin nhắn quảng cáo bộ định tuyến biên bằng mã vải của bộ định tuyến đó.
SendMessageOverTunnelShortcut(uint64_t peerId, WeaveMessageInfo *msgHdr, PacketBuffer *msg)
Gửi tin nhắn qua lối tắt của đường hầm.
SendMobileClientAdvertise(void)
Gửi một ứng dụng di động để quảng cáo tin nhắn quảng cáo mã nút của họ.
SendTunnelClose(WeaveTunnelConnectionMgr *conMgr)
Gửi thông báo kiểm soát Đóng đường hầm đến nút ngang hàng với một tập hợp các tuyến đường hầm.
SendTunnelOpen(WeaveTunnelConnectionMgr *conMgr, WeaveTunnelRoute *tunRoute)
Gửi thông báo kiểm soát Mở đường hầm đến nút ngang hàng bằng một tập hợp các tuyến đường hầm.
SendTunnelRouteUpdate(WeaveTunnelConnectionMgr *conMgr, WeaveTunnelRoute *tunRoute)
Gửi thông báo kiểm soát Cập nhật tuyến đường hầm đến nút ngang hàng bằng một tập hợp các tuyến đường hầm.

Hàm tĩnh công khai

HandleShortcutTunnelAdvertiseMessage(ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload)
void
Hàm đã đăng ký với WeaveMessageLayer để nghe Quảng cáo đường hầm lối tắt và cập nhật bộ nhớ đệm.

Loại công khai

TunnelStatusRcvdFunct

void(* TunnelStatusRcvdFunct)(uint8_t tType, StatusReport &tunStatus)

Con trỏ hàm đến trình xử lý do lớp cao hơn thiết lập để hoạt động khi nhận được thông báo StatusReport phản hồi thông báo kiểm soát Đường hầm được gửi đi.

Thông tin chi tiết
Tham số
[in] tType
Loại đường hầm, tức là Chính hoặc Dự phòng.
[in] tunStatus
Thông tin tham chiếu đến thông báo StatusReport (Kiểm soát đường hầm).

Các thuộc tính công khai

OnTunStatusRcvd

TunnelStatusRcvdFunct OnTunStatusRcvd

mCtrlResponseTimeout

uint16_t mCtrlResponseTimeout

Thời gian chờ(tính bằng giây) cho phản hồi đối với thông báo kiểm soát.

mShortcutTunnelAdvInterval

uint16_t mShortcutTunnelAdvInterval

Khoảng thời gian tính bằng giây cho quảng cáo đường hầm lối tắt định kỳ.

Hàm công khai

Đóng

WEAVE_ERROR Close(
  void
)

Đóng WeaveTunnelControl bằng cách đóng mọi ngữ cảnh trao đổi chưa xử lý và đặt lại thành viên.

Thông tin chi tiết
Trả về
WEAVE_NO_ERROR.

DisableShortcutTunneling

void DisableShortcutTunneling(
  void
)

Tắt tính năng tạo đường hầm lối tắt để gửi quảng cáo từ Cổng biên giới hoặc Ứng dụng khách dành cho thiết bị di động và đồng thời nghe quảng cáo từ các đối tác đường hầm lối tắt.

EnableShortcutTunneling

void EnableShortcutTunneling(
  void
)

Bật tính năng tạo đường hầm lối tắt bằng cách gửi quảng cáo từ Cổng biên giới hoặc Ứng dụng khách dành cho thiết bị di động và đồng thời nghe quảng cáo từ các đối tác đường hầm lối tắt.

Init

WEAVE_ERROR Init(
  WeaveTunnelAgent *tunAgent,
  TunnelStatusRcvdFunct statusRcvd
)

Khởi chạy WeaveTunnelControl để thiết lập các thành phần có liên quan như Weave Tunnel Agent và các lệnh gọi lại.

Thông tin chi tiết
Tham số
[in] tunAgent
Con trỏ trỏ đến đối tượng WeaveTunnelAgent.
[in] statusRcvd
Con trỏ trỏ đến lệnh gọi lại cho trình xử lý StatusRcvd.
Trả về
WEAVE_NO_ERROR

IsPeerInShortcutTunnelCache

bool IsPeerInShortcutTunnelCache(
  uint64_t peerId
)

Xác minh xem ứng dụng ngang hàng có trong bộ nhớ đệm lối tắt của đường hầm hay không để gửi cục bộ.

Kết nối lại

WEAVE_ERROR Reconnect(
  WeaveTunnelConnectionMgr *conMgr
)

Kết nối lại với nút ngang hàng.

SendBorderRouterAdvertise

WEAVE_ERROR SendBorderRouterAdvertise(
  void
)

Gửi tin nhắn quảng cáo bộ định tuyến biên bằng mã vải của bộ định tuyến đó.

SendMessageOverTunnelShortcut

WEAVE_ERROR SendMessageOverTunnelShortcut(
  uint64_t peerId,
  WeaveMessageInfo *msgHdr,
  PacketBuffer *msg
)

Gửi tin nhắn qua lối tắt của đường hầm.

SendMobileClientAdvertise

WEAVE_ERROR SendMobileClientAdvertise(
  void
)

Gửi một ứng dụng di động để quảng cáo tin nhắn quảng cáo mã nút của họ.

SendTunnelClose

WEAVE_ERROR SendTunnelClose(
  WeaveTunnelConnectionMgr *conMgr
)

Gửi thông báo kiểm soát Đóng đường hầm đến nút ngang hàng với một tập hợp các tuyến đường hầm.

Gửi thông báo kiểm soát Đóng đường hầm đến nút ngang hàng.

Thông tin chi tiết
Tham số
[in] conMgr
Con trỏ trỏ đến đối tượng WeaveTunnelConnectionMgr.
Trả về
WEAVE_ERROR WEAVE_NO_ERROR khi thành công, nếu còn lỗi khác.

SendTunnelOpen

WEAVE_ERROR SendTunnelOpen(
  WeaveTunnelConnectionMgr *conMgr,
  WeaveTunnelRoute *tunRoute
)

Gửi thông báo kiểm soát Mở đường hầm đến nút ngang hàng bằng một tập hợp các tuyến đường hầm.

Thông tin chi tiết
Tham số
[in] conMgr
Con trỏ trỏ đến đối tượng WeaveTunnelConnectionMgr.
[in] tunRoutes
Danh sách các tuyến đường tiền tố cần thêm vào bảng tuyến đường.
Trả về
WEAVE_ERROR WEAVE_NO_ERROR khi thành công, nếu còn lỗi khác.

SendTunnelRouteUpdate

WEAVE_ERROR SendTunnelRouteUpdate(
  WeaveTunnelConnectionMgr *conMgr,
  WeaveTunnelRoute *tunRoute
)

Gửi thông báo kiểm soát Cập nhật tuyến đường hầm đến nút ngang hàng bằng một tập hợp các tuyến đường hầm.

Thông tin chi tiết
Tham số
[in] conMgr
Con trỏ trỏ đến đối tượng WeaveTunnelConnectionMgr.
[in] tunRoutes
Danh sách các tuyến đường tiền tố cần thêm vào bảng tuyến đường.
Trả về
WEAVE_ERROR WEAVE_NO_ERROR khi thành công, nếu còn lỗi khác.

WeaveTunnelControl

 WeaveTunnelControl(
  void
)

Hàm tĩnh công khai

HandleShortcutTunnelAdvertiseMessage

void HandleShortcutTunnelAdvertiseMessage(
  ExchangeContext *ec,
  const IPPacketInfo *pktInfo,
  const WeaveMessageInfo *msgInfo,
  uint32_t profileId,
  uint8_t msgType,
  PacketBuffer *payload
)

Hàm đã đăng ký với WeaveMessageLayer để nghe Quảng cáo đường hầm lối tắt và cập nhật bộ nhớ đệm.