nl:: Weave:: Profiles:: WeaveTunnel:: WeaveTunnelControl
  摘要
        建構函式和解構函式 | 
    |
|---|---|
        WeaveTunnelControl(void)
         | 
    
        公開類型 | 
    |
|---|---|
        TunnelStatusRcvdFunct)(uint8_t tType, StatusReport &tunStatus)
       | 
      typedefvoid(*
        這個函式指標適用於由較高層設定的處理常式,用於在收到 StatusReport 訊息時,回應所傳送的 Tunnel 控制訊息。  | 
    
        公開屬性 | 
    |
|---|---|
        OnTunStatusRcvd
       | 
      |
        mCtrlResponseTimeout
       | 
      
        uint16_t
        回應控制訊息的逾時時間(以秒為單位)。 
       | 
    
        mShortcutTunnelAdvInterval
       | 
      
        uint16_t
        定期捷徑通道通告的間隔秒數。 
       | 
    
        公開函式 | 
    |
|---|---|
        Close(void)
       | 
      
        
         關閉所有待處理的廣告交易平台環境並重設成員,關閉 WeaveTunnelControl。 
       | 
    
        DisableShortcutTunneling(void)
       | 
      
        void
        停用透過邊界閘道或行動用戶端傳送廣告的捷徑通道,同時監聽快速通道對應程式的廣告。 
       | 
    
        EnableShortcutTunneling(void)
       | 
      
        void
        透過邊界閘道或行動用戶端傳送廣告,以及監聽快速通道對應程式的廣告,藉此啟用快速通道。 
       | 
    
        Init(WeaveTunnelAgent *tunAgent, TunnelStatusRcvdFunct statusRcvd)
       | 
      
        
         初始化 WeaveTunnelControl,設定相關成員,例如 Weave Tunnel 代理程式和回呼。 
       | 
    
        IsPeerInShortcutTunnelCache(uint64_t peerId)
       | 
      
        bool
        確認通道捷徑快取中是否有對等點,以便在本機傳送。 
       | 
    
        Reconnect(WeaveTunnelConnectionMgr *conMgr)
       | 
      
        
         請重新連線至對等節點。 
       | 
    
        SendBorderRouterAdvertise(void)
       | 
      
        
         寄送邊界路由器通告訊息,宣傳其布料 ID。 
       | 
    
        SendMessageOverTunnelShortcut(uint64_t peerId, WeaveMessageInfo *msgHdr, PacketBuffer *msg)
       | 
      
        
         透過通道捷徑傳送訊息。 
       | 
    
        SendMobileClientAdvertise(void)
       | 
      
        
         傳送行動客戶宣傳訊息,宣傳其節點 ID。 
       | 
    
        SendTunnelClose(WeaveTunnelConnectionMgr *conMgr)
       | 
      
        
         將 Tunnel Close 控制訊息傳送至含有一組通道路徑的對等節點。 
       | 
    
        SendTunnelOpen(WeaveTunnelConnectionMgr *conMgr, WeaveTunnelRoute *tunRoute)
       | 
      
        
         傳送 Tunnel Open Control 訊息至含有一組通道路徑的對等節點。 
       | 
    
        SendTunnelRouteUpdate(WeaveTunnelConnectionMgr *conMgr, WeaveTunnelRoute *tunRoute)
       | 
      
        
         將通道路徑更新控制訊息傳送至含有一組通道路徑的對等節點。 
       | 
    
        公開的靜態函式 | 
    |
|---|---|
        HandleShortcutTunnelAdvertiseMessage(ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload)
       | 
      
        void
        已向 WeaveMessageLayer 註冊的函式,用於監聽快速指令通道廣告並更新快取。 
       | 
    
公開類型
TunnelStatusRcvdFunct
void(* TunnelStatusRcvdFunct)(uint8_t tType, StatusReport &tunStatus)
這個函式指標適用於由較高層設定的處理常式,用於在收到 StatusReport 訊息時,回應所傳送的 Tunnel 控制訊息。
| 詳細資料 | |||||
|---|---|---|---|---|---|
| 參數 | 
              
  | 
          ||||
公開屬性
OnTunStatusRcvd
TunnelStatusRcvdFunct OnTunStatusRcvd
mCtrlResponseTimeout
uint16_t mCtrlResponseTimeout
回應控制訊息的逾時時間(以秒為單位)。
mShortcutTunnelAdvInterval
uint16_t mShortcutTunnelAdvInterval
定期捷徑通道通告的間隔秒數。
公開函式
DisableShortcutTunneling
void DisableShortcutTunneling( void )
停用透過邊界閘道或行動用戶端傳送廣告的捷徑通道,同時監聽快速通道對應程式的廣告。
EnableShortcutTunneling
void EnableShortcutTunneling( void )
透過邊界閘道或行動用戶端傳送廣告,以及監聽快速通道對應程式的廣告,藉此啟用快速通道。
Init
WEAVE_ERROR Init( WeaveTunnelAgent *tunAgent, TunnelStatusRcvdFunct statusRcvd )
初始化 WeaveTunnelControl,設定相關成員,例如 Weave Tunnel 代理程式和回呼。
| 詳細資料 | |||||
|---|---|---|---|---|---|
| 參數 | 
              
  | 
          ||||
| 傳回 | 
               WEAVE_NO_ERROR 
             | 
          ||||
IsPeerInShortcutTunnelCache
bool IsPeerInShortcutTunnelCache( uint64_t peerId )
確認通道捷徑快取中是否有對等點,以便在本機傳送。
SendMessageOverTunnelShortcut
WEAVE_ERROR SendMessageOverTunnelShortcut( uint64_t peerId, WeaveMessageInfo *msgHdr, PacketBuffer *msg )
透過通道捷徑傳送訊息。
SendTunnelClose
WEAVE_ERROR SendTunnelClose( WeaveTunnelConnectionMgr *conMgr )
將 Tunnel Close 控制訊息傳送至含有一組通道路徑的對等節點。
傳送 Tunnel Close 控制訊息至對等節點。
| 詳細資料 | |||
|---|---|---|---|
| 參數 | 
              
  | 
          ||
| 傳回 | 
               成功時出現 WEAVE_ERROR WEAVE_NO_ERROR,其他錯誤。 
             | 
          ||
SendTunnelOpen
WEAVE_ERROR SendTunnelOpen( WeaveTunnelConnectionMgr *conMgr, WeaveTunnelRoute *tunRoute )
傳送 Tunnel Open Control 訊息至含有一組通道路徑的對等節點。
| 詳細資料 | |||||
|---|---|---|---|---|---|
| 參數 | 
              
  | 
          ||||
| 傳回 | 
               成功時出現 WEAVE_ERROR WEAVE_NO_ERROR,其他錯誤。 
             | 
          ||||
SendTunnelRouteUpdate
WEAVE_ERROR SendTunnelRouteUpdate( WeaveTunnelConnectionMgr *conMgr, WeaveTunnelRoute *tunRoute )
將通道路徑更新控制訊息傳送至含有一組通道路徑的對等節點。
| 詳細資料 | |||||
|---|---|---|---|---|---|
| 參數 | 
              
  | 
          ||||
| 傳回 | 
               成功時出現 WEAVE_ERROR WEAVE_NO_ERROR,其他錯誤。 
             | 
          ||||
WeaveTunnelControl
WeaveTunnelControl( void )
公開的靜態函式
HandleShortcutTunnelAdvertiseMessage
void HandleShortcutTunnelAdvertiseMessage( ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload )
已向 WeaveMessageLayer 註冊的函式,用於監聽快速指令通道廣告並更新快取。