nl:: Weave:: WeaveConnection
#include <src/lib/core/WeaveMessageLayer.h>
Định nghĩa về lớp Weave Connection.
Tóm tắt
Lớp này đại diện cho kết nối TCP hoặc BLE với một nút Weave khác.
Loại công khai |
|
---|---|
@58{
|
enum |
ConnectionClosedFunct)(WeaveConnection *con, WEAVE_ERROR conErr)
|
typedefvoid(*
Hàm này là lệnh gọi lại ứng dụng được gọi khi kết nối bị đóng. |
ConnectionCompleteFunct)(WeaveConnection *con, WEAVE_ERROR conErr)
|
typedefvoid(*
Hàm này là lệnh gọi lại ứng dụng được gọi khi quá trình thiết lập kết nối hoàn tất. |
MessageReceiveFunct)(WeaveConnection *con, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
typedefvoid(*
Hàm này là lệnh gọi lại ứng dụng được gọi khi nhận được thông báo qua kết nối Weave. |
NetworkType{
|
enum Loại mạng của đối tượng kết nối Weave. |
ReceiveErrorFunct)(WeaveConnection *con, WEAVE_ERROR err)
|
typedefvoid(*
Hàm này là lệnh gọi lại của ứng dụng được gọi khi gặp lỗi khi nhận được thông báo về Weave. |
State{
|
enum Trạng thái của đối tượng kết nối Weave. |
TunneledMsgReceiveFunct)(WeaveConnection *con, const WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
typedefvoid(*
Hàm này là lệnh gọi lại của ứng dụng được gọi khi nhận được Gói dữ liệu được tạo đường hầm qua kết nối Weave. |
Các thuộc tính công khai |
|
---|---|
AppState
|
void *
Con trỏ trỏ đến đối tượng trạng thái dành riêng cho ứng dụng.
|
AuthMode
|
WeaveAuthMode
[CHỈ ĐỌC] Chế độ xác thực dùng để thiết lập khoá mã hoá mặc định cho kết nối.
|
DefaultEncryptionType
|
uint8_t
Loại mã hoá mặc định cho thư.
|
DefaultKeyId
|
uint16_t
Khoá mã hoá mặc định để sử dụng khi gửi tin nhắn.
|
MessageLayer
|
[CHỈ ĐỌC] Đối tượng WeaveMessageLayer được liên kết.
|
NetworkType
|
uint8_t
[CHỈ ĐỌC] Loại mạng của điểm cuối được liên kết.
|
OnConnectionClosed
|
|
OnConnectionComplete
|
|
OnMessageReceived
|
|
OnReceiveError
|
|
OnTunneledMessageReceived
|
|
PeerAddr
|
IPAddress
[CHỈ ĐỌC] Địa chỉ IP của nút ngang hàng.
|
PeerNodeId
|
uint64_t
[CHỈ ĐỌC] Giá trị nhận dạng nút của ứng dụng ngang hàng.
|
PeerPort
|
uint16_t
[CHỈ ĐỌC] Số cổng của nút ngang hàng.
|
ReceiveEnabled
|
bool
[CHỈ ĐỌC] Đúng nếu tính năng nhận được bật, nếu không thì là false.
|
SendDestNodeId
|
bool
"True" nếu tất cả thông báo được gửi qua kết nối này đều phải có giá trị nhận dạng nút đích được mã hoá rõ ràng, nếu không thì là false.
|
SendSourceNodeId
|
bool
"True" nếu tất cả thông báo được gửi qua kết nối này đều phải có giá trị nhận dạng nút nguồn được mã hoá rõ ràng, nếu không thì phải có giá trị false.
|
State
|
uint8_t
[CHỈ ĐỌC] Trạng thái của đối tượng WeaveConnection.
|
Hàm công khai |
|
---|---|
Abort(void)
|
void
Thực hiện đóng WeaveConnection dựa trên TCP hoặc BLE một cách không thoả đáng, loại bỏ mọi dữ liệu có thể đang chuyển đến hoặc chuyển từ ứng dụng ngang hàng.
|
AddRef(void)
|
void
Đặt trước tệp tham chiếu đến đối tượng WeaveConnection.
|
Close(void)
|
Thực hiện thao tác đóng mở rộng không chặn WeaveConnection dựa trên TCP hoặc BLE, phân phối mọi dữ liệu đi còn lại trước khi thông báo lịch sự cho máy chủ từ xa rằng chúng ta đã đặt lại kết nối.
|
Close(bool suppressCloseLog)
|
Thực hiện thao tác đóng mở rộng không chặn WeaveConnection dựa trên TCP hoặc BLE, phân phối mọi dữ liệu đi còn lại trước khi thông báo lịch sự cho máy chủ từ xa rằng chúng ta đã đặt lại kết nối.
|
Connect(uint64_t peerNodeId)
|
Kết nối với một nút Weave bằng địa chỉ IP kết hợp từ giá trị nhận dạng nút đã chỉ định.
|
Connect(uint64_t peerNodeId, const IPAddress & peerAddr, uint16_t peerPort)
|
Kết nối với một nút Weave bằng cách sử dụng giá trị nhận dạng nút và/hoặc địa chỉ IP.
|
Connect(uint64_t peerNodeId, WeaveAuthMode authMode, const IPAddress & peerAddr, uint16_t peerPort, InterfaceId intf)
|
Kết nối với một nút Weave bằng cách sử dụng giá trị nhận dạng nút và/hoặc địa chỉ IP trên một giao diện cụ thể.
|
Connect(uint64_t peerNodeId, WeaveAuthMode authMode, const char *peerAddr, uint16_t defaultPort)
|
Kết nối với một nút Weave bằng giá trị nhận dạng nút và/hoặc tên máy chủ lưu trữ chuỗi.
|
Connect(uint64_t peerNodeId, WeaveAuthMode authMode, const char *peerAddr, uint16_t peerAddrLen, uint16_t defaultPort)
|
Kết nối với một nút Weave bằng giá trị nhận dạng nút và/hoặc địa chỉ chuỗi ngang hàng.
|
Connect(uint64_t peerNodeId, WeaveAuthMode authMode, const char *peerAddr, uint16_t peerAddrLen, uint8_t dnsOptions, uint16_t defaultPort)
|
Kết nối với một nút Weave bằng giá trị nhận dạng nút và/hoặc địa chỉ chuỗi ngang hàng.
|
Connect(uint64_t peerNodeId, WeaveAuthMode authMode, HostPortList hostPortList, InterfaceId intf)
|
Kết nối với một nút Weave bằng giá trị nhận dạng nút và/hoặc danh sách tên máy chủ và cổng.
|
Connect(uint64_t peerNodeId, WeaveAuthMode authMode, HostPortList hostPortList, uint8_t dnsOptions, InterfaceId intf)
|
Kết nối với một nút Weave bằng giá trị nhận dạng nút và/hoặc danh sách tên máy chủ và cổng.
|
DisableKeepAlive(void)
|
|
DisableReceive(void)
|
void
Tắt tính năng nhận qua WeaveConnection này.
|
EnableKeepAlive(uint16_t interval, uint16_t timeoutCount)
|
|
EnableReceive(void)
|
void
Cho phép nhận qua WeaveConnection này.
|
GetPeerAddressInfo(IPPacketInfo & addrInfo)
|
Lấy thông tin địa chỉ IP của ứng dụng ngang hàng.
|
GetPeerDescription(char *buf, size_t bufSize) const
|
void
Tạo một chuỗi mô tả nút ngang hàng liên kết với kết nối.
|
GetTCPEndPoint(void) const
|
TCPEndPoint *
|
IsIncoming(void) const
|
bool
|
LogId(void) const
|
uint16_t
|
Release(void)
|
void
Giảm số lượng tham chiếu trên đối tượng WeaveConnection.
|
ResetUserTimeout(void)
|
|
SendMessage(WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
Gửi thư Weave qua một kết nối đã thiết lập.
|
SendTunneledMessage(WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
Hàm gửi một gói có đường hầm qua kết nối Weave.
|
SetConnectTimeout(const uint32_t connTimeoutMsecs)
|
void
Đặt thời gian chờ để Kết nối thành công hoặc trả về lỗi.
|
SetIdleTimeout(uint32_t timeoutMS)
|
Đặt thời gian chờ ở trạng thái không hoạt động trên kết nối lớp mạng cơ bản.
|
SetIncoming(bool val)
|
void
|
SetUserTimeout(uint32_t userTimeoutMillis)
|
|
Shutdown(void)
|
Thực hiện quá trình tắt gửi TCP một cách linh hoạt, đảm bảo ngăn xếp TCP của mạng ngang hàng gửi và nhận tất cả dữ liệu đi.
|
Loại công khai
@58
@58
Thuộc tính | |
---|---|
kGetPeerDescription_MaxLength
|
Độ dài tối đa của chuỗi (bao gồm cả ký tự NUL) do GetPeerDescription() trả về. |
ConnectionClosedFunct
void(* ConnectionClosedFunct)(WeaveConnection *con, WEAVE_ERROR conErr)
Hàm này là lệnh gọi lại ứng dụng được gọi khi kết nối bị đóng.
Chi tiết | |||||
---|---|---|---|---|---|
Tham số |
|
ConnectionCompleteFunct
void(* ConnectionCompleteFunct)(WeaveConnection *con, WEAVE_ERROR conErr)
Hàm này là lệnh gọi lại ứng dụng được gọi khi quá trình thiết lập kết nối hoàn tất.
Chi tiết | |||||
---|---|---|---|---|---|
Tham số |
|
MessageReceiveFunct
void(* MessageReceiveFunct)(WeaveConnection *con, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
Hàm này là lệnh gọi lại ứng dụng được gọi khi nhận được thông báo qua kết nối Weave.
Chi tiết | |||||||
---|---|---|---|---|---|---|---|
Tham số |
|
NetworkType
NetworkType
Loại mạng của đối tượng kết nối Weave.
Thuộc tính | |
---|---|
kNetworkType_BLE
|
Loại mạng BLE. |
kNetworkType_IP
|
loại mạng TCP/IP. |
kNetworkType_Unassigned
|
Loại mạng chưa chỉ định. |
ReceiveErrorFunct
void(* ReceiveErrorFunct)(WeaveConnection *con, WEAVE_ERROR err)
Hàm này là lệnh gọi lại của ứng dụng được gọi khi gặp lỗi khi nhận được thông báo về Weave.
Chi tiết | |||||
---|---|---|---|---|---|
Tham số |
|
Tiểu bang
State
Trạng thái của đối tượng kết nối Weave.
Thuộc tính | |
---|---|
kState_Closed
|
Trạng thái khi kết nối bị đóng. |
kState_Connected
|
Trạng thái khi kết nối đã được thiết lập. |
kState_Connecting
|
Trạng thái khi thử kết nối. |
kState_EstablishingSession
|
Trạng thái khi một phiên bảo mật đang được thiết lập. |
kState_ReadyToConnect
|
Trạng thái sau khi khởi chạy kết nối Weave. |
kState_Resolving
|
Trạng thái khi đang thực hiện quá trình phân giải tên DNS. |
kState_SendShutdown
|
Trạng thái khi kết nối đang bị tắt. |
TunneledMsgReceiveFunct
void(* TunneledMsgReceiveFunct)(WeaveConnection *con, const WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
Hàm này là lệnh gọi lại của ứng dụng được gọi khi nhận được Gói dữ liệu được tạo đường hầm qua kết nối Weave.
Chi tiết | |||||||
---|---|---|---|---|---|---|---|
Tham số |
|
Các thuộc tính công khai
AppState
void * AppState
Con trỏ trỏ đến đối tượng trạng thái dành riêng cho ứng dụng.
AuthMode
WeaveAuthMode AuthMode
[CHỈ ĐỌC] Chế độ xác thực dùng để thiết lập khoá mã hoá mặc định cho kết nối.
DefaultEncryptionType
uint8_t DefaultEncryptionType
Loại mã hoá mặc định cho thư.
DefaultKeyId
uint16_t DefaultKeyId
Khoá mã hoá mặc định để sử dụng khi gửi tin nhắn.
NetworkType
uint8_t NetworkType
[CHỈ ĐỌC] Loại mạng của điểm cuối được liên kết.
OnConnectionClosed
ConnectionClosedFunct OnConnectionClosed
OnConnectionComplete
ConnectionCompleteFunct OnConnectionComplete
OnMessageReceived
MessageReceiveFunct OnMessageReceived
OnReceiveError
ReceiveErrorFunct OnReceiveError
OnTunneledMessageReceived
TunneledMsgReceiveFunct OnTunneledMessageReceived
PeerAddr
IPAddress PeerAddr
[CHỈ ĐỌC] Địa chỉ IP của nút ngang hàng.
PeerNodeId
uint64_t PeerNodeId
[CHỈ ĐỌC] Giá trị nhận dạng nút của ứng dụng ngang hàng.
PeerPort
uint16_t PeerPort
[CHỈ ĐỌC] Số cổng của nút ngang hàng.
ReceiveEnabled
bool ReceiveEnabled
[CHỈ ĐỌC] Đúng nếu tính năng nhận được bật, nếu không thì là false.
SendDestNodeId
bool SendDestNodeId
"True" nếu tất cả thông báo được gửi qua kết nối này đều phải có giá trị nhận dạng nút đích được mã hoá rõ ràng, nếu không thì là false.
SendSourceNodeId
bool SendSourceNodeId
"True" nếu tất cả thông báo được gửi qua kết nối này đều phải có giá trị nhận dạng nút nguồn được mã hoá rõ ràng, nếu không thì phải có giá trị false.
Hàm công khai
Hủy
void Abort( void )
Thực hiện đóng WeaveConnection dựa trên TCP hoặc BLE một cách không thoả đáng, loại bỏ mọi dữ liệu có thể đang chuyển đến hoặc chuyển từ ứng dụng ngang hàng.
Lệnh gọi abort() sẽ ngay lập tức chấm dứt kết nối cơ bản. Sau thời điểm này, bạn không thể sử dụng đối tượng WeaveConnection để giao tiếp thêm nữa.
Việc gọi abort() sẽ làm giảm số lượng tham chiếu được liên kết với đối tượng WeaveConnection, cho dù kết nối có đang mở/hoạt động tại thời điểm phương thức được gọi hay không. Nếu việc này khiến số lượng tham chiếu đạt đến 0, thì các tài nguyên liên kết với đối tượng kết nối sẽ được giải phóng. Khi điều này xảy ra, ứng dụng không được có thêm tương tác nào với đối tượng.
Xem thêm:Shutdown(), abort(), AddRef() và Release().
AddRef
void AddRef( void )
Đặt trước tệp tham chiếu đến đối tượng WeaveConnection.
Phương thức AddRef() làm tăng số lượng tham chiếu được liên kết với đối tượng WeaveConnection. Đối với mỗi lệnh gọi đến AddRef(), ứng dụng chịu trách nhiệm thực hiện lệnh gọi tương ứng đến Release(), Close() hoặc abort().
Đóng
WEAVE_ERROR Close( void )
Thực hiện thao tác đóng mở rộng không chặn WeaveConnection dựa trên TCP hoặc BLE, phân phối mọi dữ liệu đi còn lại trước khi thông báo lịch sự cho máy chủ từ xa rằng chúng ta đã đặt lại kết nối.
Phương thức này không đảm bảo chắc chắn rằng trình ngang hàng từ xa đã nhận được mọi thư gửi đi chưa được xác nhận ở cấp giao thức ứng dụng. Đối với cả TCP và BLE, ngăn xếp giao thức cơ bản sẽ cố gắng hết sức để phân phối mọi dữ liệu gửi đi đang chờ xử lý trước khi đặt lại kết nối. Đối với TCP, Shutdown() phải được sử dụng trước Close() nếu cần xác nhận biên nhận thông báo lớp truyền tải trước khi đóng kết nối. Kết nối BLE không có chế độ tương đương Shutdown().
Đối với các kết nối dựa trên BLE, Close() đóng WeaveConnection và trả về ngay lập tức nhưng có thể khiến đối tượng BLEEndPoint cơ bản ở lại cho đến khi tất cả dữ liệu đi đã được gửi đi. Đây là tác dụng phụ của việc triển khai giao thức truyền tải Weave qua BLE hiện có trong Weave BleLayer.
Sau khi gọi Close(), bạn không thể dùng đối tượng WeaveConnection để giao tiếp thêm nữa.
Việc gọi Close() sẽ làm giảm số lượng tham chiếu được liên kết với đối tượng WeaveConnection, cho dù kết nối có đang mở/hoạt động tại thời điểm phương thức được gọi hay không. Nếu việc này khiến số lượng tham chiếu đạt đến 0, thì các tài nguyên liên kết với đối tượng kết nối sẽ được giải phóng. Khi điều này xảy ra, ứng dụng không được có thêm tương tác nào với đối tượng.
Chi tiết | |
---|---|
Trả về |
WEAVE_NO_ERROR một cách vô điều kiện.
|
Shutdown(), abort(), AddRef() và Release().
Đóng
WEAVE_ERROR Close( bool suppressCloseLog )
Thực hiện thao tác đóng mở rộng không chặn WeaveConnection dựa trên TCP hoặc BLE, phân phối mọi dữ liệu đi còn lại trước khi thông báo lịch sự cho máy chủ từ xa rằng chúng ta đã đặt lại kết nối.
Phương thức này không đảm bảo chắc chắn rằng trình ngang hàng từ xa đã nhận được mọi thư gửi đi chưa được xác nhận ở cấp giao thức ứng dụng. Đối với cả TCP và BLE, ngăn xếp giao thức cơ bản sẽ cố gắng hết sức để phân phối mọi dữ liệu gửi đi đang chờ xử lý trước khi đặt lại kết nối. Đối với TCP, Shutdown() phải được sử dụng trước Close() nếu cần xác nhận biên nhận thông báo lớp truyền tải trước khi đóng kết nối. Kết nối BLE không có chế độ tương đương Shutdown().
Đối với các kết nối dựa trên BLE, Close() đóng WeaveConnection và trả về ngay lập tức nhưng có thể khiến đối tượng BLEEndPoint cơ bản ở lại cho đến khi tất cả dữ liệu đi đã được gửi đi. Đây là tác dụng phụ của việc triển khai giao thức truyền tải Weave qua BLE hiện có trong Weave BleLayer.
Sau khi gọi Close(), bạn không thể dùng đối tượng WeaveConnection để giao tiếp thêm nữa.
Việc gọi Close() sẽ làm giảm số lượng tham chiếu được liên kết với đối tượng WeaveConnection, cho dù kết nối có đang mở/hoạt động tại thời điểm phương thức được gọi hay không. Nếu việc này khiến số lượng tham chiếu đạt đến 0, thì các tài nguyên liên kết với đối tượng kết nối sẽ được giải phóng. Khi điều này xảy ra, ứng dụng không được có thêm tương tác nào với đối tượng.
Chi tiết | |||
---|---|---|---|
Tham số |
|
||
Trả về |
WEAVE_NO_ERROR một cách vô điều kiện.
|
Shutdown(), abort(), AddRef() và Release().
Kết nối
WEAVE_ERROR Connect( uint64_t peerNodeId )
Kết nối với một nút Weave bằng địa chỉ IP kết hợp từ giá trị nhận dạng nút đã chỉ định.
Chi tiết | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Tham số |
|
||||||||||
Giá trị trả về |
|
Kết nối
WEAVE_ERROR Connect( uint64_t peerNodeId, const IPAddress & peerAddr, uint16_t peerPort )
Kết nối với một nút Weave bằng cách sử dụng giá trị nhận dạng nút và/hoặc địa chỉ IP.
Chi tiết | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Tham số |
|
||||||||||
Giá trị trả về |
|
Kết nối
WEAVE_ERROR Connect( uint64_t peerNodeId, WeaveAuthMode authMode, const IPAddress & peerAddr, uint16_t peerPort, InterfaceId intf )
Kết nối với một nút Weave bằng cách sử dụng giá trị nhận dạng nút và/hoặc địa chỉ IP trên một giao diện cụ thể.
Chi tiết | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Tham số |
|
||||||||||
Giá trị trả về |
|
Kết nối
WEAVE_ERROR Connect( uint64_t peerNodeId, WeaveAuthMode authMode, const char *peerAddr, uint16_t defaultPort )
Kết nối với một nút Weave bằng giá trị nhận dạng nút và/hoặc tên máy chủ lưu trữ chuỗi.
Nếu được cung cấp, bạn có thể dùng một trong những chế độ sau:
: : [ ]:
Chi tiết | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Tham số |
|
||||||||||
Giá trị trả về |
|
Kết nối
WEAVE_ERROR Connect( uint64_t peerNodeId, WeaveAuthMode authMode, const char *peerAddr, uint16_t peerAddrLen, uint16_t defaultPort )
Kết nối với một nút Weave bằng giá trị nhận dạng nút và/hoặc địa chỉ chuỗi ngang hàng.
Nếu được cung cấp, bạn có thể dùng một trong những chế độ sau:
: : [ ]:
Chi tiết | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Tham số |
|
||||||||||
Giá trị trả về |
|
Kết nối
WEAVE_ERROR Connect( uint64_t peerNodeId, WeaveAuthMode authMode, const char *peerAddr, uint16_t peerAddrLen, uint8_t dnsOptions, uint16_t defaultPort )
Kết nối với một nút Weave bằng giá trị nhận dạng nút và/hoặc địa chỉ chuỗi ngang hàng.
Nếu được cung cấp, bạn có thể dùng một trong những chế độ sau:
: : [ ]:
Chi tiết | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Tham số |
|
||||||||||||
Giá trị trả về |
|
Kết nối
WEAVE_ERROR Connect( uint64_t peerNodeId, WeaveAuthMode authMode, HostPortList hostPortList, InterfaceId intf )
Kết nối với một nút Weave bằng giá trị nhận dạng nút và/hoặc danh sách tên máy chủ và cổng.
Chi tiết | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Tham số |
|
||||||||||
Giá trị trả về |
|
Kết nối
WEAVE_ERROR Connect( uint64_t peerNodeId, WeaveAuthMode authMode, HostPortList hostPortList, uint8_t dnsOptions, InterfaceId intf )
Kết nối với một nút Weave bằng giá trị nhận dạng nút và/hoặc danh sách tên máy chủ và cổng.
Chi tiết | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Tham số |
|
||||||||||
Giá trị trả về |
|
DisableKeepAlive
WEAVE_ERROR DisableKeepAlive( void )
WeaveConnection::DisableKeepAlive.
Tắt đầu dò duy trì hoạt động TCP trên kết nối TCP cơ bản.
Lưu ý: Phương thức này chỉ có thể được gọi trên kết nối Weave được kết nối TCP hỗ trợ. Phương thức này chỉ có thể được gọi khi kết nối ở trạng thái cho phép gửi.
Phương thức này không có tác dụng gì nếu bạn chưa bật tính năng giữ lại trên kết nối.
Chi tiết | |||||||||
---|---|---|---|---|---|---|---|---|---|
Giá trị trả về |
|
DisableReceive
void DisableReceive( void )
Tắt tính năng nhận qua WeaveConnection này.
Phương thức này được ứng dụng dùng để cho biết rằng ứng dụng chưa sẵn sàng nhận bất kỳ dữ liệu nào được nhận qua kết nối TCP. Để bật lại tính năng nhận, ứng dụng cần gọi EnableReceive() để cho phép WeaveConnection chuyển mọi dữ liệu đã nhận bằng cách gọi lệnh gọi lại thích hợp.
Xem thêm:EnableReceive()
EnableKeepAlive
WEAVE_ERROR EnableKeepAlive( uint16_t interval, uint16_t timeoutCount )
WeaveConnection::EnableKeepAlive.
Bật đầu dò duy trì hoạt động TCP trên kết nối TCP cơ bản.
Lưu ý: – Bạn chỉ có thể gọi phương thức này trên kết nối Weave được kết nối TCP hỗ trợ. – Phương thức này chỉ có thể được gọi khi kết nối ở trạng thái cho phép gửi.
Chi tiết | |||||
---|---|---|---|---|---|
Tham số |
|
– Phương thức này có thể được gọi nhiều lần để điều chỉnh khoảng thời gian duy trì hoạt động hoặc số lượng thời gian chờ.
Chi tiết | |||||||||
---|---|---|---|---|---|---|---|---|---|
Giá trị trả về |
|
EnableReceive
void EnableReceive( void )
Cho phép nhận qua WeaveConnection này.
Phương thức này được ứng dụng sử dụng để cho đối tượng WeaveConnection biết rằng ứng dụng đã sẵn sàng nhận mọi dữ liệu đến qua kết nối TCP.
Xem thêm:DisableReceive()
GetPeerAddressInfo
WEAVE_ERROR GetPeerAddressInfo( IPPacketInfo & addrInfo )
Lấy thông tin địa chỉ IP của ứng dụng ngang hàng.
Chi tiết | |||||
---|---|---|---|---|---|
Tham số |
|
||||
Giá trị trả về |
|
GetPeerDescription
void GetPeerDescription( char *buf, size_t bufSize ) const
Tạo một chuỗi mô tả nút ngang hàng liên kết với kết nối.
Chi tiết | |||||
---|---|---|---|---|---|
Tham số |
|
GetTCPEndPoint
TCPEndPoint * GetTCPEndPoint( void ) const
IsIncoming
bool IsIncoming( void ) const
LogId
uint16_t LogId( void ) const
Bản phát hành
void Release( void )
Giảm số lượng tham chiếu trên đối tượng WeaveConnection.
Phương thức Release() giảm số lượng tham chiếu được liên kết với đối tượng WeaveConnection. Nếu việc này dẫn đến số lượng tham chiếu đạt 0 thì tức là kết nối bị đóng và đối tượng kết nối được giải phóng. Khi điều này xảy ra, ứng dụng không được có thêm tương tác nào với đối tượng.
ResetUserTimeout
WEAVE_ERROR ResetUserTimeout( void )
WeaveConnection::ResetUserTimeout.
Đặt lại tuỳ chọn cổng thời gian chờ của người dùng TCP về chế độ mặc định của hệ thống.
Lưu ý: – Bạn chỉ có thể gọi phương thức này trên kết nối Weave được kết nối TCP hỗ trợ. – Phương thức này chỉ có thể được gọi khi kết nối ở trạng thái cho phép gửi.
– Phương thức này không có tác dụng gì nếu thời gian chờ của người dùng chưa được đặt trên kết nối.
Chi tiết | |||||||||
---|---|---|---|---|---|---|---|---|---|
Giá trị trả về |
|
SendMessage
WEAVE_ERROR SendMessage( WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
Gửi thư Weave qua một kết nối đã thiết lập.
Chi tiết | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Tham số |
|
||||||||||
Giá trị trả về |
|
SendTunneledMessage
WEAVE_ERROR SendTunneledMessage( WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
Hàm gửi một gói có đường hầm qua kết nối Weave.
Gửi thông báo Weave theo đường hầm qua một kết nối đã thiết lập.
Chi tiết | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Tham số |
|
||||||||||
Giá trị trả về |
|
SetConnectTimeout
void SetConnectTimeout( const uint32_t connTimeoutMsecs )
Đặt thời gian chờ để Kết nối thành công hoặc trả về lỗi.
Chi tiết | |||
---|---|---|---|
Tham số |
|
SetIdleTimeout
WEAVE_ERROR SetIdleTimeout( uint32_t timeoutMS )
Đặt thời gian chờ ở trạng thái không hoạt động trên kết nối lớp mạng cơ bản.
Chi tiết | |||||
---|---|---|---|---|---|
Tham số |
|
||||
Giá trị trả về |
|
SetIncoming
void SetIncoming( bool val )
SetUserTimeout
WEAVE_ERROR SetUserTimeout( uint32_t userTimeoutMillis )
WeaveConnection::SetUserTimeout.
Đặt tuỳ chọn cổng thời gian chờ của người dùng TCP.
Khi giá trị lớn hơn 0, giá trị này chỉ định khoảng thời gian tối đa (tính bằng mili giây) mà dữ liệu được truyền có thể vẫn chưa được xác nhận trước khi TCP buộc phải đóng kết nối tương ứng. Nếu giá trị tuỳ chọn được chỉ định là 0, thì TCP sẽ sử dụng giá trị mặc định của hệ thống. Hãy xem RFC 5482 để biết thêm chi tiết.
Chi tiết | |||
---|---|---|---|
Tham số |
|
Lưu ý: – Bạn chỉ có thể gọi phương thức này trên kết nối Weave được kết nối TCP hỗ trợ. – Phương thức này chỉ có thể được gọi khi kết nối ở trạng thái cho phép gửi.
– Phương thức này có thể được gọi nhiều lần để điều chỉnh thời gian chờ của người dùng TCP.
Chi tiết | |||||||||
---|---|---|---|---|---|---|---|---|---|
Giá trị trả về |
|
Tắt
WEAVE_ERROR Shutdown( void )
Thực hiện quá trình tắt gửi TCP một cách linh hoạt, đảm bảo ngăn xếp TCP của mạng ngang hàng gửi và nhận tất cả dữ liệu đi.
Với hầu hết (nhưng không phải tất cả) cách triển khai TCP, việc nhận được trạng thái tắt khi gửi cũng sẽ khiến máy chủ lưu trữ từ xa tắt phía kết nối, dẫn đến việc kết nối bị đóng. Lệnh gọi Close() tiếp theo sẽ chấm dứt WeaveConnection.
Chi tiết | |||||||||
---|---|---|---|---|---|---|---|---|---|
Giá trị trả về |
|
Close() và abort().