TREL - تكديس سلاسل المحادثات

تحدِّد هذه الوحدة واجهات برمجة تطبيقات Thread Radio Encapsulation Link (TREL) لـ Thread عبر البنية التحتية.

ملخّص

تتطلب الدوال في هذه الوحدة تفعيل OPENTHREAD_CONFIG_RADIO_LINK_TREL_ENABLE.

تحديدات النوع

otTrelPeer typedef
struct otTrelPeer
يمثل زميلاً في TREL.
otTrelPeerIterator typedef
uint16_t
يمثل تكرارًا للتكرار على إدخالات جدول التطبيقات المشابهة في TREL.

الدوال

otTrelGetNextPeer(otInstance *aInstance, otTrelPeerIterator *aIterator)
const otTrelPeer *
يتكرر إدخال جدول الزملاء ويحصل على الإدخال التالي من الجدول.
otTrelInitPeerIterator(otInstance *aInstance, otTrelPeerIterator *aIterator)
void
تهيئة تكرار جدول التطبيقات المشابهة.
otTrelIsEnabled(otInstance *aInstance)
bool
يشير إلى ما إذا كانت عملية TREL مفعَّلة.
otTrelIsFilterEnabled(otInstance *aInstance)
bool
يشير إلى ما إذا كان وضع الفلتر مفعَّلاً أم لا.
otTrelSetEnabled(otInstance *aInstance, bool aEnable)
void
لتفعيل عملية TREL أو إيقافها.
otTrelSetFilterEnabled(otInstance *aInstance, bool aEnable)
void
لضبط وضع الفلتر (تفعيل/إيقاف الفلترة).

الهياكل

otTrelPeer

يمثل زميلاً في TREL.

تحديدات النوع

otTrelPeer

struct otTrelPeer otTrelPeer

يمثل زميلاً في TREL.

otTrelPeerIterator

uint16_t otTrelPeerIterator

يمثل تكرارًا للتكرار على إدخالات جدول التطبيقات المشابهة في TREL.

الدوال

otTrelGetNextPeer

const otTrelPeer * otTrelGetNextPeer(
  otInstance *aInstance,
  otTrelPeerIterator *aIterator
)

يتكرر إدخال جدول الزملاء ويحصل على الإدخال التالي من الجدول.

التفاصيل
المَعلمات
[in] aInstance
مثيل OpenThread.
[in] aIterator
المكرر. يجب أن تتم إعداده.
المرتجعات
مؤشر إلى إدخال otTrelPeer التالي أو NULL إذا لم تتوفّر أي إدخالات أخرى في الجدول

otTrelInitPeerIterator

void otTrelInitPeerIterator(
  otInstance *aInstance,
  otTrelPeerIterator *aIterator
)

تهيئة تكرار جدول التطبيقات المشابهة.

التفاصيل
المَعلمات
[in] aInstance
مثيل OpenThread.
[in] aIterator
المكرّر المطلوب إعداده.

otTrelIsEnabled

bool otTrelIsEnabled(
  otInstance *aInstance
)

يشير إلى ما إذا كانت عملية TREL مفعَّلة.

التفاصيل
المَعلمات
[in] aInstance
مثيل OpenThread.
قيم الإرجاع
TRUE
في حال تفعيل عملية TREL.
FALSE
في حال إيقاف عملية TREL.

otTrelIsFilterEnabled

bool otTrelIsFilterEnabled(
  otInstance *aInstance
)

يشير إلى ما إذا كان وضع الفلتر مفعَّلاً أم لا.

التفاصيل
المَعلمات
[in] aInstance
مثيل OpenThread.
قيم الإرجاع
TRUE
في حال تفعيل وضع فلتر TREL
FALSE
إذا كان وضع فلتر TREL غير مفعّل.

otTrelSetEnabled

void otTrelSetEnabled(
  otInstance *aInstance,
  bool aEnable
)

لتفعيل عملية TREL أو إيقافها.

في حال ضبط السياسة aEnable على "صحيح"، تبدأ هذه الدالة عملية تصفّح مستمر باستخدام نظام أسماء النطاقات (DNS-SD) لاسم الخدمة " _trel._udp" ضمن نطاق التصفّح المحلي لاكتشاف الأجهزة الأخرى التي تتوافق مع TREL. ويسجِّل الجهاز أيضًا خدمة جديدة للإعلان عنها باستخدام نظام أسماء النطاقات (DNS-SD)، واسم الخدمة هو " _trel._udp" الذي يشير إلى توافقه مع TREL. سيكون الجهاز بعد ذلك جاهزًا لتلقّي رسائل TREL من التطبيقات المشابهة.

عندما تكون القيمة aEnable خاطئة، تُوقف هذه الدالة تصفّح DNS-SD على اسم الخدمة " _trel._udp"، وتوقِف الإعلان عن خدمة TREL DNS-SD، وتمحو جدول التطبيقات المشابهة TREL.

التفاصيل
المَعلمات
[in] aInstance
يشير هذا المصطلح إلى مؤشر لمثيل OpenThread.
[in] aEnable
قيمة منطقية لتفعيل/إيقاف عملية TREL.

otTrelSetFilterEnabled

void otTrelSetFilterEnabled(
  otInstance *aInstance,
  bool aEnable
)

لضبط وضع الفلتر (تفعيل/إيقاف الفلترة).

عند تفعيل وضع الفلتر، يتم تجاهل أي حركة مرور rx وtx من خلال واجهة TREL تلقائيًا. هذا مخصص بشكل أساسي للاستخدام أثناء الاختبار.

على عكس otTrel{Enable/Disable}() الذي يبدأ/يوقف عملية TREL بالكامل، عندما يكون وضع الفلتر مفعَّلاً، ستظل واجهة TREL غير مفعَّلة.

التفاصيل
المَعلمات
[in] aInstance
مثيل OpenThread.
[in] aFiltered
TRUE لتمكين وضع التصفية، FALSE لإيقاف وضع التصفية.

المراجِع

تنشأ المواضيع المرجعية لواجهة برمجة تطبيقات OpenThread من رمز المصدر المتاح على GitHub. للحصول على مزيد من المعلومات أو للمساهمة في مستنداتنا، يمكنك الاطّلاع على المراجع.