خادم DNS-SD

تتضمّن هذه الوحدة واجهات برمجة تطبيقات لخادم DNS-SD.

ملخّص

التعدادات

otDnssdQueryType{
  OT_DNSSD_QUERY_TYPE_NONE = 0,
  OT_DNSSD_QUERY_TYPE_BROWSE = 1,
  OT_DNSSD_QUERY_TYPE_RESOLVE = 2,
  OT_DNSSD_QUERY_TYPE_RESOLVE_HOST = 3
}
تعداد
يحدّد هذا الإعداد نوع طلب بحث DNS-SD.

أنواع المحددات

otDnssdCounters typedef
يحتوي على عدّادات خادم DNS-SD.
otDnssdHostInfo typedef
تمثل معلومات مضيف تم اكتشافه لطلب بحث DNS-SD.
otDnssdQuery typedef
void
يمثل هذا النوع المبهم طلب بحث لنظام أسماء النطاقات (DNS).
otDnssdQuerySubscribeCallback)(void *aContext, const char *aFullName) typedef
void(*
يتم طلبه عند اشتراك طلب بحث DNS-SD في أي مما يلي:
otDnssdQueryUnsubscribeCallback)(void *aContext, const char *aFullName) typedef
void(*
يتم طلبه عند إلغاء اشتراك طلب بحث نظام أسماء النطاقات (DNS) من أحد الخيارات التالية:
otDnssdServiceInstanceInfo typedef
تمثل معلومات مثيل الخدمة الذي تم اكتشافه لطلب بحث DNS-SD.

الدوال

otDnssdGetCounters(otInstance *aInstance)
const otDnssdCounters *
يعرض العدادات لخادم DNS-SD.
otDnssdGetNextQuery(otInstance *aInstance, const otDnssdQuery *aQuery)
const otDnssdQuery *
الحصول على طلب البحث التالي في خادم DNS-SD.
otDnssdGetQueryTypeAndName(const otDnssdQuery *aQuery, char(*) aNameOutput[OT_DNS_MAX_NAME_SIZE])
الحصول على نوع طلب البحث لنظام أسماء النطاقات (DNS-SD) واسمه لطلب بحث معيّن
otDnssdQueryHandleDiscoveredHost(otInstance *aInstance, const char *aHostFullName, otDnssdHostInfo *aHostInfo)
void
يرسل إشعارًا إلى المضيف الذي تم اكتشافه.
otDnssdQueryHandleDiscoveredServiceInstance(otInstance *aInstance, const char *aServiceFullName, otDnssdServiceInstanceInfo *aInstanceInfo)
void
إبلاغ مثيل خدمة تم اكتشافه.
otDnssdQuerySetCallbacks(otInstance *aInstance, otDnssdQuerySubscribeCallback aSubscribe, otDnssdQueryUnsubscribeCallback aUnsubscribe, void *aContext)
void
لضبط استدعاءات طلبات بحث خادم DNS-SD.
otDnssdUpstreamQueryIsEnabled(otInstance *aInstance)
bool
عرض ما إذا كان خادم نظام أسماء النطاقات (DNSSD) سيعيد توجيه طلبات بحث نظام أسماء النطاقات إلى واجهة برمجة تطبيقات النظام الأساسي للبث المباشر لنظام أسماء النطاقات
otDnssdUpstreamQuerySetEnabled(otInstance *aInstance, bool aEnabled)
void
تفعيل أو إيقاف إعادة توجيه طلبات بحث نظام أسماء النطاقات إلى واجهة برمجة التطبيقات أسماء نطاقات النظام الأساسي لنظام أسماء النطاقات.

هياكل

otDnssdCounters

يحتوي على عدّادات خادم DNS-SD.

otDnssdHostInfo

تمثل معلومات مضيف تم اكتشافه لطلب بحث DNS-SD.

otDnssdServiceInstanceInfo

تمثل معلومات مثيل الخدمة الذي تم اكتشافه لطلب بحث DNS-SD.

التعدادات

otDnssdQueryType

 otDnssdQueryType

يحدّد هذا الإعداد نوع طلب بحث DNS-SD.

أماكن إقامة
OT_DNSSD_QUERY_TYPE_BROWSE

خدمة تصفّح نوع الخدمة

OT_DNSSD_QUERY_TYPE_NONE

نوع الخدمة غير محدَّد

OT_DNSSD_QUERY_TYPE_RESOLVE

نوع الخدمة يحلّ مثيل الخدمة

OT_DNSSD_QUERY_TYPE_RESOLVE_HOST

يحلّ نوع الخدمة اسم المضيف.

أنواع المحددات

OTDnssdCounters

struct otDnssdCounters otDnssdCounters

يحتوي على عدّادات خادم DNS-SD.

otDnssdHostInfo

struct otDnssdHostInfo otDnssdHostInfo

تمثل معلومات مضيف تم اكتشافه لطلب بحث DNS-SD.

otDnssdQuery

void otDnssdQuery

يمثل هذا النوع المبهم طلب بحث لنظام أسماء النطاقات (DNS).

otDnssdQueryCallCallback

void(* otDnssdQuerySubscribeCallback)(void *aContext, const char *aFullName)

يتم طلبه عند اشتراك طلب بحث DNS-SD في أي مما يلي:

  1. اسم خدمة
  2. اسم مثيل خدمة
  3. اسم مضيف

يكون تنفيذ طلب بحث DNS-SD مسؤولًا عن تحديد المقصود بـ aFullName. وإذا كان aFullName اسم خدمة أو اسم مثيل خدمة، يجب أن يكتشف تنفيذ طلب البحث DNS-SD معلومات الخدمات المقابلة وإعلام خادم DNS-SD باستخدام otDnssdQueryHandleDiscoveredServiceInstance. إذا كان aFullName اسم مضيف، من المفترَض أن يؤدي تنفيذ طلب البحث لنظام أسماء النطاقات (DNS) إلى نظام أسماء النطاقات باكتشاف معلومات المضيف وإعلام خادم نظام أسماء النطاقات SD-SD باستخدام otDnssdQueryHandleDiscoveredHost.

التفاصيل
المَعلمات
[in] aContext
مؤشر للسياق الخاص بالتطبيق.
[in] aFullName
اسم الخدمة الكاملة التي يتم إنهاؤها بالكامل (مثل " _ipps._tcp.default.service.arpa.")، أو اسم المثيل الكامل للخدمة (مثل "OpenThread._ipps._tcp.default.service.arpa.")، أو اسم المضيف الكامل (مثل "ot-host.default.service.arpa").
يمكنك أيضًا الاطّلاع على ما يلي:
otDnssdQueryHandleDiscoveredServiceInstance
otDnssdQueryHandleDiscoveredHost

otDnssdQueryCallCallback

void(* otDnssdQueryUnsubscribeCallback)(void *aContext, const char *aFullName)

يتم طلبه عند إلغاء اشتراك طلب بحث نظام أسماء النطاقات (DNS) من أحد الخيارات التالية:

  1. اسم خدمة
  2. اسم مثيل خدمة
  3. اسم مضيف

يكون تنفيذ طلب البحث لنظام أسماء النطاقات (DNS) وصفًا مسؤولاً عن تحديد aFullName.

التفاصيل
المَعلمات
[in] aContext
مؤشر للسياق الخاص بالتطبيق.
[in] aFullName
اسم الخدمة الكاملة التي يتم إنهاؤها فارغة (مثل " _ipps._tcp.default.service.arpa.")، أو اسم المثيل الكامل للخدمة (مثل "OpenThread._ipps._tcp.default.service.arpa").

otDnssdServiceInstanceInfo

struct otDnssdServiceInstanceInfo otDnssdServiceInstanceInfo

تمثل معلومات مثيل الخدمة الذي تم اكتشافه لطلب بحث DNS-SD.

الدوال

otDnssdGetCounters

const otDnssdCounters * otDnssdGetCounters(
  otInstance *aInstance
)

يعرض العدادات لخادم DNS-SD.

التفاصيل
المَعلمات
[in] aInstance
بنية مثيل OpenThread.
المرتجعات
مؤشر إلى عدّادات خادم DNS-SD.

otDnssdGetNextQuery

const otDnssdQuery * otDnssdGetNextQuery(
  otInstance *aInstance,
  const otDnssdQuery *aQuery
)

الحصول على طلب البحث التالي في خادم DNS-SD.

التفاصيل
المَعلمات
[in] aInstance
بنية مثيل OpenThread.
[in] aQuery
مؤشر طلب البحث. أدخِل NULL للحصول على أول طلب بحث.
المرتجعات
مؤشر إلى طلب البحث أو إلى قيمة فارغة إذا لم يكن هناك المزيد من طلبات البحث.

otDnssdGetQueryTypeAndName

otDnssdQueryType otDnssdGetQueryTypeAndName(
  const otDnssdQuery *aQuery,
  char(*) aNameOutput[OT_DNS_MAX_NAME_SIZE]
)

الحصول على نوع طلب البحث لنظام أسماء النطاقات (DNS-SD) واسمه لطلب بحث معيّن

التفاصيل
المَعلمات
[in] aQuery
مؤشر طلب البحث الذي تم الحصول عليه من otDnssdGetNextQuery.
[out] aNameOutput
المخزن المؤقت لإخراج الاسم، الذي يجب أن يبلغ OT_DNS_MAX_NAME_SIZE بايت.
المرتجعات
نوع طلب البحث لنظام أسماء النطاقات (DNS):

otDnssdQueryHandleDiscoveredHost

void otDnssdQueryHandleDiscoveredHost(
  otInstance *aInstance,
  const char *aHostFullName,
  otDnssdHostInfo *aHostInfo
)

يرسل إشعارًا إلى المضيف الذي تم اكتشافه.

يجب أن يستدعي برنامج تعيين طلب البحث الخارجي (على سبيل المثال، الخادم الوكيل أثناء التصفّح) هذه الدالة لإبلاغ واجهة OpenThread الأساسية للمضيفين المشتركين.

التفاصيل
المَعلمات
[in] aInstance
بنية مثيل OpenThread.
[in] aHostFullName
اسم المضيف الكامل الذي يتم إنهاؤه فارغًا.
[in] aHostInfo
مؤشر إلى معلومات مثيل الخدمة التي تم اكتشافها

otDnssdQueryHandleDiscoveredServiceInstance

void otDnssdQueryHandleDiscoveredServiceInstance(
  otInstance *aInstance,
  const char *aServiceFullName,
  otDnssdServiceInstanceInfo *aInstanceInfo
)

إبلاغ مثيل خدمة تم اكتشافه.

يجب أن يستدعي برنامج تعيين طلب البحث الخارجي (على سبيل المثال، الخادم الوكيل أثناء التصفّح) هذه الدالة لإبلاغ واجهة OpenThread الأساسية للخدمات أو مثيلات الخدمة التي اشتركت فيها.

التفاصيل
المَعلمات
[in] aInstance
بنية مثيل OpenThread.
[in] aServiceFullName
اسم الخدمة الكاملة التي يتم إنهاؤها.
[in] aInstanceInfo
مؤشر إلى معلومات مثيل الخدمة التي تم اكتشافها

otDnssdQuerySetCallbacks

void otDnssdQuerySetCallbacks(
  otInstance *aInstance,
  otDnssdQuerySubscribeCallback aSubscribe,
  otDnssdQueryUnsubscribeCallback aUnsubscribe,
  void *aContext
)

لضبط استدعاءات طلبات بحث خادم DNS-SD.

يتصل خادم نظام أسماء النطاقات (DNS) بـ aSubscribe للاشتراك في خدمة أو مثيل خدمة لحل طلب DNS-SD وaUnsubscribe لإلغاء الاشتراك عند حل طلب البحث أو انتهاء مهلته.

التفاصيل
المَعلمات
[in] aInstance
بنية مثيل OpenThread.
[in] aSubscribe
مؤشر لدالة معاودة الاتصال للاشتراك في خدمة أو مثيل خدمة
[in] aUnsubscribe
مؤشر لدالة معاودة الاتصال لإلغاء الاشتراك في خدمة أو مثيل خدمة
[in] aContext
مؤشر للسياق الخاص بالتطبيق.

otDnssdUpstreamQueryIsEnabled

bool otDnssdUpstreamQueryIsEnabled(
  otInstance *aInstance
)

عرض ما إذا كان خادم نظام أسماء النطاقات (DNSSD) سيعيد توجيه طلبات بحث نظام أسماء النطاقات إلى واجهة برمجة تطبيقات النظام الأساسي للبث المباشر لنظام أسماء النطاقات

متاحة عند تفعيل OPENTHREAD_CONFIG_DNS_UPSTREAM_QUERY_ENABLE.

التفاصيل
المَعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
قيم الإرجاع
TRUE
إذا كان خادم DNSSD يعيد توجيه طلبات نظام أسماء النطاقات.
FALSE
إذا لم يرسل خادم نظام أسماء النطاقات طلبات بحث نظام أسماء النطاقات.
يمكنك أيضًا الاطّلاع على ما يلي:
otDnssdUpstreamQuerySetEnabled

otDnssdUpstreamQuerySetEnabled.

void otDnssdUpstreamQuerySetEnabled(
  otInstance *aInstance,
  bool aEnabled
)

تفعيل أو إيقاف إعادة توجيه طلبات بحث نظام أسماء النطاقات إلى واجهة برمجة التطبيقات أسماء نطاقات النظام الأساسي لنظام أسماء النطاقات.

متاحة عند تفعيل OPENTHREAD_CONFIG_DNS_UPSTREAM_QUERY_ENABLE.

التفاصيل
المَعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aEnabled
قيمة منطقية لتفعيل/إيقاف إعادة توجيه طلبات بحث نظام أسماء النطاقات لإجراء عملية النقل
يمكنك أيضًا الاطّلاع على ما يلي:
otPlatDnsStartUpstreamQuery
otPlatDnsCancelUpstreamQuery
otPlatDnsUpstreamQueryDone

الموارد

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