Máy chủ DNS-SD

Mô-đun này bao gồm các API cho máy chủ DNS-SD.

Tóm tắt

Bảng liệt kê

otDnssdQueryType{
  OT_DNSSD_QUERY_TYPE_NONE = 0,
  OT_DNSSD_QUERY_TYPE_BROWSE = 1,
  OT_DNSSD_QUERY_TYPE_RESOLVE = 2,
  OT_DNSSD_QUERY_TYPE_RESOLVE_HOST = 3
}
enum
Chỉ định một loại truy vấn DNS-SD.

Typedef

otDnssdCounters typedef
Chứa bộ đếm của máy chủ DNS-SD.
otDnssdHostInfo typedef
Biểu thị thông tin của một máy chủ đã phát hiện cho truy vấn DNS-SD.
otDnssdQuery typedef
void
Loại mờ này đại diện cho một truy vấn DNS-SD.
otDnssdQuerySubscribeCallback)(void *aContext, const char *aFullName) typedef
void(*
Được gọi khi một truy vấn DNS-SD đăng ký một trong các giá trị sau:
otDnssdQueryUnsubscribeCallback)(void *aContext, const char *aFullName) typedef
void(*
Được gọi khi một truy vấn DNS-SD huỷ đăng ký một trong các trường hợp sau:
otDnssdServiceInstanceInfo typedef
Biểu thị thông tin của một thực thể dịch vụ đã phát hiện cho truy vấn DNS-SD.

Hàm

otDnssdGetCounters(otInstance *aInstance)
const otDnssdCounters *
Trả về bộ đếm của máy chủ DNS-SD.
otDnssdGetNextQuery(otInstance *aInstance, const otDnssdQuery *aQuery)
const otDnssdQuery *
Nhận truy vấn tiếp theo trong máy chủ DNS-SD.
otDnssdGetQueryTypeAndName(const otDnssdQuery *aQuery, char(*) aNameOutput[OT_DNS_MAX_NAME_SIZE])
Nhận loại truy vấn DNS-SD và tên cho một truy vấn cụ thể.
otDnssdQueryHandleDiscoveredHost(otInstance *aInstance, const char *aHostFullName, otDnssdHostInfo *aHostInfo)
void
Thông báo cho máy chủ đã phát hiện.
otDnssdQueryHandleDiscoveredServiceInstance(otInstance *aInstance, const char *aServiceFullName, otDnssdServiceInstanceInfo *aInstanceInfo)
void
Thông báo cho một thực thể dịch vụ đã được phát hiện.
otDnssdQuerySetCallbacks(otInstance *aInstance, otDnssdQuerySubscribeCallback aSubscribe, otDnssdQueryUnsubscribeCallback aUnsubscribe, void *aContext)
void
Đặt lệnh gọi lại truy vấn máy chủ DNS-SD.
otDnssdUpstreamQueryIsEnabled(otInstance *aInstance)
bool
Trả về việc máy chủ DNSSD có chuyển tiếp các truy vấn DNS đến API ngược dòng DNS của nền tảng hay không.
otDnssdUpstreamQuerySetEnabled(otInstance *aInstance, bool aEnabled)
void
Bật hoặc tắt tính năng chuyển tiếp các truy vấn DNS đến API ngược dòng DNS của nền tảng.

Cấu trúc

otDnssdCounters

Chứa bộ đếm của máy chủ DNS-SD.

otDnssdHostInfo

Biểu thị thông tin của một máy chủ đã phát hiện cho truy vấn DNS-SD.

otDnssdServiceInstanceInfo

Biểu thị thông tin của một thực thể dịch vụ đã phát hiện cho truy vấn DNS-SD.

Bảng liệt kê

otDnssdQueryType

 otDnssdQueryType

Chỉ định một loại truy vấn DNS-SD.

Thuộc tính
OT_DNSSD_QUERY_TYPE_BROWSE

Dịch vụ duyệt xem loại dịch vụ.

OT_DNSSD_QUERY_TYPE_NONE

Chưa chỉ định loại dịch vụ.

OT_DNSSD_QUERY_TYPE_RESOLVE

Loại dịch vụ phân giải phiên bản dịch vụ.

OT_DNSSD_QUERY_TYPE_RESOLVE_HOST

Loại dịch vụ phân giải tên máy chủ.

Typedef

otDnssdCounters

struct otDnssdCounters otDnssdCounters

Chứa bộ đếm của máy chủ DNS-SD.

otDnssdHostInfo

struct otDnssdHostInfo otDnssdHostInfo

Biểu thị thông tin của một máy chủ đã phát hiện cho truy vấn DNS-SD.

otDnssdQuery

void otDnssdQuery

Loại mờ này đại diện cho một truy vấn DNS-SD.

otDnssdQuerySubscribeCallback

void(* otDnssdQuerySubscribeCallback)(void *aContext, const char *aFullName)

Được gọi khi một truy vấn DNS-SD đăng ký một trong các giá trị sau:

  1. tên dịch vụ.
  2. tên phiên bản dịch vụ.
  3. tên máy chủ.

Quá trình triển khai truy vấn DNS-SD chịu trách nhiệm xác định aFullName là gì. Nếu aFullName là tên dịch vụ hoặc tên phiên bản dịch vụ, thì quá trình triển khai truy vấn DNS-SD sẽ khám phá thông tin về phiên bản dịch vụ tương ứng và thông báo cho máy chủ DNS-SD bằng otDnssdQueryHandleDiscoveredServiceInstance. Nếu aFullName là tên máy chủ, thì quá trình triển khai truy vấn DNS-SD sẽ phát hiện thông tin máy chủ và thông báo cho máy chủ DNS-SD bằng otDnssdQueryHandleDiscoveredHost.

Thông tin chi tiết
Các tham số
[in] aContext
Con trỏ đến ngữ cảnh dành riêng cho ứng dụng.
[in] aFullName
Tên dịch vụ đầy đủ đã kết thúc rỗng (ví dụ: "_ipps._tcp.default.service.arpa.") hoặc tên phiên bản dịch vụ đầy đủ (ví dụ: "OpenThread._ipps._tcp.default.service.arpa.") hoặc tên đầy đủ của máy chủ (ví dụ: "ot-host.default.service.arpa.").
Xem thêm:
otDnssdQueryHandleDiscoveredServiceInstance
otDnssdQueryHandleDiscoveredHost

otDnssdQueryUnsubscribeCallback

void(* otDnssdQueryUnsubscribeCallback)(void *aContext, const char *aFullName)

Được gọi khi một truy vấn DNS-SD huỷ đăng ký một trong các trường hợp sau:

  1. tên dịch vụ.
  2. tên phiên bản dịch vụ.
  3. tên máy chủ.

Quá trình triển khai truy vấn DNS-SD chịu trách nhiệm xác định aFullName là gì.

Thông tin chi tiết
Thông số
[in] aContext
Con trỏ đến ngữ cảnh dành riêng cho ứng dụng.
[in] aFullName
Tên dịch vụ đầy đủ đã kết thúc rỗng (ví dụ: "_ipps._tcp.default.service.arpa.") hoặc tên phiên bản dịch vụ đầy đủ (ví dụ: "OpenThread._ipps._tcp.default.service.arpa.").

otDnssdServiceInstanceInfo

struct otDnssdServiceInstanceInfo otDnssdServiceInstanceInfo

Biểu thị thông tin của một thực thể dịch vụ đã phát hiện cho truy vấn DNS-SD.

Hàm

otDnssdGetCounters

const otDnssdCounters * otDnssdGetCounters(
  otInstance *aInstance
)

Trả về bộ đếm của máy chủ DNS-SD.

Thông tin chi tiết
Thông số
[in] aInstance
Cấu trúc thực thể OpenThread.
Trả về
Con trỏ tới bộ đếm của máy chủ DNS-SD.

otDnssdGetNextQuery

const otDnssdQuery * otDnssdGetNextQuery(
  otInstance *aInstance,
  const otDnssdQuery *aQuery
)

Nhận truy vấn tiếp theo trong máy chủ DNS-SD.

Thông tin chi tiết
Thông số
[in] aInstance
Cấu trúc thực thể OpenThread.
[in] aQuery
Con trỏ truy vấn. Truyền giá trị NULL để nhận truy vấn đầu tiên.
Trả về
Con trỏ đến truy vấn hoặc NULL nếu không có truy vấn nào khác.

otDnssdGetQueryTypeAndName

otDnssdQueryType otDnssdGetQueryTypeAndName(
  const otDnssdQuery *aQuery,
  char(*) aNameOutput[OT_DNS_MAX_NAME_SIZE]
)

Nhận loại truy vấn DNS-SD và tên cho một truy vấn cụ thể.

Thông tin chi tiết
Thông số
[in] aQuery
Con trỏ truy vấn được thu nạp từ otDnssdGetNextQuery.
[out] aNameOutput
Vùng đệm đầu ra tên phải dài OT_DNS_MAX_NAME_SIZE byte.
Trả về
Loại truy vấn DNS-SD.

otDnssdQueryHandleDiscoveredHost

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

Thông báo cho máy chủ đã phát hiện.

Trình phân giải truy vấn bên ngoài (ví dụ: Discovery Proxy) sẽ gọi hàm này để thông báo cho cốt lõi OpenThread của các máy chủ đã đăng ký.

Thông tin chi tiết
Thông số
[in] aInstance
Cấu trúc thực thể OpenThread.
[in] aHostFullName
Tên máy chủ đầy đủ đã kết thúc rỗng.
[in] aHostInfo
Con trỏ đến thông tin về thực thể dịch vụ đã được phát hiện.

otDnssdQueryHandleDiscoveredServiceInstance

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

Thông báo cho một thực thể dịch vụ đã được phát hiện.

Trình phân giải truy vấn bên ngoài (ví dụ: Discovery Proxy) sẽ gọi hàm này để thông báo cho OpenThread về các dịch vụ hoặc bản sao dịch vụ đã đăng ký.

Thông tin chi tiết
Thông số
[in] aInstance
Cấu trúc thực thể OpenThread.
[in] aServiceFullName
Tên dịch vụ đầy đủ đã kết thúc rỗng.
[in] aInstanceInfo
Con trỏ đến thông tin về thực thể dịch vụ đã được phát hiện.

otDnssdQuerySetCallbacks

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

Đặt lệnh gọi lại truy vấn máy chủ DNS-SD.

Máy chủ DNS-SD gọi aSubscribe để đăng ký một dịch vụ hoặc thực thể dịch vụ nhằm phân giải truy vấn DNS-SD và aUnsubscribe để huỷ đăng ký khi truy vấn được phân giải hoặc hết thời gian chờ.

Thông tin chi tiết
Thông số
[in] aInstance
Cấu trúc thực thể OpenThread.
[in] aSubscribe
Con trỏ đến hàm callback để đăng ký một dịch vụ hoặc thực thể dịch vụ.
[in] aUnsubscribe
Con trỏ đến hàm callback để huỷ đăng ký một dịch vụ hoặc thực thể dịch vụ.
[in] aContext
Con trỏ đến ngữ cảnh dành riêng cho ứng dụng.

otDnssdUpstreamQueryIsEnabled

bool otDnssdUpstreamQueryIsEnabled(
  otInstance *aInstance
)

Trả về việc máy chủ DNSSD có chuyển tiếp các truy vấn DNS đến API ngược dòng DNS của nền tảng hay không.

Có sẵn khi bạn bật OPENTHREAD_CONFIG_DNS_UPSTREAM_QUERY_ENABLE.

Thông tin chi tiết
Thông số
[in] aInstance
Con trỏ đến một thực thể OpenThread.
Giá trị trả về
TRUE
Việc máy chủ DNSSD có chuyển tiếp các truy vấn DNS hay không.
FALSE
Nếu máy chủ DNSSD không chuyển tiếp các truy vấn DNS.
Xem thêm:
otDnssdUpstreamQuerySetEnabled

otDnssdUpstreamQuerySetEnabled

void otDnssdUpstreamQuerySetEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Bật hoặc tắt tính năng chuyển tiếp các truy vấn DNS đến API ngược dòng DNS của nền tảng.

Có sẵn khi bạn bật OPENTHREAD_CONFIG_DNS_UPSTREAM_QUERY_ENABLE.

Thông tin chi tiết
Thông số
[in] aInstance
Con trỏ đến một thực thể OpenThread.
[in] aEnabled
Một giá trị boolean để bật/tắt tính năng chuyển tiếp các truy vấn DNS lên luồng ngược.
Xem thêm:
otPlatDnsStartUpstreamQuery
otPlatDnsCancelUpstreamQuery
otPlatDnsUpstreamQueryDone

Tài nguyên

Các chủ đề tham khảo API OpenThread bắt nguồn từ mã nguồn, có trên GitHub. Để biết thêm thông tin hoặc để đóng góp cho tài liệu của chúng tôi, hãy tham khảo Tài nguyên.