Fuchsia.bluetooth

添加时间:7

协议

频道

fuchsia.bluetooth/channel.fidl 中定义

用于发送/接收数据包的双工通道。此协议还 充当使 Channel 保持打开状态的令牌。关闭此协议(并且 用于 BR/EDR 频道的关联 socket)将关闭底层 。

已添加:NEXT

接收

等待传入数据包的挂起获取。仅一个Receive 同时处于待处理状态

请求

<空>

响应

名称类型
payload Channel_Receive_Result

发送

通过该通道发送多个数据包。仅一个Send 同时处于待处理状态

请求

名称类型
packets vector<Packet>

响应

名称类型
payload Channel_Send_Result

WatchChannelParameters

对于 RFCOMM 通道,它将不会返回,且调用将挂起 。

对于 BR/EDR L2CAP 连接导向型信道,目前 返回,且通话将无限期暂停。初始渠道参数 fuchsia.bluetooth.bredr/Channel 中提供。

对于 LE L2CAP 连接导向型信道,第一次调用将 立即返回频道远程端的参数。 后续调用将挂起,直到 ChannelParameters 发生变更为止 然后将返回新参数,包括已指定 未更改。

请求

<空>

响应

名称类型
payload Channel_WatchChannelParameters_Result

结构体

地址

fuchsia.bluetooth/address.fidl 中定义

表示 48 位蓝牙设备地址。

字段类型说明默认
type AddressType

设备地址的类型。

无默认设置
bytes uint8[6]

以小端字节序排列的设备地址字节。

无默认设置

Bool

fuchsia.bluetooth/deprecated.fidl 中定义

已弃用

字段类型说明默认
value bool 无默认设置

Channel_Receive_Response

fuchsia.bluetooth/channel.fidl 中定义

字段类型说明默认
packets vector<Packet> 无默认设置

Channel_Send_Response

fuchsia.bluetooth/channel.fidl 中定义

<空>

DeviceClass

fuchsia.bluetooth/device_class.fidl 中定义

“设备/服务的类”是一个变量格式字段,用于定义 蓝牙设备。位字段分为名为“主要服务类”的片段 “major device class”和“minor device class”。

不应对任何应用的具体功能或特性做任何假设, 。如需了解详情,请参阅 https://www.bluetooth.com/specifications/assigned-numbers/baseband.

字段类型说明默认
value uint32 无默认设置

错误

fuchsia.bluetooth/deprecated.fidl 中定义

已弃用 - 改用特定于协议的错误枚举

字段类型说明默认
error_code ErrorCode 无默认设置
protocol_error_code uint32 无默认设置
description string? 无默认设置

HostId

fuchsia.bluetooth/id.fidl 中定义

系统用于标识主机适配器的 64 位唯一值。

字段类型说明默认
value uint64 无默认设置

Int8

fuchsia.bluetooth/deprecated.fidl 中定义

已弃用

字段类型说明默认
value int8 无默认设置

fuchsia.bluetooth/channel.fidl 中定义

来自协议或服务协议或服务的数据的有效负载, 远程对等方。

已添加:NEXT

字段类型说明默认
packet vector<uint8> 无默认设置

PeerId

fuchsia.bluetooth/id.fidl 中定义

系统用于标识对等设备的 64 位唯一值。

字段类型说明默认
value uint64 无默认设置

状态

fuchsia.bluetooth/deprecated.fidl 中定义

已弃用 - 使用特定于协议的错误枚举和“error”语法

字段类型说明默认
error Error? 无默认设置

UInt16

fuchsia.bluetooth/deprecated.fidl 中定义

已弃用

字段类型说明默认
value uint16 无默认设置

乌伊德

fuchsia.bluetooth/uuid.fidl 中定义

表示采用 128 位规范形式的蓝牙 UUID。虽然蓝牙标准支持 16 位和 32 位短格式 UUID,则 Fuchsia FIDL 库要求所有 UUID 以规范的 128 位形式表示。

字段类型说明默认
value uint8[16]

采用小端字节序的 UUID 字节。

无默认设置

精英

AddressType 类型 strict

类型:uint8

fuchsia.bluetooth/address.fidl 中定义

名称说明
1

LE 公共设备地址或 BR/EDR BD_ADDR

2

LE 专用或静态随机设备地址。

外观灵活

类型:uint16

fuchsia.bluetooth/appearance.fidl 中定义

LE Appearance 属性的可能值,用于描述外部 其外观和功能。 (请参阅蓝牙分配号码文档: https://www.bluetooth.com/specifications/gatt/viewer?attributeXmlFile=org.bluetooth.characteristic.gap.appearance.xml) 此枚举非常灵活,因为较新的设备可能会使用新的外观值,并且未来 分配号码文档可能还有其他条目。

名称说明
0
64
128
192
193
256
320
384
448
512
576
640
704
768
769
832
833
896
897
898
960
961
962
963
964
965
966
967
968
1024
1088
1089
1090
1091
1152
1153
1154
1155
1156
1157
3136
3137
3138
3200
3264
3265
3266
3328
5184
5185
5186
5187
5188

AssignCodingFormat flexible

类型:uint8

fuchsia.bluetooth/coding_format.fidl 中定义

编码格式,由蓝牙 SIG 指定(有关值,请参阅“分配编号”文档): https://www.bluetooth.com/specifications/assigned-numbers/

已添加:NEXT

名称说明
0
1
2
3
4
5
6
7

ChannelMode 灵活

类型:uint32

fuchsia.bluetooth/channel.fidl 中定义

L2CAP 通道支持的通道模式。

对于 BR/EDR,此字段用于指定首选且可接受的 L2CAP 通道 模式。如果对等端拒绝非基本模式,蓝牙系统会 尝试改为在基本模式下打开频道。

对于 LE,用于指定要使用的确切通道模式(如果 对等设备拒绝请求的模式,将无法建立通道。

有关每种模式的说明,请参阅蓝牙规范 v5.4 第 3 卷,A 部分,第 2.4 节。

已添加:NEXT

名称说明
1

仅限 BR/EDR。

2

仅限 BR/EDR。

3

仅限 LE。

4

LE_only。

ConnectionRole strict

类型:uint32

fuchsia.bluetooth/connection_role.fidl 中定义

指蓝牙设备(本地或对等设备)在物理信道 Piconet 中的角色。请参阅 蓝牙词汇指南

名称说明
1

定义 BR/EDR 或 “正在启动”设备。

2

在 BR/EDR 或 “广告”设备。

DataDirection 严格

类型:uint8

fuchsia.bluetooth/coding_format.fidl 中定义

指示数据流中数据的方向。请注意,这些值与常量不对应 。

添加时间:HEAD

名称说明
1

主机 =>控制器

2

控制器 =>托管者

ErrorCode 严格

类型:uint32

fuchsia.bluetooth/deprecated.fidl 中定义

已弃用 - 改用特定于协议的错误枚举和 zx.Status

名称说明
0
1
2
3
4
5
6
7
8
9
10
11

LogicalTransportType 柔性

类型:uint8

fuchsia.bluetooth/coding_format.fidl 中定义

可与编码数据流一起使用的逻辑传输类型。请注意,这些值没有 与蓝牙核心规范中的常量不对应,BR/EDR 值也不对应 。

添加时间:HEAD

名称说明
1

勒 CIS

2

德国国家税务局 (LE BIS)

表格

ChannelParameters

fuchsia.bluetooth/channel.fidl 中定义

要使用的一组参数,或用于建立 L2CAP 的参数集 向连接导向型网络的通道。

已添加:NEXT

Ordinal字段类型说明
channel_mode ChannelMode

选填。 对于 BR/EDR:如果未提供,系统将使用 BASIC。 对于 LE:如果未提供,将使用 LE_CREDIT_BASED_FLOW_CONTROL。

max_rx_packet_size uint16

此配置文件能够接受的数据包大小上限。必须大于等于 48。 可选。如果未提供,大小将由蓝牙决定 系统。对于所选尺寸,我们不提供任何保证。

security_requirements SecurityRequirements

BR/EDR:在此之前,链接必须满足的最低安全要求 可以创建渠道此处提供的要求将 在建立频道之前与同行进行过测试。如果对等节点 无法提供相关要求,该频道已关闭。 可选。如果未提供,则唯一保证的安全属性 就是加密

对于 LE:未使用,不得存在。

flush_timeout zx/Duration

对于 BR/EDR:刷新超时表示 数据包应在丢弃之前在控制器中缓冲。 无穷大的刷新超时可用于将数据包标记为可刷新 没有任何特定的刷新超时。 范围:1 毫秒 - 1,279 毫秒(或 ≤)。已向下舍入。 可选。如果未提供,则无刷新超时,且数据包不可刷新。

对于 LE:未使用,不得存在。

CodecAttributes

fuchsia.bluetooth/coding_format.fidl 中定义

标识可与数据流搭配使用的编解码器及其配置。

添加时间:HEAD

Ordinal字段类型说明
codec_id CodecId

编码格式。 必填。

codec_configuration vector<uint8>

配置数据。 可选存在,由所使用的编解码器确定。

SecurityRequirements

fuchsia.bluetooth/channel.fidl 中定义

访问通告的服务所需的身份验证和权限要求。 仅限 BR/EDR。

已添加:NEXT

Ordinal字段类型说明
authentication_required bool

如果该实体链接存在且为 true,则必须通过 访问此服务。如果缺失,则 不需要进行身份验证。

secure_connections_required bool

如果该参数存在且为 true,则该物理链接必须使用安全 如果主机可以,用于访问此服务的连接密钥。 如果主机不支持安全连接,通告将会失败。 请参阅蓝牙规范 v5.2、第 3 卷、C 部分、第 5.2.2.8 节。

VendorCodingFormat

fuchsia.bluetooth/coding_format.fidl 中定义

供应商定义的编码格式。

添加时间:HEAD

Ordinal字段类型说明
company_id uint16

公司 ID,请参阅“分配号码”文档了解相应值 https://www.bluetooth.com/specifications/assigned-numbers/ 必填。

vendor_id uint16

供应商定义的编解码器 ID。 必填。

联合体

Channel_Receive_Result 为严格

fuchsia.bluetooth/channel.fidl 中定义

Ordinal变体类型说明
response Channel_Receive_Response
framework_err internal

Channel_Send_Result 严格

fuchsia.bluetooth/channel.fidl 中定义

Ordinal变体类型说明
response Channel_Send_Response
framework_err internal

Channel_WatchChannelParameters_Result strict

fuchsia.bluetooth/channel.fidl 中定义

Ordinal变体类型说明
response ChannelParameters
framework_err internal

CodecId 柔性环境

fuchsia.bluetooth/coding_format.fidl 中定义

指定编码格式。

添加时间:HEAD
Ordinal变体类型说明
assigned_format AssignedCodingFormat

由蓝牙 SIG 定义的编码格式。

vendor_format VendorCodingFormat

供应商定义的编码格式。

常量

名称类型说明
MAJOR_DEVICE_CLASS_AUDIO_VIDEO 1024 uint32
MAJOR_DEVICE_CLASS_COMPUTER 256 uint32
MAJOR_DEVICE_CLASS_HEALTH 2304 uint32
MAJOR_DEVICE_CLASS_IMAGING 1536 uint32
MAJOR_DEVICE_CLASS_LAN 768 uint32
MAJOR_DEVICE_CLASS_MASK 7936 uint32

主要设备类字段的常量。主要设备类由位 12-8 定义。

MAJOR_DEVICE_CLASS_MISCELLANEOUS 0 uint32
MAJOR_DEVICE_CLASS_PERIPHERAL 1280 uint32
MAJOR_DEVICE_CLASS_PHONE 512 uint32
MAJOR_DEVICE_CLASS_TOY 2048 uint32
MAJOR_DEVICE_CLASS_UNCATEGORIZED 7936 uint32
MAJOR_DEVICE_CLASS_WEARABLE 1792 uint32
MAX_DEVICE_NAME_LENGTH 248 uint8

设备名称的最大长度。此值是根据 HCI 和 GAP 选择的 (第 5.2 卷,第 4 卷,E 部分,7.3.11 和第 3 卷,C 部分,12.1)。

UUID_STRING_REPRESENTATION_LENGTH 36 uint8

UUID 的标准字符串表示法的大小。此值依据的是规范版本 IETF RFC4122 第 3 节中定义的 36 个字符的 8-4-4-4-12 格式。

ALIASES

名称说明
DeviceName string[MAX_DEVICE_NAME_LENGTH]

蓝牙设备名称的别名。

PeerIdString string[16]

已弃用 - 请改用 fuchsia.bluetooth/PeerId

UuidString string[UUID_STRING_REPRESENTATION_LENGTH]

已弃用 - 请改用 fuchsia.bluetooth/Uuid