שרת DNS-SD

מודול זה כולל ממשקי API לשרת 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
}
טיפוסים בני מנייה (enum)
ספירה זו מציינת סוג שאילתה של DNS-SD.

סוג Dedef

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
פונקציה זו מגדירה קריאה חוזרת (callback) של שרת DNS-SD.

מבנים

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

סוג השירות מתקן את שם המארח.

סוג Dedef

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
שם השירות המלא שנקבע (null) (לדוגמה: "_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
השם המלא של השירות, כפי שנקבע על ידי null (למשל "_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 כדי לקבל את השאילתה הראשונה.
החזרות
מצביע על השאילתה או 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-SD.

otDnssdQueryHandleDiscoveredHost

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

פונקציה זו מודיעה למארח שגילה.

מקודד השאילתה החיצוני (למשל, Discovery Proxy) צריך להפעיל את הפונקציה הזו כדי ליידע את Openthread של המארחים שנרשמתם אליהם.

פרטים
פרמטרים
[in] aInstance
מבנה המופע של OpenThread.
[in] aHostFullName
שם המארח המלא בוטל.
[in] aHostInfo
הפניה למידע על מופע השירות שהתגלה.

otDnssdQueryHandleDiscoveredServiceInstance

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

פונקציה זו מודיעה על מופע שירות שהתגלה.

מקודד השאילתה החיצוני (למשל, Discovery Proxy) צריך לקרוא לפונקציה הזו כדי ליידע את OpenThread של שירותי הליבה או מופעים של השירות שנרשמתם אליהם.

פרטים
פרמטרים
[in] aInstance
מבנה המופע של OpenThread.
[in] aServiceFullName
השם המלא של השירות שהושבת.
[in] aInstanceInfo
הפניה למידע על מופע השירות שהתגלה.

otDnssdQuerySetbacks

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

פונקציה זו מגדירה קריאה חוזרת (callback) של שרת DNS-SD.

שרת ה-DNS-SD מתקשר אל aSubscribe כדי להירשם לשירות או למופע שירות כדי לפתור שאילתות לגבי DNS-SD, וגם ל-aUnsubscribe לבטל את ההרשמה כשהבעיה נפתרה או עם הזמן הקצוב לתפוגה.

פרטים
פרמטרים
[in] aInstance
מבנה המופע של OpenThread.
[in] aSubscribe
מצביע לפונקציית הקריאה החוזרת כדי להירשם לשירות או למופע שירות.
[in] aUnsubscribe
מצביע לפונקציית הקריאה החוזרת לביטול ההרשמה של שירות או מופע שירות.
[in] aContext
מצביע על ההקשר הספציפי של האפליקציה.

משאבים

נושאי עזר של OpenThread API מגיעים מקוד המקור, שזמין ב-GitHub. למידע נוסף או כדי להוסיף מידע למסמכים שלנו, יש לעיין במשאבים.