खोज नतीजों का पेज

इस मॉड्यूल में ऐसे फ़ंक्शन शामिल हैं जो SRP क्लाइंट के व्यवहार को कंट्रोल करते हैं.

खास जानकारी

इस मॉड्यूल में सर्विस रजिस्ट्रेशन प्रोटोकॉल के फ़ंक्शन शामिल हैं.

इस मॉड्यूल में, SRP क्लाइंट बफ़र और सर्विस पूल के फ़ंक्शन शामिल हैं.

इस मॉड्यूल में फ़ंक्शन सिर्फ़ तब उपलब्ध होते हैं, जब सुविधाOPEN चिकित्सा_CONFIG_SRP_CLIENT_BUFFERS_ENABLE चालू होता है.

गिनती

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
}
enum
इससे एसआरपी क्लाइंट आइटम (सेवा या होस्ट की जानकारी) की स्थिति के बारे में पता चलता है.
otSrpServerAddressMode{
  OT_SRP_SERVER_ADDRESS_MODE_UNICAST = 0,
  OT_SRP_SERVER_ADDRESS_MODE_ANYCAST = 1
}
enum
यह, एसआरपी सर्वर के इस्तेमाल किए जाने वाले पता मोड के बारे में बताता है.
otSrpServerState{
  OT_SRP_SERVER_STATE_DISABLED = 0,
  OT_SRP_SERVER_STATE_RUNNING = 1,
  OT_SRP_SERVER_STATE_STOPPED = 2
}
enum
यह एसआरपी सर्वर की स्थिति को दिखाता है.

टाइपडीफ़

otSrpClientAutoStartCallback)(const otSockAddr *aServerSockAddr, void *aContext) typedef
void(*
पॉइंटर टाइप, उस कॉलबैक को तय करता है जिसका इस्तेमाल SRP क्लाइंट करता है. इसकी मदद से, उपयोगकर्ता को सूचना मिलती है कि यह अपने-आप शुरू या बंद होता है.
otSrpClientBuffersServiceEntry typedef
यह एसआरपी क्लाइंट सर्विस पूल की एंट्री को दिखाता है.
otSrpClientCallback)(otError aError, const otSrpClientHostInfo *aHostInfo, const otSrpClientService *aServices, const otSrpClientService *aRemovedServices, void *aContext) typedef
void(*
पॉइंटर टाइप, उस कॉलबैक को तय करता है जिसका इस्तेमाल SRP क्लाइंट करता है. इसकी मदद से, उपयोगकर्ता को बदलावों/इवेंट/गड़बड़ियों के बारे में सूचना दी जाती है.
otSrpClientHostInfo typedef
यह एसआरपी क्लाइंट होस्ट की जानकारी दिखाता है.
otSrpClientService typedef
यह एसआरपी क्लाइंट सेवा के बारे में बताता है.
otSrpServerAddressMode typedef
यह, एसआरपी सर्वर के इस्तेमाल किए जाने वाले पता मोड के बारे में बताता है.
otSrpServerHost typedef
यह ओपेक टाइप, एसआरपी सेवा के होस्ट को दिखाता है.
otSrpServerLeaseConfig typedef
इसमें SRP सर्वर LEASE और KEY-LEASE कॉन्फ़िगरेशन शामिल हैं.
otSrpServerLeaseInfo typedef
इसमें किसी होस्ट/सेवा के एसआरपी सर्वर की लीज़ की जानकारी शामिल होती है.
otSrpServerResponseCounters typedef
इसमें एसआरपी सर्वर से मिले रिस्पॉन्स के आंकड़े शामिल होते हैं.
otSrpServerService typedef
यह ओपेक टाइप, एसआरपी सेवा को दिखाता है.
otSrpServerServiceUpdateHandler)(otSrpServerServiceUpdateId aId, const otSrpServerHost *aHost, uint32_t aTimeout, void *aContext) typedef
void(*
यह एसआरपी सेवा से जुड़े अपडेट मैनेज करता है.
otSrpServerServiceUpdateId typedef
uint32_t
SRP सर्वर पर SRP सेवा अपडेट से जुड़े लेन-देन का आईडी.
otSrpServerTtlConfig typedef
इसमें SRP सर्वर TTL (टीटीएल) कॉन्फ़िगरेशन शामिल हैं.

फ़ंक्शन

otSrpClientAddService(otInstance *aInstance, otSrpClientService *aService)
सर्वर के साथ रजिस्टर की जाने वाली सेवा जोड़ता है.
otSrpClientBuffersAllocateService(otInstance *aInstance)
पूल से नई सेवा के लिए एंट्री असाइन करता है.
otSrpClientBuffersFreeAllServices(otInstance *aInstance)
void
पहले से तय की गई सभी सेवाओं की एंट्री को बिना किसी शुल्क के इस्तेमाल किया जा सकता है.
otSrpClientBuffersFreeService(otInstance *aInstance, otSrpClientBuffersServiceEntry *aService)
void
पहले से तय की गई सेवा को बिना किसी शुल्क के ऐक्सेस किया जा सकता है.
otSrpClientBuffersGetHostAddressesArray(otInstance *aInstance, uint8_t *aArrayLength)
इससे आईपीवी6 पते की एंट्री का कलेक्शन मिलता है, ताकि इसे एसआरपी क्लाइंट होस्ट के पते की सूची के तौर पर इस्तेमाल किया जा सके.
otSrpClientBuffersGetHostNameString(otInstance *aInstance, uint16_t *aSize)
char *
यह स्ट्रिंग बफ़र को एसआरपी क्लाइंट के होस्ट नाम के लिए इस्तेमाल करता है.
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)
होस्ट की जानकारी मिलती है.
otSrpClientGetKeyLeaseInterval(otInstance *aInstance)
uint32_t
इससे, एसआरपी अपडेट के अनुरोधों में इस्तेमाल किए जाने वाले डिफ़ॉल्ट पासकोड लीज़ इंटरवल की जानकारी मिलती है.
otSrpClientGetLeaseInterval(otInstance *aInstance)
uint32_t
इससे, एसआरपी अपडेट करने के अनुरोधों में इस्तेमाल किए जाने वाले डिफ़ॉल्ट लीज़ इंटरवल की जानकारी मिलती है.
otSrpClientGetServerAddress(otInstance *aInstance)
const otSockAddr *
SRP सर्वर का सॉकेट पता (IPv6 पता और पोर्ट नंबर) पाता है, जिसका इस्तेमाल SRP क्लाइंट कर रहा है.
otSrpClientGetServices(otInstance *aInstance)
क्लाइंट की ओर से मैनेज की जा रही सेवाओं की सूची मिलती है.
otSrpClientGetTtl(otInstance *aInstance)
uint32_t
इससे एसआरपी अपडेट के अनुरोधों में शामिल हर रिकॉर्ड में TTL (टीटीएल) वैल्यू मिलती है.
otSrpClientIsAutoStartModeEnabled(otInstance *aInstance)
bool
अपने-आप चालू होने वाले मोड (चालू या बंद) की मौजूदा स्थिति को दिखाता है.
otSrpClientIsRunning(otInstance *aInstance)
bool
इससे पता चलता है कि एसआरपी क्लाइंट चल रहा है या नहीं.
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)
यह डोमेन नेम सेट करता है, ताकि एसआरपी क्लाइंट उसका इस्तेमाल कर सके.
otSrpClientSetHostAddresses(otInstance *aInstance, const otIp6Address *aIp6Addresses, uint8_t aNumAddresses)
होस्ट आईपीवी6 पते की सूची सेट/अपडेट करता है.
otSrpClientSetHostName(otInstance *aInstance, const char *aName)
होस्ट नेम का लेबल सेट करता है.
otSrpClientSetKeyLeaseInterval(otInstance *aInstance, uint32_t aInterval)
void
यह नीति, एसआरपी अपडेट के अनुरोधों में इस्तेमाल किए जाने वाले डिफ़ॉल्ट कुंजी लीज़ इंटरवल को सेट करती है.
otSrpClientSetLeaseInterval(otInstance *aInstance, uint32_t aInterval)
void
यह नीति, एसआरपी अपडेट के अनुरोधों में इस्तेमाल किए जाने वाले डिफ़ॉल्ट लीज़ इंटरवल को सेट करती है.
otSrpClientSetServiceKeyRecordEnabled(otInstance *aInstance, bool aEnabled)
void
"सेवा कुंजी रिकॉर्ड शामिल करना" मोड को चालू/बंद करता है.
otSrpClientSetTtl(otInstance *aInstance, uint32_t aTtl)
void
यह नीति, एसआरपी अपडेट के अनुरोधों में शामिल हर रिकॉर्ड में TTL (टीटीएल) वैल्यू सेट करती है.
otSrpClientStart(otInstance *aInstance, const otSockAddr *aServerSockAddr)
SRP क्लाइंट कार्रवाई शुरू करता है.
otSrpClientStop(otInstance *aInstance)
void
एसआरपी क्लाइंट की कार्रवाई को रोकता है.
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
वह पोर्ट लौटाता है जिस पर एसआरपी सर्वर सुन रहा है.
otSrpServerGetResponseCounters(otInstance *aInstance)
एसआरपी सर्वर के रिस्पॉन्स काउंटर दिखाता है.
otSrpServerGetState(otInstance *aInstance)
एसआरपी सर्वर की स्थिति दिखाता है.
otSrpServerGetTtlConfig(otInstance *aInstance, otSrpServerTtlConfig *aTtlConfig)
void
SRP सर्वर TTL कॉन्फ़िगरेशन देता है.
otSrpServerHandleServiceUpdateResult(otInstance *aInstance, otSrpServerServiceUpdateId aId, otError aError)
void
यह रिपोर्ट, SRP अपडेट को प्रोसेस करने के नतीजे को SRP सर्वर को रिपोर्ट करती है.
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)
दिए गए होस्ट की अगली सेवा दिखाता है.
otSrpServerHostIsDeleted(const otSrpServerHost *aHost)
bool
यह बताता है कि एसआरपी सेवा के होस्ट को मिटा दिया गया है.
otSrpServerHostMatchesFullName(const otSrpServerHost *aHost, const char *aFullName)
bool
यह बताता है कि होस्ट, दिए गए होस्ट के नाम से मैच करता है या नहीं.
otSrpServerIsAutoEnableMode(otInstance *aInstance)
bool
इससे पता चलता है कि अपने-आप चालू होने वाला मोड चालू है या बंद है.
otSrpServerParseSubTypeServiceName(const char *aSubTypeServiceName, char *aLabel, uint8_t aLabelSize)
यह सब-टाइप सेवा के नाम (पूरा नाम) को पार्स करता है और सब-टाइप लेबल को एक्सट्रैक्ट करता है.
otSrpServerServiceGetHost(const otSrpServerService *aService)
const otSrpServerHost *
वह होस्ट लौटाता है जिस पर सेवा इंस्टेंस मौजूद है.
otSrpServerServiceGetInstanceLabel(const otSrpServerService *aService)
const char *
सेवा के सेवा इंस्टेंस लेबल (उदाहरण के नाम में पहला लेबल) को दिखाता है.
otSrpServerServiceGetInstanceName(const otSrpServerService *aService)
const char *
सेवा के पूरे सेवा इंस्टेंस का नाम दिखाता है.
otSrpServerServiceGetLeaseInfo(const otSrpServerService *aService, otSrpServerLeaseInfo *aLeaseInfo)
void
किसी सेवा की LEASE और KEY-LEASE जानकारी दिखाता है.
otSrpServerServiceGetNumberOfSubTypes(const otSrpServerService *aService)
uint16_t
सेवा के सब-टाइप की जानकारी देता है.
otSrpServerServiceGetPort(const otSrpServerService *aService)
uint16_t
सेवा इंस्टेंस का पोर्ट लौटाता है.
otSrpServerServiceGetPriority(const otSrpServerService *aService)
uint16_t
सेवा इंस्टेंस की प्राथमिकता दिखाता है.
otSrpServerServiceGetServiceName(const otSrpServerService *aService)
const char *
सेवा की पूरी सेवा का नाम दिखाता है.
otSrpServerServiceGetSubTypeServiceNameAt(const otSrpServerService *aService, uint16_t aIndex)
const char *
किसी दिए गए इंडेक्स में, सेवा के सब-टाइप सेवा नाम (पूरा नाम) की जानकारी देता है.
otSrpServerServiceGetTtl(const otSrpServerService *aService)
uint32_t
सेवा इंस्टेंस का TTL (टीटीएल) दिखाता है.
otSrpServerServiceGetTxtData(const otSrpServerService *aService, uint16_t *aDataLength)
const uint8_t *
सेवा इंस्टेंस का TXT रिकॉर्ड डेटा दिखाता है.
otSrpServerServiceGetWeight(const otSrpServerService *aService)
uint16_t
सेवा इंस्टेंस का वेट दिखाता है.
otSrpServerServiceHasSubTypeServiceName(const otSrpServerService *aService, const char *aSubTypeServiceName)
bool
यह बताता है कि सेवा में कोई सब-टाइप है या नहीं.
otSrpServerServiceIsDeleted(const otSrpServerService *aService)
bool
इससे पता चलता है कि एसआरपी सेवा मिटाई गई है या नहीं.
otSrpServerServiceMatchesInstanceName(const otSrpServerService *aService, const char *aInstanceName)
bool
यह बताता है कि यह सेवा, दिए गए सेवा इंस्टेंस के नाम से मेल खाती है या नहीं.
otSrpServerServiceMatchesServiceName(const otSrpServerService *aService, const char *aServiceName)
bool
यह बताता है कि यह सेवा, दी गई सेवा के नाम से मेल खाती है या नहीं.
otSrpServerSetAddressMode(otInstance *aInstance, otSrpServerAddressMode aMode)
इससे, एसआरपी सर्वर के लिए पता मोड सेट करता है.
otSrpServerSetAnycastModeSequenceNumber(otInstance *aInstance, uint8_t aSequenceNumber)
एनीकास्ट पता मोड के साथ इस्तेमाल किए जाने वाले क्रम को सेट करता है.
otSrpServerSetAutoEnableMode(otInstance *aInstance, bool aEnabled)
void
SRP सर्वर पर अपने-आप चालू करें मोड को चालू/बंद करता है.
otSrpServerSetDomain(otInstance *aInstance, const char *aDomain)
डोमेन को एसआरपी सर्वर पर सेट करता है.
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)
SRP सर्वर TTL कॉन्फ़िगरेशन सेट करता है.

संरचना

otSrpClientBuffersServiceEntry

यह एसआरपी क्लाइंट सर्विस पूल की एंट्री को दिखाता है.

otSrpClientHostInfo

यह एसआरपी क्लाइंट होस्ट की जानकारी दिखाता है.

otSrpClientService

यह एसआरपी क्लाइंट सेवा के बारे में बताता है.

otSrpServerLeaseConfig

इसमें SRP सर्वर LEASE और KEY-LEASE कॉन्फ़िगरेशन शामिल हैं.

otSrpServerLeaseInfo

इसमें किसी होस्ट/सेवा के एसआरपी सर्वर की लीज़ की जानकारी शामिल होती है.

otSrpServerResponseCounters

इसमें एसआरपी सर्वर से मिले रिस्पॉन्स के आंकड़े शामिल होते हैं.

otSrpServerTtlConfig

इसमें SRP सर्वर TTL (टीटीएल) कॉन्फ़िगरेशन शामिल हैं.

गिनती

otSrpClientItemState

 otSrpClientItemState

इससे एसआरपी क्लाइंट आइटम (सेवा या होस्ट की जानकारी) की स्थिति के बारे में पता चलता है.

प्रॉपर्टी
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

यह, एसआरपी सर्वर के इस्तेमाल किए जाने वाले पता मोड के बारे में बताता है.

पता मोड से पता चलता है कि एसआरपी सर्वर, पते और पोर्ट नंबर को कैसे तय करता है. साथ ही, यह भी बताता है कि यह जानकारी Thread नेटवर्क के डेटा में कैसे पब्लिश की जाती है.

प्रॉपर्टी
OT_SRP_SERVER_ADDRESS_MODE_ANYCAST

Anycast पता मोड.

OT_SRP_SERVER_ADDRESS_MODE_UNICAST

Unicast पता मोड.

otSrpServerState

 otSrpServerState

यह एसआरपी सर्वर की स्थिति को दिखाता है.

प्रॉपर्टी
OT_SRP_SERVER_STATE_DISABLED

SRP सर्वर बंद है.

OT_SRP_SERVER_STATE_RUNNING

SRP सर्वर चालू है और चल रहा है.

OT_SRP_SERVER_STATE_STOPPED

एसआरपी सर्वर चालू है, लेकिन रुक गया है.

टाइपडीफ़

otSrpClientAutoStartCallback

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

पॉइंटर टाइप, उस कॉलबैक को तय करता है जिसका इस्तेमाल SRP क्लाइंट करता है. इसकी मदद से, उपयोगकर्ता को सूचना मिलती है कि यह अपने-आप शुरू या बंद होता है.

इसका इस्तेमाल सिर्फ़ तब किया जाता है, जब अपने-आप चालू होने की सुविधा OPENTHREAD_CONFIG_SRP_CLIENT_AUTO_START_API_ENABLE चालू हो.

अपने-आप चालू होने वाला मोड चालू होने और एसआरपी क्लाइंट के अपने-आप चालू होने या बंद होने पर, इस कॉलबैक को शुरू किया जाता है.

ब्यौरा
पैरामीटर
[in] aServerSockAddr
नॉन-शून्य पॉइंटर से पता चलता है कि SRP सर्वर शुरू हो गया था और पॉइंटर, चुने गए सर्वर के सॉकेट का पता देगा. NULL पॉइंटर से पता चलता है कि SRP सर्वर बंद हो गया था.
[in] aContext
आर्बिट्रेरी कॉन्टेक्स्ट के लिए पॉइंटर (जब कॉलबैक रजिस्टर किया गया हो).

otSrpClientBuffersServiceEntry

struct otSrpClientBuffersServiceEntry otSrpClientBuffersServiceEntry

यह एसआरपी क्लाइंट सर्विस पूल की एंट्री को दिखाता है.

otSrpClientCallback

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

पॉइंटर टाइप, उस कॉलबैक को तय करता है जिसका इस्तेमाल SRP क्लाइंट करता है. इसकी मदद से, उपयोगकर्ता को बदलावों/इवेंट/गड़बड़ियों के बारे में सूचना दी जाती है.

इस कॉलबैक को एसआरपी सर्वर से अपडेट होने (जैसे, होस्ट की जानकारी और/या कुछ सेवाओं को जोड़ना/हटाना) के रजिस्टर होने के बाद शुरू किया जाता है. इसके अलावा, सर्वर अपडेट के अनुरोध को अस्वीकार करने या जवाब के लिए क्लाइंट का समय खत्म होने वगैरह पर भी इसे शुरू किया जाता है.

किसी अपडेट का फिर से रजिस्ट्रेशन हो जाने पर, aError पैरामीटर OT_ERROR_NONE होगा. साथ ही, होस्ट की जानकारी और सेवाओं की पूरी सूची, इनपुट पैरामीटर के तौर पर कॉलबैक को दी जाती है. ध्यान दें कि होस्ट की जानकारी और सेवाएं, उससे जुड़े डेटा स्ट्रक्चर के mState मेंबर वैरिएबल में अपनी स्थिति को ट्रैक करती हैं. यह स्थिति बताती है कि होस्ट-जानकारी/सेवा को रजिस्टर किया गया है या हटाया गया है या अब भी जोड़ा/हटाया जा रहा है.

हटाई गई सेवाओं की सूची को कॉलबैक में, लिंक की गई सूची aRemovedServices के तौर पर पास किया जाता है. ध्यान दें कि जब कॉलबैक को शुरू किया जाता है, तब SRP क्लाइंट (OpenThread को लागू करना) aRemovedServices में सूची में दी गई, सेवा के हटाए गए इंस्टेंस के साथ किया जाता है और अब उन्हें ट्रैक या स्टोर नहीं करता है. इसका मतलब है कि अगर कॉलबैक से otSrpClientGetServices() को कॉल किया जाता है, तो हटाई गई सेवाएं, दी गई सूची में मौजूद नहीं होंगी. कॉलबैक में, हटाई गई सेवाओं की एक अलग सूची देने से, उपयोगकर्ता को यह बताने में मदद मिलती है कि कौनसे आइटम अब हटा दिए गए हैं. साथ ही, उपयोगकर्ता उन इंस्टेंस पर फिर से दावा कर सकता है या उनका फिर से इस्तेमाल कर सकता है.

अगर सर्वर, SRP अपडेट के अनुरोध को अस्वीकार कर देता है, तो डीएनएस रिस्पॉन्स कोड (RFC 2136) को इन गड़बड़ियों के साथ मैप किया जाता है:

  • (0) NOERROR सफलता (कोई गड़बड़ी वाली शर्त नहीं) -> OT_ERROR_NONE
  • (1) FORMERR सर्वर प्रारूप गड़बड़ी के कारण व्याख्या करने में असमर्थ -> OT_ERROR_PARSE
  • (2) SERVFAILED सर्वर को आंतरिक गड़बड़ी का सामना करना पड़ा -> 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_ भले ही
  • (7) YXRRSET कुछ आरआरसेट जिनका होना ज़रूरी नहीं है, मौजूद है -> OT_ERROR_ टेंप्लेट
  • (8) NXRRSET कुछ आरआरसेट जो मौजूद होने चाहिए, मौजूद नहीं हैं -> OT_ERROR_NOT_FOUND
  • (9) ज़ोन के लिए NOTAUTH सेवा आधिकारिक नहीं है -> OT_ERROR_Security
  • (10) NOTZONE नाम ज़ोन में नहीं है -> OT_ERROR_PARSE
  • (20) BADNAME खराब नाम -> OT_ERROR_PARSE
  • (21) BADALG खराब एल्गोरिदम -> OT_ERROR_सुरक्षा
  • (22) BADTRUN खराब काट-छांट -> OT_ERROR_PARSE
  • अन्य जवाब कोड -> OT_ERROR_FAILED

ये गड़बड़ियां भी हो सकती हैं:

  • OT_ERROR_ERROR_TIMEOUT : सर्वर से प्रतिक्रिया के लिए इंतज़ार करने का समय खत्म हो गया (क्लाइंट फिर से कोशिश करना जारी रखेगा).
  • OT_ERROR_INVALID_ARGS : दी गई सेवा संरचना अमान्य है (उदाहरण के लिए, खराब सेवा नाम या otDnsTxtEntry).
  • OT_ERROR_NO_BUFS : अपडेट संदेश तैयार करने या भेजने के लिए अपर्याप्त बफ़र.

ध्यान दें कि किसी तरह की गड़बड़ी होने पर, क्लाइंट कार्रवाई करना जारी रखता है. इसका मतलब है कि वह कुछ इंतज़ार के बाद, एसआरपी अपडेट करने के मैसेज को तैयार करता है और (फिर से) सर्वर को भेजता है. 'फिर से कोशिश करें' इंतज़ार का अंतराल सबसे कम वैल्यू से शुरू होता है. हर बार गड़बड़ी होने पर, यह ग्रोथ फ़ैक्टर के हिसाब से, ज़्यादा से ज़्यादा वैल्यू तक बढ़ जाता है. ज़्यादा जानकारी के लिए, कृपया कॉन्फ़िगरेशन पैरामीटर OPENTHREAD_CONFIG_SRP_CLIENT_MIN_RETRY_WAIT_INTERVAL और इससे मिलते-जुलते पैरामीटर देखें.

ब्यौरा
पैरामीटर
[in] aError
गड़बड़ी (ऊपर देखें).
[in] aHostInfo
होस्ट की जानकारी के लिए पॉइंटर.
[in] aServices
लिंक की गई सूची का प्रमुख, जिसमें सभी सेवाएं शामिल हैं (हटाई गई सेवाओं को छोड़कर). सूची खाली होने पर NULL.
[in] aRemovedServices
लिंक की गई सूची का प्रमुख, जिसमें हटाई गई सभी सेवाएं शामिल हैं. सूची खाली होने पर NULL.
[in] aContext
आर्बिट्रेरी कॉन्टेक्स्ट के लिए पॉइंटर (जब कॉलबैक रजिस्टर किया गया हो).

otSrpClientHostInfo

struct otSrpClientHostInfo otSrpClientHostInfo

यह एसआरपी क्लाइंट होस्ट की जानकारी दिखाता है.

otSrpClientService

struct otSrpClientService otSrpClientService

यह एसआरपी क्लाइंट सेवा के बारे में बताता है.

इस स्ट्रक्चर में दी गई वैल्यू, नाम और TXT रिकॉर्ड एंट्री के लिए स्ट्रिंग बफ़र के साथ-साथ बनी रहें और otSrpClientAddService() या otSrpClientRemoveService() से OpenThread को पास किए जाने के बाद एक ही वैल्यू बनी रहें.

mState, mData, mNext फ़ील्ड को सिर्फ़ OT कोर से इस्तेमाल या मैनेज किया जाता है. otSrpClientAddService(), otSrpClientRemoveService() या किसी दूसरे फ़ंक्शन में otSrpClientService का इंस्टेंस पास किए जाने पर, उनकी वैल्यू को अनदेखा कर दिया जाता है. कॉलर को ये फ़ील्ड सेट करने की ज़रूरत नहीं होती है.

mLease और mKeyLease फ़ील्ड में, इस सेवा के लिए अपनी पसंद के हिसाब से लीज़ और मुख्य लीज़ इंटरवल की जानकारी दी जाती है. ज़ीरो वैल्यू से पता चलता है कि इंटरवल की जानकारी नहीं दी गई है. इसके बाद, इस सेवा के लिए otSrpClientGetLeaseInterval() और otSrpClientGetKeyLeaseInterval() के डिफ़ॉल्ट लीज़ या कुंजी लीज़ इंटरवल का इस्तेमाल किया जाता है. अगर कुंजी लीज़ इंटरवल (चाहे साफ़ तौर पर सेट किया गया हो या डिफ़ॉल्ट से तय किया गया हो), किसी सेवा के लीज़ इंटरवल से कम है, तो एसआरपी क्लाइंट कुंजी लीज़ इंटरवल के लिए भी लीज़ इंटरवल की वैल्यू का फिर से इस्तेमाल करेगा. उदाहरण के लिए, अगर सेवा में mLease साफ़ तौर पर दो दिन के लिए सेट है और mKeyLease शून्य पर और डिफ़ॉल्ट कुंजी लीज़ एक दिन पर सेट है, तो इस सेवा को रजिस्टर करते समय, अनुरोध की गई कुंजी लीज़ भी दो दिनों पर सेट कर दी जाती है.

otSrpServerAddressMode

enum otSrpServerAddressMode otSrpServerAddressMode

यह, एसआरपी सर्वर के इस्तेमाल किए जाने वाले पता मोड के बारे में बताता है.

पता मोड से पता चलता है कि एसआरपी सर्वर, पते और पोर्ट नंबर को कैसे तय करता है. साथ ही, यह भी बताता है कि यह जानकारी Thread नेटवर्क के डेटा में कैसे पब्लिश की जाती है.

otSrpServerHost

struct otSrpServerHost otSrpServerHost

यह ओपेक टाइप, एसआरपी सेवा के होस्ट को दिखाता है.

otSrpServerLeaseConfig

struct otSrpServerLeaseConfig otSrpServerLeaseConfig

इसमें SRP सर्वर LEASE और KEY-LEASE कॉन्फ़िगरेशन शामिल हैं.

otSrpServerLeaseInfo

struct otSrpServerLeaseInfo otSrpServerLeaseInfo

इसमें किसी होस्ट/सेवा के एसआरपी सर्वर की लीज़ की जानकारी शामिल होती है.

otSrpServerResponseCounters

struct otSrpServerResponseCounters otSrpServerResponseCounters

इसमें एसआरपी सर्वर से मिले रिस्पॉन्स के आंकड़े शामिल होते हैं.

otSrpServerService

struct otSrpServerService otSrpServerService

यह ओपेक टाइप, एसआरपी सेवा को दिखाता है.

otSrpServerServiceUpdateHandler

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

यह एसआरपी सेवा से जुड़े अपडेट मैनेज करता है.

इसे SRP सर्वर यह सूचना देने के लिए कॉल करता है कि किसी SRP होस्ट और शायद SRP सेवाओं को अपडेट किया जा रहा है. यह ज़रूरी है कि SRP अपडेट तब तक लागू न हों, जब तक हैंडलर otSrpServerHandleServiceUpdateresults पर कॉल करके या aTimeout के बाद टाइम आउट के ज़रिए नतीजा न मिले.

SRP सेवा ऑब्ज़र्वर को अपडेट इवेंट मिलने के तुरंत बाद गड़बड़ी कोड OT_ERROR_NONE के साथ otSrpServerHandleServiceUpdate परिणाम को कॉल करना चाहिए.

एक ज़्यादा सामान्य हैंडलर, एसआरपी होस्ट/सेवाओं की पुष्टि कर सकता है. साथ ही, किसी भी तरह की पुष्टि न होने पर, वह एसआरपी अपडेट को अस्वीकार कर सकता है. उदाहरण के लिए, विज्ञापन प्रॉक्सी को मल्टीकास्ट की सुविधा वाले लिंक पर, होस्ट और सेवाओं का विज्ञापन देना चाहिए या उन्हें हटाना चाहिए. साथ ही, किसी भी तरह की गड़बड़ी होने पर, वह गड़बड़ी का खास कोड दिखाता है.

ब्यौरा
पैरामीटर
[in] aId
सेवा अपडेट करने के लिए लेन-देन आईडी. इस आईडी को otSrpServerHandleServiceUpdateResult से वापस भेजना ज़रूरी है.
[in] aHost
otSrpServerHost ऑब्जेक्ट का पॉइंटर, जिसमें SRP अपडेट शामिल हैं. हैंडलर को होस्ट को पब्लिश/अन-पब्लिश करना चाहिए और हर सर्विस, नीचे दिए गए नियमों के साथ इस होस्ट को पॉइंट करती है:
  1. अगर होस्ट को मिटाया नहीं गया है (इसे otSrpServerHostIsDeleted से दिखाया गया है), तो इसे पब्लिश या mडीएनएस के साथ अपडेट किया जाना चाहिए. अगर ऐसा नहीं है, तो होस्ट को अन-पब्लिश किया जाना चाहिए (AAAA RRs हटाएं).
  2. अगर होस्ट को अन-पब्लिश करना है, तो इस होस्ट के हर सर्विस पॉइंट के लिए, इसे अन-पब्लिश करना होगा. अगर ऐसा नहीं है, तो हैंडलर को सेवा को तब पब्लिश या अपडेट करना चाहिए, जब इसे मिटाया न गया हो (इसके बारे में otSrpServerServiceIsDeleted से बताया गया है) और मिटाए जाने पर सेवा को अन-पब्लिश करना चाहिए.
[in] aTimeout
सेवा इवेंट को प्रोसेस करने में हैंडलर को मिलीसेकंड में ज़्यादा से ज़्यादा समय.
[in] aContext
ऐप्लिकेशन के हिसाब से संदर्भ के लिए पॉइंटर.
यह भी देखें:
otSrpServerSetServiceUpdateHandler
otSrpServerHandleServiceUpdateResult

otSrpServerServiceUpdateId

uint32_t otSrpServerServiceUpdateId

SRP सर्वर पर SRP सेवा अपडेट से जुड़े लेन-देन का आईडी.

otSrpServerTtlConfig

struct otSrpServerTtlConfig otSrpServerTtlConfig

इसमें SRP सर्वर TTL (टीटीएल) कॉन्फ़िगरेशन शामिल हैं.

फ़ंक्शन

otSrpClientAddService

otError otSrpClientAddService(
  otInstance *aInstance,
  otSrpClientService *aService
)

सर्वर के साथ रजिस्टर की जाने वाली सेवा जोड़ता है.

इस फ़ंक्शन को कॉल करने के बाद, SRP सर्वर के साथ सेवा के जोड़े/रजिस्ट्रेशन की स्थिति बताने के लिए otSrpClientCallback को कॉल किया जाएगा.

aService से ले जाने वाले otSrpClientService इंस्टेंस को बनाए रखना ज़रूरी है. साथ ही, इस फ़ंक्शन (OT_ERROR_NONE के साथ) से वापस आने के बाद, इसमें कोई बदलाव नहीं होना चाहिए. OpenThread, सेवा इंस्टेंस में पॉइंटर को सेव करेगा.

otSrpClientService को अब OpenThread के ज़रिए ट्रैक नहीं किया जा सकता. साथ ही, इस पर फिर से सिर्फ़ तब दावा किया जा सकता है, जब

  • अगर यह सेवा, otSrpClientRemoveService() पर कॉल करके साफ़ तौर पर हटा दी जाती है या otSrpClientRemoveHostAndServices() and only after theotSrpClientCallback` को कॉल करके, अन्य सेवाओं के साथ हटा दी जाती है, तो इसका मतलब है कि सेवा हटा दी गई है. या,
  • 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
)

इससे आईपीवी6 पते की एंट्री का कलेक्शन मिलता है, ताकि इसे एसआरपी क्लाइंट होस्ट के पते की सूची के तौर पर इस्तेमाल किया जा सके.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[out] aArrayLength
अरे की लंबाई दिखाने के लिए वैरिएबल पर कर्सर ले जाएं, जैसे कि अरे में आईपीवी6 पता एंट्री की संख्या (शून्य नहीं होनी चाहिए).
लौटाए गए सामान
otIp6Address एंट्री की कलेक्शन के लिए पॉइंटर (aArrayLength में एंट्री की संख्या दी जाती है).

otSrpClientBuffersGetHostNameString

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

यह स्ट्रिंग बफ़र को एसआरपी क्लाइंट के होस्ट नाम के लिए इस्तेमाल करता है.

ब्यौरा
पैरामीटर
[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 चालू हो.

अगर क्लाइंट पहले से चल रहा है, तो अपने-आप शुरू होने वाला मोड बंद करने से, वह बंद नहीं होगा. हालांकि, क्लाइंट, Thread नेटवर्क के डेटा की निगरानी करना बंद कर देगा. इससे यह पुष्टि की जा सकेगी कि चुना गया एसआरपी सर्वर अब भी उसमें मौजूद है या नहीं.

ध्यान दें कि otSrpClientStop() को कॉल करने पर, अपने-आप शुरू होने वाला मोड भी बंद हो जाएगा.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.

otSrpClientEnableAutoHostAddress

otError otSrpClientEnableAutoHostAddress(
  otInstance *aInstance
)

ऑटो होस्ट पता मोड चालू करता है.

चालू होने पर, एसआरपी क्लाइंट, होस्ट के आईपीवी6 पते अपने-आप सेट कर देता है. इसके लिए, Thread netif पर सभी पसंदीदा यूनिकास्ट पतों का इस्तेमाल किया जाता है. हालांकि, इनमें लिंक-लोकल और मेश-लोकल पते शामिल नहीं होते. अगर कोई पसंदीदा पता नहीं है, तो मेश लोकल ईआईडी पता जोड़ दिया जाता है. Thread netif पर पते अपडेट होने पर, एसआरपी क्लाइंट अपने-आप फिर से रजिस्टर हो जाएगा. ऐसा तब होगा, जब नए पते जोड़े जाएंगे या मौजूदा पतों को हटा दिया जाएगा या उन्हें 'पसंदीदा' के तौर पर मार्क नहीं किया जाएगा.

अपने-आप होस्ट के पते का मोड, एसआरपी क्लाइंट के काम करने से पहले या कार्रवाई के दौरान चालू किया जा सकता है. हालांकि, इसे तब ही चालू किया जा सकता है, जब होस्ट की जानकारी को हटाया जा रहा हो (क्लाइंट otSrpClientRemoveHostAndServices() को किए गए कॉल से, कॉन्टेंट हटाने के अनुरोध को मैनेज करने में व्यस्त है और होस्ट की जानकारी अब भी STATE_TO_REMOVE या STATE_REMOVING की स्थिति में है).

ऑटो होस्ट पता मोड चालू होने के बाद, otSrpClientSetHostAddresses() को कॉल करके इसे बंद किया जा सकता है. इसके बाद, होस्ट के पते को साफ़ तौर पर सेट किया जाता है.

ब्यौरा
रिटर्न वैल्यू
OT_ERROR_NONE
ऑटो होस्ट पता मोड चालू किया गया.
OT_ERROR_INVALID_STATE
होस्ट को हटाया जा रहा है. इसलिए, अपने-आप होस्ट पता मोड चालू नहीं किया जा सकता.

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, डिफ़ॉल्ट अपने-आप शुरू होने वाले मोड के बारे में बताता है (चाहे यह ओटी स्टैक की शुरुआत में चालू हो या बंद हो).

अपने-आप शुरू होने की सुविधा चालू होने पर, एसआरपी क्लाइंट Thread नेटवर्क के डेटा को मॉनिटर करेगा, ताकि यह SRP सर्वर का पता लगा सके और पसंदीदा सर्वर चुन सके. साथ ही, एसआरपी सर्वर का पता चलने पर, क्लाइंट को अपने-आप चालू और बंद कर सके.

नेटवर्क डेटा की एंट्री की तीन कैटगरी हैं, जिनसे एसआरपी सेवर की मौजूदगी का पता चलता है. इन्हें इस क्रम में प्राथमिकता दी जाती है:

1) पसंदीदा यूनिकास्ट एंट्री जिनमें सेवा डेटा में सर्वर का पता शामिल होता है. अगर कई विकल्प हैं, तो उस विकल्प को प्राथमिकता दी जाती है जिसका आईपीवी6 पता, अंकों के हिसाब से सबसे कम हो.

2) ऐसी एनीकास्ट एंट्री जिसमें हर एक में सीक्वेंस नंबर है. RFC-1982 में सीरियल नंबर अंकगणितीय लॉजिक के हिसाब से बड़ी सीक्वेंस नंबर को ज़्यादा हाल का माना जाता है, इसलिए उसे प्राथमिकता दी जाती है. सीरियल नंबर अंकगणित का इस्तेमाल करने वाली सबसे बड़ी सीक्वेंस नंबर को प्राथमिकता तब दी जाती है, जब यह अच्छी तरह से डिफ़ाइन किया गया हो. इसका मतलब है कि सीक्वेंस नंबर बाकी सभी सिक्वेंस की संख्याओं से ज़्यादा है. अगर यह अच्छी तरह से परिभाषित नहीं किया गया है, तो संख्या के हिसाब से सबसे बड़े सीक्वेंस नंबर को प्राथमिकता दी जाती है.

3) Unicast ऐसी एंट्री जिनमें सर्वर के डेटा में सर्वर के पते की जानकारी शामिल होती है. अगर कई विकल्प हैं, तो उस विकल्प को प्राथमिकता दी जाती है जिसका आईपीवी6 पता, अंकों के हिसाब से सबसे कम हो.

नेटवर्क डेटा की एंट्री में कोई बदलाव होने पर, क्लाइंट यह जांच करेगा कि फ़िलहाल चुना गया सर्वर, नेटवर्क डेटा में अब भी मौजूद है और पसंदीदा सर्वर है या नहीं. ऐसा न करने पर, क्लाइंट नए पसंदीदा सर्वर पर स्विच हो जाएगा या कोई भी सर्वर न होने पर, वह रुक जाएगा.

जब otSrpClientStart() पर कॉल के ज़रिए एसआरपी क्लाइंट को साफ़ तौर पर शुरू किया गया हो, तो otSrpClientStart() में दिया गया एसआरपी सर्वर पता इस्तेमाल किया जाता रहेगा. भले ही, अपने-आप चालू होने वाला मोड कुछ भी हो और फिर भी थ्रेड नेटवर्क डेटा में वही एसआरपी सर्वर पता खोजा गया हो या न हो. इस मामले में, सिर्फ़ साफ़ तौर पर otSrpClientStop() कॉल करने पर क्लाइंट रुक जाएगा.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aCallback
क्लाइंट के अपने-आप शुरू/बंद होने पर सूचना देने के लिए कॉलबैक. ज़रूरत न होने पर इसे शून्य किया जा सकता है.
[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
)

इससे, एसआरपी अपडेट के अनुरोधों में इस्तेमाल किए जाने वाले डिफ़ॉल्ट पासकोड लीज़ इंटरवल की जानकारी मिलती है.

डिफ़ॉल्ट इंटरवल का इस्तेमाल सिर्फ़ ऐसे otSrpClientService इंस्टेंस के लिए किया जाता है जिनमें mKeyLease को शून्य पर सेट किया गया हो.

ध्यान दें कि यह लीज़ की वह अवधि है जो एसआरपी क्लाइंट ने अनुरोध की है. सर्वर एक अलग लीज़ अंतराल स्वीकार करना चुन सकता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
लौटाए गए सामान
की लीज़ इंटरवल (सेकंड में).

otSrpClientGetLeaseInterval

uint32_t otSrpClientGetLeaseInterval(
  otInstance *aInstance
)

इससे, एसआरपी अपडेट करने के अनुरोधों में इस्तेमाल किए जाने वाले डिफ़ॉल्ट लीज़ इंटरवल की जानकारी मिलती है.

डिफ़ॉल्ट इंटरवल का इस्तेमाल सिर्फ़ ऐसे otSrpClientService इंस्टेंस के लिए किया जाता है जिनमें mLease को शून्य पर सेट किया गया हो.

ध्यान दें कि यह लीज़ की वह अवधि है जो एसआरपी क्लाइंट ने अनुरोध की है. सर्वर एक अलग लीज़ अंतराल स्वीकार करना चुन सकता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
लौटाए गए सामान
लीज़ इंटरवल (सेकंड में).

otSrpClientGetServerAddress

const otSockAddr * otSrpClientGetServerAddress(
  otInstance *aInstance
)

SRP सर्वर का सॉकेट पता (IPv6 पता और पोर्ट नंबर) पाता है, जिसका इस्तेमाल SRP क्लाइंट कर रहा है.

अगर क्लाइंट काम नहीं कर रहा है, तो पते की जानकारी नहीं दी गई है (सभी शून्य). साथ ही, कोई पोर्ट नंबर नहीं डाला गया है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
लौटाए गए सामान
SRP सर्वर के सॉकेट पते का पॉइंटर (हमेशा NULL नहीं होता है).

otSrpClientGetServices

const otSrpClientService * otSrpClientGetServices(
  otInstance *aInstance
)

क्लाइंट की ओर से मैनेज की जा रही सेवाओं की सूची मिलती है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
लौटाए गए सामान
सभी सेवाओं की लिंक की गई सूची में सबसे ऊपर का पॉइंटर या सूची खाली होने पर NULL कर देता है.

otSrpClientGetTtl

uint32_t otSrpClientGetTtl(
  otInstance *aInstance
)

इससे एसआरपी अपडेट के अनुरोधों में शामिल हर रिकॉर्ड में TTL (टीटीएल) वैल्यू मिलती है.

ध्यान दें कि यह TTL (टीटीएल) है, जिसका अनुरोध एसआरपी क्लाइंट करता है. सर्वर किसी और TTL को स्वीकार करना चुन सकता है.

डिफ़ॉल्ट रूप से, TTL (टीटीएल), लीज़ इंटरवल के बराबर होगा. otSrpClientSetTtl() के ज़रिए, 0 या लीज़ इंटरवल से ज़्यादा वैल्यू पास करने पर, TTL (टीटीएल) भी लीज़ इंटरवल के बराबर होगा.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
लौटाए गए सामान
TTL (टीटीएल) (सेकंड में).

otSrpClientIsAutoStartModeEnabled

bool otSrpClientIsAutoStartModeEnabled(
  otInstance *aInstance
)

अपने-आप चालू होने वाले मोड (चालू या बंद) की मौजूदा स्थिति को दिखाता है.

यह सुविधा सिर्फ़ तब उपलब्ध होती है, जब अपने-आप चालू होने की सुविधा OPENTHREAD_CONFIG_SRP_CLIENT_AUTO_START_API_ENABLE चालू हो.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
लौटाए गए सामान
अपने-आप शुरू होने वाला मोड चालू होने पर 'सही', अगर नहीं, तो 'गलत'.

otSrpClientIsRunning

bool otSrpClientIsRunning(
  otInstance *aInstance
)

इससे पता चलता है कि एसआरपी क्लाइंट चल रहा है या नहीं.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
लौटाए गए सामान
अगर SRP क्लाइंट चल रहा है, तो 'सही', नहीं तो 'गलत'.

otSrpClientIsServiceKeyRecordEnabled

bool otSrpClientIsServiceKeyRecordEnabled(
  otInstance *aInstance
)

इससे पता चलता है कि "सेवा कुंजी रिकॉर्ड को शामिल करना" मोड चालू है या बंद है.

OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE कॉन्फ़िगरेशन चालू होने पर उपलब्ध होता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
लौटाए गए सामान
"सेवा कुंजी रिकॉर्ड शामिल करें" मोड चालू होने पर 'सही', नहीं तो 'गलत'.

otSrpClientItemStateToString

const char * otSrpClientItemStateToString(
  otSrpClientItemState aItemState
)

otSrpClientItemState को स्ट्रिंग में बदलता है.

ब्यौरा
पैरामीटर
[in] aItemState
किसी आइटम की स्थिति.
लौटाए गए सामान
aItemState को स्ट्रिंग के तौर पर दिखाया गया है.

otSrpClientRemoveHostAndServices

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

होस्ट की जानकारी और सभी सेवाओं को हटाने की प्रोसेस शुरू करता है.

इस फ़ंक्शन से लौटने के बाद, otSrpClientCallback को खोज नतीजों के अनुरोध की स्थिति की जानकारी देने के लिए, एसआरपी सर्वर पर कॉल किया जाएगा.

अगर होस्ट की जानकारी को सर्वर से हमेशा के लिए हटाना है, तो aRemoveKeyLease को true पर सेट करना चाहिए. इससे सर्वर पर होस्ट से जुड़ी कुंजी लीज़ हट जाती है. अगर ऐसा नहीं होता है, तो कुंजी लीज़ का रिकॉर्ड पहले की तरह ही रखा जाता है. इससे यह पक्का होता है कि सर्वर के होस्ट नाम को तब के लिए रिज़र्व रखा जाएगा, जब क्लाइंट फिर से अपनी सेवाएं दे सकेगा और रजिस्टर कर सकेगा.

aSendUnregToServer, सर्वर के साथ होस्ट की जानकारी रजिस्टर न होने पर व्यवहार तय करता है. अगर aSendUnregToServer को false (जो डिफ़ॉल्ट/उम्मीद के मुताबिक वैल्यू है) पर सेट किया जाता है, तो एसआरपी क्लाइंट सर्वर को अपडेट से जुड़ा मैसेज भेजे बिना ही, होस्ट की जानकारी और सेवाओं को तुरंत हटा देगा (अगर अभी तक सर्वर के साथ कुछ भी रजिस्टर नहीं किया गया है, तो सर्वर को अपडेट करने की ज़रूरत नहीं है). अगर aSendUnregToServer को true पर सेट किया जाता है, तो एसआरपी क्लाइंट सर्वर को अपडेट का मैसेज भेजेगा. ध्यान दें कि अगर होस्ट की जानकारी रजिस्टर की गई है, तो aSendUnregToServer की वैल्यू से कोई फ़र्क़ नहीं पड़ता. साथ ही, एसआरपी क्लाइंट हमेशा सर्वर को अपडेट से जुड़ा मैसेज भेजेगा, जिसमें सारी जानकारी हटाने के लिए अनुरोध किया जाएगा.

डिवाइस को रीसेट/फिर से चालू करने पर aSendUnregToServer उपयोगी हो सकता है. हालांकि, ऐसा हो सकता है कि कॉलर, सर्वर के साथ पहले रजिस्टर की गई किसी सेवा को हटाना चाहे. इस मामले में, कॉलर otSrpClientSetHostName() कर सकता है. इसके बाद, aSendUnregToServer को true के तौर पर इस्तेमाल करके otSrpClientRemoveHostAndServices() का अनुरोध कर सकता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aRemoveKeyLease
वह बूलियन, जिससे पता चलता है कि होस्ट की लीज़ को भी हटाना है या नहीं.
[in] aSendUnregToServer
बूलियन से पता चलता है कि होस्ट की जानकारी रजिस्टर न होने पर, सर्वर को अपडेट भेजना है या नहीं.
रिटर्न वैल्यू
OT_ERROR_NONE
होस्ट की जानकारी और सेवाओं को हटाने की प्रोसेस शुरू हो गई है. स्टेटस की शिकायत करने के लिए, otSrpClientCallback पर कॉल किया जाएगा.
OT_ERROR_ALREADY
होस्ट की जानकारी पहले ही हटा दी गई है.

otSrpClientRemoveService

otError otSrpClientRemoveService(
  otInstance *aInstance,
  otSrpClientService *aService
)

सर्वर के साथ अपंजीकृत करने के लिए किसी सेवा का अनुरोध करता है.

इस फ़ंक्शन को कॉल करने के बाद, otSrpClientCallback को खोज नतीजों के पेज को हटाने के अनुरोध की स्थिति की जानकारी देने के लिए, SRP सर्वर पर कॉल किया जाएगा.

aService से ले जाने वाले otSrpClientService इंस्टेंस को बनाए रखना ज़रूरी है. साथ ही, इस फ़ंक्शन (OT_ERROR_NONE के साथ) से वापस आने के बाद इसमें कोई बदलाव नहीं होना चाहिए. हटाने की प्रोसेस के दौरान OpenThread, सेवा इंस्टेंस को बनाए रखेंगे. otSrpClientCallback को कॉल किए जाने के बाद ही यह बताया जाएगा कि सेवा इंस्टेंस को एसआरपी क्लाइंट सेवा की सूची से हटा दिया गया है और इसे खाली किया जा सकता है या इसका फिर से इस्तेमाल किया जा सकता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aService
otSrpClientService इंस्टेंस को हटाने के लिए पॉइंटर.
रिटर्न वैल्यू
OT_ERROR_NONE
सेवा को हटाने की प्रोसेस शुरू हो गई है. स्टेटस की शिकायत करने के लिए, otSrpClientCallback पर कॉल किया जाएगा.
OT_ERROR_NOT_FOUND
सूची में सेवा नहीं मिल सकी.

otSrpClientSetCallback

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

SRP क्लाइंट के इवेंट/बदलाव के बारे में कॉल करने वाले को सूचना देने के लिए, यह कॉलबैक को सेट करता है.

एसआरपी क्लाइंट, एक कॉलबैक को रजिस्टर करने की अनुमति देता है. इसलिए, इस फ़ंक्शन में किए जाने वाले लगातार कॉल, पहले से सेट किए गए किसी कॉलबैक फ़ंक्शन को ओवरराइट कर देंगे.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aCallback
इवेंट और बदलावों की सूचना देने के लिए कॉलबैक. ज़रूरत न होने पर इसे शून्य किया जा सकता है.
[in] aContext
aCallback के साथ इस्तेमाल किया गया आर्बिट्रेरी कॉन्टेक्स्ट.

otSrpClientSetDomainName

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

यह डोमेन नेम सेट करता है, ताकि एसआरपी क्लाइंट उसका इस्तेमाल कर सके.

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
)

होस्ट आईपीवी6 पते की सूची सेट/अपडेट करता है.

होस्ट आईपीवी6 पतों को एसआरपी क्लाइंट के शुरू होने से पहले या कार्रवाई के दौरान सेट किया जा सकता है या बदला जा सकता है (उदाहरण के लिए, पहले से रजिस्टर किए गए होस्ट पते को जोड़ना/हटाना या बदलना). हालांकि, होस्ट की जानकारी हटाए जाने पर (क्लाइंट, otSrpClientRemoveHostAndServices() पर किए गए पुराने कॉल से हटाने के अनुरोध को हैंडल करने में व्यस्त है और होस्ट की जानकारी अब भी STATE_TO_REMOVE या STATE_REMOVING की स्थिति में है).

होस्ट आईपीवी6 पता अरे को aIp6Addresses के ज़रिए पॉइंट करने की ज़रूरत होती है. इसे बनाए रखना ज़रूरी है और इस फ़ंक्शन (OT_ERROR_NONE के साथ) से वापस आने के बाद इसमें कोई बदलाव नहीं होना चाहिए. OpenThread, पॉइंटर को अरे में सेव करेगा.

इस फ़ंक्शन को सफलतापूर्वक कॉल करने के बाद, SRP सर्वर के साथ पता पंजीकरण की स्थिति की रिपोर्ट करने के लिए otSrpClientCallback को कॉल किया जाएगा.

अगर इस फ़ंक्शन को otSrpClientEnableAutoHostAddress() पर कॉल किए जाने के बाद चालू किया गया था, तो इस फ़ंक्शन को कॉल करने पर, ऑटो होस्ट पता मोड बंद हो जाएगा.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aIp6Addresses
होस्ट आईपीवी6 पतों वाली अरे का पॉइंटर.
[in] aNumAddresses
aIp6Addresses कलेक्शन में मौजूद पतों की संख्या.
रिटर्न वैल्यू
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
)

यह नीति, एसआरपी अपडेट के अनुरोधों में इस्तेमाल किए जाने वाले डिफ़ॉल्ट कुंजी लीज़ इंटरवल को सेट करती है.

डिफ़ॉल्ट इंटरवल का इस्तेमाल सिर्फ़ ऐसे otSrpClientService इंस्टेंस के लिए किया जाता है जिनमें mKeyLease को शून्य पर सेट किया गया हो.

लीज़ इंटरवल में बदलाव करने से, पहले से रजिस्टर की गई सेवाओं/होस्ट-इन्फ़ो के लिए स्वीकार किए गए लीज़ इंटरवल पर कोई असर नहीं पड़ता. इससे सिर्फ़ आने वाले समय में एसआरपी से जुड़े अपडेट के मैसेज पर असर पड़ता है. जैसे, नई सेवाएं जोड़ना और/या मौजूदा सेवाओं को रीफ़्रेश करना.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aInterval
की लीज़ इंटरवल (सेकंड में). शून्य होने पर, OPENTHREAD_CONFIG_SRP_CLIENT_DEFAULT_KEY_LEASE की तय की गई डिफ़ॉल्ट वैल्यू का इस्तेमाल किया जाएगा.

otSrpClientSetLeaseInterval

void otSrpClientSetLeaseInterval(
  otInstance *aInstance,
  uint32_t aInterval
)

यह नीति, एसआरपी अपडेट के अनुरोधों में इस्तेमाल किए जाने वाले डिफ़ॉल्ट लीज़ इंटरवल को सेट करती है.

डिफ़ॉल्ट इंटरवल का इस्तेमाल सिर्फ़ ऐसे otSrpClientService इंस्टेंस के लिए किया जाता है जिनमें mLease को शून्य पर सेट किया गया हो.

लीज़ इंटरवल में बदलाव करने से, पहले से रजिस्टर की गई सेवाओं/होस्ट की जानकारी के लिए स्वीकार किए गए लीज़ इंटरवल पर कोई असर नहीं पड़ता. इससे सिर्फ़ आने वाले समय में एसआरपी से जुड़े अपडेट के मैसेज पर असर पड़ता है. जैसे, नई सेवाएं जोड़ना और/या मौजूदा सेवाओं को रीफ़्रेश करना.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aInterval
लीज़ इंटरवल (सेकंड में). शून्य होने पर, OPENTHREAD_CONFIG_SRP_CLIENT_DEFAULT_LEASE की तय की गई डिफ़ॉल्ट वैल्यू का इस्तेमाल किया जाएगा.

otSrpClientSetServiceKeyRecordEnabled

void otSrpClientSetServiceKeyRecordEnabled(
  otInstance *aInstance,
  bool aEnabled
)

"सेवा कुंजी रिकॉर्ड शामिल करना" मोड को चालू/बंद करता है.

इस सुविधा के चालू होने पर, SRP क्लाइंट अपनी ओर से भेजे जाने वाले SRP अपडेट मैसेज में सेवा की जानकारी के निर्देशों में, कुंजी रिकॉर्ड को शामिल करेगा.

OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE कॉन्फ़िगरेशन चालू होने पर उपलब्ध होता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aEnabled
चालू करने के लिए 'सही', "सेवा कुंजी रिकॉर्ड शामिल करना" मोड बंद करने के लिए 'गलत'.

otSrpClientSetTtl

void otSrpClientSetTtl(
  otInstance *aInstance,
  uint32_t aTtl
)

यह नीति, एसआरपी अपडेट के अनुरोधों में शामिल हर रिकॉर्ड में TTL (टीटीएल) वैल्यू सेट करती है.

TTL (टीटीएल) बदलने से, पहले से रजिस्टर की गई सेवाओं/होस्ट की जानकारी के TTL (टीटीएल) पर कोई असर नहीं पड़ता है. इससे सिर्फ़ आगे के एसआरपी अपडेट वाले मैसेज पर असर पड़ता है. जैसे, नई सेवाएं जोड़ना और/या मौजूदा सेवाओं को रीफ़्रेश करना.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aTtl
TTL (टीटीएल) (सेकंड में). अगर वैल्यू शून्य या लीज़ इंटरवल से ज़्यादा है, तो TTL (टीटीएल), लीज़ इंटरवल पर सेट होता है.

otSrpClientStart

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

SRP क्लाइंट कार्रवाई शुरू करता है.

नीचे दी गई सभी शर्तें पूरी होने पर, SRP क्लाइंट "SRP अपडेट" मैसेज तैयार करेगा और SRP सर्वर को भेजेगा:

  • SRP क्लाइंट शुरू किया गया - otSrpClientStart() को कॉल किया गया.
  • होस्ट नाम सेट किया गया - otSrpClientSetHostName() को कॉल किया गया.
  • कम से कम एक होस्ट IPv6 पता सेट किया गया है - otSrpClientSetHostName() को कॉल किया जाता है.
  • कम से कम एक सेवा जोड़ी गई - otSrpClientAddService() कॉल किया गया.

इससे कोई फ़र्क़ नहीं पड़ता कि इन फ़ंक्शन को किस क्रम में कॉल किया जाता है. सभी शर्तें पूरी होने पर, "एसआरपी अपडेट" मैसेज तैयार करने और उसे सर्वर पर भेजने से पहले, एसआरपी क्लाइंट कुछ देर इंतज़ार करेगा. इस देरी के बाद, उपयोगकर्ता कई सेवाएं और/या IPv6 पते जोड़ सकते हैं. ऐसा, पहला SRP अपडेट मैसेज भेजने से पहले किया जाता है. यह पक्का करते हैं कि सिर्फ़ एक SRP अपडेट भेजा जाए जिसमें सारी जानकारी हो. कॉन्फ़िगरेशन OPENTHREAD_CONFIG_SRP_CLIENT_UPDATE_TX_DELAY, देरी का इंटरवल तय करता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aServerSockAddr
SRP सर्वर का सॉकेट पता (IPv6 पता और पोर्ट नंबर).
रिटर्न वैल्यू
OT_ERROR_NONE
SRP क्लाइंट कार्रवाई सफलतापूर्वक शुरू हो गई या यह पहले से ही एक ही सर्वर सॉकेट पते और कॉलबैक के साथ चल रही है.
OT_ERROR_BUSY
SRP क्लाइंट किसी दूसरे सॉकेट पते से चलने में व्यस्त है.
OT_ERROR_FAILED
क्लाइंट का UDP सॉकेट खोलने/कनेक्ट करने में विफल रहा.

otSrpClientStop

void otSrpClientStop(
  otInstance *aInstance
)

एसआरपी क्लाइंट की कार्रवाई को रोकता है.

SRP सर्वर के साथ किसी भी अतिरिक्त इंटरैक्शन को रोकता है. ध्यान दें कि यह होस्ट की जानकारी और/या सेवाओं की सूची को न तो हटाता है और न ही मिटाता है. यह क्लाइंट के (फिर से) शुरू होने के बाद, सभी सेवाओं को फिर से जोड़ी/हटाई जाने के लिए मार्क करता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.

otSrpServerGetAddressMode

otSrpServerAddressMode otSrpServerGetAddressMode(
  otInstance *aInstance
)

यह फ़ंक्शन, SRP सर्वर के इस्तेमाल किए जा रहे पता मोड को दिखाता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
लौटाए गए सामान
SRP सर्वर का पता मोड.

otSrpServerGetAnycastModeSequenceNumber

uint8_t otSrpServerGetAnycastModeSequenceNumber(
  otInstance *aInstance
)

एनीकास्ट पता मोड में इस्तेमाल किया गया क्रम नंबर दिखाता है.

क्रम संख्या, नेटवर्क डेटा में पब्लिश की गई "डीएनएस/एसआरपी सर्विस एनीकास्ट पता" की एंट्री में शामिल होती है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
लौटाए गए सामान
एनीकास्ट सीक्वेंस नंबर.

otSrpServerGetDomain

const char * otSrpServerGetDomain(
  otInstance *aInstance
)

SRP सर्वर से अनुमति वाला डोमेन दिखाता है.

अगर डोमेन को SetDomain से सेट नहीं किया गया है, तो "default.service.arpa." दिखाया जाएगा. पीछे वाला बिंदु हमेशा जुड़ा होता है, भले ही डोमेन के बिना सेट किया गया हो.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
लौटाए गए सामान
डॉट से जुड़ी डोमेन स्ट्रिंग पर एक पॉइंटर.

otSrpServerGetLeaseConfig

void otSrpServerGetLeaseConfig(
  otInstance *aInstance,
  otSrpServerLeaseConfig *aLeaseConfig
)

यह फ़ंक्शन SRP सर्वर LEASE और KEY-LEASE कॉन्फ़िगरेशन दिखाता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[out] aLeaseConfig
otSrpServerLeaseConfig इंस्टेंस के लिए पॉइंटर.

otSrpServerGetNextHost

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

SRP सर्वर पर रजिस्टर किया गया अगला होस्ट दिखाता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aHost
मौजूदा होस्ट का पॉइंटर; पहला होस्ट पाने के लिए NULL का इस्तेमाल करें.
लौटाए गए सामान
रजिस्टर किए गए होस्ट के लिए पॉइंटर. अगर कोई और होस्ट नहीं मिलता है, तो यह अमान्य वैल्यू होगी.

otSrpServerGetPort

uint16_t otSrpServerGetPort(
  otInstance *aInstance
)

वह पोर्ट लौटाता है जिस पर एसआरपी सर्वर सुन रहा है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
लौटाए गए सामान
SRP सर्वर का पोर्ट. अगर सर्वर काम नहीं कर रहा है, तो यह 0 दिखाता है.

otSrpServerGetResponseCounters

const otSrpServerResponseCounters * otSrpServerGetResponseCounters(
  otInstance *aInstance
)

एसआरपी सर्वर के रिस्पॉन्स काउंटर दिखाता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
लौटाए गए सामान
एसआरपी सर्वर के रिस्पॉन्स काउंटर के लिए पॉइंटर.

otSrpServerGetState

otSrpServerState otSrpServerGetState(
  otInstance *aInstance
)

एसआरपी सर्वर की स्थिति दिखाता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
लौटाए गए सामान
SRP सर्वर की मौजूदा स्थिति.

otSrpServerGetTtlConfig

void otSrpServerGetTtlConfig(
  otInstance *aInstance,
  otSrpServerTtlConfig *aTtlConfig
)

SRP सर्वर TTL कॉन्फ़िगरेशन देता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[out] aTtlConfig
otSrpServerTtlConfig इंस्टेंस के लिए पॉइंटर.

otSrpServerHandleServiceUpdateResult

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

यह रिपोर्ट, SRP अपडेट को प्रोसेस करने के नतीजे को SRP सर्वर को रिपोर्ट करती है.

सेवा अपडेट हैंडलर को इस फ़ंक्शन को कॉल करना चाहिए, ताकि SRP अपडेट की प्रोसेसिंग का नतीजा दिखाया जा सके.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aId
सेवा अपडेट करने के लिए लेन-देन आईडी. यह वही आईडी होना चाहिए जो otSrpServerServiceUpdateHandler से मिला है.
[in] aError
एसआरपी सर्वर को वापस दिखाते समय कोई गड़बड़ी हुई. DNS नाम के विरोधों को दिखाने के लिए OT_ERROR_ इनके लिए इस्तेमाल करें.

otSrpServerHostGetAddresses

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

दिए गए होस्ट के पते दिखाता है.

ब्यौरा
पैरामीटर
[in] aHost
SRP सेवा होस्ट के लिए पॉइंटर.
[out] aAddressesNum
वह पॉइंटर जहां हमें पतों की संख्या आउटपुट करनी चाहिए.
लौटाए गए सामान
IPv6 पते के अरे के लिए पॉइंटर.

otSrpServerHostGetFullName

const char * otSrpServerHostGetFullName(
  const otSrpServerHost *aHost
)

होस्ट का पूरा नाम दिखाता है.

ब्यौरा
पैरामीटर
[in] aHost
SRP सेवा होस्ट के लिए पॉइंटर.
लौटाए गए सामान
शून्य से खत्म हुए होस्ट नाम की स्ट्रिंग के लिए पॉइंटर.

otSrpServerHostGetLeaseInfo

void otSrpServerHostGetLeaseInfo(
  const otSrpServerHost *aHost,
  otSrpServerLeaseInfo *aLeaseInfo
)

दिए गए होस्ट की LEASE और KEY-LEASE जानकारी दिखाता है.

ब्यौरा
पैरामीटर
[in] aHost
SRP सर्वर होस्ट के लिए पॉइंटर.
[out] aLeaseInfo
LEASE और KEY-LEASE जानकारी को आउटपुट करने के लिए पॉइंटर.

otSrpServerHostGetNextService

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

दिए गए होस्ट की अगली सेवा दिखाता है.

ब्यौरा
पैरामीटर
[in] aHost
SRP सेवा होस्ट के लिए पॉइंटर.
[in] aService
मौजूदा SRP सेवा इंस्टेंस का पॉइंटर; पहली सेवा पाने के लिए NULL का इस्तेमाल करें.
लौटाए गए सामान
अगली सेवा का पॉइंटर या कोई और सेवा न होने पर NULL.

otSrpServerHostIsDeleted

bool otSrpServerHostIsDeleted(
  const otSrpServerHost *aHost
)

यह बताता है कि एसआरपी सेवा के होस्ट को मिटा दिया गया है.

एसआरपी सेवा के होस्ट को मिटाया जा सकता है, लेकिन आने वाले समय में इस्तेमाल के लिए इसका नाम बरकरार रखता है. इस मामले में, होस्ट इंस्टेंस को एसआरपी सर्वर/रजिस्ट्री से नहीं हटाया जाता.

ब्यौरा
पैरामीटर
[in] aHost
SRP सेवा होस्ट के लिए पॉइंटर.
लौटाए गए सामान
होस्ट को मिटाने पर 'सही' और अगर होस्ट की जानकारी मिटा दी गई है, तो 'गलत'.

otSrpServerHostMatchesFullName

bool otSrpServerHostMatchesFullName(
  const otSrpServerHost *aHost,
  const char *aFullName
)

यह बताता है कि होस्ट, दिए गए होस्ट के नाम से मैच करता है या नहीं.

डीएनएस नाम के मैच, केस-इनसेंसिटिव स्ट्रिंग की तुलना का इस्तेमाल करके किए जाते हैं. उदाहरण के लिए, "Abc" और "aBc" को एक ही माना जाता है).

ब्यौरा
पैरामीटर
[in] aHost
SRP सेवा होस्ट के लिए पॉइंटर.
[in] aFullName
पूरा होस्ट नाम.
रिटर्न वैल्यू
TRUE
अगर होस्ट, होस्ट नाम से मेल खाता है.
FALSE
अगर होस्ट, होस्ट नाम से मेल नहीं खाता है.

otSrpServerIsAutoEnableMode

bool otSrpServerIsAutoEnableMode(
  otInstance *aInstance
)

इससे पता चलता है कि अपने-आप चालू होने वाला मोड चालू है या बंद है.

OPENTHREAD_CONFIG_BORDER_ROUTING_ENABLE सुविधा ज़रूरी है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
रिटर्न वैल्यू
TRUE
अपने-आप चालू होने वाला मोड चालू है.
FALSE
अपने-आप चालू होने वाला मोड बंद है.

otSrpServerParseSubTypeServiceName

otError otSrpServerParseSubTypeServiceName(
  const char *aSubTypeServiceName,
  char *aLabel,
  uint8_t aLabelSize
)

यह सब-टाइप सेवा के नाम (पूरा नाम) को पार्स करता है और सब-टाइप लेबल को एक्सट्रैक्ट करता है.

सब-टाइप सेवा का पूरा नाम "._sub...".

ब्यौरा
पैरामीटर
[in] aSubTypeServiceName
सेवा का सब-टाइप नाम (पूरा नाम).
[out] aLabel
निकाले गए सब-टाइप लेबल को कॉपी करने के लिए, बफ़र का पॉइंटर.
[in] aLabelSize
aLabel बफ़र का ज़्यादा से ज़्यादा साइज़.
रिटर्न वैल्यू
OT_ERROR_NONE
नाम को पार्स कर लिया गया है और aLabel को अपडेट कर दिया गया है.
OT_ERROR_NO_BUFS
सब-टाइप लेबल aLabel बफ़र में फ़िट नहीं हो सका (उन लेबल में मौजूद वर्णों की संख्या जो फ़िट हो सकते हैं), aLabel में कॉपी किए जाते हैं, ताकि यह पक्का किया जा सके कि यह शून्य खत्म हो गया है.
OT_ERROR_INVALID_ARGS
aSubTypeServiceName एक मान्य उप-प्रकार प्रारूप नहीं है.

otSrpServerServiceGetHost

const otSrpServerHost * otSrpServerServiceGetHost(
  const otSrpServerService *aService
)

वह होस्ट लौटाता है जिस पर सेवा इंस्टेंस मौजूद है.

ब्यौरा
पैरामीटर
[in] aService
SRP सेवा के लिए पॉइंटर.
लौटाए गए सामान
होस्ट इंस्टेंस के लिए पॉइंटर.

otSrpServerServiceGetInstanceLabel

const char * otSrpServerServiceGetInstanceLabel(
  const otSrpServerService *aService
)

सेवा के सेवा इंस्टेंस लेबल (उदाहरण के नाम में पहला लेबल) को दिखाता है.

ब्यौरा
पैरामीटर
[in] aService
SRP सेवा के लिए पॉइंटर.
लौटाए गए सामान
शून्य से खत्म होने वाली सेवा इंस्टेंस लेबल स्ट्रिंग के लिए पॉइंटर..

otSrpServerServiceGetInstanceName

const char * otSrpServerServiceGetInstanceName(
  const otSrpServerService *aService
)

सेवा के पूरे सेवा इंस्टेंस का नाम दिखाता है.

ब्यौरा
पैरामीटर
[in] aService
SRP सेवा के लिए पॉइंटर.
लौटाए गए सामान
शून्य से खत्म होने वाली सेवा इंस्टेंस नाम स्ट्रिंग के लिए पॉइंटर.

otSrpServerServiceGetLeaseInfo

void otSrpServerServiceGetLeaseInfo(
  const otSrpServerService *aService,
  otSrpServerLeaseInfo *aLeaseInfo
)

किसी सेवा की LEASE और KEY-LEASE जानकारी दिखाता है.

ब्यौरा
पैरामीटर
[in] aService
एसआरपी सर्वर सेवा के लिए पॉइंटर.
[out] aLeaseInfo
LEASE और KEY-LEASE जानकारी को आउटपुट करने के लिए पॉइंटर.

otSrpServerServiceGetNumberOfSubTypes

uint16_t otSrpServerServiceGetNumberOfSubTypes(
  const otSrpServerService *aService
)

सेवा के सब-टाइप की जानकारी देता है.

ब्यौरा
पैरामीटर
[in] aService
SRP सेवा के लिए पॉइंटर.
लौटाए गए सामान
aService के सब-टाइप की संख्या.

otSrpServerServiceGetPort

uint16_t otSrpServerServiceGetPort(
  const otSrpServerService *aService
)

सेवा इंस्टेंस का पोर्ट लौटाता है.

ब्यौरा
पैरामीटर
[in] aService
SRP सेवा के लिए पॉइंटर.
लौटाए गए सामान
सेवा का पोर्ट.

otSrpServerServiceGetPriority

uint16_t otSrpServerServiceGetPriority(
  const otSrpServerService *aService
)

सेवा इंस्टेंस की प्राथमिकता दिखाता है.

ब्यौरा
पैरामीटर
[in] aService
SRP सेवा के लिए पॉइंटर.
लौटाए गए सामान
सेवा की प्राथमिकता.

otSrpServerServiceGetServiceName

const char * otSrpServerServiceGetServiceName(
  const otSrpServerService *aService
)

सेवा की पूरी सेवा का नाम दिखाता है.

ब्यौरा
पैरामीटर
[in] aService
SRP सेवा के लिए पॉइंटर.
लौटाए गए सामान
शून्य से खत्म होने वाली सेवा के नाम वाली स्ट्रिंग के लिए पॉइंटर.

otSrpServerServiceGetSubTypeServiceNameAt

const char * otSrpServerServiceGetSubTypeServiceNameAt(
  const otSrpServerService *aService,
  uint16_t aIndex
)

किसी दिए गए इंडेक्स में, सेवा के सब-टाइप सेवा नाम (पूरा नाम) की जानकारी देता है.

सब-टाइप सेवा का पूरा नाम "._sub...".

ब्यौरा
पैरामीटर
[in] aService
SRP सेवा के लिए पॉइंटर.
[in] aIndex
यह इंडेक्स मिलना है.
लौटाए गए सामान
aIndex पर सब-टाइप सेवा के नाम का पॉइंटर या अगर इस इंडेक्स में कोई सब-टाइप नहीं है, तो NULL.

otSrpServerServiceGetTtl

uint32_t otSrpServerServiceGetTtl(
  const otSrpServerService *aService
)

सेवा इंस्टेंस का TTL (टीटीएल) दिखाता है.

ब्यौरा
पैरामीटर
[in] aService
SRP सेवा के लिए पॉइंटर.
लौटाए गए सामान
सेवा इंस्टेंस का TTL (टीटीएल)..

otSrpServerServiceGetTxtData

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

सेवा इंस्टेंस का TXT रिकॉर्ड डेटा दिखाता है.

ब्यौरा
पैरामीटर
[in] aService
SRP सेवा के लिए पॉइंटर.
[out] aDataLength
TXT रिकॉर्ड के डेटा की लंबाई दिखाने के लिए पॉइंटर. शून्य नहीं होना चाहिए.
लौटाए गए सामान
उस बफ़र का पॉइंटर जिसमें TXT रिकॉर्ड डेटा होता है (TXT डेटा लंबाई aDataLength में दी जाती है).

otSrpServerServiceGetWeight

uint16_t otSrpServerServiceGetWeight(
  const otSrpServerService *aService
)

सेवा इंस्टेंस का वेट दिखाता है.

ब्यौरा
पैरामीटर
[in] aService
SRP सेवा के लिए पॉइंटर.
लौटाए गए सामान
सेवा का वज़न.

otSrpServerServiceHasSubTypeServiceName

bool otSrpServerServiceHasSubTypeServiceName(
  const otSrpServerService *aService,
  const char *aSubTypeServiceName
)

यह बताता है कि सेवा में कोई सब-टाइप है या नहीं.

डीएनएस नाम के मैच, केस-इनसेंसिटिव स्ट्रिंग की तुलना का इस्तेमाल करके किए जाते हैं. उदाहरण के लिए, "Abc" और "aBc" को एक ही माना जाता है).

ब्यौरा
पैरामीटर
[in] aService
SRP सेवा के लिए पॉइंटर.
[in] aSubTypeServiceName
वह सब-टाइप सेवा नाम (पूरा नाम) जिसकी जांच करनी है.
रिटर्न वैल्यू
TRUE
सेवा में aSubTypeServiceName सब-टाइप शामिल है.
FALSE
सेवा में aSubTypeServiceName सब-टाइप शामिल नहीं है.

otSrpServerServiceIsDeleted

bool otSrpServerServiceIsDeleted(
  const otSrpServerService *aService
)

इससे पता चलता है कि एसआरपी सेवा मिटाई गई है या नहीं.

एसआरपी सेवा को मिटाया जा सकता है, लेकिन आने वाले समय में इस्तेमाल के लिए इसका नाम ही रखा जाएगा. ऐसे मामले में, सेवा इंस्टेंस को एसआरपी सर्वर/रजिस्ट्री से नहीं हटाया जाता. इस बात की गारंटी है कि अगर होस्ट को मिटा दिया जाता है, तो सभी सेवाएं मिट जाएंगी.

ब्यौरा
पैरामीटर
[in] aService
SRP सेवा के लिए पॉइंटर.
लौटाए गए सामान
अगर सेवा मिटा दी गई है, तो वैल्यू 'सही' होगी. अगर सेवा मिटा दी गई है, तो 'गलत'.

otSrpServerServiceMatchesInstanceName

bool otSrpServerServiceMatchesInstanceName(
  const otSrpServerService *aService,
  const char *aInstanceName
)

यह बताता है कि यह सेवा, दिए गए सेवा इंस्टेंस के नाम से मेल खाती है या नहीं.

डीएनएस नाम के मैच, केस-इनसेंसिटिव स्ट्रिंग की तुलना का इस्तेमाल करके किए जाते हैं. उदाहरण के लिए, "Abc" और "aBc" को एक ही माना जाता है).

ब्यौरा
पैरामीटर
[in] aService
SRP सेवा के लिए पॉइंटर.
[in] aInstanceName
सेवा इंस्टेंस का नाम.
रिटर्न वैल्यू
TRUE
अगर सेवा, सेवा इंस्टेंस के नाम से मेल खाती है.
FALSE
अगर सेवा, सेवा इंस्टेंस के नाम से मेल नहीं खाती है.

otSrpServerServiceMatchesServiceName

bool otSrpServerServiceMatchesServiceName(
  const otSrpServerService *aService,
  const char *aServiceName
)

यह बताता है कि यह सेवा, दी गई सेवा के नाम से मेल खाती है या नहीं.

डीएनएस नाम के मैच, केस-इनसेंसिटिव स्ट्रिंग की तुलना का इस्तेमाल करके किए जाते हैं. उदाहरण के लिए, "Abc" और "aBc" को एक ही माना जाता है).

ब्यौरा
पैरामीटर
[in] aService
SRP सेवा के लिए पॉइंटर.
[in] aServiceName
सेवा का नाम.
रिटर्न वैल्यू
TRUE
अगर सेवा, सेवा के नाम से मेल खाती है.
FALSE
अगर सेवा, सेवा के नाम से मेल नहीं खाती है.

otSrpServerSetAddressMode

otError otSrpServerSetAddressMode(
  otInstance *aInstance,
  otSrpServerAddressMode aMode
)

इससे, एसआरपी सर्वर के लिए पता मोड सेट करता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aMode
इस्तेमाल करने के लिए पता मोड.
रिटर्न वैल्यू
OT_ERROR_NONE
पता मोड सेट किया गया.
OT_ERROR_INVALID_STATE
SRP सर्वर चालू है और पता मोड को बदला नहीं जा सकता.

otSrpServerSetAnycastModeSequenceNumber

otError otSrpServerSetAnycastModeSequenceNumber(
  otInstance *aInstance,
  uint8_t aSequenceNumber
)

एनीकास्ट पता मोड के साथ इस्तेमाल किए जाने वाले क्रम को सेट करता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aSequenceNumber
इस्तेमाल किया जाने वाला क्रम नंबर.
रिटर्न वैल्यू
OT_ERROR_NONE
पता मोड सेट किया गया.
OT_ERROR_INVALID_STATE
SRP सर्वर चालू है और क्रम संख्या को बदला नहीं जा सकता.

otSrpServerSetAutoEnableMode

void otSrpServerSetAutoEnableMode(
  otInstance *aInstance,
  bool aEnabled
)

SRP सर्वर पर अपने-आप चालू करें मोड को चालू/बंद करता है.

OPENTHREAD_CONFIG_BORDER_ROUTING_ENABLE सुविधा ज़रूरी है.

इस मोड के चालू होने पर, बॉर्डर रूटिंग मैनेजर यह कंट्रोल करता है कि एसआरपी सर्वर को कब चालू या बंद करना है या नहीं. बॉर्डर रूटिंग शुरू होने पर, एसआरपी अलग करने की सुविधा अपने-आप चालू हो जाती है. साथ ही, यह शुरुआती प्रीफ़िक्स और रूट कॉन्फ़िगरेशन के साथ काम करती है. ओएमआर और ऑन-लिंक प्रीफ़िक्स तय होने पर, इंफ़्रास्ट्रक्चर पर भेजे जाने वाले राऊटर विज्ञापन मैसेज में विज्ञापन दिखाए जाते हैं और उन्हें Thread नेटवर्क डेटा में पब्लिश किया जाता है. बीआर को बंद करने पर/जब एसआरपी सर्वर अपने-आप बंद हो जाता है (उदाहरण के लिए, अगर इन्फ़्रास्ट्रक्चर नेटवर्क इंटरफ़ेस बंद कर दिया जाए या BR अलग हो जाए).

इस मोड को ऐसे otSrpServerSetAutoEnableMode() कॉल से बंद किया जा सकता है जिसमें aEnabled को false पर सेट किया गया हो या जब एसआरपी सर्वर को otSrpServerSetEnabled() फ़ंक्शन को कॉल करके साफ़ तौर पर चालू या बंद किया गया हो. otSrpServerSetAutoEnableMode(false) का इस्तेमाल करके, अपने-आप चालू होने वाले मोड को बंद करने पर, एसआरपी हटाने की मौजूदा स्थिति में कोई बदलाव नहीं होगा. उदाहरण के लिए, अगर इसे चालू किया जाता है, तो यह चालू रहती है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aEnabled
अपने-आप चालू होने वाले मोड को चालू/बंद करने का बूलियन.

otSrpServerSetDomain

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

डोमेन को एसआरपी सर्वर पर सेट करता है.

अगर पीछे लगने वाला बिंदु aDomain में पहले से नहीं है, तो उसे जोड़ दिया जाएगा. इसे सिर्फ़ SRP सर्वर चालू करने से पहले कॉल किया जाना चाहिए.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aDomain
सेट किया जाने वाला डोमेन. शून्य नहीं होना चाहिए.
रिटर्न वैल्यू
OT_ERROR_NONE
डोमेन को aDomain पर सेट किया गया.
OT_ERROR_INVALID_STATE
एसआरपी सर्वर पहले से चालू है और डोमेन को बदला नहीं जा सकता.
OT_ERROR_INVALID_ARGS
aDomain तर्क एक मान्य DNS डोमेन नाम नहीं है.
OT_ERROR_NO_BUFS
aDomain का कॉन्टेंट सेव करने के लिए कोई मेमोरी नहीं है.

otSrpServerSetEnabled

void otSrpServerSetEnabled(
  otInstance *aInstance,
  bool aEnabled
)

SRP सर्वर को चालू/बंद करता है.

बॉर्डर राऊटर के बजाय, otSrpServerSetAutoEnableMode() का इस्तेमाल करने का सुझाव दिया जाता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aEnabled
SRP सर्वर को चालू/बंद करने का बूलियन.

otSrpServerSetLeaseConfig

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

यह नीति, SRP सर्वर LEASE और KEY-LEASE कॉन्फ़िगरेशन सेट करती है.

अगर क्लाइंट से कोई LEASE LEASE समय डालने का अनुरोध किया जाता है, तो दी गई वैल्यू [aMinLize, aMaxLees] की रेंज में सीमित होगी. साथ ही, [aMinKeyLise, aMaxKeyLees] की रेंज में, वैल्यू को KEY-LEASE के तौर पर स्वीकार नहीं किया जाएगा. शून्य LEASE या KEY-LEASE समय के लिए, शून्य दिया जाएगा.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aLeaseConfig
otSrpServerLeaseConfig इंस्टेंस के लिए पॉइंटर.
रिटर्न वैल्यू
OT_ERROR_NONE
LEASE और KEY-LEASE रेंज को सेट किया गया.
OT_ERROR_INVALID_ARGS
LEASE या KEY-LEASE रेंज मान्य नहीं है.

otSrpServerSetServiceUpdateHandler

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

SRP सर्वर पर SRP सेवा अपडेट हैंडलर सेट करता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aServiceHandler
सेवा हैंडलर के लिए पॉइंटर. हैंडलर को हटाने के लिए NULL का इस्तेमाल करें.
[in] aContext
आर्बिट्रेरी कॉन्टेक्स्ट जानकारी के लिए पॉइंटर. अगर इसका इस्तेमाल नहीं किया जाता है, तो वैल्यू शून्य हो सकती है.

otSrpServerSetTtlConfig

otError otSrpServerSetTtlConfig(
  otInstance *aInstance,
  const otSrpServerTtlConfig *aTtlConfig
)

SRP सर्वर TTL कॉन्फ़िगरेशन सेट करता है.

दिया गया TTL हमेशा otSrpServerSetLeaseConfig() के ज़रिए कॉन्फ़िगर किए गए ज़्यादा से ज़्यादा लीज़ इंटरवल से ज़्यादा नहीं होगा, भले ही कम से कम और ज़्यादा से ज़्यादा TTL (टीटीएल) कॉन्फ़िगरेशन कुछ भी हो.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस के लिए पॉइंटर.
[in] aTtlConfig
otSrpServerTtlConfig इंस्टेंस के लिए पॉइंटर.
रिटर्न वैल्यू
OT_ERROR_NONE
TTL (टीटीएल) कॉन्फ़िगरेशन सेट किया गया.
OT_ERROR_INVALID_ARGS
TTL कॉन्फ़िगरेशन मान्य नहीं है.

रिसॉर्स

OpenThread API के रेफ़रंस के विषय, सोर्स कोड से मिलते हैं. यह सोर्स GitHub पर उपलब्ध है. ज़्यादा जानकारी या हमारे दस्तावेज़ में योगदान देने के लिए, संसाधन देखें.