SRP
โมดูลนี้มีฟังก์ชันที่ควบคุมลักษณะการทำงานของไคลเอ็นต์ SRP
สรุป
โมดูลนี้ประกอบด้วยฟังก์ชันของโปรโตคอลการจดทะเบียนบริการ
โมดูลนี้มีฟังก์ชันสำหรับบัฟเฟอร์ไคลเอ็นต์ SRP และกลุ่มบริการ
ฟังก์ชันในโมดูลนี้จะใช้ได้เมื่อเปิดใช้งานคุณลักษณะ OPENTHREAD_CONFIG_SRP_CLIENT_BUFFERS_ENABLE เท่านั้น
| การแจกแจง | |
|---|---|
| otSrpClientItemState{ | enum ระบุสถานะรายการไคลเอ็นต์ SRP (ข้อมูลบริการหรือโฮสต์)  | 
| otSrpServerAddressMode{ | enum แสดงโหมดที่อยู่ที่เซิร์ฟเวอร์ SRP ใช้  | 
| otSrpServerState{ | enum แสดงสถานะของเซิร์ฟเวอร์ SRP  | 
| Typedef | |
|---|---|
| otSrpClientAutoStartCallback)(const otSockAddr *aServerSockAddr, void *aContext) | typedef void(*ประเภทตัวชี้จะกำหนดโค้ดเรียกกลับที่ไคลเอ็นต์ SRP ใช้เพื่อแจ้งผู้ใช้เมื่อมีการเริ่มต้นหรือหยุดการทำงานโดยอัตโนมัติ  | 
| otSrpClientBuffersServiceEntry | typedef แสดงรายการพูลบริการไคลเอ็นต์ SRP  | 
| otSrpClientCallback)(otError aError, const otSrpClientHostInfo *aHostInfo, const otSrpClientService *aServices, const otSrpClientService *aRemovedServices, void *aContext) | typedef void(*ประเภทตัวชี้จะกำหนดโค้ดเรียกกลับที่ไคลเอ็นต์ SRP ใช้เพื่อแจ้งให้ผู้ใช้ทราบเกี่ยวกับการเปลี่ยนแปลง/เหตุการณ์/ข้อผิดพลาด  | 
| otSrpClientHostInfo | typedef struct otSrpClientHostInfoแสดงข้อมูลโฮสต์ของไคลเอ็นต์ SRP  | 
| otSrpClientService | typedef struct otSrpClientServiceแสดงถึงบริการไคลเอ็นต์ SRP  | 
| otSrpServerAddressMode | typedef แสดงโหมดที่อยู่ที่เซิร์ฟเวอร์ SRP ใช้  | 
| otSrpServerHost | typedef struct otSrpServerHostประเภททึบนี้แสดงถึงโฮสต์บริการ SRP  | 
| otSrpServerLeaseConfig | typedef struct otSrpServerLeaseConfigรวมการกำหนดค่า LEASE ของเซิร์ฟเวอร์ SRP และ KEY-LEASE  | 
| otSrpServerLeaseInfo | typedef struct otSrpServerLeaseInfoรวมข้อมูลการเช่าเซิร์ฟเวอร์ SRP ของโฮสต์/บริการ  | 
| otSrpServerResponseCounters | typedef struct otSrpServerResponseCountersรวมสถิติการตอบสนองของเซิร์ฟเวอร์ SRP  | 
| otSrpServerService | typedef struct otSrpServerServiceประเภททึบนี้แสดงถึงบริการ SRP  | 
| otSrpServerServiceUpdateHandler)(otSrpServerServiceUpdateId aId, const otSrpServerHost *aHost, uint32_t aTimeout, void *aContext) | typedef void(*จัดการการอัปเดตบริการ SRP  | 
| otSrpServerServiceUpdateId | typedef uint32_tรหัสของธุรกรรมการอัปเดตบริการ SRP ในเซิร์ฟเวอร์ SRP  | 
| otSrpServerTtlConfig | typedef struct 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แสดงผลหมายเลขลำดับที่ใช้กับโหมดที่อยู่ Anycast  | 
| 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  | 
| 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 ถูกลบไปแล้วหรือไม่  | 
| 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ระบุว่าบริการ SRP ถูกลบแล้วหรือไม่  | 
| otSrpServerServiceMatchesInstanceName(const otSrpServerService *aService, const char *aInstanceName) | boolระบุว่าบริการนี้ตรงกับชื่ออินสแตนซ์ของบริการที่ระบุหรือไม่  | 
| otSrpServerServiceMatchesServiceName(const otSrpServerService *aService, const char *aServiceName) | boolระบุว่าบริการนี้ตรงกับชื่อบริการที่ระบุหรือไม่  | 
| otSrpServerSetAddressMode(otInstance *aInstance, otSrpServerAddressMode aMode) | ตั้งค่าโหมดที่อยู่ที่จะใช้โดยเซิร์ฟเวอร์ SRP  | 
| otSrpServerSetAnycastModeSequenceNumber(otInstance *aInstance, uint8_t aSequenceNumber) | กำหนดหมายเลขลำดับที่ใช้กับโหมดที่อยู่ Anycast  | 
| 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) | ตั้งการกำหนดค่า LEASE ของเซิร์ฟเวอร์ SRP และ 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 | รวมการกำหนดค่า LEASE ของเซิร์ฟเวอร์ SRP และ KEY-LEASE | 
| otSrpServerLeaseInfo | รวมข้อมูลการเช่าเซิร์ฟเวอร์ SRP ของโฮสต์/บริการ | 
| otSrpServerResponseCounters | รวมสถิติการตอบสนองของเซิร์ฟเวอร์ SRP | 
| otSrpServerTtlConfig | รวมการกำหนดค่า TTL ของเซิร์ฟเวอร์ SRP | 
การแจกแจง
otSrpClientItemState
otSrpClientItemState
ระบุสถานะรายการไคลเอ็นต์ SRP (ข้อมูลบริการหรือโฮสต์)
| พร็อพเพอร์ตี้ | |
|---|---|
| OT_SRP_CLIENT_ITEM_STATE_ADDING | กำลังเพิ่ม/ลงทะเบียนรายการ | 
| OT_SRP_CLIENT_ITEM_STATE_REFRESHING | กำลังรีเฟรชรายการ | 
| OT_SRP_CLIENT_ITEM_STATE_REGISTERED | มีการลงทะเบียนรายการกับเซิร์ฟเวอร์แล้ว | 
| OT_SRP_CLIENT_ITEM_STATE_REMOVED | นำรายการออกแล้ว | 
| OT_SRP_CLIENT_ITEM_STATE_REMOVING | กำลังนำรายการออก | 
| OT_SRP_CLIENT_ITEM_STATE_TO_ADD | สินค้าที่จะเพิ่ม/ลงทะเบียน | 
| OT_SRP_CLIENT_ITEM_STATE_TO_REFRESH | รายการที่จะรีเฟรช (ลงทะเบียนอีกครั้งเพื่อต่ออายุเวลาเช่า) | 
| OT_SRP_CLIENT_ITEM_STATE_TO_REMOVE | รายการที่จะนำออก | 
otSrpServerAddressMode
otSrpServerAddressMode
แสดงโหมดที่อยู่ที่เซิร์ฟเวอร์ SRP ใช้
โหมดที่อยู่จะระบุวิธีที่เซิร์ฟเวอร์ SRP กำหนดที่อยู่และหมายเลขพอร์ต และวิธีเผยแพร่ข้อมูลนี้ในข้อมูลเครือข่ายเทรด
| พร็อพเพอร์ตี้ | |
|---|---|
| OT_SRP_SERVER_ADDRESS_MODE_ANYCAST | โหมดที่อยู่ Anycast | 
| OT_SRP_SERVER_ADDRESS_MODE_UNICAST | โหมดที่อยู่ Unicast | 
otSrpServerState
otSrpServerState
แสดงสถานะของเซิร์ฟเวอร์ SRP
| พร็อพเพอร์ตี้ | |
|---|---|
| OT_SRP_SERVER_STATE_DISABLED | ปิดใช้เซิร์ฟเวอร์ SRP อยู่ | 
| OT_SRP_SERVER_STATE_RUNNING | เซิร์ฟเวอร์ SRP เปิดใช้อยู่และทำงานอยู่ | 
| OT_SRP_SERVER_STATE_STOPPED | เซิร์ฟเวอร์ SRP เปิดใช้อยู่แต่หยุดทำงาน | 
Typedef
otSrpClientAutoStartCallback
void(* otSrpClientAutoStartCallback)(const otSockAddr *aServerSockAddr, void *aContext)
ประเภทตัวชี้จะกำหนดโค้ดเรียกกลับที่ไคลเอ็นต์ SRP ใช้เพื่อแจ้งผู้ใช้เมื่อมีการเริ่มต้นหรือหยุดการทำงานโดยอัตโนมัติ
ซึ่งจะใช้เมื่อเปิดใช้ฟีเจอร์เริ่มต้นอัตโนมัติ OPENTHREAD_CONFIG_SRP_CLIENT_AUTO_START_API_ENABLE เท่านั้น
ระบบจะเรียกใช้การติดต่อกลับนี้เมื่อเปิดใช้โหมดเริ่มต้นอัตโนมัติ และไคลเอ็นต์ SRP จะเริ่มต้นหรือหยุดโดยอัตโนมัติ
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||
otSrpClientBuffersServiceEntry
struct otSrpClientBuffersServiceEntry otSrpClientBuffersServiceEntry
แสดงรายการพูลบริการไคลเอ็นต์ SRP
otSrpClientCallback
void(* otSrpClientCallback)(otError aError, const otSrpClientHostInfo *aHostInfo, const otSrpClientService *aServices, const otSrpClientService *aRemovedServices, void *aContext)
ประเภทตัวชี้จะกำหนดโค้ดเรียกกลับที่ไคลเอ็นต์ SRP ใช้เพื่อแจ้งให้ผู้ใช้ทราบเกี่ยวกับการเปลี่ยนแปลง/เหตุการณ์/ข้อผิดพลาด
ระบบจะเรียกใช้การติดต่อกลับนี้เมื่อการลงทะเบียนการอัปเดตสำเร็จ (เช่น เพิ่ม/นำข้อมูลโฮสต์ออก และ/หรือบริการบางอย่าง) กับเซิร์ฟเวอร์ SRP หรือหากมีความล้มเหลวหรือข้อผิดพลาด (เช่น เซิร์ฟเวอร์ปฏิเสธคำขออัปเดต หรือไคลเอ็นต์หมดเวลาขณะรอการตอบกลับ ฯลฯ)
ในกรณีที่ลงทะเบียนการอัปเดตอีกครั้งสำเร็จ พารามิเตอร์ aError จะเป็น OT_ERROR_NONE และมีข้อมูลโฮสต์และรายการบริการทั้งหมดเป็นพารามิเตอร์อินพุตสำหรับโค้ดเรียกกลับ โปรดทราบว่าข้อมูลโฮสต์และบริการของแต่ละโฮสต์จะติดตามสถานะของตัวเองในตัวแปรสมาชิก mState ที่เกี่ยวข้องของโครงสร้างข้อมูลที่เกี่ยวข้อง (สถานะที่ระบุว่ามีการลงทะเบียนข้อมูล/บริการโฮสต์หรือนำออก หรือยังคงเพิ่ม/นำออกอยู่ เป็นต้น)
ระบบจะส่งรายการบริการที่ถูกนำออกเป็นรายการ aRemovedServices ที่ลิงก์ของตัวเองในโค้ดเรียกกลับ โปรดทราบว่าเมื่อมีการเรียกใช้โค้ดเรียกกลับ ไคลเอ็นต์ SRP (การใช้งาน OpenThread) จะทำงานกับอินสแตนซ์บริการที่ถูกนำออกซึ่งแสดงใน aRemovedServices และจะไม่ติดตาม/จัดเก็บอินสแตนซ์บริการเหล่านั้นอีกต่อไป (เช่น หากจากโค้ดเรียกกลับที่เราเรียกว่า otSrpClientGetServices() บริการที่นำออกจะไม่ปรากฏในรายการที่แสดงผล) การระบุรายการแยกต่างหากของบริการที่นำออกไปแล้วในโค้ดเรียกกลับจะช่วยบอกให้ผู้ใช้ทราบว่ารายการใดถูกนำออกแล้ว และอนุญาตให้ผู้ใช้อ้างสิทธิ์ซ้ำ/ใช้อินสแตนซ์ซ้ำได้
หากเซิร์ฟเวอร์ปฏิเสธคำขออัปเดต SRP ระบบจะจับคู่รหัสการตอบกลับ DNS (RFC 2136) กับข้อผิดพลาดต่อไปนี้
- (0) NOERROR สำเร็จ (ไม่มีเงื่อนไขข้อผิดพลาด) -> OT_ERROR_NONE
- (1) เซิร์ฟเวอร์ FORMERR ไม่สามารถแปลผล เนื่องจากรูปแบบผิดพลาด -> OT_ERROR_PARSE
- (2) เซิร์ฟเวอร์ SERVFAIL พบความล้มเหลวภายใน -> 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 A ไม่ได้อยู่ในโซน -> OT_ERROR_PARSE
- (20) BADNAME ชื่อไม่ถูกต้อง -> OT_ERROR_PARSE
- (21) BADALG อัลกอริทึมไม่ดี -> OT_ERROR_SECURITY
- (22) BADTRUN การตัดข้อความไม่ดี -> OT_ERROR_PARSE
- รหัสการตอบกลับอื่นๆ -> OT_ERROR_FAILED
นอกจากนี้ อาจมีข้อผิดพลาดต่อไปนี้เกิดขึ้นด้วย
- OT_ERROR_RESPONSE_TIMEOUT : หมดเวลาขณะรอการตอบกลับจากเซิร์ฟเวอร์ (ไคลเอ็นต์จะลองใหม่ต่อไป)
- OT_ERROR_INVALID_ARGS : โครงสร้างบริการที่ระบุไม่ถูกต้อง (เช่น ชื่อบริการไม่ถูกต้อง หรือ otDnsTxtEntry)
- OT_ERROR_NO_BUFS : บัฟเฟอร์ไม่เพียงพอที่จะเตรียมหรือส่งข้อความอัปเดต
โปรดทราบว่าหากเกิดความล้มเหลวใดๆ ไคลเอ็นต์จะดำเนินการต่อไป กล่าวคือ จะจัดเตรียมและส่งข้อความการอัปเดต SRP (อีกครั้ง) ไปยังเซิร์ฟเวอร์หลังจากรอระยะหนึ่ง ช่วงเวลารอลองใหม่จะเริ่มจากค่าต่ำสุดและเพิ่มขึ้นตามปัจจัยการเพิ่มของทุกข้อผิดพลาดจนถึงค่าสูงสุด (โปรดดูรายละเอียดเพิ่มเติมที่พารามิเตอร์การกำหนดค่า OPENTHREAD_CONFIG_SRP_CLIENT_MIN_RETRY_WAIT_INTERVAL และพารามิเตอร์ที่เกี่ยวข้อง)
| รายละเอียด | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||||||||
otSrpClientService
struct otSrpClientService otSrpClientService
แสดงถึงบริการไคลเอ็นต์ SRP
ค่าในโครงสร้างนี้ รวมถึงบัฟเฟอร์สตริงสำหรับชื่อและรายการระเบียน TXT ต้องคงอยู่และคงเดิมหลังจากมีการส่งอินสแตนซ์ของโครงสร้างนี้ไปยัง OpenThread จาก otSrpClientAddService() หรือ otSrpClientRemoveService()
ช่อง mState, mData และ mNext ต้องใช้/จัดการโดยบริการหลัก OT เท่านั้น ระบบจะไม่สนใจค่าเมื่อมีการส่งอินสแตนซ์ของ otSrpClientService ใน otSrpClientAddService() หรือ otSrpClientRemoveService() หรือฟังก์ชันอื่นๆ ผู้โทรไม่จําเป็นต้องตั้งค่าช่องเหล่านี้
ช่อง mLease และ mKeyLease จะระบุระยะเวลาเช่าและช่วงเวลาเช่าที่ต้องการสำหรับบริการนี้ ค่า 0 บ่งบอกว่าไม่ได้ระบุช่วงเวลา และระบบจะใช้ช่วงเวลาเช่าหรือช่วงเวลาเช่าเริ่มต้นจาก otSrpClientGetLeaseInterval() และ otSrpClientGetKeyLeaseInterval() สําหรับบริการนี้ หากช่วงเวลาเช่าคีย์ (ไม่ว่าจะกำหนดโดยชัดแจ้งหรือกำหนดจากค่าเริ่มต้น) สั้นกว่าระยะเวลาเช่าสำหรับบริการ ไคลเอ็นต์ SRP จะนำค่าช่วงการเช่าซ้ำสำหรับช่วงการเช่าคีย์ด้วย ตัวอย่างเช่น หากในบริการ mLease ตั้งค่าไว้เป็น 2 วันอย่างชัดเจน และตั้งค่า mKeyLease เป็น 0 และตั้งค่าการเช่าคีย์เริ่มต้นเป็น 1 วัน จากนั้นเมื่อลงทะเบียนบริการนี้ การเช่าคีย์ที่ขอสำหรับบริการนี้ก็จะตั้งค่าเป็น 2 วันด้วย 
otSrpServerAddressMode
enum otSrpServerAddressMode otSrpServerAddressMode
แสดงโหมดที่อยู่ที่เซิร์ฟเวอร์ SRP ใช้
โหมดที่อยู่จะระบุวิธีที่เซิร์ฟเวอร์ SRP กำหนดที่อยู่และหมายเลขพอร์ต และวิธีเผยแพร่ข้อมูลนี้ในข้อมูลเครือข่ายเทรด
otSrpServerLeaseConfig
struct otSrpServerLeaseConfig otSrpServerLeaseConfig
รวมการกำหนดค่า LEASE ของเซิร์ฟเวอร์ SRP และ KEY-LEASE
otSrpServerLeaseInfo
struct otSrpServerLeaseInfo otSrpServerLeaseInfo
รวมข้อมูลการเช่าเซิร์ฟเวอร์ SRP ของโฮสต์/บริการ
otSrpServerResponseCounters
struct otSrpServerResponseCounters otSrpServerResponseCounters
รวมสถิติการตอบสนองของเซิร์ฟเวอร์ SRP
otSrpServerServiceUpdateHandler
void(* otSrpServerServiceUpdateHandler)(otSrpServerServiceUpdateId aId, const otSrpServerHost *aHost, uint32_t aTimeout, void *aContext)
จัดการการอัปเดตบริการ SRP
ถูกเรียกโดยเซิร์ฟเวอร์ SRP เพื่อแจ้งว่าโฮสต์ SRP และอาจมีการอัปเดตบริการ SRP สิ่งสำคัญคือต้องไม่คอมมิตการอัปเดต SRP จนกว่าเครื่องจัดการจะแสดงผลลัพธ์โดยการเรียกใช้ otSrpServerHandleServiceUpdate Results หรือหมดเวลาหลังจากวันที่ aTimeout
ผู้สังเกตการณ์บริการ SRP ควรเรียก otSrpServerHandleServiceUpdate Results พร้อมรหัสข้อผิดพลาด OT_ERROR_NONE ทุกครั้งทันทีที่ได้รับเหตุการณ์การอัปเดต
เครื่องจัดการทั่วไปอาจทำการตรวจสอบโฮสต์/บริการ SRP และปฏิเสธการอัปเดต SRP หากการตรวจสอบล้มเหลว ตัวอย่างเช่น พร็อกซีการโฆษณาควรโฆษณา (หรือลบ) โฮสต์และบริการในลิงก์ที่รองรับมัลติแคสต์ และแสดงรหัสข้อผิดพลาดที่เฉพาะเจาะจงหากมีความล้มเหลวเกิดขึ้น
| รายละเอียด | |||||||||
|---|---|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||||||
otSrpServerSetServiceUpdateHandler
otSrpServerHandleServiceUpdateResult
otSrpServerServiceUpdateId
uint32_t otSrpServerServiceUpdateId
รหัสของธุรกรรมการอัปเดตบริการ SRP ในเซิร์ฟเวอร์ SRP
otSrpServerTtlConfig
struct otSrpServerTtlConfig otSrpServerTtlConfig
รวมการกำหนดค่า TTL ของเซิร์ฟเวอร์ SRP
ฟังก์ชัน
otSrpClientAddService
otError otSrpClientAddService( otInstance *aInstance, otSrpClientService *aService )
เพิ่มบริการที่จะลงทะเบียนกับเซิร์ฟเวอร์
หลังจากเรียกฟังก์ชันนี้สำเร็จ ระบบจะเรียกใช้ otSrpClientCallback เพื่อรายงานสถานะการเพิ่ม/ลงทะเบียนบริการกับเซิร์ฟเวอร์ SRP
อินสแตนซ์ otSrpClientService ที่ aService ชี้ไปต้องคงอยู่และไม่มีการเปลี่ยนแปลงหลังจากส่งคืนจากฟังก์ชันนี้ (โดยมี OT_ERROR_NONE) OpenThread จะบันทึกตัวชี้ไปยังอินสแตนซ์บริการ
OpenThread จะไม่ติดตามอินสแตนซ์ otSrpClientService อีกต่อไปและจะอ้างสิทธิ์คืนได้ก็ต่อเมื่อ
- หมายเลขดังกล่าวจะถูกนำออกอย่างชัดเจนโดยการเรียกไปยัง otSrpClientRemoveService()หรือนำออกพร้อมกับบริการอื่นๆ โดยการเรียกotSrpClientRemoveHostAndServices() and only after theotSrpClientCallback" เพื่อระบุว่ามีการนำบริการออกแล้ว หรือ
- การเรียกไปยัง otSrpClientClearHostAndServices()ซึ่งนำโฮสต์และบริการที่เกี่ยวข้องทั้งหมดออกทันที
| รายละเอียด | |||||||
|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||||
| แสดงผลค่า | 
 | ||||||
otSrpClientBuffersAllocateService
otSrpClientBuffersServiceEntry * otSrpClientBuffersAllocateService( otInstance *aInstance )
จัดสรรรายการบริการใหม่จากพูล
อินสแตนซ์รายการบริการที่ส่งคืนจะเริ่มต้นดังนี้
- mService.mNameจะชี้ไปยังบัฟเฟอร์สตริงที่จัดสรรไว้ซึ่งดึงมาได้โดยใช้ฟังก์ชัน- otSrpClientBuffersGetServiceEntryServiceNameString()
- mService.mInstanceNameจะชี้ไปยังบัฟเฟอร์สตริงที่จัดสรรไว้ซึ่งดึงมาได้โดยใช้ฟังก์ชัน- otSrpClientBuffersGetServiceEntryInstanceNameString()
- mService.mSubTypeLabelsชี้ไปยังอาร์เรย์ที่แสดงผลจาก- otSrpClientBuffersGetSubTypeLabelsArray()
- mService.mTxtEntriesจะชี้ไปที่- mTxtEntry
- mService.mNumTxtEntriesจะตั้งเป็น 1
- ช่อง mServiceอื่นๆ (พอร์ต ลำดับความสำคัญ น้ำหนัก) จะตั้งค่าเป็น 0
- mTxtEntry.mKeyได้รับการตั้งค่าเป็น NULL (จะถือว่าค่ามีการเข้ารหัสแล้ว)
- mTxtEntry.mValueจะชี้ไปยังบัฟเฟอร์ที่จัดสรรซึ่งดึงได้โดยใช้ฟังก์ชัน- otSrpClientBuffersGetServiceEntryTxtBuffer()
- mTxtEntry.mValueLengthได้รับการตั้งค่าเป็น 0
- บัฟเฟอร์ข้อมูล/สตริงที่เกี่ยวข้องและอาร์เรย์ทั้งหมดจะถูกล้างออกจากค่า 0
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
 | ||
| การส่งคืน | ตัวชี้ไปยังรายการบริการที่จัดสรรใหม่ หรือ 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 จากรายการบริการ
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||
| การส่งคืน | ตัวชี้ไปยังบัฟเฟอร์  | ||||
otSrpClientBuffersGetSubTypeLabelsArray
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 เท่านั้น
การปิดใช้โหมดเริ่มต้นอัตโนมัติจะไม่หยุดไคลเอ็นต์หากโหมดทำงานอยู่แล้ว แต่ไคลเอ็นต์จะหยุดตรวจสอบข้อมูลเครือข่ายเทรดเพื่อยืนยันว่ายังมีเซิร์ฟเวอร์ SRP ที่เลือกไว้ยังคงอยู่
โปรดทราบว่าการโทรหา otSrpClientStop() จะปิดโหมดเริ่มต้นอัตโนมัติด้วย
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
 | ||
otSrpClientEnableAutoHostAddress
otError otSrpClientEnableAutoHostAddress( otInstance *aInstance )
เปิดใช้โหมดที่อยู่โฮสต์อัตโนมัติ
เมื่อไคลเอ็นต์ SRP เปิดใช้การตั้งค่าที่อยู่ IPv6 ของโฮสต์ให้โดยอัตโนมัติโดยใช้ที่อยู่ Unicast ที่ต้องการทั้งหมดในเทรด ยกเว้นที่อยู่ที่ลิงก์ภายในและที่ทำงานร่วมกันทั้งหมด หากไม่มีที่อยู่ที่ต้องการ ระบบจะเพิ่มที่อยู่ EID ในท้องถิ่นของ Mesh ไคลเอ็นต์ SRP จะลงทะเบียนอีกครั้งโดยอัตโนมัติเมื่อ/หากมีการอัปเดตที่อยู่ในเทรด (มีการเพิ่มที่อยู่ใหม่ หรือนำที่อยู่ที่มีอยู่ออกหรือทำเครื่องหมายเป็นไม่ต้องการ)
คุณเปิดใช้โหมดที่อยู่โฮสต์อัตโนมัติได้ก่อนเริ่มต้นหรือระหว่างการทำงานของไคลเอ็นต์ 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 จะตรวจสอบข้อมูลเครือข่ายเทรดเพื่อค้นหาเซิร์ฟเวอร์ SRP และเลือกเซิร์ฟเวอร์ที่ต้องการ จากนั้นจึงเริ่มและหยุดไคลเอ็นต์โดยอัตโนมัติเมื่อตรวจพบเซิร์ฟเวอร์ SRP
รายการข้อมูลเครือข่ายที่แสดงว่ามีเซิร์ฟเวอร์ SRP อยู่ด้วยกัน 3 หมวดหมู่ โดยจะแนะนำให้เรียงตามลำดับต่อไปนี้
1) รายการ Unicast ที่ต้องการซึ่งมีที่อยู่เซิร์ฟเวอร์รวมอยู่ในข้อมูลบริการ หากมีหลายตัวเลือก ขอแนะนำให้เลือกที่อยู่ IPv6 ที่มีตัวเลขต่ำสุด
2) รายการ Anycast แต่ละรายการมีหมายเลข seq หมายเลขลำดับที่มากกว่าตามความหมายที่ระบุโดยตรรกะเลขคณิตหมายเลขซีเรียลใน RFC-1982 จะถือว่าเป็นตัวเลขล่าสุดมากกว่า ดังนั้นจึงควรเลือกใช้ ขอแนะนำให้ใช้เลขลำดับสูงสุดซึ่งใช้เลขลำดับหากมีการระบุไว้เป็นอย่างดี (กล่าวคือ ตัวเลขลำดับจะต้องมากกว่าเลขลำดับอื่นๆ ทั้งหมด) หากไม่ได้กำหนดไว้อย่างเหมาะสม เราขอแนะนำให้ใช้เลขลำดับสูงสุดที่เป็นตัวเลข
3) รายการ Unicast ที่มีข้อมูลที่อยู่เซิร์ฟเวอร์รวมอยู่ในข้อมูลเซิร์ฟเวอร์ หากมีหลายตัวเลือก ขอแนะนำให้เลือกที่อยู่ IPv6 ที่มีตัวเลขต่ำสุด
เมื่อมีการเปลี่ยนแปลงในรายการข้อมูลเครือข่าย ไคลเอ็นต์จะตรวจสอบว่าเซิร์ฟเวอร์ที่เลือกไว้ปัจจุบันยังคงอยู่ในข้อมูลเครือข่ายหรือไม่ และยังคงเป็นเซิร์ฟเวอร์ที่ต้องการ มิฉะนั้นไคลเอ็นต์จะเปลี่ยนไปใช้เซิร์ฟเวอร์ที่ต้องการตัวใหม่ หรือหยุดการทำงานหากไม่มีเซิร์ฟเวอร์เลย
เมื่อไคลเอ็นต์ SRP เริ่มต้นอย่างชัดเจนผ่านการเรียก otSrpClientStart() ที่สำเร็จ ระบบจะยังใช้ที่อยู่เซิร์ฟเวอร์ SRP ดังกล่าวใน otSrpClientStart() ต่อไปโดยไม่คำนึงถึงสถานะของโหมดเริ่มต้นอัตโนมัติ และจะพบที่อยู่เซิร์ฟเวอร์ SRP เดียวกันในข้อมูลเครือข่ายเทรดหรือไม่ ในกรณีนี้ มีเพียงการเรียกใช้ otSrpClientStop() ที่ชัดแจ้งเท่านั้นที่จะหยุดไคลเอ็นต์
| รายละเอียด | |||||||
|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||||
otSrpClientGetDomainName
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 เป็น 0 เท่านั้น
โปรดทราบว่านี่คือระยะเวลาเช่าที่ขอโดยไคลเอ็นต์ SRP เซิร์ฟเวอร์อาจเลือกที่จะยอมรับช่วงเวลาเช่าอื่น
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
 | ||
| การส่งคืน | ช่วงเวลาเช่าสำคัญ (เป็นวินาที)  | ||
otSrpClientGetLeaseInterval
uint32_t otSrpClientGetLeaseInterval( otInstance *aInstance )
รับช่วงเวลาเช่าเริ่มต้นที่ใช้ในคำขออัปเดต SRP
ช่วงเวลาเริ่มต้นจะใช้กับอินสแตนซ์ otSrpClientService ที่ตั้งค่า mLease เป็น 0 เท่านั้น
โปรดทราบว่านี่คือระยะเวลาเช่าที่ขอโดยไคลเอ็นต์ SRP เซิร์ฟเวอร์อาจเลือกที่จะยอมรับช่วงเวลาเช่าอื่น
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
 | ||
| การส่งคืน | ช่วงเวลาเช่า (เป็นวินาที)  | ||
otSrpClientGetServerAddress
const otSockAddr * otSrpClientGetServerAddress( otInstance *aInstance )
รับที่อยู่ซ็อกเก็ต (ที่อยู่ IPv6 และหมายเลขพอร์ต) ของเซิร์ฟเวอร์ SRP ที่ไคลเอ็นต์ SRP ใช้อยู่
หากไคลเอ็นต์ไม่ได้ทำงานอยู่ จะไม่มีการระบุที่อยู่ (เลขศูนย์ทั้งหมด) ที่มีหมายเลขพอร์ตเป็น 0
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
 | ||
| การส่งคืน | ตัวชี้ไปยังที่อยู่ซ็อกเก็ตของเซิร์ฟเวอร์ SRP (ไม่ใช่ NULL เสมอ)  | ||
otSrpClientGetServices
const otSrpClientService * otSrpClientGetServices( otInstance *aInstance )
รับรายการบริการที่ลูกค้าเป็นผู้จัดการ
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
 | ||
| การส่งคืน | ตัวชี้ไปยังส่วนหัวของรายการที่เชื่อมโยงของบริการทั้งหมดหรือเป็นค่าว่างหากรายการว่างเปล่า  | ||
otSrpClientGetTtl
uint32_t otSrpClientGetTtl( otInstance *aInstance )
รับค่า TTL ในทุกระเบียนที่รวมอยู่ในคำขออัปเดต SRP
โปรดทราบว่านี่เป็น TTL ที่ไคลเอ็นต์ SRP ขอ เซิร์ฟเวอร์อาจเลือกที่จะยอมรับ TTL อื่น
โดยค่าเริ่มต้น TTL เท่ากับช่วงเวลาเช่า การส่งผ่าน 0 หรือค่าที่มากกว่าช่วงเวลาเช่าผ่าน otSrpClientSetTtl() จะทำให้ TTL เท่ากับช่วงเวลาเช่าเท่ากันด้วย
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
 | ||
| การส่งคืน | TTL (เป็นวินาที)  | ||
otSrpClientIsAutoStartModeEnabled
bool otSrpClientIsAutoStartModeEnabled( otInstance *aInstance )
ระบุสถานะปัจจุบันของโหมดเริ่มต้นอัตโนมัติ (เปิดใช้หรือปิดใช้)
ซึ่งจะใช้ได้เมื่อเปิดใช้ฟีเจอร์เริ่มต้นอัตโนมัติ OPENTHREAD_CONFIG_SRP_CLIENT_AUTO_START_API_ENABLE เท่านั้น
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
 | ||
| การส่งคืน | TRUE ถ้าเปิดใช้โหมดเริ่มต้นอัตโนมัติ มิฉะนั้นจะเป็น FALSE  | ||
otSrpClientIsRunning
bool otSrpClientIsRunning( otInstance *aInstance )
ระบุว่าไคลเอ็นต์ SRP ทำงานอยู่หรือไม่
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
 | ||
| การส่งคืน | TRUE หากไคลเอ็นต์ SRP ทำงานอยู่ หากไม่เป็นเช่นนั้น ให้ FALSE  | ||
otSrpClientIsServiceKeyRecordEnabled
bool otSrpClientIsServiceKeyRecordEnabled( otInstance *aInstance )
ระบุว่าโหมด "การรวมระเบียนคีย์บริการ" เปิดหรือปิดใช้อยู่
ใช้งานได้เมื่อเปิดใช้การกำหนดค่า OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
 | ||
| การส่งคืน | TRUE หากเปิดใช้โหมด "การรวมระเบียนคีย์บริการ" หากไม่เปิดใช้ FALSE  | ||
otSrpClientItemStateToString
const char * otSrpClientItemStateToString( otSrpClientItemState aItemState )
แปลง otSrpClientItemState เป็นสตริง 
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
 | ||
| การส่งคืน | ตัวแทนสตริงของ  aItemState | ||
otSrpClientRemoveHostAndServices
otError otSrpClientRemoveHostAndServices( otInstance *aInstance, bool aRemoveKeyLease, bool aSendUnregToServer )
เริ่มกระบวนการนำข้อมูลโฮสต์และบริการทั้งหมดออก
หลังจากกลับมาจากฟังก์ชันนี้ ระบบจะเรียกใช้ otSrpClientCallback เพื่อรายงานสถานะของคำขอนำออกด้วยเซิร์ฟเวอร์ SRP
หากจะนำข้อมูลโฮสต์ออกจากเซิร์ฟเวอร์อย่างถาวร ควรตั้งค่า aRemoveKeyLease เป็น true ซึ่งจะนำการเช่าคีย์ที่เกี่ยวข้องกับโฮสต์บนเซิร์ฟเวอร์ออก ไม่เช่นนั้น ระบบจะเก็บบันทึกการเช่าคีย์ไว้เหมือนเดิม ซึ่งช่วยให้มั่นใจว่าเซิร์ฟเวอร์จะมีชื่อโฮสต์ที่สงวนไว้สำหรับเวลาที่ไคลเอ็นต์สามารถให้และลงทะเบียนบริการได้อีกครั้ง
aSendUnregToServer จะกำหนดลักษณะการทำงานเมื่อข้อมูลโฮสต์ยังไม่ได้ลงทะเบียนกับเซิร์ฟเวอร์ หากตั้งค่า aSendUnregToServer เป็น false (ซึ่งเป็นค่าเริ่มต้น/ค่าที่คาดไว้) ไคลเอ็นต์ SRP จะนำข้อมูลโฮสต์และบริการของโฮสต์ออกทันทีโดยไม่ส่งข้อความอัปเดตไปยังเซิร์ฟเวอร์ (ไม่ต้องอัปเดตเซิร์ฟเวอร์หากยังไม่ได้ลงทะเบียนไว้) หากตั้งค่า aSendUnregToServer เป็น true ไคลเอ็นต์ SRP จะส่งข้อความอัปเดตไปยังเซิร์ฟเวอร์ โปรดทราบว่าหากลงทะเบียนข้อมูลโฮสต์แล้ว ค่าของ aSendUnregToServer จะเป็นค่าเดิม และไคลเอ็นต์ SRP จะส่งข้อความอัปเดตไปยังเซิร์ฟเวอร์เพื่อขอให้นำข้อมูลทั้งหมดออกเสมอ
สถานการณ์หนึ่งที่ aSendUnregToServer จะมีประโยชน์คือเมื่อรีเซ็ต/รีบูตอุปกรณ์ ผู้โทรอาจต้องการนำบริการที่ลงทะเบียนไว้ก่อนหน้านี้ออกจากเซิร์ฟเวอร์ ในกรณีนี้ ผู้โทรสามารถ otSrpClientSetHostName() จากนั้นส่งคำขอ otSrpClientRemoveHostAndServices() กับ aSendUnregToServer เป็น true
| รายละเอียด | |||||||
|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||||
| แสดงผลค่า | 
 | ||||||
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 เป็น 0 เท่านั้น
การเปลี่ยนช่วงการเช่าจะไม่ส่งผลต่อช่วงระยะเวลาเช่าที่ยอมรับของบริการ/ข้อมูลโฮสต์ที่ลงทะเบียนแล้ว แต่จะมีผลกับข้อความอัปเดต SRP ในอนาคตเท่านั้น (เช่น การเพิ่มบริการใหม่และ/หรือการรีเฟรชบริการที่มีอยู่)
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||
otSrpClientSetLeaseInterval
void otSrpClientSetLeaseInterval( otInstance *aInstance, uint32_t aInterval )
ตั้งค่าช่วงเวลาเช่าเริ่มต้นที่ใช้ในคำขออัปเดต SRP
ช่วงเวลาเริ่มต้นจะใช้กับอินสแตนซ์ otSrpClientService ที่ตั้งค่า mLease เป็น 0 เท่านั้น
การเปลี่ยนช่วงระยะเวลาเช่าจะไม่ส่งผลต่อช่วงระยะเวลาเช่าที่ยอมรับของบริการ/ข้อมูลโฮสต์ที่ลงทะเบียนแล้ว แต่จะมีผลกับข้อความอัปเดต SRP ในอนาคตเท่านั้น (เช่น การเพิ่มบริการใหม่และ/หรือการรีเฟรชบริการที่มีอยู่)
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||
otSrpClientSetServiceKeyRecordEnabled
void otSrpClientSetServiceKeyRecordEnabled( otInstance *aInstance, bool aEnabled )
เปิด/ปิดใช้โหมด "การรวมระเบียนคีย์บริการ"
เมื่อเปิดใช้ ไคลเอ็นต์ SRP จะรวมระเบียน KEY ไว้ในคำสั่งคำอธิบายบริการในข้อความอัปเดต 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 ของโฮสต์อย่างน้อย 1 รายการ - ระบบจะเรียก otSrpClientSetHostName()
- มีการเพิ่มบริการอย่างน้อย 1 รายการ - จะเรียก 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  | ||
otSrpServerGetAnycastModeSequenceNumber
uint8_t otSrpServerGetAnycastModeSequenceNumber( otInstance *aInstance )
แสดงผลหมายเลขลำดับที่ใช้กับโหมดที่อยู่ Anycast
หมายเลขลำดับจะรวมอยู่ในรายการ "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
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||
| การส่งคืน | ตัวชี้ไปยังโฮสต์ที่จดทะเบียน ว่างเปล่าหากไม่พบโฮสต์เพิ่มอีก  | ||||
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
| รายละเอียด | |||||||
|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||||
otSrpServerHostGetAddresses
const otIp6Address * otSrpServerHostGetAddresses( const otSrpServerHost *aHost, uint8_t *aAddressesNum )
แสดงผลที่อยู่ของโฮสต์ที่ระบุ
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||
| การส่งคืน | ตัวชี้ไปยังอาร์เรย์ของที่อยู่ IPv6  | ||||
otSrpServerHostGetFullName
const char * otSrpServerHostGetFullName( const otSrpServerHost *aHost )
แสดงชื่อเต็มของโฮสต์
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
 | ||
| การส่งคืน | ตัวชี้ไปยังสตริงชื่อโฮสต์ที่ลงท้ายด้วยค่า Null  | ||
otSrpServerHostGetLeaseInfo
void otSrpServerHostGetLeaseInfo( const otSrpServerHost *aHost, otSrpServerLeaseInfo *aLeaseInfo )
แสดงผลข้อมูล LEASE และ KEY-LEASE ของโฮสต์ที่ระบุ
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||
otSrpServerHostGetNextService
const otSrpServerService * otSrpServerHostGetNextService( const otSrpServerHost *aHost, const otSrpServerService *aService )
แสดงผลบริการถัดไปของโฮสต์ที่ระบุ
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||
| การส่งคืน | ตัวชี้ไปยังบริการถัดไปหรือ NULL หากไม่มีบริการอื่น  | ||||
otSrpServerHostIsDeleted
bool otSrpServerHostIsDeleted( const otSrpServerHost *aHost )
บ่งบอกว่าโฮสต์บริการ SRP ถูกลบไปแล้วหรือไม่
คุณลบโฮสต์บริการ SRP ได้ แต่คงชื่อโฮสต์ไว้ใช้ในอนาคต ในกรณีนี้ อินสแตนซ์โฮสต์จะไม่ถูกนำออกจากเซิร์ฟเวอร์/รีจิสทรี SRP
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
 | ||
| การส่งคืน | TRUE ถ้าโฮสต์ถูกลบ FALSE ถ้าไม่เป็น FALSE  | ||
otSrpServerHostMatchesFullName
bool otSrpServerHostMatchesFullName( const otSrpServerHost *aHost, const char *aFullName )
ระบุว่าโฮสต์ตรงกับชื่อโฮสต์ที่ระบุหรือไม่
การจับคู่ชื่อ DNS จะดำเนินการโดยใช้การเปรียบเทียบสตริงที่ไม่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ (เช่น "Abc" และ "aBc" ถือว่าเป็นข้อมูลเดียวกัน)
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||
| แสดงผลค่า | 
 | ||||
otSrpServerIsAutoEnableMode
bool otSrpServerIsAutoEnableMode( otInstance *aInstance )
ระบุว่าเปิดหรือปิดโหมดเปิดใช้งานอัตโนมัติ
ต้องใช้ฟีเจอร์ OPENTHREAD_CONFIG_BORDER_ROUTING_ENABLE
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||
| แสดงผลค่า | 
 | ||||
otSrpServerParseSubTypeServiceName
otError otSrpServerParseSubTypeServiceName( const char *aSubTypeServiceName, char *aLabel, uint8_t aLabelSize )
แยกวิเคราะห์ชื่อบริการประเภทย่อย (ชื่อเต็ม) และแยกป้ายกำกับประเภทย่อย
ชื่อบริการแบบเต็มสำหรับบริการประเภทย่อยอยู่หลัง "
| รายละเอียด | |||||||
|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||||
| แสดงผลค่า | 
 | ||||||
otSrpServerServiceGetHost
const otSrpServerHost * otSrpServerServiceGetHost( const otSrpServerService *aService )
แสดงผลโฮสต์ที่มีอินสแตนซ์บริการอยู่
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
 | ||
| การส่งคืน | ตัวชี้ไปยังอินสแตนซ์โฮสต์  | ||
otSrpServerServiceGetInstanceLabel
const char * otSrpServerServiceGetInstanceLabel( const otSrpServerService *aService )
แสดงผลป้ายกำกับอินสแตนซ์บริการ (ป้ายกำกับแรกในชื่ออินสแตนซ์) ของบริการ
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
 | ||
| การส่งคืน | ตัวชี้ไปยังสตริงป้ายกำกับอินสแตนซ์บริการที่มีการยุติค่า Null  | ||
otSrpServerServiceGetInstanceName
const char * otSrpServerServiceGetInstanceName( const otSrpServerService *aService )
แสดงผลชื่ออินสแตนซ์บริการแบบเต็มของบริการ
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
 | ||
| การส่งคืน | ตัวชี้ไปยังสตริงชื่ออินสแตนซ์บริการที่สิ้นสุดค่า Null  | ||
otSrpServerServiceGetLeaseInfo
void otSrpServerServiceGetLeaseInfo( const otSrpServerService *aService, otSrpServerLeaseInfo *aLeaseInfo )
แสดงผลข้อมูล LEASE และ KEY-LEASE ของบริการที่ระบุ
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||
otSrpServerServiceGetNumberOfSubTypes
uint16_t otSrpServerServiceGetNumberOfSubTypes( const otSrpServerService *aService )
รับจำนวนประเภทย่อยของบริการ
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
 | ||
| การส่งคืน | จำนวนประเภทย่อยของ  aService | ||
otSrpServerServiceGetPort
uint16_t otSrpServerServiceGetPort( const otSrpServerService *aService )
แสดงผลพอร์ตของอินสแตนซ์บริการ
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
 | ||
| การส่งคืน | พอร์ตของบริการ  | ||
otSrpServerServiceGetPriority
uint16_t otSrpServerServiceGetPriority( const otSrpServerService *aService )
แสดงผลลำดับความสำคัญของอินสแตนซ์บริการ
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
 | ||
| การส่งคืน | ลำดับความสำคัญของบริการ  | ||
otSrpServerServiceGetServiceName
const char * otSrpServerServiceGetServiceName( const otSrpServerService *aService )
แสดงชื่อเต็มของบริการ
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
 | ||
| การส่งคืน | ตัวชี้ไปยังสตริงชื่อบริการที่สิ้นสุดค่า Null  | ||
otSrpServerServiceGetSubTypeServiceNameAt
const char * otSrpServerServiceGetSubTypeServiceNameAt( const otSrpServerService *aService, uint16_t aIndex )
รับชื่อบริการประเภทย่อย (ชื่อเต็ม) ของบริการตามดัชนีที่ระบุ
ชื่อบริการแบบเต็มสำหรับบริการประเภทย่อยอยู่หลัง "
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||
| การส่งคืน | ตัวชี้ไปยังชื่อบริการประเภทย่อยที่  aIndexหรือNULLหากไม่มีประเภทย่อยที่ดัชนีนี้ | ||||
otSrpServerServiceGetTtl
uint32_t otSrpServerServiceGetTtl( const otSrpServerService *aService )
แสดงผล TTL ของอินสแตนซ์บริการ
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
 | ||
| การส่งคืน | TTL ของอินสแตนซ์บริการ..  | ||
otSrpServerServiceGetTxtData
const uint8_t * otSrpServerServiceGetTxtData( const otSrpServerService *aService, uint16_t *aDataLength )
แสดงผลข้อมูลระเบียน TXT ของอินสแตนซ์บริการ
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||
| การส่งคืน | ตัวชี้ไปยังบัฟเฟอร์ที่มีข้อมูลระเบียน TXT (ความยาวของข้อมูล TXT จะแสดงผลใน  aDataLength) | ||||
otSrpServerServiceGetWeight
uint16_t otSrpServerServiceGetWeight( const otSrpServerService *aService )
แสดงผลน้ำหนักของอินสแตนซ์บริการ
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
 | ||
| การส่งคืน | น้ำหนักของบริการ  | ||
otSrpServerServiceHasSubTypeServiceName
bool otSrpServerServiceHasSubTypeServiceName( const otSrpServerService *aService, const char *aSubTypeServiceName )
ระบุว่าบริการมีประเภทย่อยที่ระบุหรือไม่
การจับคู่ชื่อ DNS จะดำเนินการโดยใช้การเปรียบเทียบสตริงที่ไม่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ (เช่น "Abc" และ "aBc" ถือว่าเป็นข้อมูลเดียวกัน)
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||
| แสดงผลค่า | 
 | ||||
otSrpServerServiceIsDeleted
bool otSrpServerServiceIsDeleted( const otSrpServerService *aService )
ระบุว่าบริการ SRP ถูกลบแล้วหรือไม่
คุณลบบริการ SRP ได้ แต่จะเก็บชื่อไว้ใช้ในอนาคต ในกรณีนี้ อินสแตนซ์ของบริการจะไม่ถูกนำออกจากเซิร์ฟเวอร์/รีจิสทรี SRP และจะมีการรับประกันว่าบริการทั้งหมดจะถูกลบหากมีการลบโฮสต์
| รายละเอียด | |||
|---|---|---|---|
| พารามิเตอร์ | 
 | ||
| การส่งคืน | TRUE ถ้าบริการถูกลบ จะ FALSE หากไม่  | ||
otSrpServerServiceMatchesInstanceName
bool otSrpServerServiceMatchesInstanceName( const otSrpServerService *aService, const char *aInstanceName )
ระบุว่าบริการนี้ตรงกับชื่ออินสแตนซ์ของบริการที่ระบุหรือไม่
การจับคู่ชื่อ DNS จะดำเนินการโดยใช้การเปรียบเทียบสตริงที่ไม่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ (เช่น "Abc" และ "aBc" ถือว่าเป็นข้อมูลเดียวกัน)
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||
| แสดงผลค่า | 
 | ||||
otSrpServerServiceMatchesServiceName
bool otSrpServerServiceMatchesServiceName( const otSrpServerService *aService, const char *aServiceName )
ระบุว่าบริการนี้ตรงกับชื่อบริการที่ระบุหรือไม่
การจับคู่ชื่อ DNS จะดำเนินการโดยใช้การเปรียบเทียบสตริงที่ไม่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ (เช่น "Abc" และ "aBc" ถือว่าเป็นข้อมูลเดียวกัน)
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||
| แสดงผลค่า | 
 | ||||
otSrpServerSetAddressMode
otError otSrpServerSetAddressMode( otInstance *aInstance, otSrpServerAddressMode aMode )
ตั้งค่าโหมดที่อยู่ที่จะใช้โดยเซิร์ฟเวอร์ SRP
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||
| แสดงผลค่า | 
 | ||||
otSrpServerSetAnycastModeSequenceNumber
otError otSrpServerSetAnycastModeSequenceNumber( otInstance *aInstance, uint8_t aSequenceNumber )
กำหนดหมายเลขลำดับที่ใช้กับโหมดที่อยู่ Anycast
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||
| แสดงผลค่า | 
 | ||||
otSrpServerSetAutoEnableMode
void otSrpServerSetAutoEnableMode( otInstance *aInstance, bool aEnabled )
เปิด/ปิดใช้โหมดเปิดใช้อัตโนมัติในเซิร์ฟเวอร์ SRP
ต้องใช้ฟีเจอร์ OPENTHREAD_CONFIG_BORDER_ROUTING_ENABLE
เมื่อเปิดใช้โหมดนี้ Border Routing Manager จะควบคุมว่าจะเปิดหรือปิดใช้เซิร์ฟเวอร์ SRP เมื่อใด/เมื่อใด เซิร์ฟเวอร์ SRP จะเปิดใช้โดยอัตโนมัติหาก/เมื่อมีการเริ่มต้น Border Routing และทำกับคำนำหน้าเริ่มต้นและการกำหนดค่าเส้นทาง (เมื่อมีการกำหนด OMR และคำนำหน้าลิงก์ มีการโฆษณาในข้อความการโฆษณาเราเตอร์ที่ปล่อยออกมาในฝั่งโครงสร้างพื้นฐาน และเผยแพร่ในข้อมูลเครือข่ายเทรด) ระบบจะปิดใช้เซิร์ฟเวอร์ 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
ใน Border Router ขอแนะนำให้ใช้ otSrpServerSetAutoEnableMode() แทน
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||
otSrpServerSetLeaseConfig
otError otSrpServerSetLeaseConfig( otInstance *aInstance, const otSrpServerLeaseConfig *aLeaseConfig )
ตั้งการกำหนดค่า LEASE ของเซิร์ฟเวอร์ SRP และ KEY-LEASE
เมื่อมีการขอเวลา LEASE ที่ไม่ใช่ 0 จากไคลเอ็นต์ ค่าที่ระบุจะถูกจำกัดอยู่ในช่วง [aMinLease, aMaxLease] และ KEY-LEASE ที่ไม่ใช่ 0 จะได้รับอนุญาตในช่วง [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 ต่ำสุดและสูงสุด
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||
| แสดงผลค่า | 
 | ||||
แหล่งข้อมูล
หัวข้ออ้างอิง API ของ OpenThread จะมาจากซอร์สโค้ดซึ่งพร้อมใช้งานใน GitHub ดูข้อมูลเพิ่มเติมหรือมีส่วนร่วมในเอกสารประกอบของเราได้ที่แหล่งข้อมูล