صفحة نتائج البحث
تتضمن هذه الوحدة دوالًا تتحكم في سلوك عميل SRP.
ملخّص
تتضمن هذه الوحدة وظائف بروتوكول تسجيل الخدمة.
تتضمّن هذه الوحدة دوال التخزين المؤقت لعميل SRP وقاعدة بيانات الخدمة.
لا تتوفر الدوال في هذه الوحدة إلا عند تفعيل الميزة OPENThread_CONFIG_SRP_CLIENT_BUFFERS_ENABLE.
التعدادات |
|
---|---|
anonymous enum{
|
تعداد |
anonymous enum{
|
تعداد |
otSrpClientItemState{
|
تعداد تحدّد هذه السياسة حالة عميل SRP (معلومات الخدمة أو المضيف). |
otSrpServerAddressMode{
|
تعداد تمثل وضع العنوان الذي يستخدمه خادم SRP. |
otSrpServerState{
|
تعداد يمثّل حالة خادم SRP. |
أنواع المحددات |
|
---|---|
otSrpClientAutoStartCallback)(const otSockAddr *aServerSockAddr, void *aContext)
|
typedefvoid(*
يحدد نوع المؤشر معاودة الاتصال التي يستخدمها عميل SRP لإشعار المستخدم عند بدء تشغيله أو إيقافه تلقائيًا. |
otSrpClientBuffersServiceEntry
|
typedef يمثِّل إدخال مجموعة خدمات عملاء SRP. |
otSrpClientCallback)(otError aError, const otSrpClientHostInfo *aHostInfo, const otSrpClientService *aServices, const otSrpClientService *aRemovedServices, void *aContext)
|
typedefvoid(*
يحدد نوع المؤشر معاودة الاتصال التي يستخدمها عميل SRP لإشعار المستخدم بالتغييرات/الأحداث/الأخطاء. |
otSrpClientHostInfo
|
typedefstruct otSrpClientHostInfo
يمثّل معلومات مضيف عميل SRP. |
otSrpClientService
|
typedefstruct otSrpClientService
يمثّل خدمة عميل SRP. |
otSrpServerAddressMode
|
typedef تمثل وضع العنوان الذي يستخدمه خادم SRP. |
otSrpServerHost
|
typedefstruct otSrpServerHost
يمثل هذا النوع المبهم مضيف خدمة SRP. |
otSrpServerLeaseConfig
|
typedefstruct otSrpServerLeaseConfig
يتضمّن هذا المقياس إعدادات خادم SRP LEASE وإعدادات مفتاحَي التشفير. |
otSrpServerLeaseInfo
|
typedefstruct otSrpServerLeaseInfo
تتضمن معلومات تأجير خادم SRP لمضيف أو خدمة. |
otSrpServerResponseCounters
|
typedefstruct otSrpServerResponseCounters
يتضمن إحصاءات استجابات خادم SRP. |
otSrpServerService
|
typedefstruct otSrpServerService
يمثل هذا النوع المبهم خدمة SRP. |
otSrpServerServiceFlags
|
typedefuint8_t
نوع علامة الخدمة للإشارة إلى الخدمات التي يجب تضمينها أو استبعادها عند البحث عن قائمة خدمات SRP (أو تكرارها) |
otSrpServerServiceUpdateHandler)(otSrpServerServiceUpdateId aId, const otSrpServerHost *aHost, uint32_t aTimeout, void *aContext)
|
typedefvoid(*
التعامل مع إشعارات خدمة SRP. |
otSrpServerServiceUpdateId
|
typedefuint32_t
رقم تعريف معاملة تحديث خدمة SRP على خادم SRP. |
otSrpServerTtlConfig
|
typedefstruct otSrpServerTtlConfig
يتضمن إعدادات TTL لخادم 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
لإيقاف وضع التشغيل التلقائي.
|
otSrpClientEnableAutoHostAddress(otInstance *aInstance)
|
يؤدي إلى تفعيل وضع عنوان المضيف التلقائي.
|
otSrpClientEnableAutoStartMode(otInstance *aInstance, otSrpClientAutoStartCallback aCallback, void *aContext)
|
void
يؤدي هذا الإعداد إلى تفعيل وضع التشغيل التلقائي.
|
otSrpClientGetDomainName(otInstance *aInstance)
|
const char *
تحصل على اسم النطاق الذي يستخدمه عميل SRP.
|
otSrpClientGetHostInfo(otInstance *aInstance)
|
const otSrpClientHostInfo *
الحصول على معلومات المضيف.
|
otSrpClientGetKeyLeaseInterval(otInstance *aInstance)
|
uint32_t
عرض الفاصل الزمني التلقائي لتأجير المفتاح المستخدم في طلبات تحديث SRP.
|
otSrpClientGetLeaseInterval(otInstance *aInstance)
|
uint32_t
الحصول على الفاصل الزمني التلقائي للإيجار المستخدم في طلبات تحديث SRP.
|
otSrpClientGetServerAddress(otInstance *aInstance)
|
const otSockAddr *
للحصول على عنوان المقبس (عنوان IPv6 ورقم المنفذ) لخادم SRP الذي يستخدمه عميل SRP.
|
otSrpClientGetServices(otInstance *aInstance)
|
const otSrpClientService *
الحصول على قائمة الخدمات التي يديرها العميل
|
otSrpClientGetTtl(otInstance *aInstance)
|
uint32_t
الحصول على قيمة مدة البقاء (TTL) في كل سجل مضمّن في طلبات تحديث SRP.
|
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
تعمل هذه السياسة على تفعيل/إيقاف وضع "تضمين سجلّ خدمة المفتاح".
|
otSrpClientSetTtl(otInstance *aInstance, uint32_t aTtl)
|
void
لضبط قيمة TTL في كل سجلّ مضمَّن في طلبات تعديل SRP.
|
otSrpClientStart(otInstance *aInstance, const otSockAddr *aServerSockAddr)
|
تبدأ عملية عميل SRP.
|
otSrpClientStop(otInstance *aInstance)
|
void
لإيقاف عملية عميل SRP.
|
otSrpServerGetAddressMode(otInstance *aInstance)
|
يعرض وضع العنوان الذي يستخدمه خادم SRP.
|
otSrpServerGetAnycastModeSequenceNumber(otInstance *aInstance)
|
uint8_t
لعرض رقم التسلسل المستخدم مع أي وضع عنوانأي بث.
|
otSrpServerGetDomain(otInstance *aInstance)
|
const char *
يعرض النطاق المُصرَّح له بخادم SRP.
|
otSrpServerGetLeaseConfig(otInstance *aInstance, otSrpServerLeaseConfig *aLeaseConfig)
|
void
لعرض إعدادات SRP خادم LEASE وKEY-LEASE.
|
otSrpServerGetNextHost(otInstance *aInstance, const otSrpServerHost *aHost)
|
const otSrpServerHost *
عرض المضيف المسجّل التالي على خادم SRP.
|
otSrpServerGetPort(otInstance *aInstance)
|
uint16_t
تعرض هذه السياسة المنفذ الذي يستمع إليه خادم SRP.
|
otSrpServerGetResponseCounters(otInstance *aInstance)
|
const otSrpServerResponseCounters *
تعرض العدّادات الخاصة باستجابات خادم SRP.
|
otSrpServerGetState(otInstance *aInstance)
|
تعرض حالة خادم SRP.
|
otSrpServerGetTtlConfig(otInstance *aInstance, otSrpServerTtlConfig *aTtlConfig)
|
void
لعرض إعدادات مدة البقاء (TTL) الخاصة بخادم 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)
|
const otSrpServerService *
العثور على خدمة المطابقة التالية في المضيف
|
otSrpServerHostGetAddresses(const otSrpServerHost *aHost, uint8_t *aAddressesNum)
|
const otIp6Address *
يعرض عناوين المضيف المعيّن.
|
otSrpServerHostGetFullName(const otSrpServerHost *aHost)
|
const char *
يعرض الاسم الكامل للمضيف.
|
otSrpServerHostGetLeaseInfo(const otSrpServerHost *aHost, otSrpServerLeaseInfo *aLeaseInfo)
|
void
عرض معلومات LEASE وKEY-LEASE لمضيف معيّن.
|
otSrpServerHostGetNextService(const otSrpServerHost *aHost, const otSrpServerService *aService)
|
const otSrpServerService *
عرض الخدمة التالية (باستثناء أي خدمات من نوع فرعي) للمضيف المحدَّد.
|
otSrpServerHostIsDeleted(const otSrpServerHost *aHost)
|
bool
يحدّد هذا الإعداد ما إذا تم حذف مضيف خدمة SRP.
|
otSrpServerIsAutoEnableMode(otInstance *aInstance)
|
bool
يشير إلى ما إذا كان وضع التفعيل التلقائي مفعّلاً أو غير مفعّل.
|
otSrpServerServiceGetFullName(const otSrpServerService *aService)
|
const char *
يعرض اسم الخدمة بالكامل بالكامل للمثيل.
|
otSrpServerServiceGetHost(const otSrpServerService *aService)
|
const otSrpServerHost *
عرض المضيف الذي يتوفّر فيه مثيل الخدمة
|
otSrpServerServiceGetInstanceName(const otSrpServerService *aService)
|
const char *
يعرض اسم الخدمة بالكامل بالكامل للمثيل.
|
otSrpServerServiceGetLeaseInfo(const otSrpServerService *aService, otSrpServerLeaseInfo *aLeaseInfo)
|
void
لعرض معلومات LEASE وKEY-LEASE لخدمة معيّنة.
|
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)
|
الحصول على تصنيف النوع الفرعي من اسم الخدمة
|
otSrpServerServiceGetTtl(const otSrpServerService *aService)
|
uint32_t
تعرض مدة البقاء (TTL) لمثيل الخدمة.
|
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)
|
تضبط رقم التسلسل المستخدَم مع وضع عنوانأي بث.
|
otSrpServerSetAutoEnableMode(otInstance *aInstance, bool aEnabled)
|
void
يؤدي هذا الخيار إلى تفعيل/إيقاف وضع التفعيل التلقائي على خادم SRP.
|
otSrpServerSetDomain(otInstance *aInstance, const char *aDomain)
|
لضبط النطاق على خادم SRP.
|
otSrpServerSetEnabled(otInstance *aInstance, bool aEnabled)
|
void
تفعيل/إيقاف خادم SRP
|
otSrpServerSetLeaseConfig(otInstance *aInstance, const otSrpServerLeaseConfig *aLeaseConfig)
|
وتحدد إعدادات SRP LEASE وKEY-LEASE.
|
otSrpServerSetServiceUpdateHandler(otInstance *aInstance, otSrpServerServiceUpdateHandler aServiceHandler, void *aContext)
|
void
تضبط هذه السياسة معالج تحديثات خدمة SRP على خادم SRP.
|
otSrpServerSetTtlConfig(otInstance *aInstance, const otSrpServerTtlConfig *aTtlConfig)
|
تضبط هذه السياسة إعدادات مدة البقاء (TTL) الخاصة بخادم SRP.
|
هياكل |
|
---|---|
otSrpClientBuffersServiceEntry |
يمثِّل إدخال مجموعة خدمات عملاء SRP. |
otSrpClientHostInfo |
يمثّل معلومات مضيف عميل SRP. |
otSrpClientService |
يمثّل خدمة عميل SRP. |
otSrpServerLeaseConfig |
يتضمّن هذا المقياس إعدادات خادم SRP LEASE وإعدادات مفتاحَي التشفير. |
otSrpServerLeaseInfo |
تتضمن معلومات تأجير خادم SRP لمضيف أو خدمة. |
otSrpServerResponseCounters |
يتضمن إحصاءات استجابات خادم SRP. |
otSrpServerTtlConfig |
يتضمن إعدادات TTL لخادم 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
|
ومن خلال هذا الثابت، يتم تحديد مجموعة |
OT_SRP_SERVER_FLAGS_ANY_TYPE_ACTIVE_SERVICE
|
يحدِّد هذا الثابت مجموعة |
OT_SRP_SERVER_FLAGS_ANY_TYPE_DELETED_SERVICE
|
يحدِّد هذا الثابت مجموعة |
OT_SRP_SERVER_FLAGS_BASE_TYPE_SERVICE_ONLY
|
يحدِّد هذا الثابت مجموعة |
OT_SRP_SERVER_FLAGS_SUB_TYPE_SERVICE_ONLY
|
يحدِّد هذا الثابت مجموعة |
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 وكيفية نشر هذه المعلومات في بيانات شبكة Thread.
أماكن إقامة | |
---|---|
OT_SRP_SERVER_ADDRESS_MODE_ANYCAST
|
وضع عنوان أي بث. |
OT_SRP_SERVER_ADDRESS_MODE_UNICAST
|
وضع Unicast address |
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 أو إيقافه تلقائيًا.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
إدخال otSrpClientBuffersService
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 (تنفيذ سلسلة محادثات) مع مثيلات الخدمة التي تمت إزالتها في aRemovedServices
ولم يعُد يتتبّعها أو يخزّنها (أي إذا تم الاتصال بـ otSrpClientGetServices()
من خلال معاودة الاتصال، لن تظهر الخدمات التي تمت إزالتها في القائمة المعروضة). إنّ تقديم قائمة منفصلة بالخدمات التي تمّت إزالتها في معاودة الاتصال يساعد المستخدم في معرفة العناصر التي تمّت إزالتها الآن والسماح للمستخدم بإعادة المطالبة بالمثيلات أو إعادة استخدامها.
إذا رفض الخادم طلب تحديث SRP، سيتم ربط رمز استجابة نظام أسماء النطاقات (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 مع نوع طلب البحث (OpCode) -> OT_ERROR_NOT_IMPLEMENTED
- (5) تم رفض الخادم REFUSED لأسباب تتعلق بالسياسة/الأمان -> OT_ERROR_security
- (6) YXDOMAIN هناك اسم لم يكن موجودًا، ولكنه موجود -> OT_ERROR_DUPLICATED
- (7) YXRRSET بعض RRset لم يكن موجودًا - موجود -> OT_ERROR_DUPLICATED
- (8) NXRRSET بعض RRset التي يجب وجودها -> OT_ERROR_NOT_FOUND
- (9) خدمة NOTAUTH غير موثوقة للمنطقة -> OT_ERROR_security
- (10) NOTZONE لا يوجد اسم للمنطقة -> OT_ERROR_PARSE
- (20) BADNAME Bad name -> OT_ERROR_PARSE)
- (21) خوارزمية BADALG غير صحيحة -> OT_ERROR_security
- (22) BADTRUN Bad tاقتطاع كاملة -> OT_ERROR_PARSE
- رموز الاستجابة الأخرى -> OT_ERROR_Failed
يمكن حدوث الأخطاء التالية أيضًا:
- OT_ERROR_RESPONSE_WINDOW : انتهت مهلة انتظار الرد من الخادم (سيواصل العميل إعادة المحاولة).
- OT_ERROR_INVALID_ARGS : بنية الخدمة المقدَّمة غير صالحة (مثل اسم الخدمة غير الصحيحة أو
otDnsTxtEntry
). - OT_ERROR_NO_BUFS : المخزن المؤقت غير كافٍ لتحضير رسالة التحديث أو إرسالها.
يُرجى ملاحظة أنّه في حال حدوث أي فشل، يواصل العميل العملية، أي يتم تحضير و (إعادة) رسالة تحديث SRP إلى الخادم، بعد بعض الفاصل الزمني. يبدأ الفاصل الزمني لإعادة المحاولة من الحد الأدنى للقيمة، ويزيد هذا العامل حسب عامل النمو حتى الحد الأقصى للقيمة (يُرجى الاطّلاع على مَعلمة الضبط OPENTHREAD_CONFIG_SRP_CLIENT_MIN_RETRY_WAIT_INTERVAL
والمَعلمات ذات الصلة لمزيد من التفاصيل).
التفاصيل | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
المَعلمات |
|
otSrpClientService
struct otSrpClientService otSrpClientService
يمثّل خدمة عميل SRP.
يجب أن تظل القيم في هذه البنية، بما في ذلك المخزن المؤقت للسلسلة للأسماء وإدخالات سجلّ TXT، ثابتة وتبقى ثابتة بعد تمرير مثيل من هذه البنية إلى OpenThread من otSrpClientAddService()
أو otSrpClientRemoveService()
.
يتم استخدام الحقول mState
وmData
وmNext
أو إدارتها من خلال OT Core فقط. يتم تجاهل قيمتها عند تمرير مثيل otSrpClientService
في otSrpClientAddService()
أو otSrpClientRemoveService()
أو دوال أخرى. لا يحتاج المتصل إلى إعداد هذه الحقول.
يحدِّد الحقلان mLease
وmKeyLease
فواصل الإيجار والفترات الزمنية المطلوبة لهذه الخدمة. تشير القيمة صف إلى أنّ الفاصل الزمني غير محدّد، ثم يتم استخدام فترات الإيجار التلقائية أو الفواصل الزمنية لاستئجار المفتاح من otSrpClientGetLeaseInterval()
وotSrpClientGetKeyLeaseInterval()
لهذه الخدمة. إذا كانت فترة إيجار المفتاح (سواء تم ضبطها صراحةً أو تم تحديدها من خلال الإعداد التلقائي) أقصر من فاصل الإيجار لإحدى الخدمات، سوف يعيد عميل SRP استخدام قيمة فاصل الإيجار لفترات إيجار المفاتيح أيضًا. على سبيل المثال، إذا تم ضبط mLease
صراحةً على ضبط السياسة لمدة يومَين، وضبطت السياسة mKeyLease
على صفر وتم ضبط المدة التلقائية لاستئجار المفتاح على يوم واحد، يتم أيضًا ضبط مدة الاستئجار المطلوبة لهذه الخدمة على يومَين.
otSrpServerAddressMode
enum otSrpServerAddressMode otSrpServerAddressMode
تمثل وضع العنوان الذي يستخدمه خادم SRP.
يحدد وضع العنوان كيفية تحديد العنوان ورقم المنفذ من خلال خادم SRP وكيفية نشر هذه المعلومات في بيانات شبكة Thread.
otSrpServerLeaseConfig
struct otSrpServerLeaseConfig otSrpServerLeaseConfig
يتضمّن هذا المقياس إعدادات خادم SRP LEASE وإعدادات مفتاحَي التشفير.
otSrpServerLeaseInfo
struct otSrpServerLeaseInfo otSrpServerLeaseInfo
تتضمن معلومات تأجير خادم SRP لمضيف أو خدمة.
otSrpServerResponseCounters
struct otSrpServerResponseCounters otSrpServerResponseCounters
يتضمن إحصاءات استجابات خادم SRP.
otSrpServerServiceFlags
uint8_t otSrpServerServiceFlags
نوع علامة الخدمة للإشارة إلى الخدمات التي يجب تضمينها أو استبعادها عند البحث عن قائمة خدمات SRP (أو تكرارها)
هذه مجموعة من علامات البت. يتم تحديد علامات البت المحددة في التعداد 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 في حال تعذّر التحقق من الصحة. على سبيل المثال، على الخادم الوكيل للإعلان الإعلان عن (أو إزالة) المضيف والخدمات على رابط متوافق مع البث المتعدد وعرض رمز خطأ محدّد في حال حدوث أي خطأ.
التفاصيل | |||||||||
---|---|---|---|---|---|---|---|---|---|
المَعلمات |
|
otSrpServerSetServiceUpdateHandler
otSrpServerHandleServiceUpdateResult
otSrpServerServiceUpdateId
uint32_t otSrpServerServiceUpdateId
رقم تعريف معاملة تحديث خدمة SRP على خادم SRP.
الدوال
otSrpClientAddService
otError otSrpClientAddService( otInstance *aInstance, otSrpClientService *aService )
إضافة خدمة ليتم تسجيلها من خلال الخادم
بعد طلب ناجح لهذه الوظيفة، سيتم طلب otSrpClientCallback
للإبلاغ عن حالة إضافة الخدمة/التسجيل باستخدام خادم SRP.
يجب أن يستمر المثيل otSrpClientService
الذي تتم الإشارة إليه بواسطة aService
وأن يظل بدون تغيير بعد الرجوع من هذه الدالة (باستخدام OT_ERROR_NONE
). ستحفظ OpenThread المؤشر إلى مثيل الخدمة.
لم يعُد تطبيق OpenThread يتتبّع مثيل otSrpClientService
ولا يمكن استرداده إلا عند
- تتم إزالته بشكل صريح من خلال طلب إلى
otSrpClientRemoveService()
أو تمت إزالته مع الخدمات الأخرى من خلال استدعاءotSrpClientRemoveHostAndServices() and only after the
otSrpClientCallback للإشارة إلى أن الخدمة قد تمت إزالتها. أو - إجراء مكالمة مع
otSrpClientClearHostAndServices()
لإزالة المضيف وجميع الخدمات ذات الصلة على الفور
التفاصيل | |||||||
---|---|---|---|---|---|---|---|
المَعلمات |
|
||||||
قيم الإرجاع |
|
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
عَلَى صِفْرْ. - يتم محو جميع المخزن المؤقت للبيانات والمصفوفات ذات الصلة إلى جميع الصفر.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
مؤشر على إدخال الخدمة الذي تم تخصيصه مؤخرًا أو NULL إذا لم يكن هناك إدخال إضافي في المجموعة.
|
otSrpClientBuffersFreeAllServices
void otSrpClientBuffersFreeAllServices( otInstance *aInstance )
تُحرِّر جميع إدخالات الخدمة التي تم تخصيصها سابقًا.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
otSrpClientBuffersFreeService
void otSrpClientBuffersFreeService( otInstance *aInstance, otSrpClientBuffersServiceEntry *aService )
تحرير إدخال خدمة تم تخصيصه سابقًا.
يجب تخصيص aService
في السابق باستخدام otSrpClientBuffersAllocateService()
ولم يتم إخلاءه بعد. وبخلاف ذلك، لا يتم تحديد سلوك هذه الدالة.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
otSrpClientBuffersGetHostAddressesArray
otIp6Address * otSrpClientBuffersGetHostAddressesArray( otInstance *aInstance, uint8_t *aArrayLength )
الحصول على صفيف إدخالات عنوان IPv6 لاستخدامها كقائمة عناوين مضيف عميل SRP.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
المرتجعات |
مؤشر إلى مصفوفة من إدخالات
otIp6Address (يتم عرض عدد الإدخالات في aArrayLength ). |
otSrpClientBuffersGetHostNameString
char * otSrpClientBuffersGetHostNameString( otInstance *aInstance, uint16_t *aSize )
الحصول على المخزن المؤقت للسلسلة لاستخدامه مع اسم مضيف عميل SRP
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
المرتجعات |
مؤشر إلى استخدام حرف المخزن المؤقت لاستخدامه مع اسم مضيف عميل SRP.
|
otSrpClientBuffersGetServiceEntryInstanceNameString
char * otSrpClientBuffersGetServiceEntryInstanceNameString( otSrpClientBuffersServiceEntry *aEntry, uint16_t *aSize )
للحصول على المخزن المؤقت للسلسلة لاسم مثيل الخدمة من إدخال خدمة.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
المرتجعات |
مؤشر إلى المخزن المؤقت للسلسلة.
|
otSrpClientBuffersGetServiceEntryServiceNameString
char * otSrpClientBuffersGetServiceEntryServiceNameString( otSrpClientBuffersServiceEntry *aEntry, uint16_t *aSize )
للحصول على المخزن المؤقت للسلسلة لاسم الخدمة من إدخال خدمة.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
المرتجعات |
مؤشر إلى المخزن المؤقت للسلسلة.
|
otSrpClientBuffersGetServiceEntryTxtBuffer
uint8_t * otSrpClientBuffersGetServiceEntryTxtBuffer( otSrpClientBuffersServiceEntry *aEntry, uint16_t *aSize )
الحصول على المخزن المؤقت لسجلّ TXT من إدخال خدمة
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
المرتجعات |
مؤشر إلى المخزن المؤقت
|
otSrpClientBuffersGetSubTypeLabelArray
const char ** otSrpClientBuffersGetSubTypeLabelsArray( otSrpClientBuffersServiceEntry *aEntry, uint16_t *aArrayLength )
تحصل على مصفوفة تصنيفات النوع الفرعي للخدمة من إدخال الخدمة.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
المرتجعات |
مؤشر للمصفوفة.
|
otSrpClientClearHostAndServices
void otSrpClientClearHostAndServices( otInstance *aInstance )
محو جميع معلومات المضيف وجميع الخدمات
وعلى عكس otSrpClientRemoveHostAndServices()
التي ترسل رسالة تحديث إلى الخادم لإزالة جميع المعلومات، تعمل هذه الدالة على محو جميع المعلومات على الفور بدون أي تفاعل مع الخادم.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
otSrpClientClearService
otError otSrpClientClearService( otInstance *aInstance, otSrpClientService *aService )
يؤدي هذا الإجراء إلى محو خدمة، وإزالتها على الفور من قائمة خدمات العملاء.
بخلاف otSrpClientRemoveService()
الذي يرسل رسالة تحديث إلى الخادم لإزالة الخدمة، تعمل هذه الدالة على محو الخدمة من قائمة خدمات العميل بدون أي تفاعل مع الخادم. في حال الاستدعاء بنجاح لهذه الدالة، لن يتم استدعاء otSrpClientCallback
ويمكن إعادة إدخال aService
وإعادة استخدامه من قِبل المتصل على الفور.
يمكن استخدام هذه السياسة مع استدعاء لاحق لـ otSrpClientAddService()
(من المحتمل أن يُعاد استخدام الإدخال aService
نفسه مع أسماء الخدمات والمثيلات نفسها) لتعديل بعض المعلَمات في خدمة حالية.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
قيم الإرجاع |
|
otSrpClientDisableAutoStartMode
void otSrpClientDisableAutoStartMode( otInstance *aInstance )
لإيقاف وضع التشغيل التلقائي.
ولا يتوفّر ذلك إلا عند تفعيل ميزة التشغيل التلقائي OPENTHREAD_CONFIG_SRP_CLIENT_AUTO_START_API_ENABLE
.
إنّ إيقاف وضع التشغيل التلقائي لن يؤدي إلى إيقاف البرنامج إذا كان قيد التشغيل حاليًا، ولكن يتوقف البرنامج عن مراقبة بيانات شبكة Thread للتأكّد من أنّ خادم SRP المحدّد لا يزال متوفرًا فيها.
يُرجى العِلم أنّ المكالمة مع الرقم otSrpClientStop()
ستوقِف أيضًا وضع التشغيل التلقائي.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
otSrpClientEnableAutoHostAddress
otError otSrpClientEnableAutoHostAddress( otInstance *aInstance )
يؤدي إلى تفعيل وضع عنوان المضيف التلقائي.
عند تفعيل عناوين IPv6 للمضيف التي تم ضبطها، يتم تلقائيًا ضبطها من قِبل عميل SRP باستخدام جميع عناوين يونيكود على Threadif في شبكة Threadif باستثناء جميع العناوين المحلية للرابط والشبكة المتداخلة. وفي حال عدم توفّر عنوان صالح، تتم إضافة عنوان معرّف بطاقة SIM المضمّنة للشبكة المتداخلة. وسيعيد برنامج SRP التسجيل تلقائيًا عند تعديل العناوين في netif (عند إضافة عناوين جديدة أو إزالة العناوين الحالية).
يمكن تفعيل وضع عنوان المضيف التلقائي قبل بدء عميل SRP أو أثناء تشغيله إلا عندما تتم إزالة معلومات المضيف (العميل مشغول عند معالجة طلب إزالة من مكالمة إلى otSrpClientRemoveHostAndServices()
وتكون معلومات المضيف لا تزال في STATE_TO_REMOVE
أو STATE_REMOVING
).
بعد تفعيل وضع عنوان المضيف التلقائي، يمكن إيقافه باستدعاء إلى otSrpClientSetHostAddresses()
الذي يحدِّد بعد ذلك عناوين المضيف صراحة.
التفاصيل | |||||
---|---|---|---|---|---|
قيم الإرجاع |
|
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 بيانات شبكة Thread (SRP) لاكتشاف خوادم SRP واختيار الخادم المفضّل وبدء تشغيل العميل وإيقافه تلقائيًا عند اكتشاف خادم SRP.
تتوفّر ثلاث فئات من إدخالات بيانات الشبكة تشير إلى وجود سجلّ SRP. وهي مفضّلة بالترتيب التالي:
1) إدخالات يونيكود مفضّلة حيث يتم تضمين عنوان الخادم في بيانات الخدمة. في حال توفُّر عدة خيارات، يُفضَّل استخدام الخيار الذي يحمل أقل عنوان رقمي من IPv6.
2) إدخال أي بث في رقم تسلسلي ويُعتبر عدد التسلسلات الكبير بالمعنى المحدّد وفقًا لمنطق العمليات الحسابية للأرقام التسلسلية في RFC-1982 أحدث وأخيرًا. ويُفضَّل استخدام أكبر رقم تسلسلي باستخدام العمليات الحسابية للأرقام التسلسلية إذا كان محدَّدًا بشكل جيد (أي أنّ رقم التسلسل أكبر من جميع الأرقام التسلسلية الأخرى). إذا لم يكن معرَّفًا بشكل جيد، يُفضَّل استخدام أكبر رقم تسلسلي رقمي.
3) إلغاء عرض الإدخالات التي يتم فيها تضمين معلومات عنوان الخادم في بيانات الخادم. في حال توفُّر عدة خيارات، يُفضَّل استخدام الخيار الذي يحمل أقل عنوان رقمي من IPv6.
عند حدوث تغيير في إدخالات بيانات الشبكة، سيتحقق العميل من أن الخادم المحدد حاليًا لا يزال متاحًا في بيانات الشبكة ولا يزال هو الخادم المفضّل. بخلاف ذلك، سينتقل العميل إلى الخادم الجديد المفضّل أو يتوقف في حال عدم توفّر الخادم.
عند بدء برنامج SRP صراحةً من خلال استدعاء ناجح لـ otSrpClientStart()
، سيستمر استخدام عنوان خادم SRP المحدد في otSrpClientStart()
بغض النظر عن حالة وضع التشغيل التلقائي وما إذا كان عنوان خادم SRP نفسه قد تم اكتشافه أو لا في بيانات Thread Network. في هذه الحالة، سيتم وقف العميل من خلال مكالمة صريحة واحدة (otSrpClientStop()
).
التفاصيل | |||||||
---|---|---|---|---|---|---|---|
المَعلمات |
|
otSrpClientGetPermission
const char * otSrpClientGetDomainName( otInstance *aInstance )
تحصل على اسم النطاق الذي يستخدمه عميل SRP.
يتطلّب تفعيل OPENTHREAD_CONFIG_SRP_CLIENT_DOMAIN_NAME_API_ENABLE
.
في حال عدم ضبط اسم النطاق، سيتم استخدام "default.service.arpa".
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
سلسلة اسم النطاق.
|
otSrpClientGetHostInfo
const otSrpClientHostInfo * otSrpClientGetHostInfo( otInstance *aInstance )
الحصول على معلومات المضيف.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
مؤشر لاستضافة بنية المعلومات
|
otSrpClientGetKeyLeaseInterval
uint32_t otSrpClientGetKeyLeaseInterval( otInstance *aInstance )
عرض الفاصل الزمني التلقائي لتأجير المفتاح المستخدم في طلبات تحديث SRP.
يُستخدَم الفاصل الزمني التلقائي فقط مع otSrpClientService
مثيلات تم ضبط mKeyLease
فيها على صفر.
تجدر الإشارة إلى أنّ هذه المدة هي مدة الإيجار التي يطلبها عميل SRP. قد يختار الخادم قبول فاصل تأجير مختلف.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
الفاصل الزمني لتأجير المفتاح (بالثواني)
|
otSrpClientGetLeaseInterval
uint32_t otSrpClientGetLeaseInterval( otInstance *aInstance )
الحصول على الفاصل الزمني التلقائي للإيجار المستخدم في طلبات تحديث SRP.
يُستخدَم الفاصل الزمني التلقائي فقط مع otSrpClientService
مثيلات تم ضبط mLease
فيها على صفر.
تجدر الإشارة إلى أنّ هذه المدة هي مدة الإيجار التي يطلبها عميل SRP. قد يختار الخادم قبول فاصل تأجير مختلف.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
فترة الإيجار (بالثواني)
|
otSrpClientGetServerAddress
const otSockAddr * otSrpClientGetServerAddress( otInstance *aInstance )
للحصول على عنوان المقبس (عنوان IPv6 ورقم المنفذ) لخادم SRP الذي يستخدمه عميل SRP.
إذا لم يكن العميل قيد التشغيل، يكون العنوان غير محدّد (صفر) مع رقم منفذ صفر.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
مؤشر إلى عنوان المقبس الخاص بخادم SRP (دائمًا ما يكون غير NULL).
|
otSrpClientGetServices
const otSrpClientService * otSrpClientGetServices( otInstance *aInstance )
الحصول على قائمة الخدمات التي يديرها العميل
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
مؤشر لرأس القائمة المرتبطة بجميع الخدمات أو NULL إذا كانت القائمة فارغة.
|
otSrpClientGetTtl
uint32_t otSrpClientGetTtl( otInstance *aInstance )
الحصول على قيمة مدة البقاء (TTL) في كل سجل مضمّن في طلبات تحديث SRP.
تجدر الإشارة إلى أنّ هذا التقرير هو مدة البقاء (TTL) التي طلبها عميل SRP. قد يختار الخادم قبول مدة البقاء (TTL) مختلفة.
بشكل تلقائي، تساوي مدة البقاء (TTL) فاصل الإيجار. سيؤدي تمرير القيمة 0 أو قيمة أكبر من الفاصل الزمني للإيجار عبر otSrpClientSetTtl()
إلى عرض قيمة TTL لمدة الإيجار أيضًا.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
مدة البقاء (بالثواني)
|
otSrpClientIsAutoStartModeEnabled
bool otSrpClientIsAutoStartModeEnabled( otInstance *aInstance )
يشير إلى الحالة الحالية لوضع التشغيل التلقائي (مفعَّل أو غير مفعَّل).
ولا يتوفّر ذلك إلا عند تفعيل ميزة التشغيل التلقائي OPENTHREAD_CONFIG_SRP_CLIENT_AUTO_START_API_ENABLE
.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
صحيح إذا كان وضع البدء التلقائي مفعّلاً، إذا كان الإعداد "خطأ" مفعّلاً.
|
otSrpClientIsRunning
bool otSrpClientIsRunning( otInstance *aInstance )
يشير إلى ما إذا كان برنامج SRP قيد التشغيل أم لا.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
صحيح إذا كان عميل SRP قيد التشغيل، وبخلاف ذلك، على "خطأ".
|
otSrpClientIsServiceKeyRecordEnabled
bool otSrpClientIsServiceKeyRecordEnabled( otInstance *aInstance )
يشير إلى ما إذا كان وضع "تضمين سجلّ الخدمة" مفعَّلاً أو غير مفعَّل.
متاحة عند تفعيل إعدادات OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
صحيح إذا تم تفعيل وضع "تضمين سجلّ الخدمة" أو "خطأ" في الحالات الأخرى.
|
otSrpClientItemStateToString
const char * otSrpClientItemStateToString( otSrpClientItemState aItemState )
تحوِّل otSrpClientItemState
إلى سلسلة.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
تمثيل سلسلة عن
aItemState . |
otSrpClientإزالةHostAndServices
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
.
التفاصيل | |||||||
---|---|---|---|---|---|---|---|
المَعلمات |
|
||||||
قيم الإرجاع |
|
otSrpClientRemoveService
otError otSrpClientRemoveService( otInstance *aInstance, otSrpClientService *aService )
طلب خدمة غير مسجَّلة مع الخادم.
بعد طلب ناجح لهذه الدالة، سيتم الاتصال بـ otSrpClientCallback
للإبلاغ عن حالة طلب الإزالة من خلال خادم SRP.
يجب أن يستمر المثيل otSrpClientService
المُشار إليه بواسطة aService
ويظل بدون تغيير بعد الرجوع من هذه الدالة (باستخدام OT_ERROR_NONE
). سيحتفظ OpenThread بمثيل الخدمة أثناء عملية الإزالة. ولا يمكن إزالة/إعادة استخدام الجهاز إلا بعد استدعاء otSrpClientCallback
للإشارة إلى أنّ مثيل الخدمة غير متوفّر من قائمة خدمات عميل SRP.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
قيم الإرجاع |
|
otSrpClientSetCallback
void otSrpClientSetCallback( otInstance *aInstance, otSrpClientCallback aCallback, void *aContext )
تضبط معاودة الاتصال لإعلام المتصل بالأحداث/التغييرات من عميل SRP.
يسمح عميل SRP بتسجيل رد اتصال واحد. لذلك، ستحل الاستدعاءات المتتالية لهذه الدالة محل أي دوال رد اتصال تم إعدادها في السابق.
التفاصيل | |||||||
---|---|---|---|---|---|---|---|
المَعلمات |
|
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
).
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
قيم الإرجاع |
|
otSrpClientSetHostAddresses
otError otSrpClientSetHostAddresses( otInstance *aInstance, const otIp6Address *aIp6Addresses, uint8_t aNumAddresses )
تعمل هذه السياسة على إعداد/تعديل قائمة عناوين IPv6 للمضيف.
يمكن إعداد/تغيير عناوين IPv6 للمضيف قبل بدء برنامج SRP أو أثناء تشغيله (على سبيل المثال، إضافة/إزالة عنوان مضيف تم تسجيله سابقًا أو تغييره)، إلا عندما تتم إزالة معلومات المضيف (أي في حال انشغال العميل بمعالجة طلب إزالة من مكالمة سابقة إلى otSrpClientRemoveHostAndServices()
) وتظل معلومات المضيف في STATE_TO_REMOVE
أو STATE_REMOVING
من الحالات).
يجب أن تظل مصفوفة عناوين IPv6 للمضيف المشار إليها من قِبل aIp6Addresses
تظل بدون تغيير بعد الرجوع من هذه الدالة (باستخدام OT_ERROR_NONE
)، ستحفظ OpenThread المؤشّر إلى الصفيف.
بعد طلب ناجح لاستدعاء هذه الوظيفة، سيتم الاتصال بـ otSrpClientCallback
للإبلاغ عن حالة تسجيل العنوان من خلال خادم SRP.
يؤدي استدعاء هذه الدالة إلى إيقاف وضع عنوان المضيف التلقائي إذا تم تفعيله في السابق من استدعاء ناجح إلى otSrpClientEnableAutoHostAddress()
.
التفاصيل | |||||||
---|---|---|---|---|---|---|---|
المَعلمات |
|
||||||
قيم الإرجاع |
|
otSrpClientSetHostName
otError otSrpClientSetHostName( otInstance *aInstance, const char *aName )
لضبط تصنيف اسم المضيف.
بعد طلب ناجح لهذه الوظيفة، سيتم طلب otSrpClientCallback
للإبلاغ عن حالة تسجيل معلومات المضيف من خلال خادم SRP.
يجب أن يستمر المخزن المؤقت لسلسلة الاسم المشار إليه من خلال aName
ويظل بدون تغيير بعد الرجوع من هذه الدالة. سيحتفظ OpenThread بالمؤشر إلى السلسلة.
يمكن ضبط اسم المضيف قبل بدء العميل أو بعد البدء، ولكن قبل تسجيل معلومات المضيف مع الخادم (يجب أن تكون معلومات المضيف إما STATE_TO_ADD
أو STATE_REMOVED
).
التفاصيل | |||||||
---|---|---|---|---|---|---|---|
المَعلمات |
|
||||||
قيم الإرجاع |
|
otSrpClientSetKeyLeaseInterval
void otSrpClientSetKeyLeaseInterval( otInstance *aInstance, uint32_t aInterval )
تتيح لك هذه السياسة تحديد الفاصل الزمني التلقائي لاستئجار المفاتيح المُستخدَم في طلبات تعديل SRP.
يُستخدَم الفاصل الزمني التلقائي فقط مع otSrpClientService
مثيلات تم ضبط mKeyLease
فيها على صفر.
لا يؤثر تغيير الفاصل الزمني للإيجار في الفاصل الزمني المقبول للإيجار للخدمات أو معلومات المضيف المسجّلة حاليًا، بل يؤثّر فقط في أي رسائل لاحقة تتضمّن تعديلاً بشأن SRP (أي إضافة خدمات جديدة و/أو إعادة تحميل الخدمات الحالية).
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
otSrpClientSetLeaseInterval
void otSrpClientSetLeaseInterval( otInstance *aInstance, uint32_t aInterval )
تضبط هذه السياسة الفترة الزمنية التلقائية للإيجار المستخدَمة في طلبات تعديل صفحات SRP.
يُستخدَم الفاصل الزمني التلقائي فقط مع otSrpClientService
مثيلات تم ضبط mLease
فيها على صفر.
لا يؤثر تغيير فترة الإيجار في الفاصل الزمني المقبول للإيجار للخدمات أو معلومات المضيف المسجّلة حاليًا، بل يؤثّر فقط في أي رسائل لاحقة تحدّثها عن بروتوكول SRP (أي إضافة خدمات جديدة و/أو إعادة تحميل الخدمات الحالية).
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
otSrpClientSetServiceKeyRecordEnabled
void otSrpClientSetServiceKeyRecordEnabled( otInstance *aInstance, bool aEnabled )
تعمل هذه السياسة على تفعيل/إيقاف وضع "تضمين سجلّ خدمة المفتاح".
عند تفعيل هذا الإعداد، سيتضمّن عميل SRP سجلّ المفاتيح في "تعليمات وصف الخدمة" في رسائل تعديل SRP التي يرسلها.
متاحة عند تفعيل إعدادات OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
otSrpClientSetTtl
void otSrpClientSetTtl( otInstance *aInstance, uint32_t aTtl )
لضبط قيمة TTL في كل سجلّ مضمَّن في طلبات تعديل SRP.
لا يؤثر تغيير TTL في مدة البقاء (TTL) للخدمات المسجَّلة/معلومات المضيف. وهو يؤثر فقط في الرسائل المستقبلية لتحديث SRP (أي إضافة خدمات جديدة و/أو إعادة تحميل للخدمات الحالية).
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
otSrpClientStart
otError otSrpClientStart( otInstance *aInstance, const otSockAddr *aServerSockAddr )
تبدأ عملية عميل SRP.
سيجهّز عميل SRP رسالة "تحديث SRP" ويرسلها إلى خادم SRP بعد استيفاء جميع الشروط التالية:
- تم بدء عميل SRP، ويتم طلب
otSrpClientStart()
. - تم ضبط اسم المضيف. يتم الاتصال باسم
otSrpClientSetHostName()
. - تم ضبط عنوان IPv6 واحد على الأقل للمضيف، ويتم استدعاء "
otSrpClientSetHostName()
". - تتم إضافة خدمة واحدة على الأقل، ويتم استدعاء
otSrpClientAddService()
.
ولا يهم ترتيب هذه الدوال. عند استيفاء جميع الشروط، سينتظر عميل SRP تأخيرًا قصيرًا قبل تحضير رسالة "تحديث SRP" وإرسالها إلى الخادم. يسمح هذا التأخير للمستخدم بإضافة خدمات و/أو عناوين IPv6 متعددة قبل إرسال رسالة تحديث SRP الأولى (مع ضمان إرسال تحديث SRP واحد يحتوي على جميع المعلومات). تحدِّد الإعدادات OPENTHREAD_CONFIG_SRP_CLIENT_UPDATE_TX_DELAY
الفاصل الزمني للمهلة.
التفاصيل | |||||||
---|---|---|---|---|---|---|---|
المَعلمات |
|
||||||
قيم الإرجاع |
|
otSrpClientStop
void otSrpClientStop( otInstance *aInstance )
لإيقاف عملية عميل SRP.
لإيقاف أي تفاعلات أخرى مع خادم SRP. يُرجى العِلم أنّ هذا الإجراء لا يؤدي إلى إزالة معلومات المضيف و/أو قائمة الخدمات أو محوها. يحدِّد هذا الإعداد جميع الخدمات التي ستتم إضافتها أو إزالتها مرة أخرى بعد إعادة تشغيل البرنامج.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
otSrpServerGetAddressMode
otSrpServerAddressMode otSrpServerGetAddressMode( otInstance *aInstance )
يعرض وضع العنوان الذي يستخدمه خادم SRP.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
وضع عنوان خادم SRP.
|
otSrpServerGetAndcastModeSerialNumber
uint8_t otSrpServerGetAnycastModeSequenceNumber( otInstance *aInstance )
لعرض رقم التسلسل المستخدم مع أي وضع عنوانأي بث.
يتم تضمين رقم التسلسل في إدخال "DNS/SRP Service Anycast address" المنشور في "بيانات الشبكة".
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
رقم تسلسل Anycast.
|
otSrpServerGetDomain
const char * otSrpServerGetDomain( otInstance *aInstance )
يعرض النطاق المُصرَّح له بخادم SRP.
إذا لم يتم ضبط النطاق من خلال SetDomain، سيتم عرض "default.service.arpa". يتم دائمًا إلحاق نقطة لاحقة حتى إذا تم ضبط النطاق بدونه.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
مؤشر لسلسلة النطاق المُنضمة بالنقطة.
|
otSrpServerGetLeaseConfig
void otSrpServerGetLeaseConfig( otInstance *aInstance, otSrpServerLeaseConfig *aLeaseConfig )
لعرض إعدادات SRP خادم LEASE وKEY-LEASE.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
otSrpServerGetNextHost
const otSrpServerHost * otSrpServerGetNextHost( otInstance *aInstance, const otSrpServerHost *aHost )
عرض المضيف المسجّل التالي على خادم SRP.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
المرتجعات |
مؤشر للمضيف المسجّل. NULL، في حال تعذّر العثور على المزيد من المضيفين.
|
otSrpServerGetPort
uint16_t otSrpServerGetPort( otInstance *aInstance )
تعرض هذه السياسة المنفذ الذي يستمع إليه خادم SRP.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
منفذ خادم SRP. يعرض 0 إذا لم يكن الخادم قيد التشغيل.
|
otSrpServerGetResponseCounters
const otSrpServerResponseCounters * otSrpServerGetResponseCounters( otInstance *aInstance )
تعرض العدّادات الخاصة باستجابات خادم SRP.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
مؤشر إلى عدّادات استجابة خادم SRP.
|
otSrpServerGetState
otSrpServerState otSrpServerGetState( otInstance *aInstance )
تعرض حالة خادم SRP.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
الحالة الراهنة لخادم SRP.
|
otSrpServerGetTtlConfig
void otSrpServerGetTtlConfig( otInstance *aInstance, otSrpServerTtlConfig *aTtlConfig )
لعرض إعدادات مدة البقاء (TTL) الخاصة بخادم SRP.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
otSrpServerHandleServiceUpdateResult
void otSrpServerHandleServiceUpdateResult( otInstance *aInstance, otSrpServerServiceUpdateId aId, otError aError )
يقدم هذا التقرير تقارير عن معالجة تعديل SRP إلى خادم SRP.
على مُعالِج تحديث الخدمة استدعاء هذه الدالة لعرض نتيجة معالجتها لتعديل SRP.
التفاصيل | |||||||
---|---|---|---|---|---|---|---|
المَعلمات |
|
otSrpServerHostFindNextService
const otSrpServerService * otSrpServerHostFindNextService( const otSrpServerHost *aHost, const otSrpServerService *aPrevService, otSrpServerServiceFlags aFlags, const char *aServiceName, const char *aInstanceName )
العثور على خدمة المطابقة التالية في المضيف
يسمح الجمع بين العلامات وأسماء الخدمات والمثيلات بتكرار القائمة الكاملة للخدمات و/أو مجموعة فرعية منها تتطابق مع شروط معيّنة، أو العثور على خدمة معيّنة.
للتكرار على جميع خدمات المضيف: service = otSrpServerHostFindServiceService(host, service, OT_SRP_SERVER_FLAGS_ANY_SERVICE, NULL, NULL)
للتكرار على الخدمات الأساسية فقط (باستثناء الأنواع الفرعية): service = otSrpServerHostFindNextService(host, service, OT_SRP_SERVER_FLAGS_BASE_TYPE_SERVICE_ONLY, NULL, NULL)
لإعادة التكرار على الأنواع الفرعية من اسم مثيل معيّن instanceName
: service = otSrpServerHostFindNextService(host, service, OT_SRP_SERVER_FLAGS_SUB_TYPE_SERVICE_ONLY, NULL, exampleName);
للعثور على خدمة معيّنة باسم الخدمة serviceName
واسم مثيل الخدمة instanceName
: service = otSrpServerHostFindNextService(host, NULL, OT_SRP_SERVER_FLAGS_ANY_SERVICE, serviceName, المثيل؛)
للعثور على خدمة النوع الأساسي باسم مثيل خدمة معيّن instanceName
: service = otSrpServerHostFindNextService(host, NULL, OT_SRP_SERVER_FLAGS_BASE_TYPE_SERVICE_ONLY, NULL, exampleName);
التفاصيل | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
المَعلمات |
|
||||||||||
المرتجعات |
مؤشر إلى خدمة المطابقة التالية أو رمز NULL إذا لم يتم العثور على خدمة مطابقة.
|
otSrpServerHostGetAddresses
const otIp6Address * otSrpServerHostGetAddresses( const otSrpServerHost *aHost, uint8_t *aAddressesNum )
يعرض عناوين المضيف المعيّن.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
المرتجعات |
مؤشر إلى مصفوفة عنوان IPv6.
|
otSrpServerHostGetfullName
const char * otSrpServerHostGetFullName( const otSrpServerHost *aHost )
يعرض الاسم الكامل للمضيف.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
مؤشر لسلسلة اسم المضيف المنتهية القيمة الفارغة.
|
otSrpServerHostGetLeaseInfo
void otSrpServerHostGetLeaseInfo( const otSrpServerHost *aHost, otSrpServerLeaseInfo *aLeaseInfo )
عرض معلومات LEASE وKEY-LEASE لمضيف معيّن.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
otSrpServerHostGetNextService
const otSrpServerService * otSrpServerHostGetNextService( const otSrpServerHost *aHost, const otSrpServerService *aService )
عرض الخدمة التالية (باستثناء أي خدمات من نوع فرعي) للمضيف المحدَّد.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
المرتجعات |
مؤشر إلى الخدمة التالية أو رمز NULL إذا لم يكن هناك المزيد من الخدمات.
|
otSrpServerHostIsDelete
bool otSrpServerHostIsDeleted( const otSrpServerHost *aHost )
يحدّد هذا الإعداد ما إذا تم حذف مضيف خدمة SRP.
يمكن حذف مضيف خدمة SRP مع الاحتفاظ باسمه لاستخدامه في المستقبل. في هذه الحالة، لا تتم إزالة مثيل المضيف من خادم/سجلّ SRP.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
صحيح إذا تم حذف المضيف، وإذا لم يتم حذفه، يمكنك النقر على "خطأ".
|
otSrpServerIsAutoEnableMode
bool otSrpServerIsAutoEnableMode( otInstance *aInstance )
يشير إلى ما إذا كان وضع التفعيل التلقائي مفعّلاً أو غير مفعّل.
يجب استخدام ميزة OPENTHREAD_CONFIG_BORDER_ROUTING_ENABLE
.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
قيم الإرجاع |
|
otSrpServerServiceGetfullName
const char * otSrpServerServiceGetFullName( const otSrpServerService *aService )
يعرض اسم الخدمة بالكامل بالكامل للمثيل.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
مؤشر على سلسلة اسم مثيل الخدمة المنتهية فارغة.
|
otSrpServerServiceGetHost
const otSrpServerHost * otSrpServerServiceGetHost( const otSrpServerService *aService )
عرض المضيف الذي يتوفّر فيه مثيل الخدمة
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
يشير إلى مثيل المضيف.
|
otSrpServerServiceGetInstanceName
const char * otSrpServerServiceGetInstanceName( const otSrpServerService *aService )
يعرض اسم الخدمة بالكامل بالكامل للمثيل.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
مؤشر على سلسلة اسم مثيل الخدمة المنتهية فارغة.
|
otSrpServerGetLeaseInfo
void otSrpServerServiceGetLeaseInfo( const otSrpServerService *aService, otSrpServerLeaseInfo *aLeaseInfo )
لعرض معلومات LEASE وKEY-LEASE لخدمة معيّنة.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
otSrpServerServiceGetPort
uint16_t otSrpServerServiceGetPort( const otSrpServerService *aService )
تعرض عملية نقل مثيل الخدمة.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
منفذ الخدمة.
|
otSrpServerServiceGetPriority
uint16_t otSrpServerServiceGetPriority( const otSrpServerService *aService )
يعرض أولوية مثيل الخدمة.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
أولوية الخدمة.
|
otSrpServerServiceServiceServiceName
const char * otSrpServerServiceGetServiceName( const otSrpServerService *aService )
عرض اسم الخدمة بالكامل للخدمة.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
مؤشر لسلسلة اسم الخدمة المنتهية فارغة.
|
otSrpServerServiceServiceServiceTypeType
otError otSrpServerServiceGetServiceSubTypeLabel( const otSrpServerService *aService, char *aLabel, uint8_t aMaxSize )
الحصول على تصنيف النوع الفرعي من اسم الخدمة
المقصود من استخدامها عندما يكون aService
من النوع الفرعي، بمعنى تعرض otSrpServerServiceIsSubType()
للخدمة TRUE. إذا لم تكن نوعًا فرعيًا، ستعرض هذه الدالة OT_ERROR_INVALID_ARGS
.
يكون اسم الخدمة الكاملة لنوع فرعي فرعي يتبع "
إلى المخزن المؤقت aLabel
.
تضمن خدمة aLabel
دائمًا إنهاء البيانات الفارغة بعد إرجاع الجهاز في حال حدوث خطأ.
التفاصيل | |||||||
---|---|---|---|---|---|---|---|
المَعلمات |
|
||||||
قيم الإرجاع |
|
otSrpServerServiceTTl
uint32_t otSrpServerServiceGetTtl( const otSrpServerService *aService )
تعرض مدة البقاء (TTL) لمثيل الخدمة.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
مدة البقاء (TTL) لمثيل الخدمة.
|
otSrpServerServiceTTxtData
const uint8_t * otSrpServerServiceGetTxtData( const otSrpServerService *aService, uint16_t *aDataLength )
يعرض بيانات سجلّ TXT لمثيل الخدمة.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
المرتجعات |
مؤشر إلى المخزن المؤقت الذي يحتوي على بيانات سجلّ TXT (يتم عرض طول بيانات TXT في
aDataLength ). |
otSrpServerServiceGetWeight
uint16_t otSrpServerServiceGetWeight( const otSrpServerService *aService )
لعرض وزن مثيل الخدمة.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
حجم الخدمة.
|
otSrpServerServiceIsDelete
bool otSrpServerServiceIsDeleted( const otSrpServerService *aService )
يشير هذا العمود إلى ما إذا تم حذف خدمة SRP أو لا.
يمكن حذف خدمة SRP مع الاحتفاظ باسمها للاستخدامات المستقبلية. في هذه الحالة، لا تتم إزالة مثيل الخدمة من خادم/سجلّ SRP. ويضمن أن يتم حذف جميع الخدمات في حال حذف المضيف.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
صحيح إذا تم حذف الخدمة، وإذا لم يتم حذفها، سيتم ضبطها على "خطأ".
|
otSrpServerServiceIsSubType
bool otSrpServerServiceIsSubType( const otSrpServerService *aService )
يشير ما إذا كانت خدمة SRP هي نوع فرعي أم لا.
التفاصيل | |||
---|---|---|---|
المَعلمات |
|
||
المرتجعات |
TRUE إذا كانت الخدمة من نوع فرعي، وكانت FALSE إذا لم تكن الخدمة من نوعها.
|
otSrpServerSetAddressMode
otError otSrpServerSetAddressMode( otInstance *aInstance, otSrpServerAddressMode aMode )
تضبط هذه السياسة وضع العنوان المطلوب استخدامه من خلال خادم SRP.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
قيم الإرجاع |
|
otSrpServerSet AnycastModeSerialNumber
otError otSrpServerSetAnycastModeSequenceNumber( otInstance *aInstance, uint8_t aSequenceNumber )
تضبط رقم التسلسل المستخدَم مع وضع عنوانأي بث.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
قيم الإرجاع |
|
otSrpServerSetAutoEnableMode
void otSrpServerSetAutoEnableMode( otInstance *aInstance, bool aEnabled )
يؤدي هذا الخيار إلى تفعيل/إيقاف وضع التفعيل التلقائي على خادم SRP.
يجب استخدام ميزة OPENTHREAD_CONFIG_BORDER_ROUTING_ENABLE
.
عند تفعيل هذا الوضع، يتحكّم مدير توجيه الحدود في ما إذا كان سيتم تفعيل خادم SRP أو إيقافه. يتم تفعيل خادم SRP تلقائيًا في حال بدء تشغيل توجيه الحدود أو تنفيذه عند ضبط إعدادات البادئة والمسار الأوليَّين (عند تحديد OMR والبادئات على الرابط، والتي يتم الإعلان عنها في رسالة إعلانات جهاز التوجيه الصادرة في الجانب الأساسي للبنية ونشرها في بيانات شبكة Thread). يتم إيقاف خادم SRP تلقائيًا في حال/عندما تم إيقاف BR (على سبيل المثال، إذا تم إيقاف واجهة شبكة البنية الأساسية أو إذا تم فصل BR).
ويمكن إيقاف هذا الوضع عن طريق الاتصال بـ otSrpServerSetAutoEnableMode()
مع ضبط aEnabled
على false
أو إذا تم تفعيل خادم SRP صراحةً أو إيقافه من خلال استدعاء وظيفة otSrpServerSetEnabled()
. إنّ إيقاف وضع التفعيل التلقائي باستخدام otSrpServerSetAutoEnableMode(false)
لن يؤدي إلى تغيير الحالة الحالية لحالة SRP (على سبيل المثال، في حال تم تفعيله، سيظل مفعَّلاً).
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
otSrpServerSetDomain
otError otSrpServerSetDomain( otInstance *aInstance, const char *aDomain )
لضبط النطاق على خادم SRP.
سيتم إلحاق نقطة لاحقة بـ aDomain
إذا لم تكن موجودة. يجب استدعاء هذه الواجهة فقط قبل تفعيل خادم SRP.
التفاصيل | |||||||||
---|---|---|---|---|---|---|---|---|---|
المَعلمات |
|
||||||||
قيم الإرجاع |
|
otSrpServerSetEnabled
void otSrpServerSetEnabled( otInstance *aInstance, bool aEnabled )
تفعيل/إيقاف خادم SRP
وعلى جهاز توجيه الحدود، يُنصَح باستخدام otSrpServerSetAutoEnableMode()
بدلاً من ذلك.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
otSrpServerSetLeaseConfig
otError otSrpServerSetLeaseConfig( otInstance *aInstance, const otSrpServerLeaseConfig *aLeaseConfig )
وتحدد إعدادات SRP LEASE وKEY-LEASE.
عند طلب وقت LEASE غير صفري من عميل، ستكون القيمة الممنوحة ضمن النطاق [aMinLease, aMaxLease]، وسيتم منح قيمة صف-صفر LE-LEASE ضمن النطاق [aMinKeyLease, aMaxKeyLease]. بالنسبة إلى وقت LEASE أو KEY-LEASE، سيتم منح صفر.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
قيم الإرجاع |
|
otSrpServerSetServiceUpdateHandler
void otSrpServerSetServiceUpdateHandler( otInstance *aInstance, otSrpServerServiceUpdateHandler aServiceHandler, void *aContext )
تضبط هذه السياسة معالج تحديثات خدمة SRP على خادم SRP.
التفاصيل | |||||||
---|---|---|---|---|---|---|---|
المَعلمات |
|
otSrpServerSetTtlConfig
otError otSrpServerSetTtlConfig( otInstance *aInstance, const otSrpServerTtlConfig *aTtlConfig )
تضبط هذه السياسة إعدادات مدة البقاء (TTL) الخاصة بخادم SRP.
لن تكون قيمة مدة البقاء (TTL) الممنوحة دائمًا أكبر من الحد الأقصى لفترة الإيجار الذي تم إعداده عبر otSrpServerSetLeaseConfig()
، بغض النظر عن الحدّ الأدنى أو الحدّ الأقصى لإعدادات TTL.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
قيم الإرجاع |
|
الموارد
تبدأ مواضيع مراجع واجهة برمجة تطبيقات OpenThread من رمز المصدر، وهو متاح على GitHub. للحصول على مزيد من المعلومات أو للمساهمة في المستندات، يمكنك الاطّلاع على المراجع.