nl::Weave::WeaveConnection

#include <src/lib/core/WeaveMessageLayer.h>

คำจำกัดความของคลาส Weave Connection

สรุป

ซึ่งแสดงถึงการเชื่อมต่อ TCP หรือ BLE กับโหนด Weave อื่น

ประเภทสาธารณะ

@58{
  kGetPeerDescription_MaxLength = nl::Weave::kWeavePeerDescription_MaxLength
}
enum
ConnectionClosedFunct)(WeaveConnection *con, WEAVE_ERROR conErr) typedef
void(*
ฟังก์ชันนี้คือโค้ดเรียกกลับของแอปพลิเคชันที่เรียกใช้เมื่อปิดการเชื่อมต่อ
ConnectionCompleteFunct)(WeaveConnection *con, WEAVE_ERROR conErr) typedef
void(*
ฟังก์ชันนี้คือโค้ดเรียกกลับของแอปพลิเคชันที่จะเรียกใช้เมื่อตั้งค่าการเชื่อมต่อเสร็จสมบูรณ์
MessageReceiveFunct)(WeaveConnection *con, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf) typedef
void(*
ฟังก์ชันนี้เป็นโค้ดเรียกกลับของแอปพลิเคชันที่เรียกใช้เมื่อได้รับข้อความผ่านการเชื่อมต่อ Weave
NetworkType{
  kNetworkType_Unassigned = 0,
  kNetworkType_IP = 1,
  kNetworkType_BLE = 2
}
enum
ประเภทเครือข่ายของออบเจ็กต์การเชื่อมต่อ Weave
ReceiveErrorFunct)(WeaveConnection *con, WEAVE_ERROR err) typedef
void(*
ฟังก์ชันนี้เป็นการเรียกกลับของแอปพลิเคชันเมื่อพบข้อผิดพลาดเมื่อได้รับข้อความ Weave
State{
  kState_ReadyToConnect = 0,
  kState_Resolving = 1,
  kState_Connecting = 2,
  kState_EstablishingSession = 3,
  kState_Connected = 4,
  kState_SendShutdown = 5,
  kState_Closed = 6
}
enum
สถานะของออบเจ็กต์การเชื่อมต่อ Weave
TunneledMsgReceiveFunct)(WeaveConnection *con, const WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf) typedef
void(*
ฟังก์ชันนี้เป็นการเรียกกลับของแอปพลิเคชันที่มีการเรียกใช้เมื่อได้รับแพ็กเก็ตข้อมูล Tunneled ผ่านการเชื่อมต่อ Weave

แอตทริบิวต์สาธารณะ

AppState
void *
ตัวชี้ไปยังออบเจ็กต์สถานะเฉพาะแอปพลิเคชัน
AuthMode
WeaveAuthMode
[อ่านอย่างเดียว] โหมดการตรวจสอบสิทธิ์ที่ใช้ในการสร้างคีย์การเข้ารหัสเริ่มต้นสำหรับการเชื่อมต่อ
DefaultEncryptionType
uint8_t
ประเภทการเข้ารหัสเริ่มต้นสำหรับข้อความ
DefaultKeyId
uint16_t
คีย์การเข้ารหัสเริ่มต้นที่จะใช้เมื่อส่งข้อความ
MessageLayer
[อ่านอย่างเดียว] ออบเจ็กต์ WeaveMessageLayer ที่เกี่ยวข้อง
NetworkType
uint8_t
[อ่านอย่างเดียว] ประเภทเครือข่ายของปลายทางที่เชื่อมโยง
OnConnectionClosed
OnConnectionComplete
OnMessageReceived
OnReceiveError
OnTunneledMessageReceived
PeerAddr
IPAddress
[อ่านเท่านั้น] ที่อยู่ IP ของโหนดเพียร์
PeerNodeId
uint64_t
[อ่านอย่างเดียว] ตัวระบุโหนดของเพียร์
PeerPort
uint16_t
[อ่านอย่างเดียว] หมายเลขพอร์ตของโหนดเพียร์
ReceiveEnabled
bool
[อ่านอย่างเดียว] เป็นจริงหากเปิดใช้การรับ "เท็จ" หากไม่ได้เปิดใช้
SendDestNodeId
bool
"จริง" หากข้อความทั้งหมดที่ส่งผ่านการเชื่อมต่อนี้ต้องมีตัวระบุโหนดปลายทางที่เข้ารหัสอย่างชัดแจ้ง มิเช่นนั้นให้เป็นเท็จ
SendSourceNodeId
bool
"จริง" หากข้อความทั้งหมดที่ส่งผ่านการเชื่อมต่อนี้ต้องมีตัวระบุโหนดแหล่งที่มาที่เข้ารหัสอย่างชัดแจ้ง มิฉะนั้นจะเป็น "เท็จ"
State
uint8_t
[อ่านอย่างเดียว] สถานะของออบเจ็กต์ WeaveConnection

ฟังก์ชันสาธารณะ

Abort(void)
void
ดำเนินการปิด WeaveConnection แบบ TCP หรือ BLE อย่างไม่สวยงามโดยทิ้งข้อมูลใดๆ ที่อาจอยู่ในระหว่างดำเนินการไปยังหรือจากเพียร์
AddRef(void)
void
สงวนการอ้างอิงไปยังออบเจ็กต์ WeaveConnection
Close(void)
ดำเนินการปิด WeaveConnection แบบใช้ TCP หรือ BLE อย่างค่อยเป็นค่อยไป โดยส่งข้อมูลขาออกที่เหลือก่อนแจ้งโฮสต์ระยะไกลอย่างสุภาพว่าเราได้รีเซ็ตการเชื่อมต่อแล้ว
Close(bool suppressCloseLog)
ดำเนินการปิด WeaveConnection แบบใช้ TCP หรือ BLE อย่างค่อยเป็นค่อยไป โดยส่งข้อมูลขาออกที่เหลือก่อนแจ้งโฮสต์ระยะไกลอย่างสุภาพว่าเราได้รีเซ็ตการเชื่อมต่อแล้ว
Connect(uint64_t peerNodeId)
เชื่อมต่อกับโหนด Weave โดยใช้ที่อยู่ IP ผ้าซึ่งได้มาจากตัวระบุโหนดที่ระบุ
Connect(uint64_t peerNodeId, const IPAddress & peerAddr, uint16_t peerPort)
เชื่อมต่อกับโหนด Weave โดยใช้ตัวระบุโหนดและ/หรือที่อยู่ IP
Connect(uint64_t peerNodeId, WeaveAuthMode authMode, const IPAddress & peerAddr, uint16_t peerPort, InterfaceId intf)
เชื่อมต่อกับโหนด Weave โดยใช้ตัวระบุโหนดและ/หรือที่อยู่ IP ในอินเทอร์เฟซที่เฉพาะเจาะจง
Connect(uint64_t peerNodeId, WeaveAuthMode authMode, const char *peerAddr, uint16_t defaultPort)
เชื่อมต่อกับโหนด Weave โดยใช้ตัวระบุโหนดและ/หรือชื่อโฮสต์สตริง
Connect(uint64_t peerNodeId, WeaveAuthMode authMode, const char *peerAddr, uint16_t peerAddrLen, uint16_t defaultPort)
เชื่อมต่อกับโหนด Weave โดยใช้ตัวระบุโหนดและ/หรือที่อยู่เพียร์ของสตริง
Connect(uint64_t peerNodeId, WeaveAuthMode authMode, const char *peerAddr, uint16_t peerAddrLen, uint8_t dnsOptions, uint16_t defaultPort)
เชื่อมต่อกับโหนด Weave โดยใช้ตัวระบุโหนดและ/หรือที่อยู่เพียร์ของสตริง
Connect(uint64_t peerNodeId, WeaveAuthMode authMode, HostPortList hostPortList, InterfaceId intf)
เชื่อมต่อกับโหนด Weave โดยใช้ตัวระบุโหนดและ/หรือรายการชื่อโฮสต์และพอร์ต
Connect(uint64_t peerNodeId, WeaveAuthMode authMode, HostPortList hostPortList, uint8_t dnsOptions, InterfaceId intf)
เชื่อมต่อกับโหนด Weave โดยใช้ตัวระบุโหนดและ/หรือรายการชื่อโฮสต์และพอร์ต
DisableKeepAlive(void)
DisableReceive(void)
void
ปิดใช้การรับผ่าน WeaveConnection นี้
EnableKeepAlive(uint16_t interval, uint16_t timeoutCount)
EnableReceive(void)
void
เปิดใช้การรับผ่าน WeaveConnection นี้
GetPeerAddressInfo(IPPacketInfo & addrInfo)
รับข้อมูลที่อยู่ IP ของแอปเทียบเท่า
GetPeerDescription(char *buf, size_t bufSize) const
void
สร้างสตริงที่อธิบายโหนดเพียร์ที่เชื่อมโยงกับการเชื่อมต่อ
GetTCPEndPoint(void) const
TCPEndPoint *
IsIncoming(void) const
bool
LogId(void) const
uint16_t
Release(void)
void
ลดจำนวนการอ้างอิงบนออบเจ็กต์ WeaveConnection
ResetUserTimeout(void)
SendMessage(WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
ส่งข้อความ Weave ผ่านการเชื่อมต่อที่มีอยู่แล้ว
SendTunneledMessage(WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
ฟังก์ชันสำหรับส่งแพ็กเก็ต Tunneled ผ่านการเชื่อมต่อ Weave
SetConnectTimeout(const uint32_t connTimeoutMsecs)
void
ตั้งค่าระยะหมดเวลาเพื่อให้ Connect ดำเนินการสำเร็จหรือแสดงผลข้อผิดพลาด
SetIdleTimeout(uint32_t timeoutMS)
ตั้งค่าระยะหมดเวลาเนื่องจากไม่มีการใช้งานในการเชื่อมต่อชั้นเครือข่ายที่สำคัญ
SetIncoming(bool val)
void
SetUserTimeout(uint32_t userTimeoutMillis)
Shutdown(void)
ดำเนินการปิดใช้งานการส่งผ่าน TCP อย่างค่อยเป็นค่อยไปเพื่อให้แน่ใจว่าสแต็ก TCP ของเครื่องเพียร์จะส่งและรับข้อมูลขาออกทั้งหมดแล้ว

ประเภทสาธารณะ

@58

 @58
พร็อพเพอร์ตี้
kGetPeerDescription_MaxLength

ความยาวสูงสุดของสตริง (รวมถึงอักขระ NUL) ที่แสดงผลโดย GetPeerDescription()

ConnectionClosedFunct

void(* ConnectionClosedFunct)(WeaveConnection *con, WEAVE_ERROR conErr)

ฟังก์ชันนี้คือโค้ดเรียกกลับของแอปพลิเคชันที่เรียกใช้เมื่อปิดการเชื่อมต่อ

รายละเอียด
พารามิเตอร์
[in] con
ตัวชี้ไปยังออบเจ็กต์ WeaveConnection
[in] conErr
WEAVE_ERROR พบเมื่อการเชื่อมต่อถูกปิด

ConnectionCompleteFunct

void(* ConnectionCompleteFunct)(WeaveConnection *con, WEAVE_ERROR conErr)

ฟังก์ชันนี้คือโค้ดเรียกกลับของแอปพลิเคชันที่จะเรียกใช้เมื่อตั้งค่าการเชื่อมต่อเสร็จสมบูรณ์

รายละเอียด
พารามิเตอร์
[in] con
ตัวชี้ไปยังออบเจ็กต์ WeaveConnection
[in] conErr
พบ WEAVE_ERROR ระหว่างการตั้งค่าการเชื่อมต่อ

MessageReceiveFunct

void(* MessageReceiveFunct)(WeaveConnection *con, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)

ฟังก์ชันนี้เป็นโค้ดเรียกกลับของแอปพลิเคชันที่เรียกใช้เมื่อได้รับข้อความผ่านการเชื่อมต่อ Weave

รายละเอียด
พารามิเตอร์
[in] con
ตัวชี้ไปยังออบเจ็กต์ WeaveConnection
[in] msgInfo
ตัวชี้ไปยังโครงสร้าง WeaveMessageInfo ที่มีข้อมูลเกี่ยวกับข้อความ
[in] msgBuf
ตัวชี้ไปยังออบเจ็กต์ PacketBuffer ที่มีข้อความอยู่

NetworkType

 NetworkType

ประเภทเครือข่ายของออบเจ็กต์การเชื่อมต่อ Weave

พร็อพเพอร์ตี้
kNetworkType_BLE

ประเภทเครือข่าย BLE

kNetworkType_IP

ประเภทเครือข่าย TCP/IP

kNetworkType_Unassigned

ประเภทเครือข่ายที่ไม่ได้กำหนด

ReceiveErrorFunct

void(* ReceiveErrorFunct)(WeaveConnection *con, WEAVE_ERROR err)

ฟังก์ชันนี้เป็นการเรียกกลับของแอปพลิเคชันเมื่อพบข้อผิดพลาดเมื่อได้รับข้อความ Weave

รายละเอียด
พารามิเตอร์
[in] con
ตัวชี้ไปยังออบเจ็กต์ WeaveConnection
[in] err
WEAVE_ERROR ที่พบเมื่อรับข้อมูลผ่านการเชื่อมต่อ

รัฐ

 State

สถานะของออบเจ็กต์การเชื่อมต่อ Weave

พร็อพเพอร์ตี้
kState_Closed

สถานะเมื่อปิดการเชื่อมต่อ

kState_Connected

สถานะที่ทำการเชื่อมต่อแล้ว

kState_Connecting

สถานะเมื่อมีการพยายามเชื่อมต่อ

kState_EstablishingSession

ระบุเมื่อมีการสร้างเซสชันที่ปลอดภัย

kState_ReadyToConnect

สถานะหลังการเริ่มต้นการเชื่อมต่อ Weave

kState_Resolving

สถานะเมื่อดำเนินการแก้ไขชื่อ DNS

kState_SendShutdown

ระบุเมื่อการเชื่อมต่อถูกปิด

TunneledMsgReceiveFunct

void(* TunneledMsgReceiveFunct)(WeaveConnection *con, const WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)

ฟังก์ชันนี้เป็นการเรียกกลับของแอปพลิเคชันที่มีการเรียกใช้เมื่อได้รับแพ็กเก็ตข้อมูล Tunneled ผ่านการเชื่อมต่อ Weave

รายละเอียด
พารามิเตอร์
[in] con
ตัวชี้ไปยังออบเจ็กต์ WeaveConnection
[in] msgInfo
ตัวชี้ไปยังออบเจ็กต์ WeaveMessageInfo
[in] msgBuf
ตัวชี้ไปยังออบเจ็กต์ PacketBuffer ที่มีแพ็กเก็ตอุโมงค์ข้อมูลที่ได้รับ

แอตทริบิวต์สาธารณะ

AppState

void * AppState

ตัวชี้ไปยังออบเจ็กต์สถานะเฉพาะแอปพลิเคชัน

AuthMode

WeaveAuthMode AuthMode

[อ่านอย่างเดียว] โหมดการตรวจสอบสิทธิ์ที่ใช้ในการสร้างคีย์การเข้ารหัสเริ่มต้นสำหรับการเชื่อมต่อ

DefaultEncryptionType

uint8_t DefaultEncryptionType

ประเภทการเข้ารหัสเริ่มต้นสำหรับข้อความ

DefaultKeyId

uint16_t DefaultKeyId

คีย์การเข้ารหัสเริ่มต้นที่จะใช้เมื่อส่งข้อความ

MessageLayer

WeaveMessageLayer * MessageLayer

[อ่านอย่างเดียว] ออบเจ็กต์ WeaveMessageLayer ที่เกี่ยวข้อง

NetworkType

uint8_t NetworkType

[อ่านอย่างเดียว] ประเภทเครือข่ายของปลายทางที่เชื่อมโยง

OnConnectionClosed

ConnectionClosedFunct OnConnectionClosed

OnConnectionComplete

ConnectionCompleteFunct OnConnectionComplete

OnMessageReceived

MessageReceiveFunct OnMessageReceived

OnReceiveError

ReceiveErrorFunct OnReceiveError

OnTunneledMessageReceived

TunneledMsgReceiveFunct OnTunneledMessageReceived

PeerAddr

IPAddress PeerAddr

[อ่านเท่านั้น] ที่อยู่ IP ของโหนดเพียร์

PeerNodeId

uint64_t PeerNodeId

[อ่านอย่างเดียว] ตัวระบุโหนดของเพียร์

PeerPort

uint16_t PeerPort

[อ่านอย่างเดียว] หมายเลขพอร์ตของโหนดเพียร์

ReceiveEnabled

bool ReceiveEnabled

[อ่านอย่างเดียว] เป็นจริงหากเปิดใช้การรับ "เท็จ" หากไม่ได้เปิดใช้

SendDestNodeId

bool SendDestNodeId

"จริง" หากข้อความทั้งหมดที่ส่งผ่านการเชื่อมต่อนี้ต้องมีตัวระบุโหนดปลายทางที่เข้ารหัสอย่างชัดแจ้ง มิเช่นนั้นให้เป็นเท็จ

SendSourceNodeId

bool SendSourceNodeId

"จริง" หากข้อความทั้งหมดที่ส่งผ่านการเชื่อมต่อนี้ต้องมีตัวระบุโหนดแหล่งที่มาที่เข้ารหัสอย่างชัดแจ้ง มิฉะนั้นจะเป็น "เท็จ"

รัฐ

uint8_t State

[อ่านอย่างเดียว] สถานะของออบเจ็กต์ WeaveConnection

ฟังก์ชันสาธารณะ

ล้มเลิก

void Abort(
  void
)

ดำเนินการปิด WeaveConnection แบบ TCP หรือ BLE อย่างไม่สวยงามโดยทิ้งข้อมูลใดๆ ที่อาจอยู่ในระหว่างดำเนินการไปยังหรือจากเพียร์

การเรียก Abort() จะยุติการเชื่อมต่อที่อยู่เบื้องหลังทันที หลังจากจุดนี้ คุณจะใช้ออบเจ็กต์ WeaveConnection สำหรับการสื่อสารไม่ได้อีกต่อไป

การเรียก Abort() จะลดจำนวนการอ้างอิงที่เชื่อมโยงกับออบเจ็กต์ WeaveConnection ไม่ว่าการเชื่อมต่อนั้นจะเปิด/ใช้งานอยู่ในขณะที่เรียกใช้เมธอดหรือไม่ก็ตาม หากทำให้จำนวนการอ้างอิงถึง 0 ระบบจะปล่อยทรัพยากรที่เชื่อมโยงกับออบเจ็กต์การเชื่อมต่อ ในกรณีนี้ แอปพลิเคชันจะต้องไม่มีการโต้ตอบกับอ็อบเจกต์นั้นอีกต่อไป

โปรดดู
Shutdown(), Abort(), AddRef() และ Release()

AddRef

void AddRef(
  void
)

สงวนการอ้างอิงไปยังออบเจ็กต์ WeaveConnection

เมธอด AddRef() จะเพิ่มจำนวนข้อมูลอ้างอิงที่เชื่อมโยงกับออบเจ็กต์ WeaveConnection สำหรับการเรียก AddRef() ทุกครั้ง แอปพลิเคชันจะทำหน้าที่เรียกที่เกี่ยวข้องไปยัง Release(), Close() หรือ Abort()

ปิด

WEAVE_ERROR Close(
  void
)

ดำเนินการปิด WeaveConnection แบบใช้ TCP หรือ BLE อย่างค่อยเป็นค่อยไป โดยส่งข้อมูลขาออกที่เหลือก่อนแจ้งโฮสต์ระยะไกลอย่างสุภาพว่าเราได้รีเซ็ตการเชื่อมต่อแล้ว

วิธีการนี้ไม่ให้การรับประกันที่ชัดเจนว่าเพียร์ระยะไกลได้รับข้อความขาออกที่ไม่ได้รับในระดับโปรโตคอลของแอปพลิเคชัน สำหรับทั้ง TCP และ BLE สแต็กโปรโตคอลที่สำคัญจะพยายามอย่างดีที่สุดในการส่งข้อมูลขาออกที่ค้างอยู่ก่อนที่จะรีเซ็ตการเชื่อมต่อ สำหรับ TCP ควรใช้ Shutdown() ก่อน Close() หากต้องยืนยันการรับข้อความในชั้นข้อมูลก่อนปิดการเชื่อมต่อ การเชื่อมต่อ BLE ไม่ได้ให้ Shutdown() ที่เทียบเท่า

สำหรับการเชื่อมต่อที่ใช้ BLE นั้น Close() จะปิด WeaveConnection และส่งกลับทันที แต่อาจทำให้ออบเจ็กต์ BLEEndPoint ที่ใช้งานอยู่หยุดอยู่จนกว่าจะส่งข้อมูลขาออกทั้งหมด นี่เป็นผลข้างเคียงของการใช้โปรโตคอลการรับส่งข้อมูล Weave over BLE ที่มีอยู่ใน Weave BleLayer

เมื่อเรียก Close() แล้ว จะใช้ออบเจ็กต์ WeaveConnection สำหรับการสื่อสารไม่ได้อีกต่อไป

การเรียกใช้ Close() จะลดจำนวนการอ้างอิงที่เชื่อมโยงกับออบเจ็กต์ WeaveConnection ไม่ว่าการเชื่อมต่อนั้นจะเปิด/ทำงานอยู่ในขณะที่เรียกใช้เมธอดหรือไม่ก็ตาม หากทำให้จำนวนการอ้างอิงถึง 0 ระบบจะปล่อยทรัพยากรที่เชื่อมโยงกับออบเจ็กต์การเชื่อมต่อ ในกรณีนี้ แอปพลิเคชันจะต้องไม่มีการโต้ตอบกับอ็อบเจกต์นั้นอีกต่อไป

รายละเอียด
การส่งคืน
WEAVE_NO_ERROR อย่างไม่มีเงื่อนไข
โปรดดู
Shutdown(), Abort(), AddRef() และ Release()

ปิด

WEAVE_ERROR Close(
  bool suppressCloseLog
)

ดำเนินการปิด WeaveConnection แบบใช้ TCP หรือ BLE อย่างค่อยเป็นค่อยไป โดยส่งข้อมูลขาออกที่เหลือก่อนแจ้งโฮสต์ระยะไกลอย่างสุภาพว่าเราได้รีเซ็ตการเชื่อมต่อแล้ว

วิธีการนี้ไม่ให้การรับประกันที่ชัดเจนว่าเพียร์ระยะไกลได้รับข้อความขาออกที่ไม่ได้รับในระดับโปรโตคอลของแอปพลิเคชัน สำหรับทั้ง TCP และ BLE สแต็กโปรโตคอลที่สำคัญจะพยายามอย่างดีที่สุดในการส่งข้อมูลขาออกที่ค้างอยู่ก่อนที่จะรีเซ็ตการเชื่อมต่อ สำหรับ TCP ควรใช้ Shutdown() ก่อน Close() หากต้องยืนยันการรับข้อความในชั้นข้อมูลก่อนปิดการเชื่อมต่อ การเชื่อมต่อ BLE ไม่ได้ให้ Shutdown() ที่เทียบเท่า

สำหรับการเชื่อมต่อที่ใช้ BLE นั้น Close() จะปิด WeaveConnection และส่งกลับทันที แต่อาจทำให้ออบเจ็กต์ BLEEndPoint ที่ใช้งานอยู่หยุดอยู่จนกว่าจะส่งข้อมูลขาออกทั้งหมด นี่เป็นผลข้างเคียงของการใช้โปรโตคอลการรับส่งข้อมูล Weave over BLE ที่มีอยู่ใน Weave BleLayer

เมื่อเรียก Close() แล้ว จะใช้ออบเจ็กต์ WeaveConnection สำหรับการสื่อสารไม่ได้อีกต่อไป

การเรียกใช้ Close() จะลดจำนวนการอ้างอิงที่เชื่อมโยงกับออบเจ็กต์ WeaveConnection ไม่ว่าการเชื่อมต่อนั้นจะเปิด/ทำงานอยู่ในขณะที่เรียกใช้เมธอดหรือไม่ก็ตาม หากทำให้จำนวนการอ้างอิงถึง 0 ระบบจะปล่อยทรัพยากรที่เชื่อมโยงกับออบเจ็กต์การเชื่อมต่อ ในกรณีนี้ แอปพลิเคชันจะต้องไม่มีการโต้ตอบกับอ็อบเจกต์นั้นอีกต่อไป

รายละเอียด
พารามิเตอร์
[in] suppressCloseLog
true หากต้องระงับบันทึก หากไม่เป็นเช่นนั้นจะเป็น false
การส่งคืน
WEAVE_NO_ERROR อย่างไม่มีเงื่อนไข
โปรดดู
Shutdown(), Abort(), AddRef() และ Release()

เชื่อมต่อ

WEAVE_ERROR Connect(
  uint64_t peerNodeId
)

เชื่อมต่อกับโหนด Weave โดยใช้ที่อยู่ IP ผ้าซึ่งได้มาจากตัวระบุโหนดที่ระบุ

รายละเอียด
พารามิเตอร์
[in] peerNodeId
ตัวระบุโหนดของเพียร์
แสดงผลค่า
WEAVE_NO_ERROR
เมื่อเริ่มการเชื่อมต่อกับเพียร์ได้สำเร็จ
WEAVE_ERROR_INCORRECT_STATE
หากสถานะ WeaveConnection ไม่ถูกต้อง
WEAVE_ERROR_UNSUPPORTED_AUTH_MODE
ระบบไม่รองรับโหมดการตรวจสอบสิทธิ์ที่ขอ
WEAVE_ERROR_INVALID_ADDRESS
หากที่อยู่ปลายทางไม่สามารถอนุมานจากรหัสโหนดได้
other
ข้อผิดพลาดของเลเยอร์ Inet ที่สร้างขึ้นโดยการดำเนินการเชื่อมต่อ TCPEndPoint

เชื่อมต่อ

WEAVE_ERROR Connect(
  uint64_t peerNodeId,
  const IPAddress & peerAddr,
  uint16_t peerPort
)

เชื่อมต่อกับโหนด Weave โดยใช้ตัวระบุโหนดและ/หรือที่อยู่ IP

รายละเอียด
พารามิเตอร์
[in] peerNodeId
ตัวระบุโหนดของเพียร์ kNodeIdNotSpecified หรือ 0 หากไม่ทราบ
[in] peerAddr
ที่อยู่ IP ของแอปเทียบเท่า IPAddress::Any หากไม่ทราบ
[in] peerPort
พอร์ตที่ไม่บังคับของเพียร์จะมีค่าเริ่มต้นเป็น WEAVE_PORT
แสดงผลค่า
WEAVE_NO_ERROR
เมื่อเริ่มการเชื่อมต่อกับเพียร์ได้สำเร็จ
WEAVE_ERROR_INCORRECT_STATE
หากสถานะ WeaveConnection ไม่ถูกต้อง
WEAVE_ERROR_UNSUPPORTED_AUTH_MODE
ระบบไม่รองรับโหมดการตรวจสอบสิทธิ์ที่ขอ
WEAVE_ERROR_INVALID_ADDRESS
หากที่อยู่ปลายทางไม่สามารถอนุมานจากรหัสโหนดได้
other
ข้อผิดพลาดของเลเยอร์ Inet ที่สร้างขึ้นโดยการดำเนินการเชื่อมต่อ TCPEndPoint

เชื่อมต่อ

WEAVE_ERROR Connect(
  uint64_t peerNodeId,
  WeaveAuthMode authMode,
  const IPAddress & peerAddr,
  uint16_t peerPort,
  InterfaceId intf
)

เชื่อมต่อกับโหนด Weave โดยใช้ตัวระบุโหนดและ/หรือที่อยู่ IP ในอินเทอร์เฟซที่เฉพาะเจาะจง

รายละเอียด
พารามิเตอร์
[in] peerNodeId
ตัวระบุโหนดของเพียร์ kNodeIdNotSpecified หรือ 0 หากไม่ทราบ
[in] authMode
โหมดการตรวจสอบสิทธิ์ที่ต้องการสำหรับการเพียร์ รองรับเฉพาะโหมด CASE, PASE และโหมดไม่ตรวจสอบสิทธิ์
[in] peerAddr
ที่อยู่ IP ของแอปเทียบเท่า IPAddress::Any หากไม่ทราบ
[in] peerPort
พอร์ตที่ไม่บังคับของเพียร์จะมีค่าเริ่มต้นเป็น WEAVE_PORT
[in] intf
อินเทอร์เฟซที่ไม่บังคับซึ่งจะใช้เชื่อมต่อกับโหนดเพียร์จะมีค่าเริ่มต้นเป็น INET_NULL_INTERFACEID
แสดงผลค่า
WEAVE_NO_ERROR
เมื่อเริ่มการเชื่อมต่อกับเพียร์ได้สำเร็จ
WEAVE_ERROR_INCORRECT_STATE
หากสถานะ WeaveConnection ไม่ถูกต้อง
WEAVE_ERROR_UNSUPPORTED_AUTH_MODE
ระบบไม่รองรับโหมดการตรวจสอบสิทธิ์ที่ขอ
WEAVE_ERROR_INVALID_ADDRESS
หากที่อยู่ปลายทางไม่สามารถอนุมานจากตัวระบุโหนดได้
other
ข้อผิดพลาดของเลเยอร์ Inet ที่สร้างขึ้นโดยการดำเนินการเชื่อมต่อ TCPEndPoint

เชื่อมต่อ

WEAVE_ERROR Connect(
  uint64_t peerNodeId,
  WeaveAuthMode authMode,
  const char *peerAddr,
  uint16_t defaultPort
)

เชื่อมต่อกับโหนด Weave โดยใช้ตัวระบุโหนดและ/หรือชื่อโฮสต์สตริง

หากระบุ PeerAddr อาจเป็นค่าใดก็ได้ต่อไปนี้


:

:

[]:

รายละเอียด
พารามิเตอร์
[in] peerNodeId
ตัวระบุโหนดของเพียร์ kNodeIdNotSpecified หรือ 0 หากไม่ทราบ
[in] authMode
โหมดการตรวจสอบสิทธิ์ที่ต้องการสำหรับการเพียร์ รองรับเฉพาะโหมด CASE, PASE และโหมดไม่ตรวจสอบสิทธิ์
[in] peerAddr
ที่อยู่หรือชื่อโฮสต์ของเพียร์เป็นสตริง C ที่มีการสิ้นสุด NULL
[in] defaultPort
พอร์ตเริ่มต้น (ไม่บังคับ) ที่จะใช้ในการเชื่อมต่อหากไม่ได้ระบุไว้ในสตริง peerAddr
แสดงผลค่า
WEAVE_NO_ERROR
เมื่อเริ่มการเชื่อมต่อกับเพียร์ได้สำเร็จ
WEAVE_ERROR_INCORRECT_STATE
หากสถานะ WeaveConnection ไม่ถูกต้อง
WEAVE_ERROR_UNSUPPORTED_AUTH_MODE
ระบบไม่รองรับโหมดการตรวจสอบสิทธิ์ที่ขอ
WEAVE_ERROR_INVALID_ADDRESS
หากที่อยู่ปลายทางไม่สามารถอนุมานจากรหัสโหนดได้
other
ข้อผิดพลาดของเลเยอร์ Inet ที่สร้างขึ้นโดยการดำเนินการเชื่อมต่อ TCPEndPoint

เชื่อมต่อ

WEAVE_ERROR Connect(
  uint64_t peerNodeId,
  WeaveAuthMode authMode,
  const char *peerAddr,
  uint16_t peerAddrLen,
  uint16_t defaultPort
)

เชื่อมต่อกับโหนด Weave โดยใช้ตัวระบุโหนดและ/หรือที่อยู่เพียร์ของสตริง

หากระบุ PeerAddr อาจเป็นค่าใดก็ได้ต่อไปนี้


:

:

[]:

รายละเอียด
พารามิเตอร์
[in] peerNodeId
ตัวระบุโหนดของเพียร์ kNodeIdNotSpecified หรือ 0 หากไม่ทราบ
[in] authMode
โหมดการตรวจสอบสิทธิ์ที่ต้องการสำหรับการเพียร์ รองรับเฉพาะโหมด CASE, PASE และโหมดไม่ตรวจสอบสิทธิ์
[in] peerAddr
ที่อยู่หรือชื่อโฮสต์ของเพียร์เป็นสตริง C ที่ไม่สิ้นสุดค่า NULL
[in] peerAddrLen
ความยาวของสตริง PeerAddr
[in] defaultPort
พอร์ตเริ่มต้น (ไม่บังคับ) ที่จะใช้ในการเชื่อมต่อหากไม่ได้ระบุไว้ในสตริง peerAddr
แสดงผลค่า
WEAVE_NO_ERROR
เมื่อเริ่มการเชื่อมต่อกับเพียร์ได้สำเร็จ
WEAVE_ERROR_INCORRECT_STATE
หากสถานะ WeaveConnection ไม่ถูกต้อง
WEAVE_ERROR_UNSUPPORTED_AUTH_MODE
ระบบไม่รองรับโหมดการตรวจสอบสิทธิ์ที่ขอ
WEAVE_ERROR_INVALID_ADDRESS
หากที่อยู่ปลายทางไม่สามารถอนุมานจากรหัสโหนดได้
other
ข้อผิดพลาดของเลเยอร์ Inet ที่สร้างขึ้นโดยการดำเนินการเชื่อมต่อ TCPEndPoint

เชื่อมต่อ

WEAVE_ERROR Connect(
  uint64_t peerNodeId,
  WeaveAuthMode authMode,
  const char *peerAddr,
  uint16_t peerAddrLen,
  uint8_t dnsOptions,
  uint16_t defaultPort
)

เชื่อมต่อกับโหนด Weave โดยใช้ตัวระบุโหนดและ/หรือที่อยู่เพียร์ของสตริง

หากระบุ PeerAddr อาจเป็นค่าใดก็ได้ต่อไปนี้


:

:

[]:

รายละเอียด
พารามิเตอร์
[in] peerNodeId
ตัวระบุโหนดของเพียร์ kNodeIdNotSpecified หรือ 0 หากไม่ทราบ
[in] authMode
โหมดการตรวจสอบสิทธิ์ที่ต้องการสำหรับการเพียร์ รองรับเฉพาะโหมด CASE, PASE และโหมดไม่ตรวจสอบสิทธิ์
[in] peerAddr
ที่อยู่หรือชื่อโฮสต์ของเพียร์เป็นสตริง C ที่ไม่สิ้นสุดค่า NULL
[in] peerAddrLen
ความยาวของสตริง PeerAddr
[in] dnsOptions
ค่าจำนวนเต็มที่ควบคุมประสิทธิภาพความละเอียดของชื่อโฮสต์ ค่าควรเป็น "หรือ" ของค่าอย่างน้อย 1 รายการจากการแจกแจง #::nl::Inet::DNSOptions
[in] defaultPort
พอร์ตเริ่มต้น (ไม่บังคับ) ที่จะใช้ในการเชื่อมต่อหากไม่ได้ระบุไว้ในสตริง peerAddr
แสดงผลค่า
WEAVE_NO_ERROR
เมื่อเริ่มการเชื่อมต่อกับเพียร์ได้สำเร็จ
WEAVE_ERROR_INCORRECT_STATE
หากสถานะ WeaveConnection ไม่ถูกต้อง
WEAVE_ERROR_UNSUPPORTED_AUTH_MODE
ระบบไม่รองรับโหมดการตรวจสอบสิทธิ์ที่ขอ
WEAVE_ERROR_INVALID_ADDRESS
หากที่อยู่ปลายทางไม่สามารถอนุมานจากรหัสโหนดได้
other
ข้อผิดพลาดของเลเยอร์ Inet ที่สร้างขึ้นโดยการดำเนินการเชื่อมต่อ TCPEndPoint

เชื่อมต่อ

WEAVE_ERROR Connect(
  uint64_t peerNodeId,
  WeaveAuthMode authMode,
  HostPortList hostPortList,
  InterfaceId intf
)

เชื่อมต่อกับโหนด Weave โดยใช้ตัวระบุโหนดและ/หรือรายการชื่อโฮสต์และพอร์ต

รายละเอียด
พารามิเตอร์
[in] peerNodeId
ตัวระบุโหนดของเพียร์
[in] authMode
โหมดการตรวจสอบสิทธิ์ที่ใช้สำหรับการเชื่อมต่อ
[in] hostPortList
รายการชื่อโฮสต์และพอร์ต
[in] intf
อินเทอร์เฟซที่ไม่บังคับซึ่งจะใช้เชื่อมต่อกับโหนดเพียร์จะมีค่าเริ่มต้นเป็น INET_NULL_INTERFACEID
แสดงผลค่า
WEAVE_NO_ERROR
เมื่อเริ่มการเชื่อมต่อกับเพียร์ได้สำเร็จ
WEAVE_ERROR_INCORRECT_STATE
หากสถานะ WeaveConnection ไม่ถูกต้อง
WEAVE_ERROR_UNSUPPORTED_AUTH_MODE
ระบบไม่รองรับโหมดการตรวจสอบสิทธิ์ที่ขอ
WEAVE_ERROR_INVALID_ADDRESS
หากที่อยู่ปลายทางไม่สามารถอนุมานจากรหัสโหนดได้
other
ข้อผิดพลาดของเลเยอร์ Inet ที่สร้างขึ้นโดยการดำเนินการเชื่อมต่อ TCPEndPoint

เชื่อมต่อ

WEAVE_ERROR Connect(
  uint64_t peerNodeId,
  WeaveAuthMode authMode,
  HostPortList hostPortList,
  uint8_t dnsOptions,
  InterfaceId intf
)

เชื่อมต่อกับโหนด Weave โดยใช้ตัวระบุโหนดและ/หรือรายการชื่อโฮสต์และพอร์ต

รายละเอียด
พารามิเตอร์
[in] peerNodeId
ตัวระบุโหนดของเพียร์
[in] authMode
โหมดการตรวจสอบสิทธิ์ที่ใช้สำหรับการเชื่อมต่อ
[in] hostPortList
รายการชื่อโฮสต์และพอร์ต
[in] dnsOptions
ค่าจำนวนเต็มที่ควบคุมประสิทธิภาพความละเอียดของชื่อโฮสต์ ค่าควรเป็น "หรือ" ของค่าอย่างน้อย 1 รายการจากการแจกแจง #::nl::Inet::DNSOptions
[in] intf
อินเทอร์เฟซที่ไม่บังคับซึ่งจะใช้เชื่อมต่อกับโหนดเพียร์จะมีค่าเริ่มต้นเป็น INET_NULL_INTERFACEID
แสดงผลค่า
WEAVE_NO_ERROR
เมื่อเริ่มการเชื่อมต่อกับเพียร์ได้สำเร็จ
WEAVE_ERROR_INCORRECT_STATE
หากสถานะ WeaveConnection ไม่ถูกต้อง
WEAVE_ERROR_UNSUPPORTED_AUTH_MODE
ระบบไม่รองรับโหมดการตรวจสอบสิทธิ์ที่ขอ
WEAVE_ERROR_INVALID_ADDRESS
หากที่อยู่ปลายทางไม่สามารถอนุมานจากรหัสโหนดได้
other
ข้อผิดพลาดของเลเยอร์ Inet ที่สร้างขึ้นโดยการดำเนินการเชื่อมต่อ TCPEndPoint

DisableKeepAlive

WEAVE_ERROR DisableKeepAlive(
  void
)

WeaveConnection::disableKeepAlive

ปิดใช้การตรวจสอบ Keepalive ของ TCP ในการเชื่อมต่อ TCP ที่สำคัญ

หมายเหตุ: เมธอดนี้สามารถเรียกได้บนการเชื่อมต่อ Weave ที่สนับสนุนโดยการเชื่อมต่อ TCP เท่านั้น ระบบจะเรียกใช้เมธอดนี้ได้ก็ต่อเมื่อการเชื่อมต่ออยู่ในสถานะที่อนุญาตให้ส่งเท่านั้น

วิธีการนี้จะไม่มีผลหากไม่ได้เปิดใช้การรักษาการเชื่อมต่อในการเชื่อมต่อ

รายละเอียด
แสดงผลค่า
WEAVE_NO_ERROR
เมื่อปิดใช้การตรวจสอบ Keepalive ของ TCP ในการเชื่อมต่อสำเร็จ
WEAVE_ERROR_NOT_IMPLEMENTED
หากมีการเรียกฟังก์ชันนี้สำหรับปลายทางที่เข้ากันไม่ได้ (เช่น BLE) ในเลเยอร์เครือข่าย
WEAVE_ERROR_INCORRECT_STATE
หากออบเจ็กต์ WeaveConnection ไม่ได้อยู่ในสถานะที่ถูกต้องสำหรับการส่งข้อความ
other
ข้อผิดพลาดของเลเยอร์ Inet ที่เกี่ยวข้องกับปลายทาง TCP เปิดใช้การดำเนินการ Keepalive

DisableReceive

void DisableReceive(
  void
)

ปิดใช้การรับผ่าน WeaveConnection นี้

แอปพลิเคชันจะใช้เมธอดนี้เพื่อแสดงว่าไม่พร้อมที่จะรับข้อมูลใดๆ ที่มาถึงผ่านการเชื่อมต่อ TCP ในการเปิดใช้งานการรับอีกครั้ง แอปพลิเคชันจะต้องเรียก EnableReceive() เพื่ออนุญาตให้ WeaveConnection ส่งต่อข้อมูลที่ได้รับโดยเรียกใช้โค้ดเรียกกลับที่เหมาะสม

โปรดดูข้อมูลเพิ่มเติมที่
EnableReceive()

EnableKeepAlive

WEAVE_ERROR EnableKeepAlive(
  uint16_t interval,
  uint16_t timeoutCount
)

WeaveConnection::EnableKeepAlive

เปิดใช้การตรวจสอบ Keepalive ของ TCP ในการเชื่อมต่อ TCP ที่สำคัญ

หมายเหตุ: เมธอดนี้สามารถเรียกได้บนการเชื่อมต่อ Weave ที่สนับสนุนโดยการเชื่อมต่อ TCP เท่านั้น - จะเรียกเมธอดนี้ได้ก็ต่อเมื่อการเชื่อมต่ออยู่ในสถานะที่อนุญาตให้ส่งเท่านั้น

รายละเอียด
พารามิเตอร์
[in] interval
ช่วงเวลา (เป็นวินาที) ระหว่างการตรวจสอบ Keepalive ค่านี้จะควบคุมเวลาระหว่างที่ส่งแพ็กเก็ตข้อมูลล่าสุดกับการส่งการตรวจสอบ Keepalive ครั้งแรกด้วย
[in] timeoutCount
จำนวนสูงสุดของการตรวจสอบที่ยังไม่ได้รับทราบก่อนที่จะถือว่าการเชื่อมต่อล้มเหลว

- คุณสามารถเรียกเมธอดนี้หลายครั้งเพื่อปรับช่วงเวลา Keepalive หรือการนับระยะหมดเวลา

รายละเอียด
แสดงผลค่า
WEAVE_NO_ERROR
จากการเปิดใช้การตรวจสอบ Keepalive ของ TCP ในการเชื่อมต่อ
WEAVE_ERROR_NOT_IMPLEMENTED
หากมีการเรียกฟังก์ชันนี้สำหรับปลายทางที่เข้ากันไม่ได้ (เช่น BLE) ในเลเยอร์เครือข่าย
WEAVE_ERROR_INCORRECT_STATE
หากออบเจ็กต์ WeaveConnection ไม่ได้อยู่ในสถานะที่ถูกต้องสำหรับการส่งข้อความ
other
ข้อผิดพลาดของเลเยอร์ Inet ที่เกี่ยวข้องกับปลายทาง TCP เปิดใช้การดำเนินการ Keepalive

EnableReceive

void EnableReceive(
  void
)

เปิดใช้การรับผ่าน WeaveConnection นี้

แอปพลิเคชันใช้เมธอดนี้เพื่อบอกให้ออบเจ็กต์ WeaveConnection ทราบว่าพร้อมที่จะรับข้อมูลใดๆ ที่มาถึงผ่านการเชื่อมต่อ TCP

ดูเพิ่มเติม:
DisableReceive()

GetPeerAddressInfo

WEAVE_ERROR GetPeerAddressInfo(
  IPPacketInfo & addrInfo
)

รับข้อมูลที่อยู่ IP ของแอปเทียบเท่า

รายละเอียด
พารามิเตอร์
[out] addrInfo
การอ้างอิงไปยังออบเจ็กต์ IPPacketInfo
แสดงผลค่า
WEAVE_NO_ERROR
ความสำเร็จ
WEAVE_ERROR_NOT_IMPLEMENTED
หากมีการเรียกใช้ฟังก์ชันนี้สำหรับปลายทางที่เข้ากันไม่ได้ (เช่น BLE) ในเลเยอร์เครือข่าย

GetPeerDescription

void GetPeerDescription(
  char *buf,
  size_t bufSize
) const 

สร้างสตริงที่อธิบายโหนดเพียร์ที่เชื่อมโยงกับการเชื่อมต่อ

รายละเอียด
พารามิเตอร์
[in] buf
ตัวชี้ไปยังบัฟเฟอร์ที่ควรเขียนสตริง บัฟเฟอร์ที่ให้ไว้ควรมีขนาดใหญ่อย่างน้อยเท่ากับ kGetPeerDescription_MaxLength หากบัฟเฟอร์ที่เล็กกว่านั้น สตริงจะถูกตัดให้พอดี ผลลัพธ์จะมีอักขระสิ้นสุดค่าว่างในทุกกรณี
[in] bufSize
ขนาดของบัฟเฟอร์ที่ชี้ที่ buf

GetTCPEndPoint

TCPEndPoint * GetTCPEndPoint(
  void
) const 

IsIncoming

bool IsIncoming(
  void
) const 

LogId

uint16_t LogId(
  void
) const 

เผยแพร่

void Release(
  void
)

ลดจำนวนการอ้างอิงบนออบเจ็กต์ WeaveConnection

เมธอด Release() จะลดจำนวนข้อมูลอ้างอิงที่เชื่อมโยงกับออบเจ็กต์ WeaveConnection หากทำให้จำนวนการอ้างอิงถึง 0 ระบบจะปิดการเชื่อมต่อและปล่อยออบเจ็กต์การเชื่อมต่อ ในกรณีนี้ แอปพลิเคชันจะต้องไม่มีการโต้ตอบกับอ็อบเจกต์นั้นอีกต่อไป

ResetUserTimeout

WEAVE_ERROR ResetUserTimeout(
  void
)

WeaveConnection::resetUserTimeout

รีเซ็ตตัวเลือกซ็อกเก็ตการหมดเวลาของผู้ใช้ TCP เป็นค่าเริ่มต้นของระบบ

หมายเหตุ: เมธอดนี้สามารถเรียกได้บนการเชื่อมต่อ Weave ที่สนับสนุนโดยการเชื่อมต่อ TCP เท่านั้น - จะเรียกเมธอดนี้ได้ก็ต่อเมื่อการเชื่อมต่ออยู่ในสถานะที่อนุญาตให้ส่งเท่านั้น

- วิธีนี้จะไม่มีผลใดๆ หากไม่มีการตั้งค่าระยะหมดเวลาของผู้ใช้ในการเชื่อมต่อ

รายละเอียด
แสดงผลค่า
WEAVE_NO_ERROR
เมื่อรีเซ็ตระยะหมดเวลาของผู้ใช้ TCP สำเร็จในการเชื่อมต่อ
WEAVE_ERROR_NOT_IMPLEMENTED
หากมีการเรียกฟังก์ชันนี้สำหรับปลายทางที่เข้ากันไม่ได้ (เช่น BLE) ในเลเยอร์เครือข่าย
WEAVE_ERROR_INCORRECT_STATE
หากออบเจ็กต์ WeaveConnection ไม่ได้อยู่ในสถานะที่ถูกต้องสำหรับการส่งข้อความ
other
ข้อผิดพลาดของเลเยอร์ Inet ที่เกี่ยวข้องกับการรีเซ็ตปลายทาง TCP ของการหมดเวลาของผู้ใช้ TCP

SendMessage

WEAVE_ERROR SendMessage(
  WeaveMessageInfo *msgInfo,
  PacketBuffer *msgBuf
)

ส่งข้อความ Weave ผ่านการเชื่อมต่อที่มีอยู่แล้ว

รายละเอียด
พารามิเตอร์
[in] msgInfo
ตัวชี้ไปยังออบเจ็กต์ WeaveMessageInfo
[in] msgBuf
ตัวชี้ไปยังออบเจ็กต์ PacketBuffer ที่ถือแพ็กเก็ตที่จะส่ง
แสดงผลค่า
WEAVE_NO_ERROR
เมื่อส่งข้อความไปยังเลเยอร์เครือข่ายสำเร็จ
WEAVE_ERROR_INCORRECT_STATE
หากออบเจ็กต์ WeaveConnection ไม่ได้อยู่ในสถานะที่ถูกต้องสำหรับการส่งข้อความ
WEAVE_ERROR_INVALID_DESTINATION_NODE_ID
หากไม่ได้ระบุตัวระบุโหนดปลายทาง
WEAVE_ERROR_SENDING_BLOCKED
หากข้อความยาวเกินกว่าที่จะส่ง
other
ข้อผิดพลาดของเลเยอร์ Inet ที่เกี่ยวข้องกับการดำเนินการส่งปลายทางที่เจาะจง

SendTunneledMessage

WEAVE_ERROR SendTunneledMessage(
  WeaveMessageInfo *msgInfo,
  PacketBuffer *msgBuf
)

ฟังก์ชันสำหรับส่งแพ็กเก็ต Tunneled ผ่านการเชื่อมต่อ Weave

ส่งข้อความ Weave ที่มีอุโมงค์ข้อมูลผ่านการเชื่อมต่อที่มีอยู่แล้ว

รายละเอียด
พารามิเตอร์
[in] msgInfo
ตัวชี้ไปยังออบเจ็กต์ WeaveMessageInfo
[in] msgBuf
ตัวชี้ไปยังออบเจ็กต์ PacketBuffer ที่ถือแพ็กเก็ตที่จะส่ง
แสดงผลค่า
WEAVE_NO_ERROR
เมื่อส่งข้อความไปยังเลเยอร์เครือข่ายสำเร็จ
WEAVE_ERROR_INCORRECT_STATE
หากออบเจ็กต์ WeaveConnection ไม่ได้อยู่ในสถานะที่ถูกต้องสำหรับการส่งข้อความ
WEAVE_ERROR_INVALID_DESTINATION_NODE_ID
หากไม่ได้ระบุตัวระบุโหนดปลายทาง
WEAVE_ERROR_SENDING_BLOCKED
หากข้อความยาวเกินกว่าที่จะส่ง
other
ข้อผิดพลาดของเลเยอร์ Inet ที่เกี่ยวข้องกับการดำเนินการส่งปลายทางที่เจาะจง

SetConnectTimeout

void SetConnectTimeout(
  const uint32_t connTimeoutMsecs
)

ตั้งค่าระยะหมดเวลาเพื่อให้ Connect ดำเนินการสำเร็จหรือแสดงผลข้อผิดพลาด

รายละเอียด
พารามิเตอร์
[in] connTimeoutMsecs

SetIdleTimeout

WEAVE_ERROR SetIdleTimeout(
  uint32_t timeoutMS
)

ตั้งค่าระยะหมดเวลาเนื่องจากไม่มีการใช้งานในการเชื่อมต่อชั้นเครือข่ายที่สำคัญ

รายละเอียด
พารามิเตอร์
[in] timeoutMS
ระยะหมดเวลาเป็นมิลลิวินาที
แสดงผลค่า
WEAVE_NO_ERROR
เกี่ยวกับการตั้งค่าระยะหมดเวลาเนื่องจากไม่มีการใช้งานในการเชื่อมต่อที่สำเร็จ
WEAVE_ERROR_INCORRECT_STATE
หากออบเจ็กต์ WeaveConnection ไม่ได้อยู่ในสถานะที่ถูกต้องสำหรับรับข้อความ

SetIncoming

void SetIncoming(
  bool val
)

SetUserTimeout

WEAVE_ERROR SetUserTimeout(
  uint32_t userTimeoutMillis
)

WeaveConnection::SetUserTimeout

ตั้งค่าตัวเลือกซ็อกเก็ตการหมดเวลาของผู้ใช้ TCP

เมื่อค่ามากกว่า 0 จะเป็นการระบุระยะเวลาสูงสุดเป็นมิลลิวินาทีที่ข้อมูลที่ส่งอาจยังไม่ทราบก่อนที่ TCP จะบังคับปิดการเชื่อมต่อที่เกี่ยวข้อง หากระบุค่าตัวเลือกเป็น 0 TCP จะใช้ค่าเริ่มต้นของระบบ ดูรายละเอียดเพิ่มเติมได้ที่ RFC 5482

รายละเอียด
พารามิเตอร์
[in] userTimeoutMillis
ค่าระยะหมดเวลาของผู้ใช้ Tcp เป็นมิลลิวินาที

หมายเหตุ: เมธอดนี้สามารถเรียกได้บนการเชื่อมต่อ Weave ที่สนับสนุนโดยการเชื่อมต่อ TCP เท่านั้น - จะเรียกเมธอดนี้ได้ก็ต่อเมื่อการเชื่อมต่ออยู่ในสถานะที่อนุญาตให้ส่งเท่านั้น

- เมธอดนี้สามารถถูกเรียกได้หลายครั้งเพื่อปรับระยะหมดเวลาของผู้ใช้ TCP

รายละเอียด
แสดงผลค่า
WEAVE_NO_ERROR
เกี่ยวกับการตั้งค่าระยะหมดเวลาของผู้ใช้ TCP ที่ประสบความสำเร็จในการเชื่อมต่อ
WEAVE_ERROR_NOT_IMPLEMENTED
หากมีการเรียกฟังก์ชันนี้สำหรับปลายทางที่เข้ากันไม่ได้ (เช่น BLE) ในเลเยอร์เครือข่าย
WEAVE_ERROR_INCORRECT_STATE
หากออบเจ็กต์ WeaveConnection ไม่ได้อยู่ในสถานะที่ถูกต้องสำหรับการส่งข้อความ
other
ข้อผิดพลาดของเลเยอร์ Inet ที่เกี่ยวข้องกับการตั้งค่าปลายทาง TCP ของการหมดเวลาของผู้ใช้ TCP

ปิดการทำงาน

WEAVE_ERROR Shutdown(
  void
)

ดำเนินการปิดใช้งานการส่งผ่าน TCP อย่างค่อยเป็นค่อยไปเพื่อให้แน่ใจว่าสแต็ก TCP ของเครื่องเพียร์จะส่งและรับข้อมูลขาออกทั้งหมดแล้ว

เมื่อใช้ TCP ส่วนใหญ่ (แต่ไม่ใช่ทั้งหมด) การได้รับการปิดการส่งจะทำให้โฮสต์ระยะไกลปิดฝั่งของการเชื่อมต่อด้วย ซึ่งส่งผลให้การเชื่อมต่อถูกปิด การเรียก Close() ในภายหลังจะเป็นการสิ้นสุด WeaveConnection

รายละเอียด
แสดงผลค่า
WEAVE_NO_ERROR
เมื่อปิดการเชื่อมต่อ tcp สำเร็จ
WEAVE_ERROR_NOT_IMPLEMENTED
หากมีการเรียกฟังก์ชันนี้สำหรับปลายทางที่เข้ากันไม่ได้ (เช่น BLE) ในเลเยอร์เครือข่าย
WEAVE_ERROR_INCORRECT_STATE
หากออบเจ็กต์ WeaveConnection ไม่ได้อยู่ในสถานะที่ถูกต้องก่อนเริ่มต้นการปิดการทำงาน
other
ข้อผิดพลาดของเลเยอร์ Inet ที่เกี่ยวข้องกับการดำเนินการปิดปลายทางที่เจาะจง
โปรดดู
Close() และ Abort()