خادم 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-SD.
otDnssdQuerySubscribeCallback)(void *aContext, const char *aFullName) typedef
void(*
يتم استدعاء عندما يشترك استعلام DNS-SD في أحد:
otDnssdQueryUnsubscribeCallback)(void *aContext, const char *aFullName) typedef
void(*
يتم استدعاؤه عندما يلغي طلب بحث DNS-SD إلغاء اشتراك أي مما يلي:
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-SD.

otDnssdQuerySubscribeCallback

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

يتم استدعاء عندما يشترك استعلام DNS-SD في أحد:

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

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

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

otDnssdQueryUnsubscribeCallback

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

يتم استدعاؤه عندما يلغي طلب بحث DNS-SD إلغاء اشتراك أي مما يلي:

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

يُعد تنفيذ طلب بحث DNS-SD مسؤولًا عن تحديد 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 بايت.
المرتجعات
نوع طلب البحث لنظام أسماء النطاقات-SD.

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-SD 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
في حال لم يعيد خادم DNSSD توجيه طلبات بحث نظام أسماء النطاقات.
راجِع أيضًا:
otDnssdUpstreamQuerySetEnabled

otDnssdUpstreamQuerySetEnabled

void otDnssdUpstreamQuerySetEnabled(
  otInstance *aInstance,
  bool aEnabled
)

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

تتوفّر هذه الميزة عندما تكون ميزة "OPENTHREAD_CONFIG_DNS_UPSTREAM_QUERY_ENABLE" مفعّلة.

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

المراجِع

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