nl:: Weave:: Binding:: Configuration
#include <src/lib/core/WeaveBinding.h>
Menyediakan antarmuka gaya deklaratif untuk mengonfigurasi dan menyiapkan objek Binding.
Ringkasan
Saat mengonfigurasi Binding, aplikasi harus memanggil setidaknya satu metode dari setiap grup konfigurasi berikut: Target, Transport, dan Keamanan. Metode lain mungkin dipanggil sesuai kebutuhan untuk mengganti perilaku default.
Jika konfigurasi yang saling eksklusif dipanggil (misalnya, Transport_TCP() diikuti dengan Transport_UDP()), baris terakhir yang akan dipanggil akan menang.
Fungsi publik |
|
---|---|
ConfigureFromMessage(const WeaveMessageInfo *aMsgInfo, const Inet::IPPacketInfo *aPacketInfo)
|
Mengonfigurasi binding untuk memungkinkan komunikasi dengan pengirim pesan yang diterima.
|
DNS_Options(uint8_t dnsOptions)
|
Saat me-resolve nama host peer, gunakan opsi DNS yang ditentukan.
|
Exchange_ResponseTimeoutMsec(uint32_t aResponseTimeoutMsec)
|
Tetapkan waktu tunggu respons default untuk konteks pertukaran yang dibuat dari objek Binding ini.
|
GetError(void) const
|
Tampilkan error yang terjadi saat mengonfigurasi Binding.
|
PrepareBinding(void)
|
Menjadi proses penyiapan Binding untuk komunikasi dengan peer.
|
Security_AppGroupKey(uint32_t aAppGroupGlobalId, uint32_t aRootKeyId, bool aUseRotatingKey)
|
Saat berkomunikasi dengan peer, kirim dan terima pesan yang dienkripsi untuk Weave Application Group tertentu.
|
Security_AuthenticationMode(WeaveAuthMode aAuthMode)
|
Mengatur mode otentikasi yang diminta yang akan digunakan untuk mengautentikasi peer.
|
Security_CASESession(void)
|
Saat berkomunikasi dengan peer, kirim dan terima pesan yang dienkripsi menggunakan kunci sesi CASE yang dibuat dengan node peer.
|
Security_EncryptionType(uint8_t aEncType)
|
Saat berkomunikasi dengan pembanding, kirim dan terima pesan yang dienkripsi menggunakan jenis enkripsi pesan yang ditentukan.
|
Security_Key(uint32_t aKeyId)
|
Saat berkomunikasi dengan pembanding, kirim dan terima pesan yang dienkripsi menggunakan kunci yang ditentukan.
|
Security_None(void)
|
Saat berkomunikasi dengan peer, kirim dan terima yang tidak terenkripsi (yaitu
|
Security_PASESession(uint8_t aPasswordSource)
|
Saat berkomunikasi dengan rekan, kirim dan terima pesan yang dienkripsi menggunakan kunci sesi PASE yang dibuat dengan node peer.
|
Security_SharedCASESession(void)
|
Saat berkomunikasi dengan pembanding, kirim dan terima pesan yang dienkripsi menggunakan kunci sesi CASE bersama yang dibuat dengan router inti Nest.
|
Security_SharedCASESession(uint64_t aRouterNodeId)
|
Saat berkomunikasi dengan peer, kirim dan terima pesan yang dienkripsi menggunakan kunci sesi CASE bersama yang dibuat dengan node router yang ditentukan.
|
Security_TAKESession()
|
Saat berkomunikasi dengan rekan, kirim dan terima pesan yang dienkripsi menggunakan kunci sesi take yang dibuat dengan node peer.
|
TargetAddress_IP(nl::Inet::IPAddress aPeerAddress, uint16_t aPeerPort, InterfaceId aInterfaceId)
|
Saat berkomunikasi dengan peer, gunakan alamat IP, porta, dan antarmuka jaringan tertentu.
|
TargetAddress_IP(const char *aHostName, uint16_t aPeerPort, InterfaceId aInterfaceId)
|
Saat berkomunikasi dengan peer, gunakan nama host, port, dan antarmuka jaringan yang spesifik.
|
TargetAddress_IP(const char *aHostName, size_t aHostNameLen, uint16_t aPeerPort, InterfaceId aInterfaceId)
|
Saat berkomunikasi dengan peer, gunakan nama host, port, dan antarmuka jaringan yang spesifik.
|
TargetAddress_WeaveFabric(uint16_t aSubnetId)
|
Saat berkomunikasi dengan peer, gunakan alamat fabric Weave yang berasal dari ID node peer dan subnet yang ditentukan.
|
TargetAddress_WeaveService(void)
|
Saat berkomunikasi dengan rekan, gunakan alamat fabric layanan Weave yang berasal dari ID node rekan.
|
Target_NodeId(uint64_t aPeerNodeId)
|
Mengonfigurasi binding untuk berkomunikasi dengan ID node Weave tertentu.
|
Target_ServiceEndpoint(uint64_t aPeerNodeId)
|
Mengonfigurasi binding untuk berkomunikasi dengan endpoint layanan Weave tertentu.
|
Transport_DefaultWRMPConfig(const WRMPConfig & aWRMPConfig)
|
Tetapkan konfigurasi WRMP default untuk konteks pertukaran yang dibuat dari objek Binding ini.
|
Transport_ExistingConnection(WeaveConnection *apConnection)
|
Menggunakan koneksi Weave yang ada untuk berkomunikasi dengan peer.
|
Transport_TCP(void)
|
Menggunakan TCP untuk berkomunikasi dengan peer.
|
Transport_UDP(void)
|
Menggunakan UDP untuk berkomunikasi dengan rekan.
|
Transport_UDP_PathMTU(uint32_t aPathMTU)
|
Menetapkan MTU jalur yang diharapkan untuk paket UDP yang berpindah ke peer.
|
Transport_UDP_WRM(void)
|
Menggunakan protokol Weave Reliable Messaging saat berkomunikasi dengan peer.
|
Fungsi publik
ConfigureFromMessage
Configuration & ConfigureFromMessage( const WeaveMessageInfo *aMsgInfo, const Inet::IPPacketInfo *aPacketInfo )
Mengonfigurasi binding untuk memungkinkan komunikasi dengan pengirim pesan yang diterima.
Detail | |||||
---|---|---|---|---|---|
Parameter |
|
DNS_Options
Configuration & DNS_Options( uint8_t dnsOptions )
Saat me-resolve nama host peer, gunakan opsi DNS yang ditentukan.
Detail | |||
---|---|---|---|
Parameter |
|
||
Hasil |
Referensi ke objek binding.
|
Exchange_ResponseTimeoutMsec
Configuration & Exchange_ResponseTimeoutMsec( uint32_t aResponseTimeoutMsec )
Tetapkan waktu tunggu respons default untuk konteks pertukaran yang dibuat dari objek Binding ini.
Detail | |||
---|---|---|---|
Parameter |
|
||
Hasil |
Referensi ke objek binding.
|
GetError
WEAVE_ERROR GetError( void ) const
Tampilkan error yang terjadi saat mengonfigurasi Binding.
PrepareBinding
WEAVE_ERROR PrepareBinding( void )
Menjadi proses penyiapan Binding untuk komunikasi dengan peer.
Security_AppGroupKey
Configuration & Security_AppGroupKey( uint32_t aAppGroupGlobalId, uint32_t aRootKeyId, bool aUseRotatingKey )
Saat berkomunikasi dengan peer, kirim dan terima pesan yang dienkripsi untuk Weave Application Group tertentu.
Detail | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
||||||
Hasil |
Referensi ke objek Binding.
|
Security_AuthenticationMode
Configuration & Security_AuthenticationMode( WeaveAuthMode aAuthMode )
Mengatur mode otentikasi yang diminta yang akan digunakan untuk mengautentikasi peer.
Detail | |||
---|---|---|---|
Parameter |
|
||
Hasil |
Referensi ke objek Binding.
|
Security_CASESession
Configuration & Security_CASESession( void )
Saat berkomunikasi dengan peer, kirim dan terima pesan yang dienkripsi menggunakan kunci sesi CASE yang dibuat dengan node peer.
Jika sesi yang diperlukan tidak tersedia, sesi tersebut akan ditetapkan secara otomatis sebagai bagian dari penyiapan pengikatan.
Detail | |
---|---|
Hasil |
Referensi ke objek binding.
|
Security_EncryptionType
Configuration & Security_EncryptionType( uint8_t aEncType )
Saat berkomunikasi dengan pembanding, kirim dan terima pesan yang dienkripsi menggunakan jenis enkripsi pesan yang ditentukan.
Detail | |||
---|---|---|---|
Parameter |
|
||
Hasil |
Referensi ke objek Binding.
|
Security_Key
Configuration & Security_Key( uint32_t aKeyId )
Saat berkomunikasi dengan pembanding, kirim dan terima pesan yang dienkripsi menggunakan kunci yang ditentukan.
Detail | |||
---|---|---|---|
Parameter |
|
||
Hasil |
Referensi ke objek Binding.
|
Security_None
Configuration & Security_None( void )
Saat berkomunikasi dengan peer, kirim dan terima yang tidak terenkripsi (yaitu
tidak aman).
Detail | |
---|---|
Hasil |
Referensi ke objek binding.
|
Security_PASESession
Configuration & Security_PASESession( uint8_t aPasswordSource )
Saat berkomunikasi dengan rekan, kirim dan terima pesan yang dienkripsi menggunakan kunci sesi PASE yang dibuat dengan node peer.
Jika sesi yang diperlukan tidak tersedia, sesi tersebut akan ditetapkan secara otomatis sebagai bagian dari penyiapan pengikatan.
Detail | |||
---|---|---|---|
Parameter |
|
||
Hasil |
Referensi ke objek binding.
|
Security_SharedCASESession
Configuration & Security_SharedCASESession( void )
Saat berkomunikasi dengan pembanding, kirim dan terima pesan yang dienkripsi menggunakan kunci sesi CASE bersama yang dibuat dengan router inti Nest.
Jika sesi yang diperlukan tidak tersedia, sesi tersebut akan ditetapkan secara otomatis sebagai bagian dari penyiapan pengikatan.
Detail | |
---|---|
Hasil |
Referensi ke objek binding.
|
Security_SharedCASESession
Configuration & Security_SharedCASESession( uint64_t aRouterNodeId )
Saat berkomunikasi dengan peer, kirim dan terima pesan yang dienkripsi menggunakan kunci sesi CASE bersama yang dibuat dengan node router yang ditentukan.
Jika sesi yang diperlukan tidak tersedia, sesi tersebut akan ditetapkan secara otomatis sebagai bagian dari penyiapan pengikatan.
Detail | |||
---|---|---|---|
Parameter |
|
||
Hasil |
Referensi ke objek binding.
|
Security_TAKESession
Configuration & Security_TAKESession()
Saat berkomunikasi dengan rekan, kirim dan terima pesan yang dienkripsi menggunakan kunci sesi take yang dibuat dengan node peer.
Jika sesi yang diperlukan tidak tersedia, sesi tersebut akan ditetapkan secara otomatis sebagai bagian dari penyiapan pengikatan.
Detail | |
---|---|
Hasil |
Referensi ke objek binding.
|
TargetAddress_IP
Configuration & TargetAddress_IP( nl::Inet::IPAddress aPeerAddress, uint16_t aPeerPort, InterfaceId aInterfaceId )
Saat berkomunikasi dengan peer, gunakan alamat IP, porta, dan antarmuka jaringan tertentu.
Detail | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
||||||
Hasil |
Referensi ke objek binding.
|
TargetAddress_IP
Configuration & TargetAddress_IP( const char *aHostName, uint16_t aPeerPort, InterfaceId aInterfaceId )
Saat berkomunikasi dengan peer, gunakan nama host, port, dan antarmuka jaringan yang spesifik.
CATATAN: Pemanggil harus memastikan string nama host yang diberikan tetap valid hingga fase persiapan binding selesai.
Detail | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
||||||
Hasil |
Referensi ke objek binding.
|
TargetAddress_IP
Configuration & TargetAddress_IP( const char *aHostName, size_t aHostNameLen, uint16_t aPeerPort, InterfaceId aInterfaceId )
Saat berkomunikasi dengan peer, gunakan nama host, port, dan antarmuka jaringan yang spesifik.
CATATAN: Pemanggil harus memastikan string nama host yang diberikan tetap valid hingga fase persiapan binding selesai.
Detail | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||
Hasil |
Referensi ke objek binding.
|
TargetAddress_WeaveFabric
Configuration & TargetAddress_WeaveFabric( uint16_t aSubnetId )
Saat berkomunikasi dengan peer, gunakan alamat fabric Weave yang berasal dari ID node peer dan subnet yang ditentukan.
Detail | |||
---|---|---|---|
Parameter |
|
||
Hasil |
Referensi ke objek binding.
|
TargetAddress_WeaveService
Configuration & TargetAddress_WeaveService( void )
Saat berkomunikasi dengan rekan, gunakan alamat fabric layanan Weave yang berasal dari ID node rekan.
Detail | |
---|---|
Hasil |
Referensi ke objek binding.
|
Target_NodeId
Configuration & Target_NodeId( uint64_t aPeerNodeId )
Mengonfigurasi binding untuk berkomunikasi dengan ID node Weave tertentu.
Detail | |||
---|---|---|---|
Parameter |
|
||
Hasil |
Referensi ke objek binding.
|
Target_ServiceEndpoint
Configuration & Target_ServiceEndpoint( uint64_t aPeerNodeId )
Mengonfigurasi binding untuk berkomunikasi dengan endpoint layanan Weave tertentu.
Jika tidak dikonfigurasi dengan cara lain, alamat peer akan disetel ke alamat Weave fabric endpoint layanan.
Detail | |||
---|---|---|---|
Parameter |
|
||
Hasil |
Referensi ke objek binding.
|
Transport_DefaultWRMPConfig
Configuration & Transport_DefaultWRMPConfig( const WRMPConfig & aWRMPConfig )
Tetapkan konfigurasi WRMP default untuk konteks pertukaran yang dibuat dari objek Binding ini.
Detail | |||
---|---|---|---|
Parameter |
|
||
Hasil |
Referensi ke objek binding.
|
Transport_ExistingConnection
Configuration & Transport_ExistingConnection( WeaveConnection *apConnection )
Menggunakan koneksi Weave yang ada untuk berkomunikasi dengan peer.
CATATAN: Jumlah referensi pada objek koneksi bertambah saat persiapan binding berhasil. Dengan demikian, aplikasi bertanggung jawab untuk memastikan objek koneksi tetap aktif hingga waktu tersebut.
Detail | |||
---|---|---|---|
Parameter |
|
||
Hasil |
Referensi ke objek binding.
|
Transport_TCP
Configuration & Transport_TCP( void )
Menggunakan TCP untuk berkomunikasi dengan peer.
Detail | |
---|---|
Hasil |
Referensi ke objek binding.
|
Transport_UDP
Configuration & Transport_UDP( void )
Menggunakan UDP untuk berkomunikasi dengan rekan.
Detail | |
---|---|
Hasil |
Referensi ke objek binding.
|
Transport_UDP_PathMTU
Configuration & Transport_UDP_PathMTU( uint32_t aPathMTU )
Menetapkan MTU jalur yang diharapkan untuk paket UDP yang berpindah ke peer.
Untuk beberapa protokol Weave, hal ini akan digunakan untuk menyesuaikan ukuran payload pesan Weave secara dinamis.
Detail | |||
---|---|---|---|
Parameter |
|
||
Hasil |
Referensi ke objek binding.
|
Transport_UDP_WRM
Configuration & Transport_UDP_WRM( void )
Menggunakan protokol Weave Reliable Messaging saat berkomunikasi dengan peer.
Detail | |
---|---|
Hasil |
Referensi ke objek binding.
|