DNS-SD 伺服器
這個模組包含適用於 DNS-SD 伺服器的 API。
摘要
列舉 |
|
|---|---|
otDnssdQueryType{
|
列舉 指定 DNS-SD 查詢類型。 |
Typedefs |
|
|---|---|
otDnssdCounters
|
typedefstruct otDnssdCounters
包含 DNS-SD 伺服器的計數器。 |
otDnssdHostInfo
|
typedefstruct otDnssdHostInfo
代表對 DNS-SD 查詢找到的主機資訊。 |
otDnssdQuery
|
typedefvoid
這個不透明類型代表 DNS-SD 查詢。 |
otDnssdQuerySubscribeCallback)(void *aContext, const char *aFullName)
|
typedefvoid(*
當 DNS-SD 查詢訂閱下列其中一項時,系統就會呼叫: |
otDnssdQueryUnsubscribeCallback)(void *aContext, const char *aFullName)
|
typedefvoid(*
當 DNS-SD 查詢取消訂閱以下任一項目時,系統就會呼叫此方法: |
otDnssdServiceInstanceInfo
|
typedefstruct otDnssdServiceInstanceInfo
代表針對 DNS-SD 查詢找到的服務執行個體資訊。 |
函式 |
|
|---|---|
otDnssdGetCounters(otInstance *aInstance)
|
const otDnssdCounters *
傳回 DNS-SD 伺服器的計數器。
|
otDnssdGetNextQuery(otInstance *aInstance, const otDnssdQuery *aQuery)
|
const otDnssdQuery *
在 DNS-SD 伺服器中取得下一個查詢。
|
otDnssdGetQueryTypeAndName(const otDnssdQuery *aQuery, char(*) aNameOutput[OT_DNS_MAX_NAME_SIZE])
|
取得特定查詢的 DNS-SD 查詢類型和名稱。
|
otDnssdQueryHandleDiscoveredHost(otInstance *aInstance, const char *aHostFullName, otDnssdHostInfo *aHostInfo)
|
void
通知找到的主機。
|
otDnssdQueryHandleDiscoveredServiceInstance(otInstance *aInstance, const char *aServiceFullName, otDnssdServiceInstanceInfo *aInstanceInfo)
|
void
通知找到的服務執行個體。
|
otDnssdQuerySetCallbacks(otInstance *aInstance, otDnssdQuerySubscribeCallback aSubscribe, otDnssdQueryUnsubscribeCallback aUnsubscribe, void *aContext)
|
void
設定 DNS-SD 伺服器查詢回呼。
|
otDnssdUpstreamQueryIsEnabled(otInstance *aInstance)
|
bool
傳回 DNSSD 伺服器是否會將 DNS 查詢轉送至平台 DNS 上游 API。
|
otDnssdUpstreamQuerySetEnabled(otInstance *aInstance, bool aEnabled)
|
void
啟用或停用將 DNS 查詢轉送至平台 DNS 上游 API。
|
結構 |
|
|---|---|
| otDnssdCounters |
包含 DNS-SD 伺服器的計數器。 |
| otDnssdHostInfo |
代表對 DNS-SD 查詢找到的主機資訊。 |
| otDnssdServiceInstanceInfo |
代表針對 DNS-SD 查詢找到的服務執行個體資訊。 |
列舉
otDnssdQueryType
otDnssdQueryType
指定 DNS-SD 查詢類型。
| 屬性 | |
|---|---|
OT_DNSSD_QUERY_TYPE_BROWSE
|
服務類型瀏覽服務。 |
OT_DNSSD_QUERY_TYPE_NONE
|
未指定服務類型。 |
OT_DNSSD_QUERY_TYPE_RESOLVE
|
服務類型可解析服務執行個體。 |
OT_DNSSD_QUERY_TYPE_RESOLVE_HOST
|
服務類型解析主機名稱。 |
Typedefs
otDnssdQuery
void otDnssdQuery
這個不透明類型代表 DNS-SD 查詢。
otDnssdQuerySubscribeCallback
void(* otDnssdQuerySubscribeCallback)(void *aContext, const char *aFullName)
當 DNS-SD 查詢訂閱下列其中一項時,系統就會呼叫:
- 服務名稱
- 服務執行個體名稱
- 主機名稱
DNS-SD 查詢實作會負責辨識「aFullName」。如果 aFullName 是服務名稱或服務執行個體名稱,則 DNS-SD 查詢實作應探索對應的服務執行個體資訊,並使用 otDnssdQueryHandleDiscoveredServiceInstance 通知 DNS-SD 伺服器。如果 aFullName 是主機名稱,DNS-SD 查詢實作應找出主機資訊,並使用 otDnssdQueryHandleDiscoveredHost 通知 DNS-SD 伺服器。
| 詳細說明 | |||||
|---|---|---|---|---|---|
| 參數 |
|
||||
otDnssdQueryHandleDiscoveredServiceInstance
otDnssdQueryHandleDiscoveredHost
otDnssdQueryUnsubscribeCallback
void(* otDnssdQueryUnsubscribeCallback)(void *aContext, const char *aFullName)
當 DNS-SD 查詢取消訂閱以下任一項目時,系統就會呼叫此方法:
- 服務名稱
- 服務執行個體名稱
- 主機名稱
DNS-SD 查詢實作會負責識別 aFullName。
| 詳細說明 | |||||
|---|---|---|---|---|---|
| 參數 |
|
||||
otDnssdServiceInstanceInfo
struct otDnssdServiceInstanceInfo otDnssdServiceInstanceInfo
代表針對 DNS-SD 查詢找到的服務執行個體資訊。
函式
otDnssdGetCounters
const otDnssdCounters * otDnssdGetCounters( otInstance *aInstance )
傳回 DNS-SD 伺服器的計數器。
| 詳細說明 | |||
|---|---|---|---|
| 參數 |
|
||
| 傳回 |
指向 DNS-SD 伺服器計數器的指標。
|
||
otDnssdGetNextQuery
const otDnssdQuery * otDnssdGetNextQuery( otInstance *aInstance, const otDnssdQuery *aQuery )
在 DNS-SD 伺服器中取得下一個查詢。
| 詳細說明 | |||||
|---|---|---|---|---|---|
| 參數 |
|
||||
| 傳回 |
指向查詢的指標;如果沒有其他查詢,則為 NULL。
|
||||
otDnssdGetQueryTypeAndName
otDnssdQueryType otDnssdGetQueryTypeAndName( const otDnssdQuery *aQuery, char(*) aNameOutput[OT_DNS_MAX_NAME_SIZE] )
取得特定查詢的 DNS-SD 查詢類型和名稱。
| 詳細說明 | |||||
|---|---|---|---|---|---|
| 參數 |
|
||||
| 傳回 |
DNS-SD 查詢類型。
|
||||
otDnssdQueryHandleDiscoveredHost
void otDnssdQueryHandleDiscoveredHost( otInstance *aInstance, const char *aHostFullName, otDnssdHostInfo *aHostInfo )
通知找到的主機。
外部查詢解析器 (例如 Discovery Proxy) 應呼叫這個函式來通知已訂閱主機的 OpenThread 核心。
| 詳細說明 | |||||||
|---|---|---|---|---|---|---|---|
| 參數 |
|
||||||
otDnssdQueryHandleDiscoveredServiceInstance
void otDnssdQueryHandleDiscoveredServiceInstance( otInstance *aInstance, const char *aServiceFullName, otDnssdServiceInstanceInfo *aInstanceInfo )
通知找到的服務執行個體。
外部查詢解析器 (例如 Discovery Proxy) 應呼叫這個函式,來通知已訂閱的服務或服務執行個體的 OpenThread 核心。
| 詳細說明 | |||||||
|---|---|---|---|---|---|---|---|
| 參數 |
|
||||||
otDnssdQuerySetCallbacks
void otDnssdQuerySetCallbacks( otInstance *aInstance, otDnssdQuerySubscribeCallback aSubscribe, otDnssdQueryUnsubscribeCallback aUnsubscribe, void *aContext )
設定 DNS-SD 伺服器查詢回呼。
DNS-SD 伺服器會呼叫 aSubscribe 以訂閱 DNS-SD 查詢,並在查詢解析或逾時時取消訂閱 aUnsubscribe。
| 詳細說明 | |||||||||
|---|---|---|---|---|---|---|---|---|---|
| 參數 |
|
||||||||
otDnssdUpstreamQueryIsEnabled
bool otDnssdUpstreamQueryIsEnabled( otInstance *aInstance )
傳回 DNSSD 伺服器是否會將 DNS 查詢轉送至平台 DNS 上游 API。
啟用 OPENTHREAD_CONFIG_DNS_UPSTREAM_QUERY_ENABLE 後即可使用,
| 詳細說明 | |||||
|---|---|---|---|---|---|
| 參數 |
|
||||
| 傳回值 |
|
||||
otDnssdUpstreamQuerySetEnabled
otDnssdUpstreamQuerySetEnabled
void otDnssdUpstreamQuerySetEnabled( otInstance *aInstance, bool aEnabled )
啟用或停用將 DNS 查詢轉送至平台 DNS 上游 API。
啟用 OPENTHREAD_CONFIG_DNS_UPSTREAM_QUERY_ENABLE 後即可使用,
| 詳細說明 | |||||
|---|---|---|---|---|---|
| 參數 |
|
||||
otPlatDnsStartUpstreamQuery
otPlatDnsCancelUpstreamQuery
otPlatDnsUpstreamQueryDone
資源
OpenThread API 參考資料主題源自原始碼,請前往 GitHub 取得。如要瞭解詳情或對說明文件做出貢獻,請參閱資源。