fuchsia.bluetooth.host

新增時間:下一頁

通訊協定

BondingDelegate

fuchsia.bluetooth.host/host.fidl 中定義的

RestoreBonds

將現有的綁定裝置還原至主機。系統會建立通過驗證的工作階段 日後透過所提供的繫結資料建立連線。

如果有 LE 傳輸的繫結資料可用,主機就會建立連線 (對等互連連結)。

如果「bonds」中有任何項目無法還原,會在以下日期傳回: errors。如果項目格式錯誤,或是已有格式錯誤的項目,就會發生這種情況。 我們從 Bot-host 的角度來辨識資訊如果 errors 清單為空白,表示所有鍵結已成功。 已還原。

要求

名稱類型
bonds vector<fuchsia.bluetooth.sys/BondingData>

回應

名稱類型
payload BondingDelegate_RestoreBonds_Result

WatchBonds

取得下一個繫結更新。要求會等候下一次更新。

要求

<空白>

回應

名稱類型
payload BondingDelegate_WatchBonds_Result

DiscoverySession

fuchsia.bluetooth.host/host.fidl 中定義的

代表已啟用探索功能的權杖通訊協定。

停止

在伺服器端關閉這個 DiscoverySession,結束探索作業 (如果這是上次開啟的時間) DiscoverySession。此類別可用來同步處理通訊協定兩端的閉包。 如果不需要同步處理,則可直接關閉 DiscoverySession 通訊協定 。

要求

<空白>

舉辦派對

fuchsia.bluetooth.host/host.fidl 中定義的

與藍牙主機裝置互動 (bt-host) 的介面

連線

與 ID 為 id 的對等互連建立 BR/EDR 和/或 LE 連線:

  • 如果已知對等點支援 BR/EDR 傳輸,則使用該邏輯連結 將為裝置建立傳輸層如果連線嘗試成功, 使用「RequestProfile()」註冊的本地服務只提供給同業使用 如果是透過同業探索的傳統服務,系統會向在地生活服務發送通知 以非同步方式載入物件

  • 如果已知該對等體支援 LE 傳輸,則使用該邏輯連結 將為裝置建立傳輸層如果連線嘗試成功, 本機資料庫中的 GATT 服務 (透過 RequestGattServer() 填入) 可與對等互連團隊分享同樣地,遠端 GATT 服務 gatt.Client 能力持有者和裝置驅動程式將可存取對等互連 ,可繫結至 bt-gatt-svc 類別的裝置。

程序結果會透過 status 傳達。如果遠端裝置 同時支援 BR/EDR 和 LE 傳輸,而且您無法同時建立連線 系統會傳回錯誤狀態,並且不會連接任何傳輸元件。

要求

名稱類型
id fuchsia.bluetooth/PeerId

回應

名稱類型
payload Host_Connect_Result

中斷連線

終止所有與 ID 為 id 的遠端對等連線的連線 (BR/EDR 或 LE)。

  • 要求 id 要中斷連線的對等點 ID。
  • 回應 status 如果 LE 或 BR/EDR 傳輸失敗,即包含錯誤。 兩個傳輸都成功中斷連線或 表示對等點已中斷連線

要求

名稱類型
id fuchsia.bluetooth/PeerId

回應

名稱類型
payload Host_Disconnect_Result

EnableBackgroundScan

啟用或停用被動 LE 背景掃描功能。啟用時,bt-host 裝置會在背景執行被動 LE 掃描 裝置未開啟探索工作階段,並接受來自下列來源的連線要求: 加深連結週邊裝置。

要求

名稱類型
enabled bool

EnablePrivacy

啟用或停用 LE 隱私權功能。啟用後,bt-host 裝置將使用 私人裝置位址。如果停用這項功能,公開身分位址 (這是預設值)。

要求

名稱類型
enabled bool

清除

從藍牙主機刪除對等點。如果對等點連線成功,就會中斷連線。 即使位址相同的裝置,device_id 也不會再參照任何同類應用程式 再次發現。

沒有由 device_id 識別的對等點之後,會傳回成功 (即使不存在) 已存在,如果無法使用 device_id 指定的對等點,就會失敗 已取消連線或刪除,但仍然存在。

要求

名稱類型
id fuchsia.bluetooth/PeerId

回應

名稱類型
payload Host_Forget_Result

配對

開始與提供的 idoptions 配對。如果沒有,則傳回錯誤 已連線至與 id 的對等互連,或是配對程序失敗。

如果 options 指定的安全性等級高於目前的配對連線,此方法 嘗試提高安全等級否則,這個方法不會生效,且會傳回 成效。

注意:此舉可用於滿足需要配對程序的測試情況 啟動,而不需依賴服務存取權。在正常操作的情況下,藍牙安全性 會在服務存取期間強制執行

要求

名稱類型
id fuchsia.bluetooth/PeerId
options fuchsia.bluetooth.sys/PairingOptions

回應

名稱類型
payload Host_Pair_Result

RequestProtocol

執行指定的通訊協定要求。bt-host 會開始處理 FIDL 郵件。如果 要求無法完成,則 bt-host 裝置會關閉指定管道的結尾。

要求

名稱類型
payload ProtocolRequest

SetBondingDelegate

設定 BondingDelegate 通訊協定,以便接收待建立的新鍵和已解除的鍵結通知 容器如果已設定委派代表,新的delegate將以此關閉 ALREADY_BOUND

要求

名稱類型
delegate server_end<BondingDelegate>

SetBrEdrSecurityMode

設定主機的 GAP BR/EDR 安全模式。bt-host 僅支援已加密的 以連線為基礎的安全模式,例如模式 4 和僅限安全連線模式。如果 安全模式會設為「僅限安全連線」, 不符合「僅限安全連線」模式的安全性需求條件。

要求

名稱類型
bredr_security_mode fuchsia.bluetooth.sys/BrEdrSecurityMode

SetConnectable

設定是否應連上這個主機。

要求

名稱類型
enabled bool

回應

名稱類型
payload Host_SetConnectable_Result

SetDeviceClass

設定此主機裝置的裝置類別。

要求

名稱類型
device_class fuchsia.bluetooth/DeviceClass

回應

名稱類型
payload Host_SetDeviceClass_Result

SetDiscoverable

設定是否要偵測這個主機。

要求

名稱類型
enabled bool

回應

名稱類型
payload Host_SetDiscoverable_Result

SetLeSecurityMode

設定主機的 GAP LE 安全模式。bt-host 僅支援加密的加密連線 安全模式 (即模式 1 和僅限安全連線模式)。如果已設定安全模式 僅限安全連線,任何未通過安全連線的現有加密連線 系統將中斷「僅限安全連線」模式的安全性要求。

要求

名稱類型
le_security_mode fuchsia.bluetooth.sys/LeSecurityMode

SetLocalData

將本機資料指派給這個主機。

要求

名稱類型
payload fuchsia.bluetooth.sys/HostData

SetLocalName

設定這個主機裝置的本機名稱。

要求

名稱類型
local_name fuchsia.bluetooth/DeviceName

回應

名稱類型
payload Host_SetLocalName_Result

SetPairingDelegate

使用指定的 I/O 功能。呼叫這個方法會取消任何已開始的配對程序 也就是先前的委派代表如未指定 PairingDelegate,則系統會拒絕配對要求 。

要求

名稱類型
input fuchsia.bluetooth.sys/InputCapability
output fuchsia.bluetooth.sys/OutputCapability
delegate fuchsia.bluetooth.sys/PairingDelegate

SetPeerWatcher

設定 PeerWatcher 通訊協定,用於接收同類應用程式變更的通知。 一次只能設定 1 個 PeerWatcher。

要求

名稱類型
peer_watcher server_end<PeerWatcher>

關機

關閉主機,結束所有啟用中的藍牙程序:

  • 與這個主機相關聯的所有 FIDL 介面控制代碼都已關閉,且全部關閉 透過 FIDL 用戶端啟動的連線會中斷。
  • 所有掃描、探索和廣告程序都會停止,
  • 系統會清除綁定裝置,並從自動連線清單中移除。
  • 自動連線的周邊裝置已中斷連線,

這麼做可有效將主機重設為初始狀態,而主機會保留 來處理日後的要求

主機將繼續傳送 OnDeviceUpdated 事件,以完成程序 已經終止。

關機完畢後,主機通訊協定就會關閉。

要求

<空白>

StartDiscovery

啟動 BR/EDR 和 LE 裝置的一般探索程序。成功時,發現 對等互連可以使用 fuchsia.bluetooth.host/Host.WatchPeers 方法監控。發生錯誤時: 系統會從 token 傳回 Epitaph 服務。如果裝置不支援 BR/EDR,只能使用 LE 探索和探索

使用 LE 傳輸時,系統只會回報一般可供偵測和可連線的周邊裝置。

探索功能會持續執行,直到所有探索工作階段都關閉為止。

  • 要求 token 只要處於開放狀態的 DiscoverySession 通訊協定, 建議啟用探索功能。如果沒有其他工作階段,關閉後就會停止探索 已開啟。

要求

名稱類型
payload HostStartDiscoveryRequest

WatchState

傳回由這個主機管理的藍牙主機子系統和控制器相關資訊 執行個體。如果上次呼叫此方法後狀態沒有變化,則 因此回應將會延後,直到出現變更為止。

傳回的 info 結構將填入 bt 主機的目前狀態 裝置。但系統一律不會填入 active 參數。這是管理的欄位 也就是從較高層級著手

要求

<空白>

回應

名稱類型
payload Host_WatchState_Result

PeerWatcher

fuchsia.bluetooth.host/host.fidl 中定義的

GetNext

取得下一個同類應用程式的最新資訊。要求會等候下一次更新。

要求

<空白>

回應

名稱類型
payload PeerWatcher_GetNext_Result

接收器

fuchsia.bluetooth.host/host.fidl 中定義的

接收依通訊協定發出的 BIT 主機,用於藍牙主機子系統

AddHost

新增 bt-host。如果無法處理 request,請將其關閉。

要求

名稱類型
request Host

結構

BondingDelegate_RestoreBonds_Response

fuchsia.bluetooth.host/host.fidl 中定義的

欄位類型說明預設
errors vector<fuchsia.bluetooth.sys/BondingData> 無預設

Host_Connect_Response

fuchsia.bluetooth.host/host.fidl 中定義的

<空白>

Host_Disconnect_Response

fuchsia.bluetooth.host/host.fidl 中定義的

<空白>

Host_Forget_Response

fuchsia.bluetooth.host/host.fidl 中定義的

<空白>

Host_Pair_Response

fuchsia.bluetooth.host/host.fidl 中定義的

<空白>

Host_SetConnectable_Response

fuchsia.bluetooth.host/host.fidl 中定義的

<空白>

Host_SetDeviceClass_Response

fuchsia.bluetooth.host/host.fidl 中定義的

<空白>

Host_SetDiscoverable_Response

fuchsia.bluetooth.host/host.fidl 中定義的

<空白>

Host_SetLocalName_Response

fuchsia.bluetooth.host/host.fidl 中定義的

<空白>

Host_WatchState_Response

fuchsia.bluetooth.host/host.fidl 中定義的

欄位類型說明預設
info fuchsia.bluetooth.sys/HostInfo 無預設

資料表

HostStartDiscoveryRequest 資源

fuchsia.bluetooth.host/host.fidl 中定義的

Ordinal欄位類型說明
token server_end<DiscoverySession>

必填。

聯合國

BondingDelegate_RestoreBonds_Result 嚴格

fuchsia.bluetooth.host/host.fidl 中定義的

OrdinalVariant類型說明
response BondingDelegate_RestoreBonds_Response
framework_err internal

BondingDelegate_WatchBonds_Response 彈性

fuchsia.bluetooth.host/host.fidl 中定義的

OrdinalVariant類型說明
updated fuchsia.bluetooth.sys/BondingData

在對等互連資料的繫結資料新增/更新時接收通知。

removed fuchsia.bluetooth/PeerId

當驗證失敗而遭移除時,系統會發出通知。

BondingDelegate_WatchBonds_Result 嚴格

fuchsia.bluetooth.host/host.fidl 中定義的

OrdinalVariant類型說明
response BondingDelegate_WatchBonds_Response
framework_err internal

Host_Connect_Result 嚴格

fuchsia.bluetooth.host/host.fidl 中定義的

OrdinalVariant類型說明
response Host_Connect_Response
err fuchsia.bluetooth.sys/Error
framework_err internal

Host_中斷連線_Result 嚴格

fuchsia.bluetooth.host/host.fidl 中定義的

OrdinalVariant類型說明
response Host_Disconnect_Response
err fuchsia.bluetooth.sys/Error
framework_err internal

Host_Forget_Result 嚴格

fuchsia.bluetooth.host/host.fidl 中定義的

OrdinalVariant類型說明
response Host_Forget_Response
err fuchsia.bluetooth.sys/Error
framework_err internal

Host_Pair_Result 嚴格

fuchsia.bluetooth.host/host.fidl 中定義的

OrdinalVariant類型說明
response Host_Pair_Response
err fuchsia.bluetooth.sys/Error
framework_err internal

Host_SetConnectable_Result 嚴格

fuchsia.bluetooth.host/host.fidl 中定義的

OrdinalVariant類型說明
response Host_SetConnectable_Response
err fuchsia.bluetooth.sys/Error
framework_err internal

Host_SetDeviceClass_Result 嚴格

fuchsia.bluetooth.host/host.fidl 中定義的

OrdinalVariant類型說明
response Host_SetDeviceClass_Response
err fuchsia.bluetooth.sys/Error
framework_err internal

Host_SetDiscoverable_Result 嚴格

fuchsia.bluetooth.host/host.fidl 中定義的

OrdinalVariant類型說明
response Host_SetDiscoverable_Response
err fuchsia.bluetooth.sys/Error
framework_err internal

Host_SetLocalName_Result 嚴格

fuchsia.bluetooth.host/host.fidl 中定義的

OrdinalVariant類型說明
response Host_SetLocalName_Response
err fuchsia.bluetooth.sys/Error
framework_err internal

Host_WatchState_Result 嚴格

fuchsia.bluetooth.host/host.fidl 中定義的

OrdinalVariant類型說明
response Host_WatchState_Response
framework_err internal

PeerWatcher_GetNext_Response 彈性

fuchsia.bluetooth.host/host.fidl 中定義的

OrdinalVariant類型說明
updated vector<fuchsia.bluetooth.sys/Peer>

隨著在探索、連線期間取得新資訊,系統會新增和更新同業資料 建立和繫結程序。

removed vector<fuchsia.bluetooth/PeerId>

同類應用程式的移除方式為: a.明確透過 fuchsia.bluetooth.host.Host/Forget,或 b.bt-host 最近沒有偵測到同類應用程式,且對等互連尚未建立聯繫或沒有關係

PeerWatcher_GetNext_Result 嚴格

fuchsia.bluetooth.host/host.fidl 中定義的

OrdinalVariant類型說明
response PeerWatcher_GetNext_Response
framework_err internal

ProtocolRequest 彈性 資源

fuchsia.bluetooth.host/host.fidl 中定義的

OrdinalVariant類型說明
central server_end<fuchsia.bluetooth.le/Central>
peripheral server_end<fuchsia.bluetooth.le/Peripheral>
gatt_server server_end<fuchsia.bluetooth.gatt/Server>
gatt2_server server_end<fuchsia.bluetooth.gatt2/Server>
profile server_end<fuchsia.bluetooth.bredr/Profile>