nl::Weave::Binding::Configuration

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

يتم توفير واجهة ذات نمط تعريفي لضبط عنصر الربط وإعداده.

ملخّص

عند ضبط الربط، يجب أن تستدعي التطبيقات طريقة واحدة على الأقل من كل مجموعة من مجموعات الضبط التالية: الاستهداف والنقل والأمان. يمكن طلب طرق أخرى حسب الحاجة لإلغاء السلوك التلقائي.

في حال استدعاء عمليات الضبط المتنافية (على سبيل المثال، Transport_TCP() متبوعًا بـ Transport_UDP()).

الدوال العامة

ConfigureFromMessage(const WeaveMessageInfo *aMsgInfo, const Inet::IPPacketInfo *aPacketInfo)
يمكنك ضبط عملية الربط للسماح بالتواصل مع مرسِل الرسالة المُستلَمة.
DNS_Options(uint8_t dnsOptions)
عند حل اسم المضيف للنظير، استخدِم خيارات نظام أسماء النطاقات المحددة.
Exchange_ResponseTimeoutMsec(uint32_t aResponseTimeoutMsec)
يمكنك ضبط مهلة الاستجابة التلقائية لسياقات التبادل التي تم إنشاؤها من عنصر الربط هذا.
GetError(void) const
تعرض أي خطأ حدث أثناء ضبط الربط.
PrepareBinding(void)
أن يكون عملية إعداد الربط للتواصل مع الزملاء.
Security_AppGroupKey(uint32_t aAppGroupGlobalId, uint32_t aRootKeyId, bool aUseRotatingKey)
عند الاتصال بالنظير، أرسل واستلم الرسائل المشفرة لمجموعة تطبيقات Weave محددة.
Security_AuthenticationMode(WeaveAuthMode aAuthMode)
اضبط وضع المصادقة المطلوب لاستخدامه لمصادقة النظير.
Security_CASESession(void)
عند التواصل مع النظير، أرسل واستلم الرسائل المشفرة باستخدام مفتاح جلسة CASE الذي تم إنشاؤه مع عقدة النظير.
Security_EncryptionType(uint8_t aEncType)
عند التواصل مع النظير، أرسل واستقبل الرسائل المشفرة باستخدام نوع تشفير الرسائل المحدد.
Security_Key(uint32_t aKeyId)
عند التواصل مع النظير، أرسل واستقبل الرسائل المشفرة باستخدام مفتاح محدد.
Security_None(void)
عند التواصل مع النظير، أرسل واستلِم غير مشفّر (أي
Security_PASESession(uint8_t aPasswordSource)
عند التواصل مع النظير، أرسل واستلم الرسائل المشفرة باستخدام مفتاح جلسة PASE الذي تم إنشاؤه مع عقدة النظير.
Security_SharedCASESession(void)
عند التواصل مع الجهاز المشابه، يمكنك إرسال الرسائل واستلامها باستخدام مفتاح جلسة CASE مشترك تم إنشاؤه باستخدام جهاز التوجيه الأساسي Nest.
Security_SharedCASESession(uint64_t aRouterNodeId)
عند الاتصال بالنظير، أرسل واستقبل رسائل مشفرة باستخدام مفتاح جلسة CASE مشترك تم إنشاؤه بواسطة عقدة موجه محددة.
Security_TAKESession()
عند التواصل مع النظير، أرسل واستقبل الرسائل المشفرة باستخدام مفتاح جلسة take الذي تم إنشاؤه في عقدة النظير.
TargetAddress_IP(nl::Inet::IPAddress aPeerAddress, uint16_t aPeerPort, InterfaceId aInterfaceId)
عند الاتصال بنظير، استخدم عنوان IP المحدد، والمنفذ، وواجهة الشبكة.
TargetAddress_IP(const char *aHostName, uint16_t aPeerPort, InterfaceId aInterfaceId)
عند الاتصال بنظير، استخدم اسم المضيف والمنفذ وواجهة الشبكة المحددة.
TargetAddress_IP(const char *aHostName, size_t aHostNameLen, uint16_t aPeerPort, InterfaceId aInterfaceId)
عند الاتصال بنظير، استخدم اسم المضيف والمنفذ وواجهة الشبكة المحددة.
TargetAddress_WeaveFabric(uint16_t aSubnetId)
عند الاتصال بالنظير، استخدم عنوان نسيج Weave مشتق من معرف عقدة النظير وشبكة فرعية محددة.
TargetAddress_WeaveService(void)
عند التواصل مع النظير، استخدم عنوان نسيج خدمة Weave الذي تم اشتقاقه من معرف عقدة النظير.
Target_NodeId(uint64_t aPeerNodeId)
يمكنك إعداد الربط للاتصال بمعرّف عقدة Weave محددة.
Target_ServiceEndpoint(uint64_t aPeerNodeId)
يمكنك إعداد الربط للاتصال بنقطة نهاية خدمة Weave محدَّدة.
Transport_DefaultWRMPConfig(const WRMPConfig & aWRMPConfig)
يمكنك ضبط إعدادات WRMP التلقائية لسياقات التبادل التي يتم إنشاؤها من عنصر الربط هذا.
Transport_ExistingConnection(WeaveConnection *apConnection)
يمكنك استخدام اتصال Weave حالي للتواصل مع نظير.
Transport_TCP(void)
استخدام بروتوكول TCP للتواصل مع النظير.
Transport_UDP(void)
استخدام بروتوكول UDP للتواصل مع النظير.
Transport_UDP_PathMTU(uint32_t aPathMTU)
يمكنك ضبط المسار المتوقع MTU لحزم UDP المنتقلة إلى النظير.
Transport_UDP_WRM(void)
استخدم بروتوكول المراسلة الموثوقة لدى Weave عند التواصل مع النظير.

الدوال العامة

ConfigureFromMessage

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

يمكنك ضبط عملية الربط للسماح بالتواصل مع مرسِل الرسالة المُستلَمة.

التفاصيل
المَعلمات
[in] aMsgInfo
بنية معلومات الرسالة المرتبطة بالرسالة المُستلَمة
[in] aPacketInfo
معلومات الحزمة للرسالة المُستلَمة

DNS_Options

Configuration & DNS_Options(
  uint8_t dnsOptions
)

عند حل اسم المضيف للنظير، استخدِم خيارات نظام أسماء النطاقات المحددة.

التفاصيل
المَعلمات
[in] dnsOptions
قيمة عددية تتحكّم في كيفية تنفيذ تحليل اسم المضيف. يجب أن تكون القيمة واحدة من القيم من التعداد #::nl::Inet::DNSOptions.
المرتجعات
مرجع إلى كائن الربط.

Exchange_ResponseTimeoutMsec

Configuration & Exchange_ResponseTimeoutMsec(
  uint32_t aResponseTimeoutMsec
)

يمكنك ضبط مهلة الاستجابة التلقائية لسياقات التبادل التي تم إنشاؤها من عنصر الربط هذا.

التفاصيل
المَعلمات
[in] aResponseTimeoutMsec
وقت الاستجابة التلقائي بالملي ثانية.
المرتجعات
مرجع إلى كائن الربط.

GetError

WEAVE_ERROR GetError(
  void
) const 

تعرض أي خطأ حدث أثناء ضبط الربط.

PrepareBinding

WEAVE_ERROR PrepareBinding(
  void
)

أن يكون عملية إعداد الربط للتواصل مع الزملاء.

Security_AppGroupKey

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

عند الاتصال بالنظير، أرسل واستلم الرسائل المشفرة لمجموعة تطبيقات Weave محددة.

التفاصيل
المَعلمات
[in] aAppGroupGlobalId
المعرّف العام لمجموعة التطبيقات التي يجب تشفير الرسائل لها.
[in] aRootKeyId
مفتاح الجذر المُستخدَم للحصول على مفاتيح التشفير لمجموعة تطبيقات Weave المحدَّدة.
[in] aUseRotatingKey
صحيح إذا كانت مجموعة تطبيقات Weave تستخدم مفاتيح الرسائل بالتناوب.
المرتجعات
مرجع إلى كائن الربط.

Security_AuthenticationMode

Configuration & Security_AuthenticationMode(
  WeaveAuthMode aAuthMode
)

اضبط وضع المصادقة المطلوب لاستخدامه لمصادقة النظير.

التفاصيل
المَعلمات
[in] aAuthMode
وضع المصادقة المطلوب.
المرتجعات
مرجع إلى كائن الربط.

Security_CASESession

Configuration & Security_CASESession(
  void
)

عند التواصل مع النظير، أرسل واستلم الرسائل المشفرة باستخدام مفتاح جلسة CASE الذي تم إنشاؤه مع عقدة النظير.

إذا لم تكن الجلسة اللازمة متاحة، سيتمّ إنشاؤها تلقائيًا كجزء من إعداد الربط.

التفاصيل
المرتجعات
مرجع إلى كائن الربط.

Security_EncryptionType

Configuration & Security_EncryptionType(
  uint8_t aEncType
)

عند التواصل مع النظير، أرسل واستقبل الرسائل المشفرة باستخدام نوع تشفير الرسائل المحدد.

التفاصيل
المَعلمات
[in] aEncType
نوع تشفير رسالة Weave
المرتجعات
مرجع إلى كائن الربط.

Security_Key

Configuration & Security_Key(
  uint32_t aKeyId
)

عند التواصل مع النظير، أرسل واستقبل الرسائل المشفرة باستخدام مفتاح محدد.

التفاصيل
المَعلمات
[in] aKeyId
رقم تعريف مفتاح التشفير. يجب أن يكون المفتاح المحدد مناسبًا لتشفير رسائل Weave.
المرتجعات
مرجع إلى كائن الربط.

Security_None

Configuration & Security_None(
  void
)

عند التواصل مع النظير، أرسل واستلِم غير مشفّر (أي

غير الآمنة).

التفاصيل
المرتجعات
مرجع إلى كائن الربط.

Security_PASESession

Configuration & Security_PASESession(
  uint8_t aPasswordSource
)

عند التواصل مع النظير، أرسل واستلم الرسائل المشفرة باستخدام مفتاح جلسة PASE الذي تم إنشاؤه مع عقدة النظير.

إذا لم تكن الجلسة اللازمة متاحة، سيتمّ إنشاؤها تلقائيًا كجزء من إعداد الربط.

التفاصيل
المَعلمات
[in] aPasswordSource
مصدر كلمة المرور المراد استخدامها أثناء إنشاء جلسة PASE.
المرتجعات
مرجع إلى كائن الربط.

Security_SharedCASESession

Configuration & Security_SharedCASESession(
  void
)

عند التواصل مع الجهاز المشابه، يمكنك إرسال الرسائل واستلامها باستخدام مفتاح جلسة CASE مشترك تم إنشاؤه باستخدام جهاز التوجيه الأساسي Nest.

إذا لم تكن الجلسة اللازمة متاحة، سيتمّ إنشاؤها تلقائيًا كجزء من إعداد الربط.

التفاصيل
المرتجعات
مرجع إلى كائن الربط.

Security_SharedCASESession

Configuration & Security_SharedCASESession(
  uint64_t aRouterNodeId
)

عند الاتصال بالنظير، أرسل واستقبل رسائل مشفرة باستخدام مفتاح جلسة CASE مشترك تم إنشاؤه بواسطة عقدة موجه محددة.

إذا لم تكن الجلسة اللازمة متاحة، سيتمّ إنشاؤها تلقائيًا كجزء من إعداد الربط.

التفاصيل
المَعلمات
[in] aRouterNodeId
معرّف عقدة Weave لجهاز التوجيه الذي يجب إنشاء جلسة CASE مشتركة له.
المرتجعات
مرجع إلى كائن الربط.

Security_TAKESession

Configuration & Security_TAKESession()

عند التواصل مع النظير، أرسل واستقبل الرسائل المشفرة باستخدام مفتاح جلسة take الذي تم إنشاؤه في عقدة النظير.

إذا لم تكن الجلسة اللازمة متاحة، سيتمّ إنشاؤها تلقائيًا كجزء من إعداد الربط.

التفاصيل
المرتجعات
مرجع إلى كائن الربط.

TargetAddress_IP

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

عند الاتصال بنظير، استخدم عنوان IP المحدد، والمنفذ، وواجهة الشبكة.

التفاصيل
المَعلمات
[in] aPeerAddress
عنوان IP للنظير
[in] aPeerPort
المنفذ البعيد
[in] aInterfaceId
رقم تعريف الواجهة المحلية للشبكة لاستخدامها في الاتصال
المرتجعات
مرجع إلى كائن الربط.

TargetAddress_IP

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

عند الاتصال بنظير، استخدم اسم المضيف والمنفذ وواجهة الشبكة المحددة.

ملاحظة: يجب أن يتأكد المتصل من أن سلسلة اسم المضيف التي تم توفيرها تظل صالحة حتى تكتمل مرحلة التحضير للربط.

التفاصيل
المَعلمات
[in] aHostName
يشير ذلك المصطلح إلى سلسلة تم إنهاؤها بدون قيمة فارغة وتحتوي على اسم المضيف للنظير.
[in] aPeerPort
المنفذ البعيد للاستخدام عند التواصل مع النظير.
[in] aInterfaceId
رقم تعريف الواجهة المحلية للشبكة المطلوب استخدامها في الاتصال.
المرتجعات
مرجع إلى كائن الربط.

TargetAddress_IP

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

عند الاتصال بنظير، استخدم اسم المضيف والمنفذ وواجهة الشبكة المحددة.

ملاحظة: يجب أن يتأكد المتصل من أن سلسلة اسم المضيف التي تم توفيرها تظل صالحة حتى تكتمل مرحلة التحضير للربط.

التفاصيل
المَعلمات
[in] aHostName
سلسلة تحتوي على اسم المضيف للنظير لا يلزم إنهاء هذه السلسلة كقيمة فارغة (NULL).
[in] aHostNameLen
طول السلسلة المشار إليه بواسطة aHostName.
[in] aPeerPort
المنفذ البعيد للاستخدام عند التواصل مع النظير.
[in] aInterfaceId
رقم تعريف الواجهة المحلية للشبكة المطلوب استخدامها في الاتصال.
المرتجعات
مرجع إلى كائن الربط.

TargetAddress_WeaveFabric

Configuration & TargetAddress_WeaveFabric(
  uint16_t aSubnetId
)

عند الاتصال بالنظير، استخدم عنوان نسيج Weave مشتق من معرف عقدة النظير وشبكة فرعية محددة.

التفاصيل
المَعلمات
[in] aSubnetId
معرّف الشبكة الفرعية المراد استخدامه في تكوين عنوان نسيج Weave للنظير.
المرتجعات
مرجع إلى كائن الربط.

TargetAddress_WeaveService

Configuration & TargetAddress_WeaveService(
  void
)

عند التواصل مع النظير، استخدم عنوان نسيج خدمة Weave الذي تم اشتقاقه من معرف عقدة النظير.

التفاصيل
المرتجعات
مرجع إلى كائن الربط.

Target_NodeId

Configuration & Target_NodeId(
  uint64_t aPeerNodeId
)

يمكنك إعداد الربط للاتصال بمعرّف عقدة Weave محددة.

التفاصيل
المَعلمات
[in] aPeerNodeId
معرِّف العُقدة للعقدة النظيرة.
المرتجعات
مرجع إلى كائن الربط.

Target_ServiceEndpoint

Configuration & Target_ServiceEndpoint(
  uint64_t aPeerNodeId
)

يمكنك إعداد الربط للاتصال بنقطة نهاية خدمة Weave محدَّدة.

إذا لم يتم تكوينه بخلاف ذلك، يتم تعيين عنوان النظير على عنوان نسيج Weave لنقطة نهاية الخدمة.

التفاصيل
المَعلمات
[in] serviceEndpointId
معرِّف عقدة نقطة نهاية الخدمة التي سيتم الاتصال بها.
المرتجعات
مرجع إلى كائن الربط.

Transport_DefaultWRMPConfig

Configuration & Transport_DefaultWRMPConfig(
  const WRMPConfig & aWRMPConfig
)

يمكنك ضبط إعدادات WRMP التلقائية لسياقات التبادل التي يتم إنشاؤها من عنصر الربط هذا.

التفاصيل
المَعلمات
[in] aWRMPConfig
مرجع إلى إعدادات WRMP التلقائية الجديدة
المرتجعات
مرجع إلى كائن الربط.

Transport_ExistingConnection

Configuration & Transport_ExistingConnection(
  WeaveConnection *apConnection
)

يمكنك استخدام اتصال Weave حالي للتواصل مع نظير.

ملاحظة: يزداد عدد المراجع في كائن الاتصال عندما ينجح إعداد الربط. وبالتالي يكون التطبيق مسؤولاً عن ضمان بقاء كائن الاتصال حيًا حتى ذلك الوقت.

التفاصيل
المَعلمات
[in] con
مؤشر يشير إلى اتصال Weave الحالي.
المرتجعات
مرجع إلى كائن الربط.

Transport_TCP

Configuration & Transport_TCP(
  void
)

استخدام بروتوكول TCP للتواصل مع النظير.

التفاصيل
المرتجعات
مرجع إلى كائن الربط.

Transport_UDP

Configuration & Transport_UDP(
  void
)

استخدام بروتوكول UDP للتواصل مع النظير.

التفاصيل
المرتجعات
مرجع إلى كائن الربط.

Transport_UDP_PathMTU

Configuration & Transport_UDP_PathMTU(
  uint32_t aPathMTU
)

يمكنك ضبط المسار المتوقع MTU لحزم UDP المنتقلة إلى النظير.

بالنسبة إلى بعض بروتوكولات Weave، سيُستخدم هذا لضبط حجم حمولة رسالة Weave ديناميكيًا.

التفاصيل
المَعلمات
[in] aPathMTU
يشير ذلك المصطلح إلى المسار المتوقّع لحِزم بيانات UDP المنتقلة إلى النظير.
المرتجعات
مرجع إلى كائن الربط.

Transport_UDP_WRM

Configuration & Transport_UDP_WRM(
  void
)

استخدم بروتوكول المراسلة الموثوقة لدى Weave عند التواصل مع النظير.

التفاصيل
المرتجعات
مرجع إلى كائن الربط.