Google is committed to advancing racial equity for Black communities. See how.

SRP

تتضمن هذه الوحدة الوظائف التي تتحكم في سلوك عميل SRP.

ملخص

تتضمن هذه الوحدة وظائف بروتوكول تسجيل الخدمة.

تتضمن هذه الوحدة وظائف للمخازن المؤقتة لعميل SRP وتجمع الخدمات.

لا تتوفر الوظائف في هذه الوحدة إلا عند تمكين الميزة OPENTHREAD_CONFIG_SRP_CLIENT_BUFFERS_ENABLE.

التعداد

anonymous enum {
OT_SRP_SERVER_SERVICE_FLAG_BASE_TYPE = 1 << 0,
OT_SRP_SERVER_SERVICE_FLAG_SUB_TYPE = 1 << 1,
OT_SRP_SERVER_SERVICE_FLAG_ACTIVE = 1 << 2,
OT_SRP_SERVER_SERVICE_FLAG_DELETED = 1 << 3
}
تعداد
anonymous enum {
OT_SRP_SERVER_FLAGS_ANY_SERVICE = (OT_SRP_SERVER_SERVICE_FLAG_BASE_TYPE | OT_SRP_SERVER_SERVICE_FLAG_SUB_TYPE | OT_SRP_SERVER_SERVICE_FLAG_ACTIVE | OT_SRP_SERVER_SERVICE_FLAG_DELETED),
OT_SRP_SERVER_FLAGS_BASE_TYPE_SERVICE_ONLY = (OT_SRP_SERVER_SERVICE_FLAG_BASE_TYPE | OT_SRP_SERVER_SERVICE_FLAG_ACTIVE | OT_SRP_SERVER_SERVICE_FLAG_DELETED),
OT_SRP_SERVER_FLAGS_SUB_TYPE_SERVICE_ONLY = (OT_SRP_SERVER_SERVICE_FLAG_SUB_TYPE | OT_SRP_SERVER_SERVICE_FLAG_ACTIVE | OT_SRP_SERVER_SERVICE_FLAG_DELETED),
OT_SRP_SERVER_FLAGS_ANY_TYPE_ACTIVE_SERVICE = (OT_SRP_SERVER_SERVICE_FLAG_BASE_TYPE | OT_SRP_SERVER_SERVICE_FLAG_SUB_TYPE | OT_SRP_SERVER_SERVICE_FLAG_ACTIVE),
OT_SRP_SERVER_FLAGS_ANY_TYPE_DELETED_SERVICE = (OT_SRP_SERVER_SERVICE_FLAG_BASE_TYPE | OT_SRP_SERVER_SERVICE_FLAG_SUB_TYPE | OT_SRP_SERVER_SERVICE_FLAG_ACTIVE)
}
تعداد
otSrpClientItemState {
OT_SRP_CLIENT_ITEM_STATE_TO_ADD ,
OT_SRP_CLIENT_ITEM_STATE_ADDING ,
OT_SRP_CLIENT_ITEM_STATE_TO_REFRESH ,
OT_SRP_CLIENT_ITEM_STATE_REFRESHING ,
OT_SRP_CLIENT_ITEM_STATE_TO_REMOVE ,
OT_SRP_CLIENT_ITEM_STATE_REMOVING ,
OT_SRP_CLIENT_ITEM_STATE_REGISTERED ,
OT_SRP_CLIENT_ITEM_STATE_REMOVED
}
تعداد
يحدد هذا التعداد حالة عنصر عميل SRP (معلومات الخدمة أو المضيف).
otSrpServerAddressMode {
OT_SRP_SERVER_ADDRESS_MODE_UNICAST = 0,
OT_SRP_SERVER_ADDRESS_MODE_ANYCAST = 1
}
تعداد
يمثل هذا التعداد وضع العنوان المستخدم من قبل خادم SRP.
otSrpServerState {
OT_SRP_SERVER_STATE_DISABLED = 0,
OT_SRP_SERVER_STATE_RUNNING = 1,
OT_SRP_SERVER_STATE_STOPPED = 2
}
تعداد
يمثل حالة خادم SRP.

النوع

otSrpClientAutoStartCallback )(const otSockAddr *aServerSockAddr, void *aContext) typedef
void(*
يحدد نوع مؤشر الوظيفة هذا رد الاتصال الذي يستخدمه عميل SRP لإعلام المستخدم عند بدء التشغيل التلقائي أو إيقافه.
otSrpClientBuffersServiceEntry typedef
يمثل هذا الهيكل إدخال تجمع خدمة عملاء SRP.
otSrpClientCallback )(otError aError, const otSrpClientHostInfo *aHostInfo, const otSrpClientService *aServices, const otSrpClientService *aRemovedServices, void *aContext) typedef
void(*
يحدد نوع مؤشر الوظيفة هذا رد الاتصال المستخدم من قبل عميل SRP لإعلام المستخدم بالتغييرات / الأحداث / الأخطاء.
otSrpClientHostInfo typedef
يمثل هذا الهيكل معلومات مضيف عميل SRP.
otSrpClientService typedef
يمثل هذا الهيكل خدمة عملاء SRP.
otSrpServerAddressMode typedef
يمثل هذا التعداد وضع العنوان المستخدم من قبل خادم SRP.
otSrpServerHost typedef
يمثل هذا النوع المعتم مضيف خدمة SRP.
otSrpServerLeaseConfig typedef
تتضمن هذه البنية تكوينات LEASE و KEY-LEASE لخادم SRP.
otSrpServerService typedef
يمثل هذا النوع المعتم خدمة SRP.
otSrpServerServiceFlags typedef
uint8_t
نوع علامة الخدمة للإشارة إلى الخدمات التي يجب تضمينها أو استبعادها عند البحث في (أو تكرار) قائمة خدمات SRP.
otSrpServerServiceUpdateHandler )(otSrpServerServiceUpdateId aId, const otSrpServerHost *aHost, uint32_t aTimeout, void *aContext) typedef
void(*
تعالج هذه الوظيفة تحديثات خدمة SRP.
otSrpServerServiceUpdateId typedef
uint32_t
معرّف معاملة تحديث خدمة SRP على خادم SRP.

المهام

otSrpClientAddService ( otInstance *aInstance, otSrpClientService *aService)
تضيف هذه الوظيفة خدمة يتم تسجيلها مع الخادم.
otSrpClientBuffersAllocateService ( otInstance *aInstance)
تخصص هذه الوظيفة إدخال خدمة جديد من التجمع.
otSrpClientBuffersFreeAllServices ( otInstance *aInstance)
void
تحرر هذه الوظيفة جميع إدخالات الخدمة المخصصة مسبقًا.
otSrpClientBuffersFreeService ( otInstance *aInstance, otSrpClientBuffersServiceEntry *aService)
void
تحرر هذه الوظيفة إدخال خدمة مخصص مسبقًا.
otSrpClientBuffersGetHostAddressesArray ( otInstance *aInstance, uint8_t *aArrayLength)
تحصل هذه الوظيفة على صفيف إدخالات عناوين IPv6 لاستخدامها كقائمة عناوين مضيف عميل SRP.
otSrpClientBuffersGetHostNameString ( otInstance *aInstance, uint16_t *aSize)
char *
تحصل هذه الوظيفة على المخزن المؤقت للسلسلة لاستخدامه في اسم مضيف عميل SRP.
otSrpClientBuffersGetServiceEntryInstanceNameString ( otSrpClientBuffersServiceEntry *aEntry, uint16_t *aSize)
char *
تحصل هذه الوظيفة على المخزن المؤقت للسلسلة لاسم مثيل الخدمة من إدخال خدمة.
otSrpClientBuffersGetServiceEntryServiceNameString ( otSrpClientBuffersServiceEntry *aEntry, uint16_t *aSize)
char *
تحصل هذه الوظيفة على المخزن المؤقت للسلسلة لاسم الخدمة من إدخال الخدمة.
otSrpClientBuffersGetServiceEntryTxtBuffer ( otSrpClientBuffersServiceEntry *aEntry, uint16_t *aSize)
uint8_t *
تحصل هذه الوظيفة على المخزن المؤقت لسجل TXT من إدخال الخدمة.
otSrpClientBuffersGetSubTypeLabelsArray ( otSrpClientBuffersServiceEntry *aEntry, uint16_t *aArrayLength)
const char **
تحصل هذه الوظيفة على المصفوفة الخاصة بتسميات الأنواع الفرعية للخدمة من إدخال الخدمة.
otSrpClientClearHostAndServices ( otInstance *aInstance)
void
تقوم هذه الوظيفة بمسح جميع معلومات المضيف وجميع الخدمات.
otSrpClientClearService ( otInstance *aInstance, otSrpClientService *aService)
تعمل هذه الوظيفة على مسح الخدمة وإزالتها على الفور من قائمة خدمة العملاء.
otSrpClientDisableAutoStartMode ( otInstance *aInstance)
void
تعمل هذه الوظيفة على تعطيل وضع بدء التشغيل التلقائي.
otSrpClientEnableAutoStartMode ( otInstance *aInstance, otSrpClientAutoStartCallback aCallback, void *aContext)
void
تتيح هذه الوظيفة وضع بدء التشغيل التلقائي.
otSrpClientGetDomainName ( otInstance *aInstance)
const char *
تحصل هذه الوظيفة على اسم المجال الذي يستخدمه عميل SRP.
otSrpClientGetHostInfo ( otInstance *aInstance)
هذه الوظيفة تحصل على معلومات المضيف.
otSrpClientGetKeyLeaseInterval ( otInstance *aInstance)
uint32_t
تحصل هذه الوظيفة على الفاصل الزمني لاستئجار المفتاح المستخدم في طلبات تحديث SRP.
otSrpClientGetLeaseInterval ( otInstance *aInstance)
uint32_t
تحصل هذه الوظيفة على فترة الإيجار المستخدمة في طلبات تحديث SRP.
otSrpClientGetServerAddress ( otInstance *aInstance)
const otSockAddr *
تحصل هذه الوظيفة على عنوان المقبس (عنوان IPv6 ورقم المنفذ) لخادم SRP الذي يستخدمه عميل SRP.
otSrpClientGetServices ( otInstance *aInstance)
تحصل هذه الوظيفة على قائمة الخدمات التي يديرها العميل.
otSrpClientIsAutoStartModeEnabled ( otInstance *aInstance)
bool
تشير هذه الوظيفة إلى الحالة الحالية لوضع بدء التشغيل التلقائي (ممكّن أو معطل).
otSrpClientIsRunning ( otInstance *aInstance)
bool
تشير هذه الوظيفة إلى ما إذا كان عميل SRP قيد التشغيل أم لا.
otSrpClientIsServiceKeyRecordEnabled ( otInstance *aInstance)
bool
تشير هذه الطريقة إلى ما إذا كان وضع "تضمين سجل مفتاح الخدمة" ممكّنًا أو معطلاً.
otSrpClientItemStateToString ( otSrpClientItemState aItemState)
const char *
هذه الوظيفة بتحويل otSrpClientItemState إلى سلسلة.
otSrpClientRemoveHostAndServices ( otInstance *aInstance, bool aRemoveKeyLease, bool aSendUnregToServer)
تبدأ هذه الوظيفة في عملية إزالة معلومات المضيف وجميع الخدمات.
otSrpClientRemoveService ( otInstance *aInstance, otSrpClientService *aService)
تطلب هذه الوظيفة أن تكون الخدمة غير مسجلة بالخادم.
otSrpClientSetCallback ( otInstance *aInstance, otSrpClientCallback aCallback, void *aContext)
void
تقوم هذه الوظيفة بتعيين رد الاتصال لإخطار المتصل بالأحداث / التغييرات من عميل SRP.
otSrpClientSetDomainName ( otInstance *aInstance, const char *aName)
تحدد هذه الوظيفة اسم المجال الذي سيتم استخدامه بواسطة عميل SRP.
otSrpClientSetHostAddresses ( otInstance *aInstance, const otIp6Address *aIp6Addresses, uint8_t aNumAddresses)
تقوم هذه الوظيفة بتعيين / تحديث قائمة عنوان IPv6 للمضيف.
otSrpClientSetHostName ( otInstance *aInstance, const char *aName)
تحدد هذه الوظيفة تسمية اسم المضيف.
otSrpClientSetKeyLeaseInterval ( otInstance *aInstance, uint32_t aInterval)
void
تعيّن هذه الوظيفة الفاصل الزمني لاستئجار المفتاح المستخدم في طلبات تحديث SRP.
otSrpClientSetLeaseInterval ( otInstance *aInstance, uint32_t aInterval)
void
تعيّن هذه الوظيفة الفاصل الزمني للإيجار المستخدم في طلبات تحديث SRP.
otSrpClientSetServiceKeyRecordEnabled ( otInstance *aInstance, bool aEnabled)
void
تعمل هذه الوظيفة على تمكين / تعطيل وضع "تضمين سجل مفتاح الخدمة".
otSrpClientStart ( otInstance *aInstance, const otSockAddr *aServerSockAddr)
تبدأ هذه الوظيفة عملية عميل SRP.
otSrpClientStop ( otInstance *aInstance)
void
توقف هذه الوظيفة عملية عميل SRP.
otSrpServerGetAddressMode ( otInstance *aInstance)
تقوم هذه الوظيفة بإرجاع وضع العنوان الذي يستخدمه خادم SRP.
otSrpServerGetAnycastModeSequenceNumber ( otInstance *aInstance)
uint8_t
تقوم هذه الوظيفة بإرجاع الرقم التسلسلي المستخدم مع وضع عنوان anycast.
otSrpServerGetDomain ( otInstance *aInstance)
const char *
تقوم هذه الوظيفة بإرجاع المجال المصرح به لخادم SRP.
otSrpServerGetLeaseConfig ( otInstance *aInstance, otSrpServerLeaseConfig *aLeaseConfig)
void
تقوم هذه الوظيفة بإرجاع تكوينات LEASE و KEY-LEASE لخادم SRP.
otSrpServerGetNextHost ( otInstance *aInstance, const otSrpServerHost *aHost)
تقوم هذه الوظيفة بإرجاع المضيف المسجل التالي على خادم SRP.
otSrpServerGetState ( otInstance *aInstance)
تقوم هذه الدالة بإرجاع حالة خادم SRP.
otSrpServerHandleServiceUpdateResult ( otInstance *aInstance, otSrpServerServiceUpdateId aId, otError aError)
void
تقوم هذه الوظيفة بالإبلاغ عن نتيجة معالجة تحديث SRP لخادم SRP.
otSrpServerHostFindNextService (const otSrpServerHost *aHost, const otSrpServerService *aPrevService, otSrpServerServiceFlags aFlags, const char *aServiceName, const char *aInstanceName)
تبحث هذه الوظيفة عن خدمة المطابقة التالية على المضيف.
otSrpServerHostGetAddresses (const otSrpServerHost *aHost, uint8_t *aAddressesNum)
const otIp6Address *
تقوم هذه الوظيفة بإرجاع عناوين مضيف معين.
otSrpServerHostGetFullName (const otSrpServerHost *aHost)
const char *
تقوم هذه الوظيفة بإرجاع الاسم الكامل للمضيف.
otSrpServerHostGetNextService (const otSrpServerHost *aHost, const otSrpServerService *aService)
تقوم هذه الوظيفة بإرجاع الخدمة التالية (باستثناء أي خدمات من النوع الفرعي) لمضيف معين.
otSrpServerHostIsDeleted (const otSrpServerHost *aHost)
bool
تخبر هذه الوظيفة ما إذا تم حذف مضيف خدمة SRP.
otSrpServerServiceGetFullName (const otSrpServerService *aService)
const char *
تقوم هذه الوظيفة بإرجاع اسم مثيل الخدمة الكامل للخدمة.
otSrpServerServiceGetHost (const otSrpServerService *aService)
تقوم هذه الوظيفة بإرجاع المضيف الذي يوجد عليه مثيل الخدمة.
otSrpServerServiceGetInstanceName (const otSrpServerService *aService)
const char *
تقوم هذه الوظيفة بإرجاع اسم مثيل الخدمة الكامل للخدمة.
otSrpServerServiceGetPort (const otSrpServerService *aService)
uint16_t
تقوم هذه الوظيفة بإرجاع منفذ مثيل الخدمة.
otSrpServerServiceGetPriority (const otSrpServerService *aService)
uint16_t
ترجع هذه الوظيفة أولوية مثيل الخدمة.
otSrpServerServiceGetServiceName (const otSrpServerService *aService)
const char *
تقوم هذه الوظيفة بإرجاع اسم الخدمة الكامل للخدمة.
otSrpServerServiceGetServiceSubTypeLabel (const otSrpServerService *aService, char *aLabel, uint8_t aMaxSize)
تحصل هذه الوظيفة على تسمية النوع الفرعي من اسم الخدمة.
otSrpServerServiceGetTxtData (const otSrpServerService *aService, uint16_t *aDataLength)
const uint8_t *
تقوم هذه الوظيفة بإرجاع بيانات سجل TXT لمثيل الخدمة.
otSrpServerServiceGetWeight (const otSrpServerService *aService)
uint16_t
ترجع هذه الدالة وزن مثيل الخدمة.
otSrpServerServiceIsDeleted (const otSrpServerService *aService)
bool
تشير هذه الوظيفة إلى ما إذا كان قد تم حذف خدمة SRP أم لا.
otSrpServerServiceIsSubType (const otSrpServerService *aService)
bool
تشير هذه الوظيفة إلى ما إذا كانت خدمة SRP من النوع الفرعي أم لا.
otSrpServerSetAddressMode ( otInstance *aInstance, otSrpServerAddressMode aMode)
تحدد هذه الوظيفة وضع العنوان الذي سيستخدمه خادم SRP.
otSrpServerSetAnycastModeSequenceNumber ( otInstance *aInstance, uint8_t aSequenceNumber)
تحدد هذه الوظيفة رقم التسلسل المستخدم مع وضع عنوان البث.
otSrpServerSetDomain ( otInstance *aInstance, const char *aDomain)
تقوم هذه الوظيفة بتعيين المجال على خادم SRP.
otSrpServerSetEnabled ( otInstance *aInstance, bool aEnabled)
void
تعمل هذه الوظيفة على تمكين / تعطيل خادم SRP.
otSrpServerSetLeaseConfig ( otInstance *aInstance, const otSrpServerLeaseConfig *aLeaseConfig)
تعمل هذه الوظيفة على تعيين تكوينات التأجيل والتأجير لخادم SRP.
otSrpServerSetServiceUpdateHandler ( otInstance *aInstance, otSrpServerServiceUpdateHandler aServiceHandler, void *aContext)
void
تقوم هذه الوظيفة بتعيين معالج تحديثات خدمة SRP على خادم SRP.

الهياكل

otSrpClientBuffersServiceEntry

يمثل هذا الهيكل إدخال تجمع خدمة عملاء SRP.

otSrpClientHostInfo

يمثل هذا الهيكل معلومات مضيف عميل SRP.

otSrpClientService

يمثل هذا الهيكل خدمة عملاء SRP.

otSrpServerLeaseConfig

تتضمن هذه البنية تكوينات LEASE و KEY-LEASE لخادم SRP.

التعداد

تعداد مجهول

 anonymous enum
الخصائص
OT_SRP_SERVER_SERVICE_FLAG_ACTIVE

تضمين الخدمات النشطة (غير المحذوفة).

OT_SRP_SERVER_SERVICE_FLAG_BASE_TYPE

قم بتضمين الخدمات الأساسية (وليس نوعًا فرعيًا).

OT_SRP_SERVER_SERVICE_FLAG_DELETED

تضمين الخدمات المحذوفة.

OT_SRP_SERVER_SERVICE_FLAG_SUB_TYPE

قم بتضمين خدمات من النوع الفرعي.

تعداد مجهول

 anonymous enum
الخصائص
OT_SRP_SERVER_FLAGS_ANY_SERVICE

هذا الثابت يحدد و otSrpServerServiceFlags مزيج قبول أي خدمة (قاعدة / النوع الفرعي، / نشط حذف).

OT_SRP_SERVER_FLAGS_ANY_TYPE_ACTIVE_SERVICE

هذا الثابت يحدد و otSrpServerServiceFlags مزيج قبول أي الخدمة الفعلية (وليس حذف).

OT_SRP_SERVER_FLAGS_ANY_TYPE_DELETED_SERVICE

ويعرف هذا الثابت على otSrpServerServiceFlags مزيج قبول أي خدمة حذفها.

OT_SRP_SERVER_FLAGS_BASE_TYPE_SERVICE_ONLY

ويعرف هذا الثابت على otSrpServerServiceFlags مزيج قبول خدمة قاعدة فقط.

OT_SRP_SERVER_FLAGS_SUB_TYPE_SERVICE_ONLY

ويعرف هذا الثابت على otSrpServerServiceFlags مزيج قبول الخدمة النوع الفرعي فقط.

otSrpClientItemState

 otSrpClientItemState

يحدد هذا التعداد حالة عنصر عميل SRP (معلومات الخدمة أو المضيف).

الخصائص
OT_SRP_CLIENT_ITEM_STATE_ADDING

يتم إضافة / تسجيل العنصر.

OT_SRP_CLIENT_ITEM_STATE_REFRESHING

يتم تحديث العنصر.

OT_SRP_CLIENT_ITEM_STATE_REGISTERED

العنصر مسجل مع الخادم.

OT_SRP_CLIENT_ITEM_STATE_REMOVED

تمت إزالة العنصر.

OT_SRP_CLIENT_ITEM_STATE_REMOVING

تتم إزالة العنصر.

OT_SRP_CLIENT_ITEM_STATE_TO_ADD

العنصر المراد إضافته / تسجيله.

OT_SRP_CLIENT_ITEM_STATE_TO_REFRESH

العنصر المراد تحديثه (إعادة التسجيل لتجديد عقد الإيجار).

OT_SRP_CLIENT_ITEM_STATE_TO_REMOVE

العنصر المراد إزالته.

otSrpServerAddressMode

 otSrpServerAddressMode

يمثل هذا التعداد وضع العنوان المستخدم من قبل خادم SRP.

يحدد وضع العنوان كيف يتم تحديد العنوان ورقم المنفذ بواسطة خادم SRP وكيف يتم نشر هذه المعلومات في بيانات شبكة الخيط.

الخصائص
OT_SRP_SERVER_ADDRESS_MODE_ANYCAST

وضع عنوان Anycast.

OT_SRP_SERVER_ADDRESS_MODE_UNICAST

وضع العنوان الأحادي.

otSrpServerState

 otSrpServerState

يمثل حالة خادم SRP.

الخصائص
OT_SRP_SERVER_STATE_DISABLED

تم تعطيل خادم SRP.

OT_SRP_SERVER_STATE_RUNNING

خادم SRP قيد التشغيل.

OT_SRP_SERVER_STATE_STOPPED

تم إيقاف خادم SRP.

النوع

otSrpClientAutoStartCallback

void(* otSrpClientAutoStartCallback)(const otSockAddr *aServerSockAddr, void *aContext)

يحدد نوع مؤشر الوظيفة هذا رد الاتصال الذي يستخدمه عميل SRP لإعلام المستخدم عند بدء التشغيل التلقائي أو إيقافه.

ويستخدم هذا فقط عند البدء التلقائي ميزة OPENTHREAD_CONFIG_SRP_CLIENT_AUTO_START_API_ENABLE تمكين.

يتم استدعاء رد الاتصال هذا عندما يتم تمكين وضع بدء التشغيل التلقائي ويتم تشغيل عميل SRP أو إيقافه تلقائيًا.

تفاصيل
العوامل
[in] aServerSockAddress
يشير المؤشر غير الفارغ إلى بدء تشغيل خادم SRP وسيعطي المؤشر عنوان مقبس الخادم المحدد. يشير مؤشر NULL إلى توقف خادم SRP.
[in] aContext
مؤشر إلى سياق عشوائي (يتم توفيره عند تسجيل رد الاتصال).

otSrpClientBuffersServiceEntry

struct otSrpClientBuffersServiceEntry otSrpClientBuffersServiceEntry

يمثل هذا الهيكل إدخال تجمع خدمة عملاء SRP.

otSrpClientCallback

void(* otSrpClientCallback)(otError aError, const otSrpClientHostInfo *aHostInfo, const otSrpClientService *aServices, const otSrpClientService *aRemovedServices, void *aContext)

يحدد نوع مؤشر الوظيفة هذا رد الاتصال المستخدم من قبل عميل SRP لإعلام المستخدم بالتغييرات / الأحداث / الأخطاء.

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

في حالة إعادة التسجيل الناجح لتحديث، aError أن المعلمة يكون OT_ERROR_NONE وقدمت معلومات المضيف وقائمة كاملة من الخدمات والمعلمات مساهمة في الاستدعاء. علما بأن المعلومات والخدمات المضيف كل مسار الدولة الخاصة بها في المقابلة mState متغير عضو من بنية البيانات ذات الصلة (الدولة تشير إلى ما إذا تم تسجيل المضيف المعلومات / الخدمة أو إزالتها أو لا يزال يتم إضافة / إزالة، الخ).

يتم تمرير قائمة الخدمات التي تم حذفها كما تلقاء نفسها مرتبطة قائمة aRemovedServices في الاستدعاء. لاحظ أنه عندما يتم استدعاء الاستدعاء، ويتم العميل SRP (تنفيذ OpenThread) مع الحالات التي تمت إزالتها الخدمة المدرجة في aRemovedServices ولا مسارات أطول / مخازن لهم (أي لو كان من رد نسميه otSrpClientGetServices() الخدمات التي تمت إزالتها لن تكون موجودة في القائمة التي تم إرجاعها). يساعد توفير قائمة منفصلة بالخدمات التي تمت إزالتها في رد الاتصال على توضيح العناصر التي تمت إزالتها الآن والسماح للمستخدم بإعادة المطالبة / إعادة استخدام المثيلات.

إذا رفض الخادم طلب تحديث SRP ، فسيتم تعيين رمز استجابة DNS (RFC 2136) للأخطاء التالية:

  • (0) NOERROR Success (بلا حالة خطأ) -> OT_ERROR_NONE
  • (1) تعذر على خادم FORMERR التفسير بسبب خطأ في التنسيق -> OT_ERROR_PARSE
  • (2) واجه SERVFAIL Server فشلًا داخليًا -> OT_ERROR_FAILED
  • (3) اسم NXDOMAIN الذي يجب أن يكون موجودًا ، غير موجود -> OT_ERROR_NOT_FOUND
  • (4) NOTIMP Server لا يدعم نوع الاستعلام (OpCode) -> OT_ERROR_NOT_IMPLEMENTED
  • (5) رفض الخادم المرفوض لأسباب تتعلق بالسياسة / الأمان -> OT_ERROR_SECURITY
  • (6) YXDOMAIN بعض الأسماء التي يجب ألا تكون موجودة ، موجودة -> OT_ERROR_DUPLICATED
  • (7) YXRRSET بعض مجموعة RR التي لا ينبغي أن تكون موجودة ، موجودة -> OT_ERROR_DUPLICATED
  • (8) NXRRSET بعض مجموعة RR التي يجب أن تكون موجودة ، غير موجودة -> OT_ERROR_NOT_FOUND
  • (9) خدمة NOTAUTH ليست مخولة للمنطقة -> OT_ERROR_SECURITY
  • (10) NOTZONE اسم غير موجود في المنطقة -> OT_ERROR_PARSE
  • (20) BADNAME اسم سيء -> OT_ERROR_PARSE
  • (21) خوارزمية BADALG سيئة -> OT_ERROR_SECURITY
  • (22) اقتطاع غير صالح لـ BADTRUN -> OT_ERROR_PARSE
  • رموز الاستجابة الأخرى -> OT_ERROR_FAILED

الأخطاء التالية ممكنة أيضًا:

  • OT_ERROR_RESPONSE_TIMEOUT: انتهت المهلة في انتظار استجابة من الخادم (سيستمر العميل في إعادة المحاولة).
  • OT_ERROR_INVALID_ARGS: هيكل الخدمة المقدمة غير صالحة (على سبيل المثال، اسم الخدمة سيئة أو otDnsTxtEntry ).
  • OT_ERROR_NO_BUFS: المخزن المؤقت غير كاف لتحضير أو إرسال رسالة التحديث.

لاحظ أنه في حالة حدوث أي فشل ، يواصل العميل العملية ، أي أنه يعد و (يعيد) إرسال رسالة تحديث SRP إلى الخادم ، بعد فترة انتظار. إعادة المحاولة تنتظر يبدأ فاصل من قيمة الحد الأدنى وبنسبة عامل النمو كل فشل حتى قيمة الحد الأقصى (يرجى الاطلاع على تكوين المعلمة OPENTHREAD_CONFIG_SRP_CLIENT_MIN_RETRY_WAIT_INTERVAL وما يتصل بها من هم لمزيد من التفاصيل).

تفاصيل
العوامل
[in] aError
الخطأ (انظر أعلاه).
[in] aHostInfo
مؤشر لاستضافة المعلومات.
[in] aService
رأس القائمة المرتبطة التي تحتوي على جميع الخدمات (باستثناء تلك التي تمت إزالتها). NULL إذا كانت القائمة فارغة.
[in] aRemovedServices
رأس القائمة المرتبطة التي تحتوي على جميع الخدمات المحذوفة. NULL إذا كانت القائمة فارغة.
[in] aContext
مؤشر إلى سياق عشوائي (يتم توفيره عند تسجيل رد الاتصال).

otSrpClientHostInfo

struct otSrpClientHostInfo otSrpClientHostInfo

يمثل هذا الهيكل معلومات مضيف عميل SRP.

otSrpClientService

struct otSrpClientService otSrpClientService

يمثل هذا الهيكل خدمة عملاء SRP.

القيم في هذا الهيكل، بما في ذلك المخازن المؤقتة سلسلة لأسماء وإدخالات سجل TXT، يجب أن تستمر وتبقى ثابتة بعد يتم تمرير مثيل لهذا الهيكل إلى OpenThread من otSrpClientAddService() أو otSrpClientRemoveService() .

otSrpServerAddressMode

enum otSrpServerAddressMode otSrpServerAddressMode

يمثل هذا التعداد وضع العنوان المستخدم من قبل خادم SRP.

يحدد وضع العنوان كيف يتم تحديد العنوان ورقم المنفذ بواسطة خادم SRP وكيف يتم نشر هذه المعلومات في بيانات شبكة الخيط.

otSrpServerHost

struct otSrpServerHost otSrpServerHost

يمثل هذا النوع المعتم مضيف خدمة SRP.

otSrpServerLeaseConfig

struct otSrpServerLeaseConfig otSrpServerLeaseConfig

تتضمن هذه البنية تكوينات LEASE و KEY-LEASE لخادم SRP.

otSrpServerService

struct otSrpServerService otSrpServerService

يمثل هذا النوع المعتم خدمة SRP.

otSrpServerServiceFlags

uint8_t otSrpServerServiceFlags

نوع علامة الخدمة للإشارة إلى الخدمات التي يجب تضمينها أو استبعادها عند البحث في (أو تكرار) قائمة خدمات SRP.

هذا هو مزيج من bit-flags. يتم تعريف الأعلام قليلا محددة في التعداد OT_SRP_SERVER_FLAG_* .

otSrpServerServiceUpdateHandler

void(* otSrpServerServiceUpdateHandler)(otSrpServerServiceUpdateId aId, const otSrpServerHost *aHost, uint32_t aTimeout, void *aContext)

تعالج هذه الوظيفة تحديثات خدمة SRP.

يتم استدعاء هذه الوظيفة بواسطة خادم SRP لإعلام أنه يتم تحديث مضيف SRP وربما خدمات SRP. من المهم أن التحديثات SRP لا تلتزم حتى يعود معالج النتيجة عن طريق الاتصال otSrpServerHandleServiceUpdateResult أو انقضاء المهلة بعد aTimeout .

يجب على مراقب خدمة SRP الاتصال دائمًا بـ otSrpServerHandleServiceUpdateResult برمز الخطأ OT_ERROR_NONE فور تلقي أحداث التحديث.

قد يقوم معالج أكثر عمومية بإجراء عمليات التحقق من الصحة على مضيف / خدمات SRP ويرفض تحديثات SRP في حالة فشل أي عملية تحقق من الصحة. على سبيل المثال ، يجب أن يعلن وكيل الإعلان (أو يزيل) المضيف والخدمات على ارتباط قادر على الإرسال المتعدد ويعيد رمز خطأ محددًا في حالة حدوث أي فشل.

تفاصيل
العوامل
[in] aId
معرف عملية تحديث الخدمة. يجب تمرير هذا الرقم إلى الخلف مع otSrpServerHandleServiceUpdateResult .
[in] aHost
مؤشر إلى كائن otSrpServerHost الذي يحتوي على تحديثات SRP. يجب على المعالج نشر / إلغاء نشر المضيف وكل نقطة خدمة لهذا المضيف بالقواعد التالية:
  1. إذا لم يتم حذف المضيف (المشار إليها otSrpServerHostIsDeleted )، ومن ثم ينبغي أن تنشر أو تحديثها مع MDNS. خلاف ذلك ، يجب أن يكون المضيف غير منشور (إزالة AAAA RRs).
  2. لكل نقاط خدمة لهذا المضيف ، يجب أن تكون غير منشورة إذا كان المضيف غير منشور. خلاف ذلك، ينبغي للمعالج نشر أو تحديث الخدمة عندما لا يتم حذفه (المشار إليها otSrpServerServiceIsDeleted ) وبرنامج الأمم المتحدة للنشر عندما حذفه.
[in] aTimeout
الحد الأقصى للوقت بالمللي ثانية للمعالج لمعالجة حدث الخدمة.
[in] aContext
مؤشر إلى سياق خاص بالتطبيق.
أنظر أيضا:
otSrpServerSetServiceUpdateHandler
otSrpServerHandleServiceUpdateResult

otSrpServerServiceUpdateId

uint32_t otSrpServerServiceUpdateId

معرّف معاملة تحديث خدمة SRP على خادم SRP.

المهام

otSrpClientAddService

otError otSrpClientAddService(
  otInstance *aInstance,
  otSrpClientService *aService
)

تضيف هذه الوظيفة خدمة يتم تسجيلها مع الخادم.

بعد مكالمة ناجحة لهذه الوظيفة، otSrpClientCallback سوف يطلق للإبلاغ عن حالة إضافة خدمة / تسجيل مع خادم SRP.

و otSrpClientService المثال يتم المشار إليه بواسطة aService يجب أن تستمر وتبقى على حالها بعد عودته من هذه الوظيفة (مع OT_ERROR_NONE ). سيحفظ OpenThread المؤشر في مثيل الخدمة.

و otSrpClientService لا تعد تتبع المثال من خلال OpenThread ويمكن استخلاص فقط عندما

  • يتم إزالته بوضوح بواسطة استدعاء otSrpClientRemoveService() أو إزالة جنبا إلى جنب مع الخدمات الأخرى بواسطة استدعاء otSrpClientRemoveHostAndServices() and only after the ما يسمى otSrpClientCallback` مشيرا تمت إزالة هذه الخدمة. أو،
  • دعوة إلى otSrpClientClearHostAndServices() الذي يزيل المضيف وجميع الخدمات ذات الصلة على الفور.

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aService
مؤشر إلى otSrpClientService المثال لإضافة.
إرجاع القيم
OT_ERROR_NONE
بدأت إضافة الخدمة بنجاح. و otSrpClientCallback وسوف يطلق على تقرير حالة.
OT_ERROR_ALREADY
توجد خدمة بنفس أسماء الخدمة والمثيل موجودة بالفعل في القائمة.
OT_ERROR_INVALID_ARGS
هيكل الخدمة غير صالح (على سبيل المثال، اسم الخدمة سيئة أو otDnsTxtEntry ).

otSrpClientBuffersAllocateService

otSrpClientBuffersServiceEntry * otSrpClientBuffersAllocateService(
  otInstance *aInstance
)

تخصص هذه الوظيفة إدخال خدمة جديد من التجمع.

ستتم تهيئة مثيل إدخال الخدمة المرتجع على النحو التالي:

  • mService.mName سوف نشير إلى وجود مخزن مؤقت سلسلة المخصصة التي يمكن استرجاعها باستخدام وظيفة otSrpClientBuffersGetServiceEntryServiceNameString() .
  • mService.mInstanceName سوف نشير إلى وجود مخزن مؤقت سلسلة المخصصة التي يمكن استرجاعها باستخدام وظيفة otSrpClientBuffersGetServiceEntryInstanceNameString() .
  • mService.mSubTypeLabels نقطة إلى مجموعة التي تم إرجاعها من otSrpClientBuffersGetSubTypeLabelsArray() .
  • mService.mTxtEntries سيشير إلى mTxtEntry .
  • mService.mNumTxtEntries سيتم تعيين إلى واحد.
  • أخرى mService يتم تعيين حقول (منفذ، والأولوية، الوزن) إلى الصفر.
  • mTxtEntry.mKey ومن المقرر أن NULL (يتم التعامل القيمة كما المشفرة بالفعل).
  • mTxtEntry.mValue سوف نشير إلى وجود مخزن مؤقت المخصصة التي يمكن استرجاعها باستخدام وظيفة otSrpClientBuffersGetServiceEntryTxtBuffer() .
  • mTxtEntry.mValueLength تم تعيين إلى الصفر.
  • يتم مسح جميع المخازن المؤقتة للبيانات / السلسلة والمصفوفات ذات الصلة إلى الصفر.

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.
عائدات
مؤشر لإدخال الخدمة المخصص حديثًا أو NULL إذا لم يكن المزيد من الإدخال متوفرًا في التجمع.

otSrpClientBuffersFreeAllServices

void otSrpClientBuffersFreeAllServices(
  otInstance *aInstance
)

تحرر هذه الوظيفة جميع إدخالات الخدمة المخصصة مسبقًا.

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.

otSrpClientBuffersFreeService

void otSrpClientBuffersFreeService(
  otInstance *aInstance,
  otSrpClientBuffersServiceEntry *aService
)

تحرر هذه الوظيفة إدخال خدمة مخصص مسبقًا.

و aService يجب أن تخصص مسبقا باستخدام otSrpClientBuffersAllocateService() وليس الافراج حتى الان. وإلا فإن سلوك هذه الوظيفة غير محدد.

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aService
مؤشر لدخول الخدمة مجانًا (يجب ألا يكون فارغًا).

otSrpClientBuffersGetHostAddressesArray

otIp6Address * otSrpClientBuffersGetHostAddressesArray(
  otInstance *aInstance,
  uint8_t *aArrayLength
)

تحصل هذه الوظيفة على صفيف إدخالات عناوين IPv6 لاستخدامها كقائمة عناوين مضيف عميل SRP.

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.
[out] aArrayLength
مؤشر إلى متغير لإرجاع طول الصفيف ، أي عدد إدخالات عنوان IPv6 في المصفوفة (يجب ألا يكون فارغًا).
عائدات
مؤشر إلى مجموعة من otIp6Address إدخالات (يتم إرجاع عدد الإدخالات في aArrayLength ).

otSrpClientBuffersGetHostNameString

char * otSrpClientBuffersGetHostNameString(
  otInstance *aInstance,
  uint16_t *aSize
)

تحصل هذه الوظيفة على المخزن المؤقت للسلسلة لاستخدامه في اسم مضيف عميل SRP.

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.
[out] aSize
المؤشر إلى متغير لإرجاع الحجم (عدد البايتات) من المخزن المؤقت للسلسلة (يجب ألا يكون فارغًا).
عائدات
مؤشر لمخزن الأحرف المؤقت لاستخدامه في اسم مضيف عميل SRP.

otSrpClientBuffersGetServiceEntryInstanceNameString

char * otSrpClientBuffersGetServiceEntryInstanceNameString(
  otSrpClientBuffersServiceEntry *aEntry,
  uint16_t *aSize
)

تحصل هذه الوظيفة على المخزن المؤقت للسلسلة لاسم مثيل الخدمة من إدخال خدمة.

تفاصيل
العوامل
[in] aEntry
مؤشر لإدخال خدمة تم تخصيصه مسبقًا (يجب ألا يكون فارغًا).
[out] aSize
مؤشر إلى متغير لإرجاع الحجم (عدد البايتات) للمخزن المؤقت للسلسلة (يجب ألا يكون فارغًا).
عائدات
مؤشر إلى مخزن السلسلة.

otSrpClientBuffersGetServiceEntryServiceNameString

char * otSrpClientBuffersGetServiceEntryServiceNameString(
  otSrpClientBuffersServiceEntry *aEntry,
  uint16_t *aSize
)

تحصل هذه الوظيفة على المخزن المؤقت للسلسلة لاسم الخدمة من إدخال الخدمة.

تفاصيل
العوامل
[in] aEntry
مؤشر لإدخال خدمة تم تخصيصه مسبقًا (يجب ألا يكون فارغًا).
[out] aSize
مؤشر إلى متغير لإرجاع الحجم (عدد البايتات) لمخزن السلسلة المؤقت (يجب ألا يكون فارغًا).
عائدات
مؤشر إلى مخزن السلسلة.

otSrpClientBuffersGetServiceEntryTxtBuffer

uint8_t * otSrpClientBuffersGetServiceEntryTxtBuffer(
  otSrpClientBuffersServiceEntry *aEntry,
  uint16_t *aSize
)

تحصل هذه الوظيفة على المخزن المؤقت لسجل TXT من إدخال الخدمة.

تفاصيل
العوامل
[in] aEntry
مؤشر لإدخال خدمة تم تخصيصه مسبقًا (يجب ألا يكون فارغًا).
[out] aSize
مؤشر إلى متغير لإرجاع حجم المخزن المؤقت (عدد البايتات) (يجب ألا يكون فارغًا).
عائدات
مؤشر إلى المخزن المؤقت.

otSrpClientBuffersGetSubTypeLabelsArray

const char ** otSrpClientBuffersGetSubTypeLabelsArray(
  otSrpClientBuffersServiceEntry *aEntry,
  uint16_t *aArrayLength
)

تحصل هذه الوظيفة على المصفوفة الخاصة بتسميات الأنواع الفرعية للخدمة من إدخال الخدمة.

تفاصيل
العوامل
[in] aEntry
مؤشر لإدخال خدمة تم تخصيصه مسبقًا (يجب ألا يكون فارغًا).
[out] aArrayLength
مؤشر إلى متغير لإرجاع طول الصفيف (يجب ألا يكون فارغًا).
عائدات
مؤشر إلى المصفوفة.

otSrpClientClearHostAndServices

void otSrpClientClearHostAndServices(
  otInstance *aInstance
)

تقوم هذه الوظيفة بمسح جميع معلومات المضيف وجميع الخدمات.

على عكس otSrpClientRemoveHostAndServices() الذي يرسل رسالة تحديث إلى الملقم لإزالة كافة المعلومات، هذه وظيفة مسح جميع المعلومات على الفور دون أي تفاعل مع الخادم.

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.

otSrpClientClearService

otError otSrpClientClearService(
  otInstance *aInstance,
  otSrpClientService *aService
)

تعمل هذه الوظيفة على مسح الخدمة وإزالتها على الفور من قائمة خدمة العملاء.

على عكس otSrpClientRemoveService() الذي يرسل رسالة تحديث إلى الملقم لإزالة هذه الخدمة، هذه وظيفة مسح الخدمة من القائمة خدمة العميل من دون أي تفاعل مع الخادم. في مكالمة ناجحة لهذه الوظيفة، و otSrpClientCallback لن يتم استدعاؤها و aService يمكن استخلاص الدخول وإعادة استخدامها من قبل المتصل على الفور.

هذه الوظيفة يمكن استخدامها جنبا إلى جنب مع استدعاء لاحقة otSrpClientAddService() (يحتمل أن تكون إعادة استخدام نفس aService دخول مع نفس الخدمة والمثال أسماء) إلى تحديث بعض المعلمات في خدمة القائمة.

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aService
مؤشر إلى otSrpClientService المثال حذف.
إرجاع القيم
OT_ERROR_NONE
و aService يتم حذف بنجاح. يمكن استصلاحه وإعادة استخدامه على الفور.
OT_ERROR_NOT_FOUND
لا يمكن العثور على الخدمة في القائمة.

otSrpClientDisableAutoStartMode

void otSrpClientDisableAutoStartMode(
  otInstance *aInstance
)

تعمل هذه الوظيفة على تعطيل وضع بدء التشغيل التلقائي.

هذا لا يتوفر إلا عند البدء التلقائي ميزة OPENTHREAD_CONFIG_SRP_CLIENT_AUTO_START_API_ENABLE تمكين.

لن يؤدي تعطيل وضع بدء التشغيل التلقائي إلى إيقاف العميل إذا كان قيد التشغيل بالفعل ولكن يتوقف العميل عن مراقبة بيانات شبكة مؤشر الترابط للتحقق من أن خادم SRP المحدد لا يزال موجودًا فيه.

علما بأن الدعوة إلى otSrpClientStop() وأيضا تعطيل وضع صناعة السيارات في البداية.

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.

otSrpClientEnableAutoStartMode

void otSrpClientEnableAutoStartMode(
  otInstance *aInstance,
  otSrpClientAutoStartCallback aCallback,
  void *aContext
)

تتيح هذه الوظيفة وضع بدء التشغيل التلقائي.

هذا لا يتوفر إلا عند البدء التلقائي ميزة OPENTHREAD_CONFIG_SRP_CLIENT_AUTO_START_API_ENABLE تمكين.

التكوين الخيار OPENTHREAD_CONFIG_SRP_CLIENT_AUTO_START_DEFAULT_MODE يحدد وضع صناعة السيارات في البدء الافتراضي (إذا كان ممكنا أو المعوقين في بداية OT كومة).

عند تمكين بدء التشغيل التلقائي ، يقوم عميل SRP بمراقبة بيانات شبكة مؤشر الترابط لإدخالات خدمة خادم SRP ويبدأ تلقائيًا ويوقف العميل عند اكتشاف خادم SRP.

إذا تم العثور على عدة خوادم SRP ، فسيتم اختيار خادم عشوائي. إذا لم يعد يتم اكتشاف خادم SRP المحدد (لم يعد موجودًا في بيانات شبكة مؤشر الترابط) ، فسيتم إيقاف عميل SRP ومن ثم قد يتحول إلى خادم SRP آخر (إذا كان متاحًا).

عند بدء تشغيل العميل SRP صراحة خلال مكالمة ناجحة ل otSrpClientStart() ، ونظرا عنوان خادم SRP في otSrpClientStart() سوف تستمر في استخدامها بغض النظر عن حالة وضع صناعة السيارات في بداية وعما إذا كان تم اكتشاف نفس عنوان خادم SRP أم لا في بيانات شبكة الموضوع. في هذه الحالة، فقط صريحة otSrpClientStop() سوف تتوقف الدعوة العميل.

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aCallback
رد اتصال للإعلام عند بدء / إيقاف العميل تلقائيًا. يمكن أن تكون NULL إذا لم تكن هناك حاجة.
[in] aContext
والسياق لتمريرها عند استدعاء aCallback .

otSrpClientGetDomainName

const char * otSrpClientGetDomainName(
  otInstance *aInstance
)

تحصل هذه الوظيفة على اسم المجال الذي يستخدمه عميل SRP.

تتطلب هذه الوظيفة OPENTHREAD_CONFIG_SRP_CLIENT_DOMAIN_NAME_API_ENABLE إلى تمكين.

إذا لم يتم تعيين اسم المجال ، فسيتم استخدام "default.service.arpa".

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.
عائدات
سلسلة اسم المجال.

otSrpClientGetHostInfo

const otSrpClientHostInfo * otSrpClientGetHostInfo(
  otInstance *aInstance
)

هذه الوظيفة تحصل على معلومات المضيف.

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.
عائدات
مؤشر لاستضافة بنية المعلومات.

otSrpClientGetKeyLeaseInterval

uint32_t otSrpClientGetKeyLeaseInterval(
  otInstance *aInstance
)

تحصل هذه الوظيفة على الفاصل الزمني لاستئجار المفتاح المستخدم في طلبات تحديث SRP.

لاحظ أن هذه هي مدة التأجير التي يطلبها عميل SRP. قد يختار الخادم قبول فترة تأجير مختلفة.

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.
عائدات
الفاصل الزمني لاستئجار المفتاح (بالثواني).

otSrpClientGetLeaseInterval

uint32_t otSrpClientGetLeaseInterval(
  otInstance *aInstance
)

تحصل هذه الوظيفة على فترة الإيجار المستخدمة في طلبات تحديث SRP.

لاحظ أن هذه هي مدة التأجير التي يطلبها عميل SRP. قد يختار الخادم قبول فترة تأجير مختلفة.

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.
عائدات
فترة الإيجار (بالثواني).

otSrpClientGetServerAddress

const otSockAddr * otSrpClientGetServerAddress(
  otInstance *aInstance
)

تحصل هذه الوظيفة على عنوان المقبس (عنوان IPv6 ورقم المنفذ) لخادم SRP الذي يستخدمه عميل SRP.

إذا لم يكن العميل قيد التشغيل ، فسيكون العنوان غير محدد (الكل صفر) برقم منفذ صفري.

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.
عائدات
مؤشر إلى عنوان مأخذ توصيل خادم SRP (يكون دائمًا غير فارغ).

otSrpClientGetServices

const otSrpClientService * otSrpClientGetServices(
  otInstance *aInstance
)

تحصل هذه الوظيفة على قائمة الخدمات التي يديرها العميل.

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

otSrpClientIsAutoStartModeEnabled

bool otSrpClientIsAutoStartModeEnabled(
  otInstance *aInstance
)

تشير هذه الوظيفة إلى الحالة الحالية لوضع بدء التشغيل التلقائي (ممكّن أو معطل).

هذا لا يتوفر إلا عند البدء التلقائي ميزة OPENTHREAD_CONFIG_SRP_CLIENT_AUTO_START_API_ENABLE تمكين.

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.
عائدات
صحيح إذا تم تمكين وضع بدء التشغيل التلقائي ، وخطأ في الحالات الأخرى.

otSrpClientIs قيد التشغيل

bool otSrpClientIsRunning(
  otInstance *aInstance
)

تشير هذه الوظيفة إلى ما إذا كان عميل SRP قيد التشغيل أم لا.

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.
عائدات
تكون صحيحة إذا كان عميل SRP قيد التشغيل ، وخطأ في الحالات الأخرى.

otSrpClientIsServiceKeyRecordEnabled

bool otSrpClientIsServiceKeyRecordEnabled(
  otInstance *aInstance
)

تشير هذه الطريقة إلى ما إذا كان وضع "تضمين سجل مفتاح الخدمة" ممكّنًا أو معطلاً.

تتوفر هذه الوظيفة عندما OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE تمكين التكوين.

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.
عائدات
تكون القيمة TRUE في حالة تمكين وضع "تضمين سجل مفتاح الخدمة" ، وإلا فالخطأ.

otSrpClientItemStateToString

const char * otSrpClientItemStateToString(
  otSrpClientItemState aItemState
)

هذه الوظيفة بتحويل otSrpClientItemState إلى سلسلة.

تفاصيل
العوامل
[in] aItemState
حالة العنصر.
عائدات
تمثيل سلسلة من aItemState .

otSrpClientRemoveHostAndServices

otError otSrpClientRemoveHostAndServices(
  otInstance *aInstance,
  bool aRemoveKeyLease,
  bool aSendUnregToServer
)

تبدأ هذه الوظيفة في عملية إزالة معلومات المضيف وجميع الخدمات.

بعد عودته من هذه الوظيفة، otSrpClientCallback سوف يطلق للإبلاغ عن حالة طلب إزالة مع خادم SRP.

إذا كانت المعلومات المضيف إلى إزالتها نهائيا من الخادم، aRemoveKeyLease ينبغي أن تكون مجموعة ل true الذي يزيل عقد الإيجار الرئيسي المرتبطة المضيف على الخادم. بخلاف ذلك ، يتم الاحتفاظ بسجل تأجير المفتاح كما كان من قبل ، مما يضمن أن يحتفظ الخادم باسم المضيف احتياطيًا عندما يكون العميل قادرًا مرة أخرى على توفير وتسجيل خدمته (خدماته).

و aSendUnregToServer يحدد السلوك عندما لم يتم تسجيل معلومات المضيف بعد مع الخادم. إذا aSendUnregToServer ومن المقرر أن false (والذي هو الافتراضي / القيمة المتوقعة) ثم العميل سوف SRP إزالة فورا من المعلومات والخدمات المضيف دون إرسال رسالة تحديث إلى خادم (لا حاجة لتحديث الملقم إذا لم يتم تسجيل أي شيء معها). إذا aSendUnregToServer ومن المقرر أن true ثم فإن العميل SRP إرسال رسالة تحديث إلى الملقم. لاحظ أنه إذا تم تسجيل معلومات المضيف ثم قيمة aSendUnregToServer لا يهم وسوف العميل SRP دائما يرسل رسالة تحديث إلى خادم يطلب إزالة جميع المعلومات.

حالة واحدة حيث aSendUnregToServer يمكن أن تكون مفيدة على إعادة تعيين الجهاز / اعادة التشغيل، والمتصل قد ترغب في إزالة أية خدمات مسجلة مسبقا مع الخادم. في هذه الحالة، والمتصل يمكن otSrpClientSetHostName() ومن ثم طلب otSrpClientRemoveHostAndServices() مع aSendUnregToServer كما true .

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aRemoveKeyLease
منطقي يشير إلى ما إذا كان يجب أيضًا إزالة عقد تأجير مفتاح المضيف أم لا.
[in] aSendUnregToServer
منطقي يشير إلى ما إذا كان سيتم إرسال تحديث إلى الخادم عندما لا يتم تسجيل معلومات المضيف.
إرجاع القيم
OT_ERROR_NONE
بدأت إزالة معلومات وخدمات المضيف بنجاح. و otSrpClientCallback وسوف يطلق على تقرير حالة.
OT_ERROR_ALREADY
تمت إزالة معلومات المضيف بالفعل.

otSrpClientRemoveService

otError otSrpClientRemoveService(
  otInstance *aInstance,
  otSrpClientService *aService
)

تطلب هذه الوظيفة أن تكون الخدمة غير مسجلة بالخادم.

بعد مكالمة ناجحة لهذه الوظيفة، otSrpClientCallback سوف يطلق للإبلاغ عن حالة طلب إزالة مع خادم SRP.

و otSrpClientService المثال يتم المشار إليه بواسطة aService يجب أن تستمر وتبقى على حالها بعد عودته من هذه الوظيفة (مع OT_ERROR_NONE ). سيحتفظ OpenThread بمثيل الخدمة أثناء عملية الإزالة. فقط بعد otSrpClientCallback يسمى يدل على سبيل المثال خدمة يتم استبعادها من قائمة خدمة العميل SRP ويمكن أن تتحرر / إعادة استخدامها.

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aService
مؤشر إلى otSrpClientService المثال لإزالة.
إرجاع القيم
OT_ERROR_NONE
بدأت إزالة الخدمة بنجاح. و otSrpClientCallback وسوف يطلق على تقرير حالة.
OT_ERROR_NOT_FOUND
لا يمكن العثور على الخدمة في القائمة.

otSrpClientSetCallback

void otSrpClientSetCallback(
  otInstance *aInstance,
  otSrpClientCallback aCallback,
  void *aContext
)

تقوم هذه الوظيفة بتعيين رد الاتصال لإخطار المتصل بالأحداث / التغييرات من عميل SRP.

يسمح عميل SRP بتسجيل رد اتصال واحد. لذلك ستحل الاستدعاءات المتتالية لهذه الوظيفة محل أي وظائف رد اتصال تم تعيينها مسبقًا.

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

otSrpClientSetDomainName

otError otSrpClientSetDomainName(
  otInstance *aInstance,
  const char *aName
)

تحدد هذه الوظيفة اسم المجال الذي سيتم استخدامه بواسطة عميل SRP.

تتطلب هذه الوظيفة OPENTHREAD_CONFIG_SRP_CLIENT_DOMAIN_NAME_API_ENABLE إلى تمكين.

إذا لم يتم تعيين "default.service.arpa" فسيتم استخدامه.

وأشار المخزن المؤقت اسم السلسلة التي aName يجب أن تستمر وتبقى دون تغيير بعد عودته من هذه الوظيفة. OpenThread سيبقي المؤشر على السلسلة.

يمكن تعيين اسم المجال قبل بدء العميل أو بعد البداية ولكن قبل أن يتم تسجيل معلومات المضيف مع الخادم (يجب أن تكون المعلومات المضيف في أي STATE_TO_ADD أو STATE_TO_REMOVE ).

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aName
مؤشر لسلسلة اسم المجال. إذا كان NULL يعينه على الافتراضي "default.service.arpa".
إرجاع القيم
OT_ERROR_NONE
تم تعيين تسمية اسم المجال بنجاح.
OT_ERROR_INVALID_STATE
معلومات المضيف مسجلة بالفعل مع الخادم.

otSrpClientSetHostAddresses

otError otSrpClientSetHostAddresses(
  otInstance *aInstance,
  const otIp6Address *aIp6Addresses,
  uint8_t aNumAddresses
)

تقوم هذه الوظيفة بتعيين / تحديث قائمة عنوان IPv6 للمضيف.

يمكن تعيين / تغيير عناوين IPv6 للمضيف قبل البدء أو أثناء تشغيل عميل SRP (على سبيل المثال لإضافة / إزالة أو تغيير عنوان مضيف مسجل سابقًا) ، باستثناء عندما تتم إزالة معلومات المضيف (العميل مشغول بمعالجة طلب إزالة من عميل سابق الدعوة إلى otSrpClientRemoveHostAndServices() ومعلومات المضيف لا يزال يجري في أي STATE_TO_REMOVE أو STATE_REMOVING الدول).

المضيف عنوان IPv6 مجموعة المشار إليه بواسطة aAddresses يجب أن تستمر وتبقى دون تغيير بعد عودته من هذه الوظيفة (مع OT_ERROR_NONE ). OpenThread سيحفظ المؤشر في المصفوفة.

بعد مكالمة ناجحة لهذه الوظيفة، otSrpClientCallback سوف يطلق للإبلاغ عن حالة تسجيل عنوان مع خادم SRP.

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aAddresses
مؤشر إلى المصفوفة التي تحتوي على عناوين IPv6 للمضيف.
[in] aNumAddresses
عدد العناوين في aAddresses مجموعة.
إرجاع القيم
OT_ERROR_NONE
بدأ تغيير قائمة عناوين IPv6 للمضيف بنجاح. و otSrpClientCallback وسوف يطلق على تقرير حالة تسجيل عناوين مع الخادم.
OT_ERROR_INVALID_ARGS
قائمة العناوين غير صالحة (على سبيل المثال ، يجب أن تحتوي على عنوان واحد على الأقل).
OT_ERROR_INVALID_STATE
تتم إزالة المضيف وبالتالي لا يمكن تغيير عنوان المضيف.

otSrpClientSetHostName

otError otSrpClientSetHostName(
  otInstance *aInstance,
  const char *aName
)

تحدد هذه الوظيفة تسمية اسم المضيف.

بعد مكالمة ناجحة لهذه الوظيفة، otSrpClientCallback سوف يطلق للإبلاغ عن حالة تسجيل معلومات المضيف مع خادم SRP.

وأشار المخزن المؤقت اسم السلسلة التي aName يجب أن تستمر وتبقى دون تغيير بعد عودته من هذه الوظيفة. OpenThread سيبقي المؤشر على السلسلة.

يمكن تعيين اسم المضيف قبل بدء العميل أو بعد البداية ولكن قبل أن يتم تسجيل معلومات المضيف مع الخادم (يجب أن تكون المعلومات المضيف في أي STATE_TO_ADD أو STATE_REMOVED ).

تفاصيل
العوامل
[in] aInstance
مؤشر إلى مثيل OpenThread.
[in] aName
مؤشر لسلسلة تسمية اسم المضيف (يجب ألا تكون فارغة). يجب أن يستمر المؤشر إلى المخزن المؤقت للسلسلة وأن يظل صالحًا وثابتًا بعد العودة من هذه الوظيفة.
إرجاع القيم
OT_ERROR_NONE
تم تعيين تسمية اسم المضيف بنجاح.
OT_ERROR_INVALID_ARGS
و aName هو NULL.
OT_ERROR_INVALID_STATE
تم بالفعل تعيين اسم المضيف وتسجيله مع الخادم.

otSrpClientSetKeyLeaseInterval

void otSrpClientSetKeyLeaseInterval(
  otInstance *aInstance,
  uint32_t aInterval
)

This function sets the key lease interval used in SRP update requests.

Changing the lease interval does not impact the accepted lease interval of already registered services/host-info. It only affects any future SRP update messages (ie, adding new services and/or refreshes of existing services).

تفاصيل
العوامل
[in] aInstance
A pointer to the OpenThread instance.
[in] aInterval
The key lease interval (in seconds). If zero, the default value specified by OPENTHREAD_CONFIG_SRP_CLIENT_DEFAULT_KEY_LEASE would be used.

otSrpClientSetLeaseInterval

void otSrpClientSetLeaseInterval(
  otInstance *aInstance,
  uint32_t aInterval
)

This function sets the lease interval used in SRP update requests.

Changing the lease interval does not impact the accepted lease interval of already registered services/host-info. It only affects any future SRP update messages (ie, adding new services and/or refreshes of the existing services).

تفاصيل
العوامل
[in] aInstance
A pointer to the OpenThread instance.
[in] aInterval
The lease interval (in seconds). If zero, the default value specified by OPENTHREAD_CONFIG_SRP_CLIENT_DEFAULT_LEASE would be used.

otSrpClientSetServiceKeyRecordEnabled

void otSrpClientSetServiceKeyRecordEnabled(
  otInstance *aInstance,
  bool aEnabled
)

This function enables/disables "service key record inclusion" mode.

When enabled, SRP client will include KEY record in Service Description Instructions in the SRP update messages that it sends.

This function is available when OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE configuration is enabled.

تفاصيل
العوامل
[in] aInstance
A pointer to the OpenThread instance.
[in] aEnabled
TRUE to enable, FALSE to disable the "service key record inclusion" mode.

otSrpClientStart

otError otSrpClientStart(
  otInstance *aInstance,
  const otSockAddr *aServerSockAddr
)

This function starts the SRP client operation.

SRP client will prepare and send "SRP Update" message to the SRP server once all the following conditions are met:

It does not matter in which order these functions are called. When all conditions are met, the SRP client will wait for a short delay before preparing an "SRP Update" message and sending it to server. This delay allows for user to add multiple services and/or IPv6 addresses before the first SRP Update message is sent (ensuring a single SRP Update is sent containing all the info). The config OPENTHREAD_CONFIG_SRP_CLIENT_UPDATE_TX_DELAY specifies the delay interval.

تفاصيل
العوامل
[in] aInstance
A pointer to the OpenThread instance.
[in] aServerSockAddr
The socket address (IPv6 address and port number) of the SRP server.
Return Values
OT_ERROR_NONE
SRP client operation started successfully or it is already running with same server socket address and callback.
OT_ERROR_BUSY
SRP client is busy running with a different socket address.
OT_ERROR_FAILED
Failed to open/connect the client's UDP socket.

otSrpClientStop

void otSrpClientStop(
  otInstance *aInstance
)

This function stops the SRP client operation.

This function stops any further interactions with the SRP server. Note that it does not remove or clear host info and/or list of services. It marks all services to be added/removed again once the client is (re)started.

تفاصيل
العوامل
[in] aInstance
A pointer to the OpenThread instance.

otSrpServerGetAddressMode

otSrpServerAddressMode otSrpServerGetAddressMode(
  otInstance *aInstance
)

This function returns the address mode being used by the SRP server.

تفاصيل
العوامل
[in] aInstance
A pointer to an OpenThread instance.
عائدات
The SRP server's address mode.

otSrpServerGetAnycastModeSequenceNumber

uint8_t otSrpServerGetAnycastModeSequenceNumber(
  otInstance *aInstance
)

This function returns the sequence number used with anycast address mode.

The sequence number is included in "DNS/SRP Service Anycast Address" entry published in the Network Data.

تفاصيل
العوامل
[in] aInstance
A pointer to an OpenThread instance.
عائدات
The anycast sequence number.

otSrpServerGetDomain

const char * otSrpServerGetDomain(
  otInstance *aInstance
)

This function returns the domain authorized to the SRP server.

If the domain if not set by SetDomain, "default.service.arpa." will be returned. A trailing dot is always appended even if the domain is set without it.

تفاصيل
العوامل
[in] aInstance
A pointer to an OpenThread instance.
عائدات
A pointer to the dot-joined domain string.

otSrpServerGetLeaseConfig

void otSrpServerGetLeaseConfig(
  otInstance *aInstance,
  otSrpServerLeaseConfig *aLeaseConfig
)

This function returns SRP server LEASE and KEY-LEASE configurations.

تفاصيل
العوامل
[in] aInstance
A pointer to an OpenThread instance.
[out] aLeaseConfig
A pointer to an otSrpServerLeaseConfig instance.

otSrpServerGetNextHost

const otSrpServerHost * otSrpServerGetNextHost(
  otInstance *aInstance,
  const otSrpServerHost *aHost
)

This function returns the next registered host on the SRP server.

تفاصيل
العوامل
[in] aInstance
A pointer to an OpenThread instance.
[in] aHost
A pointer to current host; use NULL to get the first host.
عائدات
A pointer to the registered host. NULL, if no more hosts can be found.

otSrpServerGetState

otSrpServerState otSrpServerGetState(
  otInstance *aInstance
)

This function returns the state of the SRP server.

تفاصيل
العوامل
[in] aInstance
A pointer to an OpenThread instance.
عائدات
The current state of the SRP server.

otSrpServerHandleServiceUpdateResult

void otSrpServerHandleServiceUpdateResult(
  otInstance *aInstance,
  otSrpServerServiceUpdateId aId,
  otError aError
)

This function reports the result of processing a SRP update to the SRP server.

The Service Update Handler should call this function to return the result of its processing of a SRP update.

تفاصيل
العوامل
[in] aInstance
A pointer to an OpenThread instance.
[in] aId
The service update transaction ID. This should be the same ID provided via otSrpServerServiceUpdateHandler .
[in] aError
An error to be returned to the SRP server. Use OT_ERROR_DUPLICATED to represent DNS name conflicts.

otSrpServerHostFindNextService

const otSrpServerService * otSrpServerHostFindNextService(
  const otSrpServerHost *aHost,
  const otSrpServerService *aPrevService,
  otSrpServerServiceFlags aFlags,
  const char *aServiceName,
  const char *aInstanceName
)

This function finds the next matching service on the host.

The combination of flags and service and instance names enables iterating over the full list of services and/or a subset of them matching certain conditions, or finding a specific service.

To iterate over all services of a host: service = otSrpServerHostFindNextService(host, service, OT_SRP_SERVER_FLAGS_ANY_SERVICE, NULL, NULL);

To iterate over base services only (exclude sub-types): service = otSrpServerHostFindNextService(host, service, OT_SRP_SERVER_FLAGS_BASE_TYPE_SERVICE_ONLY, NULL, NULL);

To iterate over sub-types of a specific instance name instanceName : service = otSrpServerHostFindNextService(host, service, OT_SRP_SERVER_FLAGS_SUB_TYPE_SERVICE_ONLY, NULL, instanceName);

To find a specific service with service name serviceName and service instance name instanceName : service = otSrpServerHostFindNextService(host, NULL, OT_SRP_SERVER_FLAGS_ANY_SERVICE, serviceName, instanceName);

To find the base type service with a given service instance name instanceName : service = otSrpServerHostFindNextService(host, NULL, OT_SRP_SERVER_FLAGS_BASE_TYPE_SERVICE_ONLY, NULL, instanceName);

تفاصيل
العوامل
[in] aHost
A pointer to the SRP service host (MUST NOT be NULL).
[in] aPrevService
A pointer to the previous service or NULL to start from the beginning of the list.
[in] aFlags
Flags indicating which services to include (base/sub-type, active/deleted).
[in] aServiceName
The service name to match. Set to NULL to accept any name.
[in] aInstanceName
The service instance name to match. Set to NULL to accept any name.
عائدات
A pointer to the next matching service or NULL if no matching service could be found.

otSrpServerHostGetAddresses

const otIp6Address * otSrpServerHostGetAddresses(
  const otSrpServerHost *aHost,
  uint8_t *aAddressesNum
)

This function returns the addresses of given host.

تفاصيل
العوامل
[in] aHost
A pointer to the SRP service host.
[out] aAddressesNum
A pointer to where we should output the number of the addresses to.
عائدات
A pointer to the array of IPv6 Address.

otSrpServerHostGetFullName

const char * otSrpServerHostGetFullName(
  const otSrpServerHost *aHost
)

This function returns the full name of the host.

تفاصيل
العوامل
[in] aHost
A pointer to the SRP service host.
عائدات
A pointer to the null-terminated host name string.

otSrpServerHostGetNextService

const otSrpServerService * otSrpServerHostGetNextService(
  const otSrpServerHost *aHost,
  const otSrpServerService *aService
)

This function returns the next service (excluding any sub-type services) of given host.

تفاصيل
العوامل
[in] aHost
A pointer to the SRP service host.
[in] aService
A pointer to current SRP service instance; use NULL to get the first service.
عائدات
A pointer to the next service or NULL if there is no more services.

otSrpServerHostIsDeleted

bool otSrpServerHostIsDeleted(
  const otSrpServerHost *aHost
)

This function tells if the SRP service host has been deleted.

A SRP service host can be deleted but retains its name for future uses. In this case, the host instance is not removed from the SRP server/registry.

تفاصيل
العوامل
[in] aHost
A pointer to the SRP service host.
عائدات
TRUE if the host has been deleted, FALSE if not.

otSrpServerServiceGetFullName

const char * otSrpServerServiceGetFullName(
  const otSrpServerService *aService
)

This function returns the full service instance name of the service.

تفاصيل
العوامل
[in] aService
A pointer to the SRP service.
عائدات
A pointer to the null-terminated service instance name string.

otSrpServerServiceGetHost

const otSrpServerHost * otSrpServerServiceGetHost(
  const otSrpServerService *aService
)

This function returns the host which the service instance reside on.

تفاصيل
العوامل
[in] aService
A pointer to the SRP service.
عائدات
A pointer to the host instance.

otSrpServerServiceGetInstanceName

const char * otSrpServerServiceGetInstanceName(
  const otSrpServerService *aService
)

This function returns the full service instance name of the service.

تفاصيل
العوامل
[in] aService
A pointer to the SRP service.
عائدات
A pointer to the null-terminated service instance name string.

otSrpServerServiceGetPort

uint16_t otSrpServerServiceGetPort(
  const otSrpServerService *aService
)

This function returns the port of the service instance.

تفاصيل
العوامل
[in] aService
A pointer to the SRP service.
عائدات
The port of the service.

otSrpServerServiceGetPriority

uint16_t otSrpServerServiceGetPriority(
  const otSrpServerService *aService
)

This function returns the priority of the service instance.

تفاصيل
العوامل
[in] aService
A pointer to the SRP service.
عائدات
The priority of the service.

otSrpServerServiceGetServiceName

const char * otSrpServerServiceGetServiceName(
  const otSrpServerService *aService
)

This function returns the full service name of the service.

تفاصيل
العوامل
[in] aService
A pointer to the SRP service.
عائدات
A pointer to the null-terminated service name string.

otSrpServerServiceGetServiceSubTypeLabel

otError otSrpServerServiceGetServiceSubTypeLabel(
  const otSrpServerService *aService,
  char *aLabel,
  uint8_t aMaxSize
)

This function gets the sub-type label from service name.

This function is intended to be used when the aService is a sub-type, ie, otSrpServerServiceIsSubType() for the service returns TRUE. If it is not a sub-type this function returns OT_ERROR_INVALID_ARGS .

The full service name for a sub-type service follows " ._sub. . .". This function copies the into the aLabel buffer.

The aLabel is ensured to always be null-terminated after returning even in case of failure.

تفاصيل
العوامل
[in] aService
A pointer to the SRP service.
[out] aLabel
A pointer to a buffer to copy the sub-type label name into.
[in] aMaxSize
Maximum size of aLabel buffer.
Return Values
OT_ERROR_NONE
aLabel was updated successfully.
OT_ERROR_NO_BUFS
The sub-type label could not fit in aLabel buffer (number of chars from label that could fit are copied in aLabel ensuring it is null-terminated).
OT_ERROR_INVALID_ARGS
SRP service is not a sub-type.

otSrpServerServiceGetTxtData

const uint8_t * otSrpServerServiceGetTxtData(
  const otSrpServerService *aService,
  uint16_t *aDataLength
)

This function returns the TXT record data of the service instance.

تفاصيل
العوامل
[in] aService
A pointer to the SRP service.
[out] aDataLength
A pointer to return the TXT record data length. MUST NOT be NULL.
عائدات
A pointer to the buffer containing the TXT record data (the TXT data length is returned in aDataLength ).

otSrpServerServiceGetWeight

uint16_t otSrpServerServiceGetWeight(
  const otSrpServerService *aService
)

This function returns the weight of the service instance.

تفاصيل
العوامل
[in] aService
A pointer to the SRP service.
عائدات
The weight of the service.

otSrpServerServiceIsDeleted

bool otSrpServerServiceIsDeleted(
  const otSrpServerService *aService
)

This function indicates whether or not the SRP service has been deleted.

A SRP service can be deleted but retains its name for future uses. In this case, the service instance is not removed from the SRP server/registry. It is guaranteed that all services are deleted if the host is deleted.

تفاصيل
العوامل
[in] aService
A pointer to the SRP service.
عائدات
TRUE if the service has been deleted, FALSE if not.

otSrpServerServiceIsSubType

bool otSrpServerServiceIsSubType(
  const otSrpServerService *aService
)

This function indicates whether or not the SRP service is sub-type.

تفاصيل
العوامل
[in] aService
A pointer to the SRP service.
عائدات
TRUE if the service is a sub-type, FALSE if not.

otSrpServerSetAddressMode

otError otSrpServerSetAddressMode(
  otInstance *aInstance,
  otSrpServerAddressMode aMode
)

This function sets the address mode to be used by the SRP server.

تفاصيل
العوامل
[in] aInstance
A pointer to an OpenThread instance.
[in] aMode
The address mode to use.
Return Values
OT_ERROR_NONE
Successfully set the address mode.
OT_ERROR_INVALID_STATE
The SRP server is enabled and the address mode cannot be changed.

otSrpServerSetAnycastModeSequenceNumber

otError otSrpServerSetAnycastModeSequenceNumber(
  otInstance *aInstance,
  uint8_t aSequenceNumber
)

This function sets the sequence number used with anycast address mode.

تفاصيل
العوامل
[in] aInstance
A pointer to an OpenThread instance.
[in] aSequenceNumber
The sequence number to use.
Return Values
OT_ERROR_NONE
Successfully set the address mode.
OT_ERROR_INVALID_STATE
The SRP server is enabled and the sequence number cannot be changed.

otSrpServerSetDomain

otError otSrpServerSetDomain(
  otInstance *aInstance,
  const char *aDomain
)

This function sets the domain on the SRP server.

A trailing dot will be appended to aDomain if it is not already there. This function should only be called before the SRP server is enabled.

تفاصيل
العوامل
[in] aInstance
A pointer to an OpenThread instance.
[in] aDomain
The domain to be set. MUST NOT be NULL.
Return Values
OT_ERROR_NONE
Successfully set the domain to aDomain .
OT_ERROR_INVALID_STATE
The SRP server is already enabled and the Domain cannot be changed.
OT_ERROR_INVALID_ARGS
The argument aDomain is not a valid DNS domain name.
OT_ERROR_NO_BUFS
There is no memory to store content of aDomain .

otSrpServerSetEnabled

void otSrpServerSetEnabled(
  otInstance *aInstance,
  bool aEnabled
)

This function enables/disables the SRP server.

تفاصيل
العوامل
[in] aInstance
A pointer to an OpenThread instance.
[in] aEnabled
A boolean to enable/disable the SRP server.

otSrpServerSetLeaseConfig

otError otSrpServerSetLeaseConfig(
  otInstance *aInstance,
  const otSrpServerLeaseConfig *aLeaseConfig
)

This function sets SRP server LEASE and KEY-LEASE configurations.

When a non-zero LEASE time is requested from a client, the granted value will be limited in range [aMinLease, aMaxLease]; and a non-zero KEY-LEASE will be granted in range [aMinKeyLease, aMaxKeyLease]. For zero LEASE or KEY-LEASE time, zero will be granted.

تفاصيل
العوامل
[in] aInstance
A pointer to an OpenThread instance.
[in] aLeaseConfig
A pointer to an otSrpServerLeaseConfig instance.
Return Values
OT_ERROR_NONE
Successfully set the LEASE and KEY-LEASE ranges.
OT_ERROR_INVALID_ARGS
The LEASE or KEY-LEASE range is not valid.

otSrpServerSetServiceUpdateHandler

void otSrpServerSetServiceUpdateHandler(
  otInstance *aInstance,
  otSrpServerServiceUpdateHandler aServiceHandler,
  void *aContext
)

This function sets the SRP service updates handler on SRP server.

تفاصيل
العوامل
[in] aInstance
A pointer to an OpenThread instance.
[in] aServiceHandler
A pointer to a service handler. Use NULL to remove the handler.
[in] aContext
A pointer to arbitrary context information. May be NULL if not used.