nl::Weave::Binding::Configuration

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

Cung cấp giao diện kiểu khai báo để định cấu hình và chuẩn bị đối tượng Binding.

Tóm tắt

Khi định cấu hình Liên kết, các ứng dụng phải gọi ít nhất một phương thức từ mỗi nhóm cấu hình sau: Mục tiêu, Truyền tải và Bảo mật. Các phương thức khác có thể được gọi khi cần để ghi đè hành vi mặc định.

Nếu các cấu hình loại trừ lẫn nhau được gọi (ví dụ: Transport_TCP() theo sau là Transport_UDP()), phương thức cuối cùng được gọi sẽ chiến thắng.

Hàm công khai

ConfigureFromMessage(const WeaveMessageInfo *aMsgInfo, const Inet::IPPacketInfo *aPacketInfo)
Định cấu hình liên kết để cho phép giao tiếp với người gửi thư đã nhận.
DNS_Options(uint8_t dnsOptions)
Khi phân giải tên máy chủ của ứng dụng ngang hàng, hãy sử dụng các tuỳ chọn DNS được chỉ định.
Exchange_ResponseTimeoutMsec(uint32_t aResponseTimeoutMsec)
Đặt thời gian chờ phản hồi mặc định cho ngữ cảnh trao đổi được tạo từ đối tượng Binding này.
GetError(void) const
Trả về mọi lỗi đã xảy ra trong khi định cấu hình Binding.
PrepareBinding(void)
Là quá trình chuẩn bị Ràng buộc để giao tiếp với ứng dụng ngang hàng.
Security_AppGroupKey(uint32_t aAppGroupGlobalId, uint32_t aRootKeyId, bool aUseRotatingKey)
Khi giao tiếp với ứng dụng ngang hàng, hãy gửi và nhận các thông báo được mã hoá cho một Nhóm ứng dụng Weave được chỉ định.
Security_AuthenticationMode(WeaveAuthMode aAuthMode)
Đặt chế độ xác thực được yêu cầu sẽ được sử dụng để xác thực kết nối ngang hàng.
Security_CASESession(void)
Khi giao tiếp với ứng dụng ngang hàng, hãy gửi và nhận thông báo được mã hoá bằng khoá phiên CASE được thiết lập với nút ngang hàng.
Security_EncryptionType(uint8_t aEncType)
Khi giao tiếp với ứng dụng ngang hàng, hãy gửi và nhận thư được mã hoá bằng loại mã hoá thư được chỉ định.
Security_Key(uint32_t aKeyId)
Khi giao tiếp với ứng dụng ngang hàng, hãy gửi và nhận tin nhắn được mã hoá bằng khoá đã chỉ định.
Security_None(void)
Khi giao tiếp với ứng dụng ngang hàng, gửi và nhận mã hoá (ví dụ:
Security_PASESession(uint8_t aPasswordSource)
Khi giao tiếp với ứng dụng ngang hàng, gửi và nhận thư được mã hoá bằng khoá phiên PASE được thiết lập với nút ngang hàng.
Security_SharedCASESession(void)
Khi giao tiếp với ứng dụng ngang hàng, hãy gửi và nhận tin nhắn được mã hoá bằng khoá phiên CASE dùng chung và được thiết lập trên bộ định tuyến lõi Nest.
Security_SharedCASESession(uint64_t aRouterNodeId)
Khi giao tiếp với ứng dụng ngang hàng, gửi và nhận thông báo được mã hoá bằng khoá phiên CASE dùng chung được thiết lập bằng nút bộ định tuyến đã chỉ định.
Security_TAKESession()
Khi giao tiếp với ứng dụng ngang hàng, gửi và nhận tin nhắn được mã hoá bằng khoá phiên Take được thiết lập với nút ngang hàng.
TargetAddress_IP(nl::Inet::IPAddress aPeerAddress, uint16_t aPeerPort, InterfaceId aInterfaceId)
Khi giao tiếp với ứng dụng ngang hàng, hãy sử dụng địa chỉ IP, cổng và giao diện mạng cụ thể.
TargetAddress_IP(const char *aHostName, uint16_t aPeerPort, InterfaceId aInterfaceId)
Khi giao tiếp với ứng dụng ngang hàng, hãy sử dụng tên máy chủ, cổng và giao diện mạng cụ thể.
TargetAddress_IP(const char *aHostName, size_t aHostNameLen, uint16_t aPeerPort, InterfaceId aInterfaceId)
Khi giao tiếp với ứng dụng ngang hàng, hãy sử dụng tên máy chủ, cổng và giao diện mạng cụ thể.
TargetAddress_WeaveFabric(uint16_t aSubnetId)
Khi giao tiếp với ứng dụng ngang hàng, hãy sử dụng địa chỉ Vải Weave lấy từ id nút của mạng ngang hàng và mạng con được chỉ định.
TargetAddress_WeaveService(void)
Khi giao tiếp với ứng dụng ngang hàng, hãy sử dụng địa chỉ vải dịch vụ Weave được lấy từ id nút của ứng dụng ngang hàng.
Target_NodeId(uint64_t aPeerNodeId)
Định cấu hình liên kết để giao tiếp với một mã nút Weave cụ thể.
Target_ServiceEndpoint(uint64_t aPeerNodeId)
Định cấu hình liên kết để giao tiếp với một điểm cuối cụ thể của dịch vụ Weave.
Transport_DefaultWRMPConfig(const WRMPConfig & aWRMPConfig)
Đặt cấu hình WRMP mặc định cho ngữ cảnh trao đổi được tạo qua đối tượng Binding này.
Transport_ExistingConnection(WeaveConnection *apConnection)
Sử dụng kết nối Weave hiện có để giao tiếp với ứng dụng ngang hàng.
Transport_TCP(void)
Sử dụng TCP để giao tiếp với ứng dụng ngang hàng.
Transport_UDP(void)
Sử dụng UDP để giao tiếp với ứng dụng ngang hàng.
Transport_UDP_PathMTU(uint32_t aPathMTU)
Thiết lập MTU đường dẫn dự kiến cho gói UDP truyền đến ứng dụng ngang hàng.
Transport_UDP_WRM(void)
Sử dụng giao thức Weave Trusted Messaging khi giao tiếp với ứng dụng ngang hàng.

Hàm công khai

ConfigureFromMessage

Configuration & ConfigureFromMessage(
  const WeaveMessageInfo *aMsgInfo,
  const Inet::IPPacketInfo *aPacketInfo
)

Định cấu hình liên kết để cho phép giao tiếp với người gửi thư đã nhận.

Chi tiết
Tham số
[in] aMsgInfo
Cấu trúc thông tin của tin nhắn được liên kết với tin nhắn đã nhận.
[in] aPacketInfo
Thông tin gói tin cho thư đã nhận.

DNS_Options

Configuration & DNS_Options(
  uint8_t dnsOptions
)

Khi phân giải tên máy chủ của ứng dụng ngang hàng, hãy sử dụng các tuỳ chọn DNS được chỉ định.

Chi tiết
Tham số
[in] dnsOptions
Một giá trị số nguyên kiểm soát cách thực hiện quá trình phân giải tên máy chủ lưu trữ. Giá trị phải là một trong các giá trị trong giá trị liệt kê #::nl::Inet::DNSOptions.
Trả về
Tham chiếu đến đối tượng liên kết.

Exchange_ResponseTimeoutMsec

Configuration & Exchange_ResponseTimeoutMsec(
  uint32_t aResponseTimeoutMsec
)

Đặt thời gian chờ phản hồi mặc định cho ngữ cảnh trao đổi được tạo từ đối tượng Binding này.

Chi tiết
Tham số
[in] aResponseTimeoutMsec
Thời gian phản hồi mặc định, tính bằng mili giây.
Trả về
Tham chiếu đến đối tượng liên kết.

GetError

WEAVE_ERROR GetError(
  void
) const 

Trả về mọi lỗi đã xảy ra trong khi định cấu hình Binding.

PrepareBinding

WEAVE_ERROR PrepareBinding(
  void
)

Là quá trình chuẩn bị Ràng buộc để giao tiếp với ứng dụng ngang hàng.

Security_AppGroupKey

Configuration & Security_AppGroupKey(
  uint32_t aAppGroupGlobalId,
  uint32_t aRootKeyId,
  bool aUseRotatingKey
)

Khi giao tiếp với ứng dụng ngang hàng, hãy gửi và nhận các thông báo được mã hoá cho một Nhóm ứng dụng Weave được chỉ định.

Chi tiết
Tham số
[in] aAppGroupGlobalId
Mã chung của nhóm ứng dụng mà thư cần được mã hoá.
[in] aRootKeyId
Khoá gốc dùng để lấy khoá mã hoá cho Nhóm ứng dụng Weave được chỉ định.
[in] aUseRotatingKey
Đúng nếu Nhóm ứng dụng Weave sử dụng các phím thông báo xoay.
Trả về
Tham chiếu đến đối tượng Binding.

Security_AuthenticationMode

Configuration & Security_AuthenticationMode(
  WeaveAuthMode aAuthMode
)

Đặt chế độ xác thực được yêu cầu sẽ được sử dụng để xác thực kết nối ngang hàng.

Chi tiết
Tham số
[in] aAuthMode
Chế độ xác thực được yêu cầu.
Trả về
Tham chiếu đến đối tượng Binding.

Security_CASESession

Configuration & Security_CASESession(
  void
)

Khi giao tiếp với ứng dụng ngang hàng, hãy gửi và nhận thông báo được mã hoá bằng khoá phiên CASE được thiết lập với nút ngang hàng.

Nếu không có sẵn phiên cần thiết, thì phiên này sẽ tự động được thiết lập trong quá trình chuẩn bị liên kết.

Chi tiết
Trả về
Tham chiếu đến đối tượng liên kết.

Security_EncryptionType

Configuration & Security_EncryptionType(
  uint8_t aEncType
)

Khi giao tiếp với ứng dụng ngang hàng, hãy gửi và nhận thư được mã hoá bằng loại mã hoá thư được chỉ định.

Chi tiết
Tham số
[in] aEncType
Loại mã hoá thư Weave.
Trả về
Tham chiếu đến đối tượng Binding.

Security_Key

Configuration & Security_Key(
  uint32_t aKeyId
)

Khi giao tiếp với ứng dụng ngang hàng, hãy gửi và nhận tin nhắn được mã hoá bằng khoá đã chỉ định.

Chi tiết
Tham số
[in] aKeyId
Mã của khoá mã hoá. Khoá được chỉ định phải phù hợp để mã hoá thư Weave.
Trả về
Tham chiếu đến đối tượng Binding.

Security_None

Configuration & Security_None(
  void
)

Khi giao tiếp với ứng dụng ngang hàng, gửi và nhận tệp không mã hoá (ví dụ:

không an toàn).

Chi tiết
Trả về
Tham chiếu đến đối tượng liên kết.

Security_PASESession

Configuration & Security_PASESession(
  uint8_t aPasswordSource
)

Khi giao tiếp với ứng dụng ngang hàng, gửi và nhận thư được mã hoá bằng khoá phiên PASE được thiết lập với nút ngang hàng.

Nếu không có sẵn phiên cần thiết, thì phiên này sẽ tự động được thiết lập trong quá trình chuẩn bị liên kết.

Chi tiết
Tham số
[in] aPasswordSource
Nguồn cho mật khẩu được sử dụng trong quá trình thiết lập phiên PASE.
Trả về
Tham chiếu đến đối tượng liên kết.

Security_SharedCASESession

Configuration & Security_SharedCASESession(
  void
)

Khi giao tiếp với ứng dụng ngang hàng, hãy gửi và nhận tin nhắn được mã hoá bằng khoá phiên CASE dùng chung được thiết lập trên bộ định tuyến lõi Nest.

Nếu không có sẵn phiên cần thiết, thì phiên này sẽ tự động được thiết lập trong quá trình chuẩn bị liên kết.

Chi tiết
Trả về
Tham chiếu đến đối tượng liên kết.

Security_SharedCASESession

Configuration & Security_SharedCASESession(
  uint64_t aRouterNodeId
)

Khi giao tiếp với ứng dụng ngang hàng, hãy gửi và nhận thông báo được mã hoá bằng khoá phiên CASE dùng chung được thiết lập bằng nút bộ định tuyến đã chỉ định.

Nếu không có sẵn phiên cần thiết, thì phiên này sẽ tự động được thiết lập trong quá trình chuẩn bị liên kết.

Chi tiết
Tham số
[in] aRouterNodeId
ID nút Weave của bộ định tuyến mà bạn nên thiết lập phiên CASE dùng chung.
Trả về
Tham chiếu đến đối tượng liên kết.

Security_TAKESession

Configuration & Security_TAKESession()

Khi giao tiếp với ứng dụng ngang hàng, gửi và nhận tin nhắn được mã hoá bằng khoá phiên GET được thiết lập với nút ngang hàng.

Nếu không có sẵn phiên cần thiết, thì phiên này sẽ tự động được thiết lập trong quá trình chuẩn bị liên kết.

Chi tiết
Trả về
Tham chiếu đến đối tượng liên kết.

TargetAddress_IP

Configuration & TargetAddress_IP(
  nl::Inet::IPAddress aPeerAddress,
  uint16_t aPeerPort,
  InterfaceId aInterfaceId
)

Khi giao tiếp với ứng dụng ngang hàng, hãy sử dụng địa chỉ IP, cổng và giao diện mạng cụ thể.

Chi tiết
Tham số
[in] aPeerAddress
Địa chỉ IP của ứng dụng ngang hàng
[in] aPeerPort
Cổng từ xa
[in] aInterfaceId
Mã nhận dạng giao diện mạng cục bộ dùng để liên lạc
Trả về
Tham chiếu đến đối tượng liên kết.

TargetAddress_IP

Configuration & TargetAddress_IP(
  const char *aHostName,
  uint16_t aPeerPort,
  InterfaceId aInterfaceId
)

Khi giao tiếp với ứng dụng ngang hàng, hãy sử dụng tên máy chủ, cổng và giao diện mạng cụ thể.

LƯU Ý: Phương thức gọi phải đảm bảo rằng chuỗi tên máy chủ lưu trữ đã cung cấp vẫn hợp lệ cho đến khi giai đoạn chuẩn bị liên kết hoàn tất.

Chi tiết
Tham số
[in] aHostName
Một chuỗi kết thúc bằng giá trị NULL (Rỗng) chứa tên máy chủ của ứng dụng ngang hàng.
[in] aPeerPort
Cổng từ xa để sử dụng khi giao tiếp với ứng dụng ngang hàng.
[in] aInterfaceId
Mã nhận dạng giao diện mạng cục bộ dùng để giao tiếp.
Trả về
Tham chiếu đến đối tượng liên kết.

TargetAddress_IP

Configuration & TargetAddress_IP(
  const char *aHostName,
  size_t aHostNameLen,
  uint16_t aPeerPort,
  InterfaceId aInterfaceId
)

Khi giao tiếp với ứng dụng ngang hàng, hãy sử dụng tên máy chủ, cổng và giao diện mạng cụ thể.

LƯU Ý: Phương thức gọi phải đảm bảo rằng chuỗi tên máy chủ lưu trữ đã cung cấp vẫn hợp lệ cho đến khi giai đoạn chuẩn bị liên kết hoàn tất.

Chi tiết
Tham số
[in] aHostName
Một chuỗi chứa tên máy chủ của ứng dụng ngang hàng. Chuỗi này không cần phải có kết thúc NULL.
[in] aHostNameLen
Độ dài của chuỗi do aHostName trỏ đến.
[in] aPeerPort
Cổng từ xa để sử dụng khi giao tiếp với ứng dụng ngang hàng.
[in] aInterfaceId
Mã nhận dạng giao diện mạng cục bộ dùng để giao tiếp.
Trả về
Tham chiếu đến đối tượng liên kết.

TargetAddress_WeaveFabric

Configuration & TargetAddress_WeaveFabric(
  uint16_t aSubnetId
)

Khi giao tiếp với ứng dụng ngang hàng, hãy sử dụng địa chỉ Vải Weave lấy từ id nút của mạng ngang hàng và mạng con được chỉ định.

Chi tiết
Tham số
[in] aSubnetId
Mã mạng con được dùng để tạo địa chỉ vải Weave của ứng dụng ngang hàng.
Trả về
Tham chiếu đến đối tượng liên kết.

TargetAddress_WeaveService

Configuration & TargetAddress_WeaveService(
  void
)

Khi giao tiếp với ứng dụng ngang hàng, hãy sử dụng địa chỉ kết cấu dịch vụ Weave được lấy từ mã nút của ứng dụng ngang hàng.

Chi tiết
Trả về
Tham chiếu đến đối tượng liên kết.

Target_NodeId

Configuration & Target_NodeId(
  uint64_t aPeerNodeId
)

Định cấu hình liên kết để giao tiếp với một mã nút Weave cụ thể.

Chi tiết
Tham số
[in] aPeerNodeId
Mã nút của nút ngang hàng.
Trả về
Tham chiếu đến đối tượng liên kết.

Target_ServiceEndpoint

Configuration & Target_ServiceEndpoint(
  uint64_t aPeerNodeId
)

Định cấu hình liên kết để giao tiếp với một điểm cuối cụ thể của dịch vụ Weave.

Nếu không được định cấu hình khác, địa chỉ ngang hàng sẽ được đặt thành địa chỉ vải Weave của điểm cuối dịch vụ.

Chi tiết
Tham số
[in] serviceEndpointId
Mã nút của điểm cuối dịch vụ sẽ diễn ra hoạt động giao tiếp.
Trả về
Tham chiếu đến đối tượng liên kết.

Transport_DefaultWRMPConfig

Configuration & Transport_DefaultWRMPConfig(
  const WRMPConfig & aWRMPConfig
)

Đặt cấu hình WRMP mặc định cho ngữ cảnh trao đổi được tạo qua đối tượng Binding này.

Chi tiết
Tham số
[in] aWRMPConfig
Thông tin tham chiếu đến cấu hình WRMP mặc định mới.
Trả về
Tham chiếu đến đối tượng liên kết.

Transport_ExistingConnection

Configuration & Transport_ExistingConnection(
  WeaveConnection *apConnection
)

Sử dụng kết nối Weave hiện có để giao tiếp với ứng dụng ngang hàng.

LƯU Ý: Số lượng tham chiếu trên đối tượng kết nối sẽ tăng lên khi chuẩn bị liên kết thành công. Do đó, ứng dụng chịu trách nhiệm đảm bảo đối tượng kết nối vẫn hoạt động cho đến thời điểm đó.

Chi tiết
Tham số
[in] con
Con trỏ trỏ đến kết nối Weave hiện có.
Trả về
Tham chiếu đến đối tượng liên kết.

Transport_TCP

Configuration & Transport_TCP(
  void
)

Sử dụng TCP để giao tiếp với ứng dụng ngang hàng.

Chi tiết
Trả về
Tham chiếu đến đối tượng liên kết.

Transport_UDP

Configuration & Transport_UDP(
  void
)

Sử dụng UDP để giao tiếp với ứng dụng ngang hàng.

Chi tiết
Trả về
Tham chiếu đến đối tượng liên kết.

Transport_UDP_PathMTU

Configuration & Transport_UDP_PathMTU(
  uint32_t aPathMTU
)

Thiết lập MTU đường dẫn dự kiến cho gói UDP truyền đến ứng dụng ngang hàng.

Đối với một số giao thức Weave, tham số này sẽ được dùng để điều chỉnh linh động kích thước tải trọng của thông báo Weave.

Chi tiết
Tham số
[in] aPathMTU
MTU đường dẫn dự kiến của các gói UDP được truyền đến ứng dụng ngang hàng.
Trả về
Tham chiếu đến đối tượng liên kết.

Transport_UDP_WRM

Configuration & Transport_UDP_WRM(
  void
)

Sử dụng giao thức Weave Trusted Messaging khi giao tiếp với ứng dụng ngang hàng.

Chi tiết
Trả về
Tham chiếu đến đối tượng liên kết.