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

Tóm tắt

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

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 đặt để hoạt động khi nhận được thông báo StatusReport (Báo cáo trạng thái) phản hồi thông báo kiểm soát Tunnel (Đường hầm) được gửi.

Thuộc tính công khai

OnTunStatusRcvd
mCtrlResponseTimeout
uint16_t
Thời gian chờ(tính bằng giây) đối với phản hồi nhằm kiểm soát thông báo.
mShortcutTunnelAdvInterval
uint16_t
Khoảng thời gian tính bằng giây đối với 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 bối 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 bằng 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, đồ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, đồ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 để đặt các thành phần 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 của lối tắt đường hầm để gửi cục bộ hay không.
Reconnect(WeaveTunnelConnectionMgr *conMgr)
Kết nối lại với nút ngang hàng.
SendBorderRouterAdvertise(void)
Gửi thông báo quảng cáo cho bộ định tuyến biên quảng cáo mã kết cấu của bộ định tuyến đó.
SendMessageOverTunnelShortcut(uint64_t peerId, WeaveMessageInfo *msgHdr, PacketBuffer *msg)
Gửi tin nhắn qua lối tắt đường hầm.
SendMobileClientAdvertise(void)
Gửi tin nhắn quảng cáo cho ứng dụng di động bằng cách quảng cáo mã nhận dạng 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 điều khiển Mở đường hầm đến nút ngang hàng với một nhóm 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 với một nhóm 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 đặt để hoạt động khi nhận được thông báo StatusReport (Báo cáo trạng thái) phản hồi thông báo kiểm soát Tunnel (Đường hầm) được gửi.

Thông tin chi tiết
Các tham số
[in] tType
Loại đường hầm (ví dụ: Chính hoặc Dự phòng.
[in] tunStatus
Tham chiếu đến thông báo StatusReport (Báo cáo trạng thái) kiểm soát đường hầm.

Thuộc tính công khai

OnTunStatusRcvd

TunnelStatusRcvdFunct OnTunStatusRcvd

mCtrlResponseTimeout

uint16_t mCtrlResponseTimeout

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

mShortcutTunnelAdvInterval

uint16_t mShortcutTunnelAdvInterval

Khoảng thời gian tính bằng giây đối với 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 bối 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 bằng 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, đồ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, đồng thời nghe quảng cáo từ các đối tác đường hầm lối tắt.

Bắt đầu

WEAVE_ERROR Init(
  WeaveTunnelAgent *tunAgent,
  TunnelStatusRcvdFunct statusRcvd
)

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

Thông tin chi tiết
Các tham số
[in] tunAgent
Con trỏ đến đối tượng WeaveTunnelAgent.
[in] statusRcvd
Con trỏ đến một 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 của lối tắt đường hầm để gửi cục bộ hay không.

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 thông báo quảng cáo cho bộ định tuyến biên quảng cáo mã kết cấu 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 đường hầm.

SendMobileClientAdvertise

WEAVE_ERROR SendMobileClientAdvertise(
  void
)

Gửi tin nhắn quảng cáo cho ứng dụng di động bằng cách quảng cáo mã nhận dạng 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
Các tham số
[in] conMgr
Con trỏ đến đối tượng WeaveTunnelConnectionMgr.
Trả về
WEAVE_ERROR WEAVE_NO_ERROR khi thành công, lỗi khác.

SendTunnelOpen

WEAVE_ERROR SendTunnelOpen(
  WeaveTunnelConnectionMgr *conMgr,
  WeaveTunnelRoute *tunRoute
)

Gửi thông báo điều khiển Mở đường hầm đến nút ngang hàng với một nhóm các tuyến đường hầm.

Thông tin chi tiết
Các tham số
[in] conMgr
Con trỏ đến đối tượng WeaveTunnelConnectionMgr.
[in] tunRoutes
Danh sách các tuyến đường có tiền tố để thêm vào bảng tuyến đường.
Trả về
WEAVE_ERROR WEAVE_NO_ERROR khi thành công, 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 với một nhóm các tuyến đường hầm.

Thông tin chi tiết
Các tham số
[in] conMgr
Con trỏ đến đối tượng WeaveTunnelConnectionMgr.
[in] tunRoutes
Danh sách các tuyến đường có tiền tố để thêm vào bảng tuyến đường.
Trả về
WEAVE_ERROR WEAVE_NO_ERROR khi thành công, 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.