Fuchsia.bluetooth.le

添加时间:7

协议

AdvertisedPeripheral

fuchsia.bluetooth.le/peripheral.fidl 中定义

在通告期间有效的协议。调用方可以关闭 停止通告的协议。如果系统在内部停止通告 出于任何原因,此协议将关闭,以便将此情况传达给 客户端。

OnConnected

当远程 LE 中央设备连接到此外围设备时调用: 通过 Google Analytics 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 中定义

连接

连接到具有指定标识符的对等端。

所请求的 fuchsia.bluetooth.le/Connection 代表 客户端对对等 LE 连接的关注度。关闭频道 移除兴趣,但如果其他客户感兴趣,可能不会导致他们中断联系 持有与同一对等方的有效 fuchsia.bluetooth.le/Connection

fuchsia.bluetooth.le/Connection handle 将由 系统会停止响应。

服务器可能会误发以下墓碑:

  • INVALID_ARGS:部分参数无效。

  • ALREADY_BOUND:此中心已存在与该对等端的连接。现有的 应使用连接。

  • NOT_CONNECTED:无法建立连接。

  • CONNECTION_RESET:对等连接已断开连接。

  • 请求 id 要启动连接的对等方的标识符。

  • request options 用于配置连接的选项。

  • 请求 handle 标识名在此有效期内保持有效 连接。

添加时间:HEAD

请求

名称类型
id fuchsia.bluetooth/PeerId
options ConnectionOptions
handle server_end<Connection>

ConnectPeripheral

使用指定标识符创建与外围设备的连接。 返回 status 中的操作状态。

成功完成后,“gatt_client”将被绑定,并可用于 GATT 客户端 角色过程。如果失败,gatt_client将会关闭,status将会关闭 指示存在错误。

已弃用 - 请改用 Connect

请求

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

响应

名称类型
status fuchsia.bluetooth/Status

DisconnectPeripheral

根据指定标识符断开此中央设备与外围设备的连接。

已弃用

请求

名称类型
identifier fuchsia.bluetooth/PeerIdString

响应

名称类型
status fuchsia.bluetooth/Status

GetPeripheral

此方法不是通过 Fuchsia 核心堆栈实现的 - TODO(https://fxbug.dev/42087303)

返回系统从上一次扫描中已知的单个外围设备的信息。 连接和/或绑定过程。如果存在以下情况,则返回 null 系统无法识别identifier

已弃用

请求

名称类型
identifier fuchsia.bluetooth/PeerIdString

响应

名称类型
peripheral RemoteDevice?

GetPeripherals

返回系统已知的外围设备列表(通过之前的扫描、连接和 和/或绑定程序。您可根据已知 位于外围设备上。

此方法仅返回外围设备(即可连接的设备)。

已弃用

请求

名称类型
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

在此中央设备与具有指定标识符的外围设备的连接终止时调用。

已弃用

响应

名称类型
identifier fuchsia.bluetooth/PeerIdString

OnScanStateChanged

在扫描状态发生变化时调用,例如扫描会话因调用 Central.StopScan() 或其他意外情况。

已弃用

响应

名称类型
scanning bool

扫描

扫描附近的 LE 外围设备和广播机构。如果无法进行扫描, 启动,result_watcher 将通过墓碑关闭。

中央客户端一次只能进行一项活动扫描。 因此,一次只能有一个未完成的扫描请求。 对 Scan 的其他调用将失败。

扫描会话的生命周期与 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 为 null 或空(即未填充其任何字段),则委托 会在找到的所有可检测到设备时收到通知。但我们不建议您这样做;客户 通常应至少按 filter.service_uuidsfilter.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 标题结尾。

添加时间: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())或外设(来自 CisRequestManager::Accept())。

响应

名称类型
payload IsochronousStreamOnEstablishedRequest

已读

从已建立且 设置。可与悬挂式球状图案搭配使用。

可在已建立和设置 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 中央设备发起与此外围设备的连接时传递的事件 通过 Google Analytics fuchsia.bluetooth.le/Peripheral.StartAdvertising.

返回的 fuchsia.bluetooth.le/Connection 句柄可用于与 对等设备它还表示外围设备在连接上的所有权:客户端 请求断开连接的句柄。同样,系统会关闭句柄 表示与对等方的连接已断开。

  • 请求 peer 发起连接的中央设备的相关信息。
  • 请求 connection 表示连接。

已弃用 - 请改用 AdvertisedPeripheral.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 中定义

表示正在运行的扫描过程。此协议在 扫描持续时间,可用于获取扫描结果。客户端可以 关闭协议即可停止扫描。如果系统停止了扫描, 协议将关闭,并附有歌词 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?

Admet 中报告的外观。

无默认设置
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 中定义

表示远程蓝牙低功耗设备。RemoteDevice 可以代表中央设备 广播或外围设备。

已弃用 - 请改用 Peer

字段类型说明默认
identifier fuchsia.bluetooth/PeerIdString

用于在当前系统上唯一标识此设备的标识符。

无默认设置
connectable bool

此设备是否可连接。不可连接的设备通常 LE 广播员角色。

无默认设置
rssi fuchsia.bluetooth/Int8?

此设备最近一次的已知 RSSI(如果已知)。

无默认设置
advertising_data AdvertisingDataDeprecated?

通告由此设备广播的数据(如果此设备是广播或外围设备)。

无默认设置

ScanFilter

fuchsia.bluetooth.le/types_deprecated.fidl 中定义

过滤在扫描期间使用的参数。系统会报告发现的外围设备或广播设备 仅当应用满足所提供的所有过滤器参数时,才会将其应用于应用。Null 字段将 已忽略。

已弃用 - 请改用过滤器

字段类型说明默认
service_uuids vector<string>?

根据通告的服务 UUID 进行过滤。至少通告 service_uuids 中的条目均符合此过滤条件。

无默认设置
service_data_uuids vector<string>?

根据包含某个给定 UUID 的服务数据进行过滤。

无默认设置
manufacturer_identifier fuchsia.bluetooth/UInt16?

根据制造商数据中存在的公司标识符进行过滤。如果这个过滤器参数 则广告有效负载必须包含制造商特定数据,并提供 公司标识符才能满足此过滤条件。

无默认设置
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> 无默认设置

精英

AdvertisingModeHint 严格

类型:uint8

fuchsia.bluetooth.le/peripheral.fidl 中定义

客户端可以通过指定模式来指示通告包的传输速率。通过 模式会在为控制器配置通告间隔和 。

模式会影响扫描仪或中央设备发现外围设备的速度;无论 可能会对功耗产生不利影响。尽管系统会尽量尊重客户的 但系统无法保证一定会做到这一点

名称说明
1

以极短的时间间隔和时间范围进行广告宣传,以更快获得用户发现的机会,但代价是 功耗。这相当于 100 万个 PHY 上的 30 至 60 毫秒的时间间隔,以及 编码 PHY。

2

使用比 VERY_FAST 更低的时间间隔和窗口进行通告。 这对应于 100 万个 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 严格

类型: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

支持的接收数据包大小上限。 可选。如果未提供,大小将由蓝牙决定 系统。对于所选尺寸,我们不提供任何保证。

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,查看允许的 schemes;
  • 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

要在扫描响应数据包中发送的字段。客户端可以使用它向 无法容纳在非 Google 平台上的广告包内的额外数据 支持广告数据长度扩展。

如果存在,则会将广告配置为可扫描。

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

使用的逻辑传输类型。目前仅支持 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 的标识符。必填。

cis_id uint8

所请求 CIS 的标识符。必填。

connection_stream server_end<IsochronousStream>

建立流后,服务器将调用 IsochronousStream::OnCis 建立 ed()。必填。

如果此渠道的客户端关闭,则相应 CIG/CIS 的请求 组合将被拒绝,直到/除非使用 参数对 AcceptCis() 再次调用 相同的 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 中定义

表示由创建 低功耗连接。

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

根据制造商中存在的制造商标识符进行过滤 数据。如果设置了此过滤条件参数,则广告有效负载必须 包含制造商专用数据以及所提供的公司标识符 满足此过滤条件的要求。制造商标识符可在以下位置找到: https://www.bluetooth.com/specifications/assigned-numbers/company-identifiers/

connectable bool

根据设备是否可连接进行过滤。例如, 只对可以连接的外围设备感兴趣的客户端 请将此项设为 true。同样,客户端只能通过 则将其设为 false。

name fuchsia.bluetooth/DeviceName

根据所通告设备名称的一部分过滤结果。 允许匹配子字符串。

max_path_loss int8

根据无线电波的路径损失过滤结果。具有如下特征的设备: 与此过滤条件匹配,且必须满足以下条件:

  1. 无线电发射功率电平和接收信号强度必须为 可用于路径损失计算;
  2. 计算出的路径损失值必须小于或等于: max_path_loss

注意:此字段使用 RSSI 和 TX 功率信息计算得出 从通告和扫描响应数据中获取。 请勿将其与活动连接的信息混淆 使用“路径损失报告”获取的功能。

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”混淆另一个 Pod 目前 连接到系统。

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,查看允许的 schemes; 注意:蓝牙通告通过无线方式压缩架构以节省空间。请参阅 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 个。必须至少指定 1 个过滤条件。 要求所有外围设备 可以指定空的过滤条件。

联合体

AdvertisingProcedure 灵活

fuchsia.bluetooth.le/peripheral.fidl 中定义

添加时间:HEAD
Ordinal变体类型说明
legacy Legacy

使用旧版通告包进行通告。所有设备都应能 来发现此类数据包

extended Extended

使用扩展的通告包进行通告。扩展广播 数据包允许通告的数据量要远远大于 旧通告包(31 字节,而每个 PDU 为 251 字节)。扩展 每个通告包在通告链中支持高达 1,650 个字节, 但只有使用蓝牙 5.0 及以上版本的新型设备才能检测到它们。

并非所有解决方案都支持扩展通告包 产品。在收到请求时,系统将返回 PeripheralError::NOT_SUPPORTED 且不受支持。

ChannelListenerRegistry_ListenL2cap_Result 严格

fuchsia.bluetooth.le/l2cap.fidl 中定义

Ordinal变体类型说明
response ChannelListenerRegistry_ListenL2cap_Response
err zx/Status

ChannelListener_Accept_Result 严格

fuchsia.bluetooth.le/l2cap.fidl 中定义

Ordinal变体类型说明
response ChannelListener_Accept_Response
framework_err internal

CodecDelay_GetCodecLocalDelayRange_Result strict

fuchsia.bluetooth.le/codec_delay.fidl 中定义

Ordinal变体类型说明
response CodecDelay_GetCodecLocalDelayRange_Response
err zx/Status

IsochronousStream_Read_Result 严格

fuchsia.bluetooth.le/iso.fidl 中定义

Ordinal变体类型说明
response IsochronousStream_Read_Response
framework_err internal

IsochronousStream_SetupDataPath_Result 严格

fuchsia.bluetooth.le/iso.fidl 中定义

Ordinal变体类型说明
response IsochronousStream_SetupDataPath_Response
err zx/Status
framework_err internal

Peripheral_Advertise_Result 严格

fuchsia.bluetooth.le/peripheral.fidl 中定义

Ordinal变体类型说明
response Peripheral_Advertise_Response
err PeripheralError

Peripheral_StartAdvertising_Result 严格

fuchsia.bluetooth.le/peripheral.fidl 中定义

Ordinal变体类型说明
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

接受面向连接的信道的服务的标识符 连接。称为(简化的)协议/服务多路复用器 。

添加时间:HEAD