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

Ringkasan

Konstruktor dan Destruktor

WeaveTunnelControl(void)

Jenis publik

TunnelStatusRcvdFunct)(uint8_t tType, StatusReport &tunStatus) typedef
void(*
Pointer fungsi ke pengendali yang ditetapkan oleh lapisan yang lebih tinggi untuk bertindak setelah menerima pesan StatusReport sebagai respons terhadap pesan kontrol Tunnel yang dikirim.

Atribut publik

OnTunStatusRcvd
mCtrlResponseTimeout
uint16_t
Waktu tunggu(dalam detik) untuk respons guna mengontrol pesan.
mShortcutTunnelAdvInterval
uint16_t
Interval dalam detik untuk iklan tunnel pintasan berkala.

Fungsi publik

Close(void)
Tutup WeaveTunnelControl dengan menutup konteks pertukaran yang belum diselesaikan dan mereset anggota.
DisableShortcutTunneling(void)
void
Nonaktifkan penyaluran pintasan untuk mengirim iklan baik dari Gerbang Batas maupun klien Seluler dan juga mendengarkan iklan dari terowongan pintasan.
EnableShortcutTunneling(void)
void
Aktifkan penyaluran pintasan dengan mengirimkan iklan dari gerbang Border atau klien Seluler dan juga mendengarkan iklan dari lorong pintasan.
Init(WeaveTunnelAgent *tunAgent, TunnelStatusRcvdFunct statusRcvd)
Lakukan inisialisasi WeaveTunnelControl untuk menetapkan anggota yang relevan seperti Agen Weave Tunnel dan callback.
IsPeerInShortcutTunnelCache(uint64_t peerId)
bool
Verifikasi apakah pembanding ada di cache pintasan tunnel untuk mengirim secara lokal.
Reconnect(WeaveTunnelConnectionMgr *conMgr)
Hubungkan kembali dengan node peer.
SendBorderRouterAdvertise(void)
Mengirim router perbatasan yang mengiklankan pesan yang mengiklankan ID kainnya.
SendMessageOverTunnelShortcut(uint64_t peerId, WeaveMessageInfo *msgHdr, PacketBuffer *msg)
Kirim pesan melalui pintasan tunnel.
SendMobileClientAdvertise(void)
Mengirim pesan iklan ke klien seluler yang mengiklankan ID Node-nya.
SendTunnelClose(WeaveTunnelConnectionMgr *conMgr)
Kirim pesan kontrol Tunnel Close ke node peer dengan serangkaian rute tunnel.
SendTunnelOpen(WeaveTunnelConnectionMgr *conMgr, WeaveTunnelRoute *tunRoute)
Mengirim pesan kontrol Tunnel Open ke node peer dengan sekumpulan rute tunnel.
SendTunnelRouteUpdate(WeaveTunnelConnectionMgr *conMgr, WeaveTunnelRoute *tunRoute)
Mengirim pesan kontrol Pembaruan Rute Tunnel ke node peer dengan sekumpulan rute tunnel.

Fungsi statis publik

HandleShortcutTunnelAdvertiseMessage(ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload)
void
Fungsi yang terdaftar dengan WeaveMessageLayer untuk memproses iklan Shortcut tunnel dan memperbarui cache.

Jenis publik

TunnelStatusRcvdFunct

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

Pointer fungsi ke pengendali yang ditetapkan oleh lapisan yang lebih tinggi untuk bertindak setelah menerima pesan StatusReport sebagai respons terhadap pesan kontrol Tunnel yang dikirim.

Detail
Parameter
[in] tType
Jenis tunnel, yaitu Utama atau Cadangan.
[in] tunStatus
Referensi ke pesan StatusReport kontrol Tunnel.

Atribut publik

OnTunStatusRcvd

TunnelStatusRcvdFunct OnTunStatusRcvd

mCtrlResponseTimeout

uint16_t mCtrlResponseTimeout

Waktu tunggu(dalam detik) untuk respons guna mengontrol pesan.

mShortcutTunnelAdvInterval

uint16_t mShortcutTunnelAdvInterval

Interval dalam detik untuk iklan tunnel pintasan berkala.

Fungsi publik

Tutup

WEAVE_ERROR Close(
  void
)

Tutup WeaveTunnelControl dengan menutup konteks pertukaran yang belum diselesaikan dan mereset anggota.

Detail
Hasil
WEAVE_NO_ERROR.

DisableShortcutTunneling

void DisableShortcutTunneling(
  void
)

Nonaktifkan penyaluran pintasan untuk mengirim iklan baik dari Gerbang Batas maupun klien Seluler dan juga mendengarkan iklan dari terowongan pintasan.

EnableShortcutTunneling

void EnableShortcutTunneling(
  void
)

Aktifkan penyaluran pintasan dengan mengirimkan iklan dari gerbang Border atau klien Seluler dan juga mendengarkan iklan dari lorong pintasan.

Init

WEAVE_ERROR Init(
  WeaveTunnelAgent *tunAgent,
  TunnelStatusRcvdFunct statusRcvd
)

Lakukan inisialisasi WeaveTunnelControl untuk menetapkan anggota yang relevan seperti Agen Weave Tunnel dan callback.

Detail
Parameter
[in] tunAgent
Pointer ke objek WeaveTunnelAgent.
[in] statusRcvd
Pointer ke callback untuk pengendali StatusRcvd.
Hasil
WEAVE_NO_ERROR

IsPeerInShortcutTunnelCache

bool IsPeerInShortcutTunnelCache(
  uint64_t peerId
)

Verifikasi apakah pembanding ada di cache pintasan tunnel untuk mengirim secara lokal.

Sambung kembali

WEAVE_ERROR Reconnect(
  WeaveTunnelConnectionMgr *conMgr
)

Hubungkan kembali dengan node peer.

SendBorderRouterAdvertise

WEAVE_ERROR SendBorderRouterAdvertise(
  void
)

Mengirim router perbatasan yang mengiklankan pesan yang mengiklankan ID kainnya.

SendMessageOverTunnelShortcut

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

Kirim pesan melalui pintasan tunnel.

SendMobileClientAdvertise

WEAVE_ERROR SendMobileClientAdvertise(
  void
)

Mengirim pesan iklan ke klien seluler yang mengiklankan ID Node-nya.

SendTunnelClose

WEAVE_ERROR SendTunnelClose(
  WeaveTunnelConnectionMgr *conMgr
)

Kirim pesan kontrol Tunnel Close ke node peer dengan serangkaian rute tunnel.

Kirim pesan kontrol Tunnel Close ke node peer.

Detail
Parameter
[in] conMgr
Pointer ke objek WeaveTunnelConnectionMgr.
Hasil
WEAVE_ERROR WEAVE_NO_ERROR saat berhasil, atau error.

SendTunnelOpen

WEAVE_ERROR SendTunnelOpen(
  WeaveTunnelConnectionMgr *conMgr,
  WeaveTunnelRoute *tunRoute
)

Mengirim pesan kontrol Tunnel Open ke node peer dengan sekumpulan rute tunnel.

Detail
Parameter
[in] conMgr
Pointer ke objek WeaveTunnelConnectionMgr.
[in] tunRoutes
Daftar rute awalan yang akan ditambahkan ke tabel rute.
Hasil
WEAVE_ERROR WEAVE_NO_ERROR saat berhasil, atau error.

SendTunnelRouteUpdate

WEAVE_ERROR SendTunnelRouteUpdate(
  WeaveTunnelConnectionMgr *conMgr,
  WeaveTunnelRoute *tunRoute
)

Mengirim pesan kontrol Pembaruan Rute Tunnel ke node peer dengan sekumpulan rute tunnel.

Detail
Parameter
[in] conMgr
Pointer ke objek WeaveTunnelConnectionMgr.
[in] tunRoutes
Daftar rute awalan yang akan ditambahkan ke tabel rute.
Hasil
WEAVE_ERROR WEAVE_NO_ERROR saat berhasil, atau error.

WeaveTunnelControl

 WeaveTunnelControl(
  void
)

Fungsi statis publik

HandleShortcutTunnelAdvertiseMessage

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

Fungsi yang terdaftar di WeaveMessageLayer untuk memproses iklan Shortcut tunnel dan memperbarui cache.