fuchsia.bluetooth.le

新增:7

通訊協定

AdvertisedPeripheral

定義於 fuchsia.bluetooth.le/peripheral.fidl

適用於廣告期間有效的通訊協定。來電者可以關閉 以便停止刊登廣告如果系統內部停止刊登廣告 通訊協定將關閉,以便與 用戶端。

OnConnected

遠端 LE 中心連線至這個週邊裝置時呼叫 可連線廣告是透過 fuchsia.bluetooth.le/Peripheral.Advertise.通話開始時 系統已暫停放送廣告,直到系統暫停為止 就會收到回應

傳回的 fuchsia.bluetooth.le/Connection 通訊協定可用於 可與對等互連應用程式互動這也代表了周邊裝置在 用戶端可以捨棄通訊協定,以要求 同樣地,系統會關閉通訊協定 表示對等點連線已中斷。

  • 要求 peer 啟動 以獲得最佳效能和最安全的連線
  • 要求 connection 代表連線。
  • 則應傳送空白回應來確認 連線並繼續放送廣告 (用於流量控制)。

要求

名稱類型
peer Peer
connection Connection

回應

<空白>

AdvertisingHandle

定義於 fuchsia.bluetooth.le/peripheral.fidl

適用於廣告期間的有效功能。呼叫端可關閉控制代碼, 停止刊登廣告。若系統基於任何原因在內部停止刊登廣告,帳號代碼會是 向客戶說明這項功能

中部

定義於 fuchsia.bluetooth.le/central.fidl

連線

使用指定 ID 連線至對等互連。

要求的 fuchsia.bluetooth.le/Connection 代表 客戶對 LE 與對等點的連線感興趣。關閉管道 移除興趣,但若其他用戶端則不會導致影片中斷 具備同一對等點的有效 fuchsia.bluetooth.le/Connection

fuchsia.bluetooth.le/Connection handle 將關閉 系統傳送回應。

伺服器可能會在發生錯誤時傳送下列組別:

  • INVALID_ARGS:部分參數無效。

  • ALREADY_BOUND:這個中心已有對等點連線。現有 應使用連線。

  • NOT_CONNECTED:無法建立連線。

  • CONNECTION_RESET:對等點已中斷連線。

  • 要求要建立連線的對等點 ID 為 id

  • 要求 options 用來設定連線的選項。

  • 要求 handle 在這個期間內仍有效的控制代碼 以獲得最佳效能和最安全的連線

新增時間:HEAD

要求

名稱類型
id fuchsia.bluetooth/PeerId
options ConnectionOptions
handle server_end<Connection>

ConnectPeripheral

使用指定 ID 建立連至週邊裝置的連線。 傳回 status 中的作業狀態。

成功之後,gatt_client 就會繫結,且可用於 GATT 用戶端 角色程序。失敗時,「gatt_client」將關閉,status 會 則表示錯誤。

已淘汰 - 請改用連線

要求

名稱類型
identifier fuchsia.bluetooth/PeerIdString
options ConnectionOptions
gatt_client server_end<fuchsia.bluetooth.gatt/Client>

回應

名稱類型
status fuchsia.bluetooth/Status

DisconnectPeripheral

中斷這個中央中心與指定 ID 週邊裝置的連線。

已淘汰

要求

名稱類型
identifier fuchsia.bluetooth/PeerIdString

回應

名稱類型
status fuchsia.bluetooth/Status

GetPeripheral

Fchsia 核心堆疊並未實作這個方法(https://fxbug.dev/42087303)

傳回系統從先前掃描到已知單一週邊裝置的相關資訊。 擷取及/或繫結程序。如果 無法辨識 identifier

已淘汰

要求

名稱類型
identifier fuchsia.bluetooth/PeerIdString

回應

名稱類型
peripheral RemoteDevice?

GetPeripherals

傳回系統從先前的掃描作業、連線、 和/或綁定程序系統可以根據服務的 UUID 來篩選結果 都可能有關聯

這個方法只會傳回週邊裝置 (例如可連線的裝置),

已淘汰

要求

名稱類型
service_uuids vector<string>?

回應

名稱類型
peripherals vector<RemoteDevice>

ListenL2cap

為傳入的頻道註冊事件監聽器。登錄檔會指派 本機裝置專屬的 PSM 值,以及開啟 ChannelListener,用於接受傳入的頻道。極低 未指派所有 PSM,此呼叫就會失敗,並顯示 ZX_ERR_NO_RESOURCES

請注意,探索或廣告服務的方式 因此呼叫端應負責 將指派的 PSM 傳達給任何用戶端。

要求

名稱類型
payload ChannelListenerRegistryListenL2capRequest

回應

名稱類型
payload ChannelListenerRegistry_ListenL2cap_Result

OnDeviceDiscovered

對在掃描工作階段中發現的每個週邊裝置/廣播器呼叫。rssi 包含產生此事件的廣告封包所接收的信號強度 (如果 廣告。

已淘汰

回應

名稱類型
device RemoteDevice

OnPeripheralDisconnected

在這個中心連線至具有指定 ID 的周邊裝置時呼叫。

已淘汰

回應

名稱類型
identifier fuchsia.bluetooth/PeerIdString

OnScanStateChanged

在掃描狀態變更時呼叫,例如:當掃描工作階段因呼叫 Central.StopScan() 或其他非預期的條件。

已淘汰

回應

名稱類型
scanning bool

掃描

掃描附近的 LE 週邊裝置和電視台。如果無法掃描 開始後,「result_watcher」將以一組憑證關閉。

中央用戶端一次只能執行一項掃描作業。 因此,一次只能處理一項掃描要求。 無法再對掃描進行呼叫。

掃描工作階段的生命週期會與 result_watcher 相連結 提供的通訊協定如果管道已關閉,掃描作業就會停止。

掃描開始後,fuchsia.bluetooth.le/ScanResultWatcher 可用於監看掃描結果

  • 要求 options 用於設定掃描工作階段的選項。
  • 要求 result_watcher 效期內仍然有效的通訊協定 。
  • 系統會傳送空白回應,用來確認掃描作業 已停止。

伺服器可能會在發生錯誤時傳送下列組別:

  • 錯誤 ALREADY_EXISTS:掃描作業正在進行中。每Central 通訊協定僅允許 1 項有效掃描作業。
  • 錯誤 INVALID_ARGS:部分掃描作業 options 無效。詳情請參閱 ScanOptions 說明文件。
  • 錯誤 INTERNAL:發生內部錯誤,因此無法掃描 已開始。

要求

名稱類型
options ScanOptions
result_watcher server_end<ScanResultWatcher>

回應

<空白>

StartScan

啟動鄰近週邊裝置和電視台的掃描工作階段。偵測到的裝置會是 回報時是透過 CentralDelegate.OnDeviceDiscovered() 回報。如果掃描工作階段正在進行中, 「filter」將取代現有工作階段的篩選器。

如果 filter 為空值或空白 (也就是沒有任何未填入的欄位),代表委派代表 則在找到所有可探索裝置時會收到通知。我們不建議這麼做;客戶 通常應使用至少一項 filter.service_uuids 篩選結果。 filter.service_data 和/或 filter.manufacturer_identifier

已淘汰 - 請改用掃描功能

要求

名稱類型
filter ScanFilter?

回應

名稱類型
status fuchsia.bluetooth/Status

StopScan

終止先前啟動的掃描工作階段。

已淘汰

要求

<空白>

ChannelListener

定義於 fuchsia.bluetooth.le/l2cap.fidl

代表接受傳入管道要求的服務或通訊協定。 系統會透過這個方式連結相關聯 PSM 的連入管道要求 因此效能相當卓越如果關閉這項通訊協定,系統也會停止接收任何收到的資料 管道要求,但既有頻道則不受影響。 此外,這項通訊協定關閉後, 重複使用先前為這個執行個體指派的 PSM

新增時間:HEAD

接受

要求

名稱類型
channel fuchsia.bluetooth/Channel

回應

名稱類型
payload ChannelListener_Accept_Result

ChannelListenerRegistry

定義於 fuchsia.bluetooth.le/l2cap.fidl

代表在以下項目中註冊及接受傳入連線的能力 互動導向管道。

新增時間:HEAD

ListenL2cap

為傳入的頻道註冊事件監聽器。登錄檔會指派 本機裝置專屬的 PSM 值,以及開啟 ChannelListener,用於接受傳入的頻道。極低 未指派所有 PSM,此呼叫就會失敗,並顯示 ZX_ERR_NO_RESOURCES

請注意,探索或廣告服務的方式 因此呼叫端應負責 將指派的 PSM 傳達給任何用戶端。

要求

名稱類型
payload ChannelListenerRegistryListenL2capRequest

回應

名稱類型
payload ChannelListenerRegistry_ListenL2cap_Result

CodecDelay

定義於 fuchsia.bluetooth.le/codec_delay.fidl

此通訊協定允許我們擷取控制器本機延遲值。這不應是為了 ,由需要存取這類資訊的通訊協定組成。

新增時間:HEAD

GetCodecLocalDelayRange

針對提供的串流指定的轉碼器擷取控制器延遲的範圍 屬性。

成功後,系統會傳回允許的最短和最長延遲時間。

如果無法讀取延遲,則傳回 ZX_ERR_NOT_SUPPORTED。 如果發生其他失敗情形,則傳回 ZX_ERR_INTERNAL。

要求

名稱類型
payload CodecDelayGetCodecLocalDelayRangeRequest

回應

名稱類型
payload CodecDelay_GetCodecLocalDelayRange_Result

連線

定義於 fuchsia.bluetooth.le/peer.fidl

代表對等點連線的通訊協定。這個 ID 可用於與 GATT 互動 以及建立 L2CAP 頻道

這項能力的生命週期會與其所代表的 LE 連線相關。為 如果沒有其他用戶端與同一個對等點連線,就會發生管道中斷的情況。

AcceptCis

日後接受對等點具有指定 CIG/CIS 值的 CIS 要求。所有語言 系統會拒絕未明確允許的 CIS 要求。

提供的 IsochronousStream 將用於日後的已知通知 連線狀態。

主機可以同時等待多個連入連線, 必須具備這個連線專屬的 CIG/CIS 值組合。

如未在這項連線中處理週邊裝置,Connection_stream 將會結束,並加上 ZX_ERR_NOT_SUPPORTED 憑證。

如果我們正在等待與相同 CIG/CIS 組合的其他連線 值,Connection_stream 將以 ZX_ERR_INVALID_ARGS epitaph 關閉。

新增時間:HEAD

要求

名稱類型
payload ConnectionAcceptCisRequest

ConnectL2cap

連線至 L2CAP LE 連線導向管道。

新增時間:HEAD

要求

名稱類型
payload ConnectionConnectL2capRequest

GetCodecLocalDelayRange

針對提供的串流指定的轉碼器擷取控制器延遲的範圍 屬性。

成功後,系統會傳回允許的最短和最長延遲時間。

如果無法讀取延遲,則傳回 ZX_ERR_NOT_SUPPORTED。 如果發生其他失敗情形,則傳回 ZX_ERR_INTERNAL。

要求

名稱類型
payload CodecDelayGetCodecLocalDelayRangeRequest

回應

名稱類型
payload CodecDelay_GetCodecLocalDelayRange_Result

RequestGattClient

伺服器可能會在發生錯誤時傳送下列組別:

  • ZX_ERR_ALREADY_BOUND:已繫結至這個連線的用戶端伺服器 因此效能相當卓越應使用現有的用戶端。
新增時間:HEAD

要求

名稱類型
client server_end<fuchsia.bluetooth.gatt2/Client>

IsochronousStream

定義於 fuchsia.bluetooth.le/iso.fidl

新增時間:HEAD

OnEstablished

在 CIS 成立時通知客戶,由中央人員啟動 (來自 CigServer::CreateCis()) 或 Peripheral (來自 CisRequestManager::Accept())。

回應

名稱類型
payload IsochronousStreamOnEstablishedRequest

已讀

從輸出 (控制器 => 主機) 接收已建立的 ISO 串流 設定。需搭配懸掛式取得圖案使用。

可在建立並設定 ISO 資料串流前叫用,但無法叫用 直到設定完成並接收資料為止。

要求

<空白>

回應

名稱類型
payload IsochronousStream_Read_Result

SetupDataPath

使用指定的參數建立偶數資料路徑。僅限頻內 (HCI) ISO 目前支援傳輸功能。

如果已為此建立 ISO 串流,則傳回 ZX_ERR_ALREADY_EXISTS 往上移動即可

如果在 CIS 要求之前已在周邊裝置上發出,會傳回 ZX_ERR_BAD_STATE 接受。

如果轉碼器引數無效或位於 控制器支援的範圍

要求

名稱類型
payload IsochronousStreamSetupDataPathRequest

回應

名稱類型
payload IsochronousStream_SetupDataPath_Result

周邊裝置

定義於 fuchsia.bluetooth.le/peripheral.fidl

刊登廣告

以 LE 週邊裝置持續放送廣告。如果廣告無法 啟動之後,「advertised_peripheral」將會關閉,並出現錯誤 。

此方法呼叫的次數沒有限制。如何重新設定 請先關閉原始廣告再啟動 則會傳回空的回應。

如果客戶關閉 fuchsia.bluetooth.le/AdvertisedPeripheral 管道, 廣告也會停止如果帳號代碼在要求前就關閉 廣告放送時,廣告可能會短暫啟用再放送 已經終止。通告的周邊裝置生命週期受限於 週邊裝置通訊協定,但日後可能會有變動 (https://fxbug.dev/42157682).

  • 要求 parameters 設定廣告時使用的參數 執行個體。
  • 要求 advertised_peripheral 通訊協定 保持不變
  • 回應:廣告會在廣播時傳送空白的回應 已成功停止 (由於「advertised_peripheral」已釋出) 通訊協定)。避免重複放送類似的廣告和暫時性廣告 錯誤的廣告資源有限,請等待 建議在再次呼叫 Advertise 前完成。
  • 如果發生錯誤,advertised_peripheral 將會關閉,並 即將退回 PeripheralError

要求

名稱類型
parameters AdvertisingParameters
advertised_peripheral AdvertisedPeripheral

回應

名稱類型
payload Peripheral_Advertise_Result

ListenL2cap

為傳入的頻道註冊事件監聽器。登錄檔會指派 本機裝置專屬的 PSM 值,以及開啟 ChannelListener,用於接受傳入的頻道。極低 未指派所有 PSM,此呼叫就會失敗,並顯示 ZX_ERR_NO_RESOURCES

請注意,探索或廣告服務的方式 因此呼叫端應負責 將指派的 PSM 傳達給任何用戶端。

要求

名稱類型
payload ChannelListenerRegistryListenL2capRequest

回應

名稱類型
payload ChannelListenerRegistry_ListenL2cap_Result

OnPeerConnected

在遠端 LE 中心啟動與這個週邊裝置的連線時傳送的事件 可連線廣告是透過 fuchsia.bluetooth.le/Peripheral.StartAdvertising.

傳回的 fuchsia.bluetooth.le/Connection 處理常式可用於與 。這也代表週邊裝置透過連線的擁有權:用戶端可以捨棄 來要求中斷連線的控制代碼。同樣地,系統會關閉帳號代碼, 表示對等點連線已中斷。

  • 要求 peer 啟動連線的核心相關資訊。
  • 要求 connection 代表連線。

已淘汰 - 請改用 PromodPeripheral.OnConnected

回應

名稱類型
peer Peer
connection Connection

StartAdvertising

以 LE 週邊裝置形式開始放送廣告。送出空白回應,表示廣告需要放送 。如果無法啟動廣告,則回應會 包含 fuchsia.bluetooth.le/PeripheralError

此方法可能會呼叫任意次數,並能對後續呼叫發出呼叫 重新設定廣告參數。但僅限最近 fuchsia.bluetooth.le/AdvertisingHandle 仍有效。

fuchsia.bluetooth.le/Peripheral 只有在以下位置才能有一個有效廣告: 時間。用戶端必須同時取得多個週邊裝置的執行個體 廣告。

如果客戶關閉 fuchsia.bluetooth.le/AdvertisingHandle 管道結束: 廣告也會停止如果帳號代碼在要求完成前關閉, 並在實際終止前短暫啟用。

  • 要求 parameters 參數,用來設定廣告執行個體。
  • 要求 handle 控制代碼在此廣告工作階段期間仍然有效。

已淘汰

要求

名稱類型
parameters AdvertisingParameters
handle server_end<AdvertisingHandle>

回應

名稱類型
payload Peripheral_StartAdvertising_Result

ScanResultWatcher

定義於 fuchsia.bluetooth.le/central.fidl

代表執行中的掃描程序。這個通訊協定在 也可用於取得掃描結果客戶可以 關閉通訊協定即可停止掃描。如果系統停止掃描, 系統將結束通訊協定 (加上 Epitaph CANCELED),以便通訊對象 用戶端。

觀看

傳回所有符合篩選條件的 LE 對等體清單 ScanOptions。第一個回應會傳回找到相符的結果 在整個同業中只有在同儕的情況下,後續通話才會收到回覆 未掃描或更新。如果第二次呼叫 有一通待回覆的通話正在等候期間,因此系統誤傳送 Watch 系統將取消通訊協定並關閉通訊協定。

  • 回應 updated 自上次新增或更新的同類應用程式 呼叫 Watch()。

要求

<空白>

回應

名稱類型
updated vector<Peer>

結構

AdvertisingDataDeprecated

定義於 fuchsia.bluetooth.le/types_deprecated.fidl

代表由廣播業者或週邊裝置宣傳的廣告和掃描回應資料。

已淘汰 - 請改用 AdvertisingData

欄位類型說明預設
name fuchsia.bluetooth/DeviceName

裝置名稱。

無預設
tx_power_level fuchsia.bluetooth/Int8?

廣告中回報的無線電傳輸功率,

無預設
appearance fuchsia.bluetooth/UInt16?

廣告中回報的外觀。

無預設
service_uuids vector<string>?

廣告中回報的服務 UUID 清單。

無預設
service_data vector<ServiceDataEntry>?

廣告中包含的服務資料。

無預設
manufacturer_specific_data vector<ManufacturerSpecificDataEntry>?

製造商專屬資料項目。

無預設
solicited_service_uuids vector<string>?

廣告中取得的服務 UUID。週邊裝置可邀請中央區域 公開某些服務,以便透過服務招攬來連線至這些服務。

無預設
uris vector<string>?

廣告封包中包含的 URI。 這些是完整的 URI (會自動編碼/解碼)

無預設

ChannelListener_Accept_Response

定義於 fuchsia.bluetooth.le/l2cap.fidl

<空白>

IsochronousStream_SetupDataPath_Response

定義於 fuchsia.bluetooth.le/iso.fidl

<空白>

ManufacturerData

定義於 fuchsia.bluetooth.le/advertising_data.fidl

fuchsia.bluetooth.le/AdvertisingDatamanufacturer_data 欄位。

欄位類型說明預設
company_id uint16 無預設
data vector<uint8>[252] 無預設

ManufacturerSpecificDataEntry

定義於 fuchsia.bluetooth.le/types_deprecated.fidl

已淘汰 - 請改用 ManufacturerData

欄位類型說明預設
company_id uint16 無預設
data vector<uint8> 無預設

Peripheral_Advertise_Response

定義於 fuchsia.bluetooth.le/peripheral.fidl

<空白>

Peripheral_StartAdvertising_Response

定義於 fuchsia.bluetooth.le/peripheral.fidl

<空白>

RemoteDevice

定義於 fuchsia.bluetooth.le/types_deprecated.fidl

代表遠端藍牙低功耗裝置。遠端裝置可以代表中央 廣播器或週邊裝置 (視接收來源的 API 而定)。

已淘汰 - 請改用對等點

欄位類型說明預設
identifier fuchsia.bluetooth/PeerIdString

可在目前系統中識別這部裝置的專屬 ID。

無預設
connectable bool

是否可連接這部裝置。無法連線的裝置通常是在 LE 廣播員角色。

無預設
rssi fuchsia.bluetooth/Int8?

本裝置最近一次已知的 RSSI (如果已知)。

無預設
advertising_data AdvertisingDataDeprecated?

如果這部裝置是廣播器或週邊裝置,此裝置會廣播廣告資料。

無預設

ScanFilter

定義於 fuchsia.bluetooth.le/types_deprecated.fidl

篩選掃描時使用的參數。系統會回報找到的周邊裝置或電視台 應用程式只有在符合所有提供的篩選器參數的情況下才會執行。空值欄位將 已忽略。

已淘汰 - 請改用篩選器

欄位類型說明預設
service_uuids vector<string>?

依據通告的服務 UUID 篩選。宣傳以下至少一種產品的周邊裝置: 「service_uuids」中的項目將符合這個篩選條件。

無預設
service_data_uuids vector<string>?

依據含有其中一個指定 UUID 的服務資料篩選。

無預設
manufacturer_identifier fuchsia.bluetooth/UInt16?

根據製造商資料中呈現的公司 ID 進行篩選。如果這個篩選器參數 設定後,廣告酬載必須包含製造商特定資料,以及提供的 來滿足這個篩選器的需求

無預設
connectable fuchsia.bluetooth/Bool?

依據裝置是否可連線進行篩選。舉例來說,如果用戶端 連線至週邊裝置,即可將此設定設為 true。同樣地,用戶端可以 將此項目設為 false,即可只掃描棕色片。

無預設
name_substring fuchsia.bluetooth/DeviceName

根據部分宣傳裝置名稱篩選結果。

無預設
max_path_loss fuchsia.bluetooth/Int8?

根據無線電波的路徑損失篩選結果。符合這項篩選條件的裝置就必須 滿足以下條件:

  1. 該路徑必須有適用的無線電傳輸功率,並且接收到訊號強度 損失計算;
  2. 計算的路徑損失值必須小於或等於 max_path_loss
無預設

ServiceData

定義於 fuchsia.bluetooth.le/advertising_data.fidl

fuchsia.bluetooth.le/AdvertisingDataservice_data 欄位。

欄位類型說明預設
uuid fuchsia.bluetooth/Uuid 無預設
data vector<uint8>[252] 無預設

ServiceDataEntry

定義於 fuchsia.bluetooth.le/types_deprecated.fidl

已淘汰 - 請改用 ServiceData

欄位類型說明預設
uuid fuchsia.bluetooth/UuidString 無預設
data vector<uint8> 無預設

ENUMS

AdvertisingModeHint 嚴格

類型:uint8

定義於 fuchsia.bluetooth.le/peripheral.fidl

用戶端可以指定模式,藉此指出廣告封包的傳輸速率。 模式以廣告間隔設定控制器時, 視窗參數。

模式會影響掃描器或中央裝置發現週邊裝置的速度;但是 可能會對耗電量產生不利影響。在此情況下,系統會根據客戶的 但不保證會如此。

名稱說明
1

廣告的時間間隔和時間非常短,觀眾可以快速瀏覽廣告,但是費用會較高, 比較耗電這相當於 100 萬個 PHY 的 30 到 60 毫秒,而 編碼為 PHY。

2

廣告會以短時間間隔和時段用電比 VERY_FAST 低。 這相當於編碼的 PHY 間隔 100 到 150 毫秒,在編碼的 PHY 上則介於 300 到 450 毫秒。

3

以中等間隔和期間的廣告進行宣傳。這相當於 100 萬個 PHY 和 3 的 1 至 1.2 秒 程式碼。

CentralError 嚴格

類型:uint32

定義於 fuchsia.bluetooth.le/central.fidl

名稱說明
1

已中止要求。

2

這項要求已在處理中。

3

提供的參數無效。

4

由於硬體或系統發生錯誤,因此無法開始放送廣告。

IsoPacketStatusFlag 嚴格

類型:uint8

定義於 fuchsia.bluetooth.le/iso.fidl

此標記用於表示從異質管道接收到的資料是否有效。

新增時間:HEAD

名稱說明
0

有效的資料。已正確接收完整的 SDU。

1

資料可能無效,收到的一或多個片段可能含有錯誤或部分內容 缺少封包

2

未正確接收部分封包。

PeripheralError strict

類型:uint32

定義於 fuchsia.bluetooth.le/peripheral.fidl

名稱說明
1

目前的硬體不支援要求的作業或參數。

2

提供的廣告資料超過編碼時的長度上限。

3

提供的掃描回應資料超過編碼時允許的長度上限。

4

要求的參數無效。

5

開始放送廣告的要求已取消,例如透過 參數。

6

由於硬體或系統發生錯誤,因此無法開始放送廣告。

資料表

AcceptedChannelParameters

定義於 fuchsia.bluetooth.le/l2cap.fidl

監聽新管道時接受管道的參數組合 連線狀態。

請參閱 ChannelListenerRegistry/ListenL2cap

新增時間:HEAD

Ordinal欄位類型說明
accepted_channel_modes vector<fuchsia.bluetooth/ChannelMode>

聆聽時應接受的所有管道模式。必須包含 或至少一個管道模式,否則呼叫就會失敗 ZX_ERR_INVALID_ARGS。 必填。

max_packet_size uint16

支援的接收封包大小上限。 選用。如未提供,尺寸取決於藍牙 有些人會將 Cloud Storage 視為檔案系統 但實際上不是系統不會針對所選大小提供任何保證。

AdvertisingData

定義於 fuchsia.bluetooth.le/advertising_data.fidl

代表由 LE 週邊裝置或設備傳輸的廣告和掃描回應資料 電視台。

Ordinal欄位類型說明
name fuchsia.bluetooth/DeviceName

裝置的全名或簡稱。

appearance fuchsia.bluetooth/Appearance

裝置的外觀。

tx_power_level int8

已淘汰 - 請改用 include_tx_power_level。系統會忽略這個值。

service_uuids vector<fuchsia.bluetooth/Uuid>

服務 UUID。

service_data vector<ServiceData>

服務資料項目。

manufacturer_data vector<ManufacturerData>

製造商專屬資料項目。

uris vector<string>

代表要宣傳的 URI 的字串,如 IETF STD 66 所定義。 每個項目都應為包含配置的 UTF-8 字串。詳情請參閱:

  • 關於允許計劃的組織,請參閱 https://www.iana.org/assignments/uri-schemes/uri-schemes.xhtml;
  • https://www.bluetooth.com/specifications/assigned-numbers/uri-scheme-name-string-mapping ,讓系統用於壓縮配置以節省酬載的空間。
include_tx_power_level bool

指出廣告資料是否應包含目前的 TX 功率。

AdvertisingParameters

定義於 fuchsia.bluetooth.le/peripheral.fidl

代表設定廣告的參數。

Ordinal欄位類型說明
data AdvertisingData

要在廣告封包的資料區段中編碼的欄位。

這是必填欄位。

scan_response AdvertisingData

要在掃描回應封包中傳送的欄位。用戶端可能會使用這組號碼 不符合廣告封包的平台上額外資料 支援廣告資料長度額外資訊

如果有,則會設為可掃描。

mode_hint AdvertisingModeHint

所需的廣告展示頻率。請參閱 fuchsia.bluetooth.le/AdvertisingModeHint。 如果沒有,預設為 fuchsia.bluetooth.le/AdvertisingModeHint.SLOW

connectable bool

如果此值為「true」,則控制器會播送可連結廣告 可讓遠端 LE 中央中心與週邊裝置建立連線。如果為 false 或其他 則無法連線。

已淘汰 :新程式碼應使用 connection_options 欄位。

connection_options ConnectionOptions

如果有,控制器會播送可連接的廣告 讓對等互連可以建立連至週邊裝置的連線。欄位 的 ConnectionOptions 將會設定任何 廣告。

advertising_procedure AdvertisingProcedure

指定要使用的廣告類型 (例如舊版、延伸等)。

如未指定,系統會預設為舊版廣告,以維持與 搭載藍牙 5.0 版之前的裝置。詳情請參閱 AdvertisingProcedure 的欄位說明 可能不準確或不適當

新增時間:HEAD

ChannelListenerRegistryListenL2capRequest 資源

定義於 fuchsia.bluetooth.le/l2cap.fidl

Ordinal欄位類型說明
parameters AcceptedChannelParameters

管道本地端的可用參數。

listener ChannelListener

要開啟的管道監聽器通訊協定。

ChannelListenerRegistry_ListenL2cap_Response

定義於 fuchsia.bluetooth.le/l2cap.fidl

Ordinal欄位類型說明
psm Psm

由登錄檔指派的 PSM。保證位於DYNAMIC 符合 PSM 值的範圍

CisEstablishedParameters

定義於 fuchsia.bluetooth.le/iso.fidl

已為單一 CIS 建立設定。

新增時間:HEAD

Ordinal欄位類型說明
cig_sync_delay zx/Duration

CIG 活動中所有 CIS 的 PDU 傳輸時間上限。 範圍介於 [234, 8388607] 微秒之間。

一律提供這個欄位。

cis_sync_delay zx/Duration

在 CIG 中,指定 CIS 的 PDU 傳輸時間上限 活動。範圍介於 [234, 8388607] 微秒之間。

一律提供這個欄位。

max_subevents uint8

每個 CIS 事件的子事件數量上限。

一律提供這個欄位。

iso_interval zx/Duration

連續兩個 CIS 錨點之間的時間,範圍 [5 毫秒,4 秒]

一律提供這個欄位。

central_to_peripheral_params CisUnidirectionalParams

中部適用的參數 =>週邊裝置傳輸資訊 (如適用)。

如果串流包含來自 週邊裝置中央。

peripheral_to_central_params CisUnidirectionalParams

週邊裝置的參數 =>中央傳輸資料 (如適用)。

如果串流包含來自 中央週邊裝置。

CisUnidirectionalParams

定義於 fuchsia.bluetooth.le/iso.fidl

與既定 CIS 中單一傳輸方向相關的參數。

新增時間:HEAD

Ordinal欄位類型說明
transport_latency zx/Duration

傳輸延遲時間,範圍 [234, 8388607] 微秒

一律提供這個欄位。

burst_number uint8

此方向的傳輸量。

一律提供這個欄位。

flush_timeout uint8

每個酬載的逾時時間 (以 ISO 間隔的倍數表示)。

一律提供這個欄位。

CodecDelayGetCodecLocalDelayRangeRequest

定義於 fuchsia.bluetooth.le/codec_delay.fidl

Ordinal欄位類型說明
logical_transport_type fuchsia.bluetooth/LogicalTransportType

使用的邏輯傳輸類型。Currenly 僅支援 LE 傳輸機制 (CIS 或 BIS)。必填。

data_direction fuchsia.bluetooth/DataDirection

用於表示資料流方向。必填。

codec_attributes fuchsia.bluetooth/CodecAttributes

用於無線傳輸的轉碼器。必填。

CodecDelay_GetCodecLocalDelayRange_Response

定義於 fuchsia.bluetooth.le/codec_delay.fidl

Ordinal欄位類型說明
min_controller_delay zx/Duration

指定設定的控制器延遲時間下限,範圍為 [0, 4] 秒。 成功時隨時提供。

max_controller_delay zx/Duration

指定設定的控制器延遲時間上限,範圍為 [0, 4] 秒。 成功時隨時提供。

ConnectionAcceptCisRequest 資源

定義於 fuchsia.bluetooth.le/peer.fidl

Ordinal欄位類型說明
cig_id uint8

包含所要求 CIS 的 CIG 的 ID。必填。

cis_id uint8

所請求 CIS 的 ID。必填。

connection_stream server_end<IsochronousStream>

建立串流後,伺服器會叫用 IsochronousStream::OnCisCreateed()。必填。

如果這個管道的用戶端關閉,相應 CIG/CIS 的要求 組合將會遭到拒絕,除非與 相同的 CIG/CIS 參數

ConnectionConnectL2capRequest 資源

定義於 fuchsia.bluetooth.le/peer.fidl

Ordinal欄位類型說明
parameters fuchsia.bluetooth/ChannelParameters

管道當地端的參數。

channel server_end<fuchsia.bluetooth/Channel>

要開啟的管道通訊協定。

psm Psm

遠端端要連線的 PSM。

ConnectionOptions

定義於 fuchsia.bluetooth.le/connection_options.fidl

代表由建立 FIDL 通訊協定,根據個別連線設定的參數 低功耗連線。

Ordinal欄位類型說明
bondable_mode bool

若為 true,連線會在可繫結模式下運作。這樣配對就會建立鍵結 如果對等點也處於可繫結模式,則可在連線中斷時持續保留。如果不是的話 連線模式就會預設為可連線模式如果為 false,則連線會在 可綁定模式,表示本機裝置僅允許未建立鍵結的配對。

service_filter fuchsia.bluetooth/Uuid

如果有,在連線之後執行的服務探索作業僅限於主要連線 符合這個欄位的服務否則根據預設,系統會探索所有可用的服務。

完整

定義於 fuchsia.bluetooth.le/peripheral.fidl

Ordinal欄位類型說明

篩選

定義於 fuchsia.bluetooth.le/central.fidl

篩選掃描時使用的參數。已找到的對等互連只會與 。

Ordinal欄位類型說明
service_uuid fuchsia.bluetooth/Uuid

依據通告的服務 UUID 篩選。

service_data_uuid fuchsia.bluetooth/Uuid

依據含有指定 UUID 的服務資料篩選。

manufacturer_id uint16

根據製造商提供的製造商 ID 篩選 資料。如果設定了這個篩選器參數,廣告酬載就必須 包含製造商專屬資料,以及提供的公司 ID 以配合這個篩選器如要查詢製造商 ID,請前往 https://www.bluetooth.com/specifications/assigned-numbers/company-identifiers/

connectable bool

依據裝置是否可連線進行篩選。舉例來說 只對可連線的周邊裝置有興趣的用戶端 設為 true 或 false。同樣地,用戶端只能透過下列方法掃描電視台: 設為 false

name fuchsia.bluetooth/DeviceName

根據宣傳裝置名稱的一部分篩選結果。 允許子字串比對。

max_path_loss int8

根據無線電波的路徑損失篩選結果。符合以下條件的裝置 符合此篩選器必須符合下列條件:

  1. 無線電傳輸功率級別和接收的訊號強度必須為 可供計算路徑損失
  2. 計算的路徑損失值必須小於或等於 max_path_loss

注意:這個欄位是根據 RSSI 和 TX 電源資訊計算而得 。 請勿將其與有效連線的資訊混淆 透過「Path Loss Reporting」取得而不是每個特徵的分數

IsochronousStreamOnEstablishedRequest

定義於 fuchsia.bluetooth.le/iso.fidl

Ordinal欄位類型說明
result zx/Status

ZX_ERR_INTERNAL 的結果表示控制器已收到要求 但無法建立串流。

established_params CisEstablishedParameters

如果成功建立串流,則一律顯示這個欄位。

IsochronousStreamSetupDataPathRequest

定義於 fuchsia.bluetooth.le/iso.fidl

Ordinal欄位類型說明
data_direction fuchsia.bluetooth/DataDirection

資料流向的路線。 必填。

codec_attributes fuchsia.bluetooth/CodecAttributes

指定無線傳輸使用的編碼格式, 必填。

controller_delay zx/Duration

提供的延遲時間必須位於控制器支援的範圍內,不得 超過 4 秒 必填。

IsochronousStream_Read_Response

定義於 fuchsia.bluetooth.le/iso.fidl

Ordinal欄位類型說明
data vector<uint8>

資料框本身。 必填。

sequence_number uint16

與影格相關聯的序號。 必填。

status_flag IsoPacketStatusFlag

控制器回報的封包狀態標記。 必填。

timestamp zx/Duration

控制器回報的接待時間戳記。 選用。

舊版

定義於 fuchsia.bluetooth.le/peripheral.fidl

Ordinal欄位類型說明

對等節點

定義於 fuchsia.bluetooth.le/peer.fidl

代表藍牙低功耗對等互連,可在廣播器、週邊裝置或中央區域執行 角色。對等點的角色是從中央或週邊通訊協定取得。

Ordinal欄位類型說明
id fuchsia.bluetooth/PeerId

可在目前的系統中識別此對等互連項目。

一律提供這個欄位。

connectable bool

這個對等互連是否可連線。不可連線的同類應用程式通常位於 LE 電視台角色

一律提供這個欄位。

rssi int8

此同類群組上次觀察到的訊號強度。這個欄位僅適用於 正在廣播。如果對等點未放送廣告,RSSI 可能就會過時。

注意:這個欄位「不應」與「連線 RSSI」混淆目前所屬的對等互連區域 所有連線

advertising_data AdvertisingData

已淘汰 - 請改用「data」

name fuchsia.bluetooth/DeviceName

此對等點的名稱。這個名稱通常會在掃描程序中取得 會在連線名稱探索程序完成後更新。

如果已知名稱,則會出現這個欄位。

data ScanData

來自這個對等節點的廣告與掃描回應資料相關資訊。分享螢幕畫面時 這包含對等端上次接收的廣告資料。

bonded bool

這個同業是否已建立鍵結。

一律提供這個欄位。

last_updated zx/Time

系統單調時脈的值,測量時此點 上次更新 (例如因為收到廣告而更新)。

一律提供這個欄位。

ScanData

定義於 fuchsia.bluetooth.le/peer.fidl

從同業廣播和掃描回應資料中取得的資訊。

Ordinal欄位類型說明
tx_power int8

由廣告和/或可掃描的同儕回報的無線電傳輸功率。

注意:這個欄位「不應」與「連線 TX 電源等級」混為一談。某個對等互連項目中 目前連接到透過「傳輸電源回報」功能取得的系統。而不是每個特徵的分數

appearance fuchsia.bluetooth/Appearance

裝置的外觀。

service_uuids vector<fuchsia.bluetooth/Uuid>

服務 UUID。

service_data vector<ServiceData>

服務資料項目。

manufacturer_data vector<ManufacturerData>

製造商專屬資料項目。

uris vector<string>

代表要宣傳的 URI 的字串,如 IETF STD 66 所定義。 每個項目都應為包含配置的 UTF-8 字串。若需更多資訊,請參閲 關於允許計劃的組織,請參閱 https://www.iana.org/assignments/uri-schemes/uri-schemes.xhtml; 注意:為了節省空間,藍牙廣告會壓縮空氣中的結構定義。詳情請見 https://www.bluetooth.com/specifications/assigned-numbers/uri-scheme-name-string-mapping.

timestamp zx/Time

收到這項掃描資料時的單調時間。

ScanOptions

定義於 fuchsia.bluetooth.le/central.fidl

掃描作業中使用的參數。

Ordinal欄位類型說明
filters vector<Filter>

掃描期間使用的篩選器清單。符合任何需求的周邊裝置 其中幾個篩選器都會納入報表中至少須指定 1 個篩選條件。 不建議使用會要求所有周邊裝置的客戶 因此報表可以指定空白篩選器

聯合國

廣告程序彈性

定義於 fuchsia.bluetooth.le/peripheral.fidl

新增時間:HEAD
OrdinalVariant類型說明
legacy Legacy

使用舊版廣告封包放送廣告。所有裝置應該都能 找出這類封包

extended Extended

使用擴充廣告封包放送廣告。延展型廣告 和封包相比 舊版廣告封包 (31 位元組與每個 PDU 為 251 位元組)。完整 廣告封包在廣告鏈中最多支援 1,650 個位元組。 但只有支援藍牙 5.0 以上版本的新款裝置才會偵測到這些裝置。

並非所有版本都支援擴充廣告封包 很少直接解答該如何打造產品PeripheralError::NOT_SUPPORTED 會因要求而傳回 但是不受支援

ChannelListenerRegistry_ListenL2cap_Result 嚴格

定義於 fuchsia.bluetooth.le/l2cap.fidl

OrdinalVariant類型說明
response ChannelListenerRegistry_ListenL2cap_Response
err zx/Status

ChannelListener_Accept_Result 嚴格

定義於 fuchsia.bluetooth.le/l2cap.fidl

OrdinalVariant類型說明
response ChannelListener_Accept_Response
framework_err internal

CodecDelay_GetCodecLocalDelayRange_Result 嚴格

定義於 fuchsia.bluetooth.le/codec_delay.fidl

OrdinalVariant類型說明
response CodecDelay_GetCodecLocalDelayRange_Response
err zx/Status

IsochronousStream_Read_Result 嚴格

定義於 fuchsia.bluetooth.le/iso.fidl

OrdinalVariant類型說明
response IsochronousStream_Read_Response
framework_err internal

IsochronousStream_SetupDataPath_Result strict

定義於 fuchsia.bluetooth.le/iso.fidl

OrdinalVariant類型說明
response IsochronousStream_SetupDataPath_Response
err zx/Status
framework_err internal

Peripheral_Ad_Result 嚴格

定義於 fuchsia.bluetooth.le/peripheral.fidl

OrdinalVariant類型說明
response Peripheral_Advertise_Response
err PeripheralError

Peripheral_StartAdvertising_Result 嚴格

定義於 fuchsia.bluetooth.le/peripheral.fidl

OrdinalVariant類型說明
response Peripheral_StartAdvertising_Response
err PeripheralError

觀測站

名稱類型說明
MAX_MANUFACTURER_DATA_LENGTH 252 uint8
MAX_SERVICE_DATA_LENGTH 252 uint8
MAX_URI_LENGTH 278 uint16

ALIASES

名稱說明
Psm uint16

接受連線導向管道的服務 ID 連線狀態。稱為 (簡化版) 通訊協定/服務多工器 或藍牙訊號。

新增時間:HEAD