تنظيم صفحاتك في مجموعات يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.

nl :: نسج:: ربط:: إعدادات

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

يوفر واجهة على غرار التعريفي لتكوين وإعداد ملزم الكائن.

ملخص

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

إذا يتم استدعاء تكوينات يستبعد بعضها بعضا (على سبيل المثال، Transport_TCP () تليها Transport_UDP () )، وآخر ليتم استدعاؤها انتصارات.

الوظائف العامة

ConfigureFromMessage (const WeaveMessageInfo *aMsgInfo, const Inet::IPPacketInfo *aPacketInfo)
قم بتكوين الربط للسماح بالاتصال بمرسل الرسالة المستلمة.
DNS_Options (uint8_t dnsOptions)
عند حل اسم المضيف للنظير ، استخدم خيارات DNS المحددة.
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 fabric مشتقًا من معرف عقدة النظير وشبكة فرعية محددة.
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 Weave للتراسل الموثوق عند التواصل مع النظير.

الوظائف العامة

تكوين FromMessage

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

قم بتكوين الربط للسماح بالاتصال بمرسل الرسالة المستلمة.

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

DNS_Options

Configuration & DNS_Options(
  uint8_t dnsOptions
)

عند حل اسم المضيف للنظير ، استخدم خيارات DNS المحددة.

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

Exchange_ResponseTimeoutMsec

Configuration & Exchange_ResponseTimeoutMsec(
  uint32_t aResponseTimeoutMsec
)

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

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

GetError

WEAVE_ERROR GetError(
  void
) const 

إرجاع أي خطأ حدث أثناء تكوين الربط .

التحضير

WEAVE_ERROR PrepareBinding(
  void
)

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

Security_AppGroupKey

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

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

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

Security_AuthenticationMode

Configuration & Security_AuthenticationMode(
  WeaveAuthMode aAuthMode
)

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

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

Security_CASES الجلسة

Configuration & Security_CASESession(
  void
)

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

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

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

نوع التشفير_الأمن

Configuration & Security_EncryptionType(
  uint8_t aEncType
)

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

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

مفتاح الامان

Configuration & Security_Key(
  uint32_t aKeyId
)

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

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

الأمن

Configuration & Security_None(
  void
)

عند التواصل مع الزميل ، أرسل واستقبل غير مشفر (أي

غير مؤمنة).

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

جلسة_الأمن

Configuration & Security_PASESession(
  uint8_t aPasswordSource
)

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

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

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

Security_SharedCASES الجلسة

Configuration & Security_SharedCASESession(
  void
)

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

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

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

Security_SharedCASES الجلسة

Configuration & Security_SharedCASESession(
  uint64_t aRouterNodeId
)

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

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

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

Security_TAKES الجلسة

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
سلسلة منتهية NULL تحتوي على اسم مضيف النظير.
[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 fabric مشتقًا من معرف عقدة النظير وشبكة فرعية محددة.

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

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 fabric لنقطة نهاية الخدمة.

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

النقل_الافتراضي WRMPConfig

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 للتواصل مع الأقران.

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

النقل_ UDP

Configuration & Transport_UDP(
  void
)

استخدم UDP للتواصل مع الأقران.

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

النقل_ UDP_PathMTU

Configuration & Transport_UDP_PathMTU(
  uint32_t aPathMTU
)

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

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

تفاصيل
المعلمات
[in] aPathMTU
المسار المتوقع MTU لحزم UDP التي تنتقل إلى النظير.
عائدات
مرجع لكائن الربط.

النقل_ UDP_WRM

Configuration & Transport_UDP_WRM(
  void
)

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

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