nl:: Weave:: Binding:: Configuration
#include <src/lib/core/WeaveBinding.h>
Menyediakan antarmuka bergaya deklaratif untuk mengonfigurasi dan menyiapkan objek Binding.
Ringkasan
Saat mengonfigurasi Binding, aplikasi harus memanggil minimal satu metode dari setiap grup konfigurasi berikut: Target, Transport, dan Security. Metode lain dapat dipanggil sesuai kebutuhan untuk mengganti perilaku default.
Jika konfigurasi saling eksklusif dipanggil (mis., Transport_TCP() diikuti oleh Transport_UDP()), fungsi terakhir yang dipanggil akan menang.
Fungsi publik |
|
---|---|
ConfigureFromMessage(const WeaveMessageInfo *aMsgInfo, const Inet::IPPacketInfo *aPacketInfo)
|
Konfigurasi binding untuk memungkinkan komunikasi dengan pengirim pesan yang diterima.
|
DNS_Options(uint8_t dnsOptions)
|
Saat me-resolve nama host pembanding, 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
|
Menampilkan error yang terjadi saat mengonfigurasi Binding.
|
PrepareBinding(void)
|
Sedangkan proses menyiapkan 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 Grup Aplikasi Weave tertentu.
|
Security_AuthenticationMode(WeaveAuthMode aAuthMode)
|
Menyetel mode autentikasi yang diminta agar 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 peer, kirim dan terima pesan yang dienkripsi menggunakan jenis enkripsi pesan yang ditentukan.
|
Security_Key(uint32_t aKeyId)
|
Saat berkomunikasi dengan peer, kirim dan terima pesan yang dienkripsi menggunakan kunci tertentu.
|
Security_None(void)
|
Saat berkomunikasi dengan rekan, kirim dan terima permintaan yang tidak dienkripsi (misalnya
|
Security_PASESession(uint8_t aPasswordSource)
|
Saat berkomunikasi dengan peer, kirim dan terima pesan yang dienkripsi menggunakan kunci sesi PASE yang dibuat dengan node peer.
|
Security_SharedCASESession(void)
|
Saat berkomunikasi dengan peer, kirim dan terima pesan yang dienkripsi menggunakan kunci sesi CASE bersama yang dibuat dengan router Nest core.
|
Security_SharedCASESession(uint64_t aRouterNodeId)
|
Saat berkomunikasi dengan peer, kirim dan terima pesan yang dienkripsi menggunakan kunci sesi CASE bersama yang ditetapkan dengan node router tertentu.
|
Security_TAKESession()
|
Saat berkomunikasi dengan peer, 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, port, dan antarmuka jaringan spesifik.
|
TargetAddress_IP(const char *aHostName, uint16_t aPeerPort, InterfaceId aInterfaceId)
|
Saat berkomunikasi dengan peer, gunakan nama host, port, dan antarmuka jaringan tertentu.
|
TargetAddress_IP(const char *aHostName, size_t aHostNameLen, uint16_t aPeerPort, InterfaceId aInterfaceId)
|
Saat berkomunikasi dengan peer, gunakan nama host, port, dan antarmuka jaringan tertentu.
|
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 peer, gunakan alamat fabric layanan Weave yang berasal dari ID node peer.
|
Target_NodeId(uint64_t aPeerNodeId)
|
Konfigurasi 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)
|
Gunakan koneksi Weave yang ada untuk berkomunikasi dengan peer.
|
Transport_TCP(void)
|
Menggunakan TCP untuk berkomunikasi dengan peer.
|
Transport_UDP(void)
|
Gunakan UDP untuk berkomunikasi dengan peer.
|
Transport_UDP_PathMTU(uint32_t aPathMTU)
|
Menetapkan MTU jalur yang diharapkan untuk paket UDP yang melakukan perjalanan ke peer.
|
Transport_UDP_WRM(void)
|
Gunakan protokol Weave Reliable Messaging saat berkomunikasi dengan rekan.
|
Fungsi publik
ConfigureFromMessage
Configuration & ConfigureFromMessage( const WeaveMessageInfo *aMsgInfo, const Inet::IPPacketInfo *aPacketInfo )
Konfigurasi binding untuk memungkinkan komunikasi dengan pengirim pesan yang diterima.
Detail | |||||
---|---|---|---|---|---|
Parameter |
|
DNS_Options
Configuration & DNS_Options( uint8_t dnsOptions )
Saat me-resolve nama host pembanding, 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
Menampilkan error yang terjadi saat mengonfigurasi Binding.
PrepareBinding
WEAVE_ERROR PrepareBinding( void )
Sedangkan proses menyiapkan 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 Grup Aplikasi Weave tertentu.
Detail | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
||||||
Hasil |
Referensi ke objek Binding.
|
Security_AuthenticationMode
Configuration & Security_AuthenticationMode( WeaveAuthMode aAuthMode )
Menyetel mode autentikasi yang diminta agar 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 dibuat secara otomatis sebagai bagian dari penyiapan binding.
Detail | |
---|---|
Hasil |
Referensi ke objek binding.
|
Security_EncryptionType
Configuration & Security_EncryptionType( uint8_t aEncType )
Saat berkomunikasi dengan peer, 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 peer, kirim dan terima pesan yang dienkripsi menggunakan kunci tertentu.
Detail | |||
---|---|---|---|
Parameter |
|
||
Hasil |
Referensi ke objek Binding.
|
Security_None
Configuration & Security_None( void )
Saat berkomunikasi dengan peer, kirim dan terima data yang tidak dienkripsi (misalnya
tidak aman).
Detail | |
---|---|
Hasil |
Referensi ke objek binding.
|
Security_PASESession
Configuration & Security_PASESession( uint8_t aPasswordSource )
Saat berkomunikasi dengan peer, kirim dan terima pesan yang dienkripsi menggunakan kunci sesi PASE yang dibuat dengan node peer.
Jika sesi yang diperlukan tidak tersedia, sesi tersebut akan dibuat secara otomatis sebagai bagian dari penyiapan binding.
Detail | |||
---|---|---|---|
Parameter |
|
||
Hasil |
Referensi ke objek binding.
|
Security_SharedCASESession
Configuration & Security_SharedCASESession( void )
Saat berkomunikasi dengan peer, kirim dan terima pesan yang dienkripsi menggunakan kunci sesi CASE bersama yang dibuat dengan router Nest core.
Jika sesi yang diperlukan tidak tersedia, sesi tersebut akan dibuat secara otomatis sebagai bagian dari penyiapan binding.
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 ditetapkan dengan node router tertentu.
Jika sesi yang diperlukan tidak tersedia, sesi tersebut akan dibuat secara otomatis sebagai bagian dari penyiapan binding.
Detail | |||
---|---|---|---|
Parameter |
|
||
Hasil |
Referensi ke objek binding.
|
Security_TAKESession
Configuration & Security_TAKESession()
Saat berkomunikasi dengan peer, kirim dan terima pesan yang dienkripsi menggunakan kunci sesi TAKE yang dibuat dengan node peer.
Jika sesi yang diperlukan tidak tersedia, sesi tersebut akan dibuat secara otomatis sebagai bagian dari penyiapan binding.
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, port, dan antarmuka jaringan spesifik.
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 tertentu.
CATATAN: Pemanggil harus memastikan bahwa string nama host yang disediakan 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 tertentu.
CATATAN: Pemanggil harus memastikan bahwa string nama host yang disediakan 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 peer, gunakan alamat fabric layanan Weave yang berasal dari ID node peer.
Detail | |
---|---|
Hasil |
Referensi ke objek binding.
|
Target_NodeId
Configuration & Target_NodeId( uint64_t aPeerNodeId )
Konfigurasi 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, alamat peer akan ditetapkan ke alamat fabric Weave dari 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 )
Gunakan 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 )
Gunakan UDP untuk berkomunikasi dengan peer.
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 melakukan perjalanan ke peer.
Untuk beberapa protokol Weave, nilai 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 )
Gunakan protokol Weave Reliable Messaging saat berkomunikasi dengan rekan.
Detail | |
---|---|
Hasil |
Referensi ke objek binding.
|