hfp
HFP (Hands-Free Profile) 提供蓝牙免提通话服务,支持HFP连接建立与断开、通话操作请求、语音识别、音量配置、DTMF识别码发送、SCO (Synchronous Connection-Oriented) 音频流连接管理及私有AT命令交互等功能。
头文件清单
#include "protocol/bt/host/include/bs_service/bs_br_call.h"
#include "protocol/bt/host/include/bs_service/bs_br_call_sco.h"
接口清单
| 接口名称 | 功能简述 |
|---|---|
| bs_br_create_sco_connection | 建立SCO音频流连接 |
| bs_br_release_sco_connection | 断开SCO音频流连接 |
| bs_br_create_sco_result_reply | 接受或拒绝SCO连接请求 |
| bs_br_sco_register_callbacks | 注册SCO回调函数 |
| bs_br_sco_unregister_callbacks | 去注册SCO回调函数 |
| bs_br_call_hfp_register | 注册蓝牙HFP服务 |
| bs_br_call_hfp_unregister | 去注册蓝牙HFP服务 |
| bs_br_call_hfp_connect | 建立蓝牙通话服务连接 |
| bs_br_call_hfp_disconnect | 断开蓝牙通话服务连接 |
| bs_br_call_operate_request | 发送通话操作请求 |
| bs_br_call_voice_recognition_request | 发送语音识别请求 |
| bs_br_call_set_volume_request | 发送通话音量配置请求 |
| bs_br_call_send_dtmf_tone_request | 发送DTMF识别码请求 |
| bs_br_call_status_notify | 发送通话状态通知 |
| bs_br_call_send_vendor_at_request | 发送私有AT命令请求 |
| bs_br_call_register_callbacks | 注册蓝牙通话回调函数 |
| bs_br_call_unregister_callbacks | 去注册蓝牙通话回调函数 |
Functions
bs_br_create_sco_connection
头文件清单
功能说明
- 建立与对端设备的SCO音频流连接
- 用于在蓝牙通话过程中建立语音通道
- 发起SCO连接请求,连接结果通过SCO状态回调上报
前置条件
- 调用时序约束:必须在HFP服务连接建立成功后调用
- 依赖关系:依赖已注册的SCO回调函数以接收连接状态变化通知
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| dev_id | uint16_t | 对端设备编号 | 有效设备ID |
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_BT_SUCCESS(0x00) | 执行成功 | SCO连接请求成功发起 |
| Other | 其他错误码,参考errcode_bt_t | 执行失败 |
bs_br_release_sco_connection
头文件清单
功能说明
- 断开与对端设备的SCO音频流连接
- 用于在蓝牙通话结束后释放语音通道
- 断开结果通过SCO状态回调上报
前置条件
- 调用时序约束:必须在SCO连接已建立的状态下调用
- 依赖关系:依赖已注册的SCO回调函数以接收断连状态变化通知
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| dev_id | uint16_t | 对端设备编号 | 有效设备ID |
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_BT_SUCCESS(0x00) | 执行成功 | SCO断连请求成功发起 |
| Other | 其他错误码,参考errcode_bt_t | 执行失败 |
bs_br_create_sco_result_reply
头文件清单
功能说明
- 接受或拒绝对端发起的SCO连接请求
- 用于在收到SCO连接请求后回复接受或拒绝
- 通过该接口控制SCO连接的建立决策
前置条件
- 调用时序约束:必须在收到SCO连接请求回调后调用
- 依赖关系:依赖已注册的SCO回调函数以接收SCO连接请求
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| dev_id | uint16_t | 对端设备编号 | 有效设备ID |
| is_accept | bool | 是否接受SCO连接 | true:接受;false:拒绝 |
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_BT_SUCCESS(0x00) | 执行成功 | 回复成功发送 |
| Other | 其他错误码,参考errcode_bt_t | 执行失败 |
bs_br_sco_register_callbacks
头文件清单
功能说明
- 注册SCO回调函数集合
- 用于注册SCO连接状态变化和编解码类型上报的回调
- 回调函数在SCO状态变更和编解码信息上报时被触发
前置条件
- 调用时序约束:必须在调用SCO相关接口之前注册回调
- 依赖关系:依赖bs_br_sco_callbacks_t结构体已正确初始化
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| app_id | uint8_t | 应用ID | 默认为0 |
| func | bs_br_sco_callbacks_t* | SCO回调函数结构体指针 | 非空指针 |
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_BT_SUCCESS(0x00) | 执行成功 | 回调注册成功 |
| Other | 其他错误码,参考errcode_bt_t | 执行失败 |
bs_br_sco_unregister_callbacks
头文件清单
功能说明
- 去注册SCO回调函数
- 用于取消已注册的SCO回调函数
- 去注册后不再接收SCO状态变化和编解码信息上报
前置条件
- 调用时序约束:必须在已注册SCO回调后调用
- 依赖关系:依赖对应的app_id已通过bs_br_sco_register_callbacks注册
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| app_id | uint8_t | 应用ID | 默认为0 |
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_BT_SUCCESS(0x00) | 执行成功 | 回调去注册成功 |
| Other | 其他错误码,参考errcode_bt_t | 执行失败 |
bs_br_call_hfp_register
头文件清单
功能说明
- 注册蓝牙HFP服务
- 指定本端HFP服务角色(HF或AG)进行服务注册
- 注册成功后方可进行HFP连接和通话操作
前置条件
- 调用时序约束:必须在所有HFP相关接口调用之前注册
- 依赖关系:依赖蓝牙协议栈已初始化
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| hfp_role | uint8_t | HFP服务角色 | BR_CALL_HFP_HF(0x01) / BR_CALL_HFP_AG(0x02) |
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_BT_SUCCESS(0x00) | 执行成功 | HFP服务注册成功 |
| Other | 其他错误码,参考errcode_bt_t | 执行失败 |
bs_br_call_hfp_unregister
头文件清单
功能说明
- 去注册蓝牙HFP服务
- 按照指定角色取消已注册的HFP服务
- 去注册后该角色不再提供HFP服务能力
前置条件
- 调用时序约束:必须在已注册HFP服务后调用
- 依赖关系:依赖对应的HFP角色已通过bs_br_call_hfp_register注册
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| hfp_role | uint8_t | HFP服务角色 | BR_CALL_HFP_HF(0x01) / BR_CALL_HFP_AG(0x02) |
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_BT_SUCCESS(0x00) | 执行成功 | HFP服务去注册成功 |
| Other | 其他错误码,参考errcode_bt_t | 执行失败 |
bs_br_call_hfp_connect
头文件清单
功能说明
- 建立与对端设备的蓝牙通话服务连接
- 指定本端HFP角色发起HFP连接请求
- 连接结果通过通话回调函数中的connect_state_cbk上报
前置条件
- 调用时序约束:必须在HFP服务注册成功后调用
- 依赖关系:依赖已注册的通话回调函数以接收连接状态通知
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| dev_id | uint16_t | 对端设备编号 | 有效设备ID |
| hfp_role | uint8_t | HFP服务角色 | BR_CALL_HFP_HF(0x01) / BR_CALL_HFP_AG(0x02) |
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_BT_SUCCESS(0x00) | 执行成功 | HFP连接请求成功发起 |
| Other | 其他错误码,参考errcode_bt_t | 执行失败 |
bs_br_call_hfp_disconnect
头文件清单
功能说明
- 断开与对端设备的蓝牙通话服务连接
- 指定本端HFP角色发起HFP断连请求
- 断连结果通过通话回调函数中的connect_state_cbk上报
前置条件
- 调用时序约束:必须在HFP连接已建立的状态下调用
- 依赖关系:依赖已注册的通话回调函数以接收断连状态通知
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| dev_id | uint16_t | 对端设备编号 | 有效设备ID |
| hfp_role | uint8_t | HFP服务角色 | BR_CALL_HFP_HF(0x01) / BR_CALL_HFP_AG(0x02) |
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_BT_SUCCESS(0x00) | 执行成功 | HFP断连请求成功发起 |
| Other | 其他错误码,参考errcode_bt_t | 执行失败 |
bs_br_call_operate_request
errcode_t bs_br_call_operate_request(uint16_t dev_id, uint8_t opt_type, uint8_t *param, uint16_t param_len)
头文件清单
功能说明
- 发送通话操作请求
- 支持呼出、接听、挂断、拒接、保持、查询通话信息等操作
- 不同操作类型对应不同的参数要求
前置条件
- 调用时序约束:必须在HFP连接已建立的状态下调用
- 依赖关系:依赖已注册的通话回调函数以接收操作结果通知
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| dev_id | uint16_t | 对端设备编号 | 有效设备ID |
| opt_type | uint8_t | 通话操作类型 | BR_CALL_REQUEST_OUT(0x01) / BR_CALL_REQUEST_ACCEPT(0x02) / BR_CALL_REQUEST_FINISH(0x03) / BR_CALL_REQUEST_REJECT(0x04) / BR_CALL_REQUEST_HOLD(0x05) / BR_CALL_REQUEST_CALL_INFO(0x06) |
| param | uint8_t* | 通话操作参数指针 | 依据opt_type不同而不同:BR_CALL_REQUEST_OUT时为手机号,其余为NULL |
| param_len | uint16_t | 通话操作参数长度 | 依据opt_type不同而不同:BR_CALL_REQUEST_OUT时为手机号长度,其余为0 |
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_BT_SUCCESS(0x00) | 执行成功 | 通话操作请求成功发起 |
| Other | 其他错误码,参考errcode_bt_t | 执行失败 |
bs_br_call_voice_recognition_request
头文件清单
功能说明
- 发送语音识别请求
- 用于开启或关闭对端设备的语音识别功能
- 语音识别状态变化通过回调函数voice_reco_status_cbk上报
前置条件
- 调用时序约束:必须在HFP连接已建立的状态下调用
- 依赖关系:依赖已注册的通话回调函数以接收语音识别状态通知
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| dev_id | uint16_t | 对端设备编号 | 有效设备ID |
| is_open | bool | 是否开启语音识别 | true:开启;false:关闭 |
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_BT_SUCCESS(0x00) | 执行成功 | 语音识别请求成功发起 |
| Other | 其他错误码,参考errcode_bt_t | 执行失败 |
bs_br_call_set_volume_request
头文件清单
功能说明
- 发送通话音量配置请求
- 支持配置麦克风增益或扬声器增益
- 音量配置结果通过回调函数set_volume_request_cbk上报
前置条件
- 调用时序约束:必须在HFP连接已建立的状态下调用
- 依赖关系:依赖已注册的通话回调函数以接收音量配置通知
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| dev_id | uint16_t | 对端设备编号 | 有效设备ID |
| volume_type | uint8_t | 音量类型 | BR_CALL_VOLUME_MIC(0x00) / BR_CALL_VOLUME_SPEAKER(0x01) |
| volume | uint8_t | 音量值 | 0 ~ 15 |
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_BT_SUCCESS(0x00) | 执行成功 | 音量配置请求成功发起 |
| Other | 其他错误码,参考errcode_bt_t | 执行失败 |
bs_br_call_send_dtmf_tone_request
头文件清单
功能说明
- 发送DTMF识别码请求
- 用于在通话过程中向对端发送DTMF信号
- DTMF码值为[0-9][A-D][*#]对应的ASCII码
前置条件
- 调用时序约束:必须在HFP连接已建立且通话处于激活状态时调用
- 依赖关系:依赖HFP连接已成功建立
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| dev_id | uint16_t | 对端设备编号 | 有效设备ID |
| code | uint8_t | DTMF识别码 | [0-9][A-D][*#]的ASCII码 |
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_BT_SUCCESS(0x00) | 执行成功 | DTMF识别码请求成功发起 |
| Other | 其他错误码,参考errcode_bt_t | 执行失败 |
bs_br_call_status_notify
errcode_t bs_br_call_status_notify(uint16_t dev_id, uint8_t notify_type, uint8_t *param, uint16_t param_len)
头文件清单
功能说明
- 发送通话状态通知
- 支持呼出、接听、挂断、拒接、来电、通话信息、呼出响铃等通知类型
- 不同通知类型对应不同的参数要求
前置条件
- 调用时序约束:必须在HFP连接已建立的状态下调用
- 依赖关系:依赖HFP连接已成功建立
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| dev_id | uint16_t | 对端设备编号 | 有效设备ID |
| notify_type | uint8_t | 通知类型 | BR_CALL_NOTIFY_OUT(0x01) / BR_CALL_NOTIFY_ACCEPT(0x02) / BR_CALL_NOTIFY_FINISH(0x03) / BR_CALL_NOTIFY_REJECT(0x04) / BR_CALL_NOTIFY_INCOMING(0x05) / BR_CALL_NOTIFY_CALL_INFO(0x06) / BR_CALL_NOTIFY_OUT_ALERTING(0x07) |
| param | uint8_t* | 通知参数指针 | 依据notify_type不同而不同 |
| param_len | uint16_t | 通知参数长度 | 依据notify_type不同而不同 |
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_BT_SUCCESS(0x00) | 执行成功 | 通话状态通知成功发送 |
| Other | 其他错误码,参考errcode_bt_t | 执行失败 |
bs_br_call_send_vendor_at_request
头文件清单
功能说明
- 发送私有AT命令请求
- 用于向对端设备发送厂商自定义的AT命令
- AT命令响应通过回调函数vendor_at_cbk上报
前置条件
- 调用时序约束:必须在HFP连接已建立的状态下调用
- 依赖关系:依赖已注册的通话回调函数以接收AT命令响应
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| dev_id | uint16_t | 对端设备编号 | 有效设备ID |
| at_cmd | uint8_t* | AT命令参数指针 | 非空指针 |
| at_len | uint16_t | AT命令参数长度 | 大于0 |
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_BT_SUCCESS(0x00) | 执行成功 | AT命令请求成功发起 |
| Other | 其他错误码,参考errcode_bt_t | 执行失败 |
bs_br_call_register_callbacks
头文件清单
功能说明
- 注册蓝牙通话回调函数集合
- 用于注册连接状态、语音识别、音量配置、通话状态、来电响铃、通话操作、私有AT命令等回调
- 回调函数在对应事件发生时被触发
前置条件
- 调用时序约束:必须在调用通话相关接口之前注册回调
- 依赖关系:依赖bs_br_call_callbacks_t结构体已正确初始化
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| app_id | uint8_t | 应用ID | 默认为0 |
| func | bs_br_call_callbacks_t* | 通话回调函数结构体指针 | 非空指针 |
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_BT_SUCCESS(0x00) | 执行成功 | 回调注册成功 |
| Other | 其他错误码,参考errcode_bt_t | 执行失败 |
bs_br_call_unregister_callbacks
头文件清单
功能说明
- 去注册蓝牙通话回调函数
- 用于取消已注册的通话回调函数
- 去注册后不再接收通话相关事件通知
前置条件
- 调用时序约束:必须在已注册通话回调后调用
- 依赖关系:依赖对应的app_id已通过bs_br_call_register_callbacks注册
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| app_id | uint8_t | 应用ID | 默认为0 |
返回值
- 返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_BT_SUCCESS(0x00) | 执行成功 | 回调去注册成功 |
| Other | 其他错误码,参考errcode_bt_t | 执行失败 |
Enumerations
bs_br_call_hfp_role_t
| 枚举成员 | 取值 | 描述 |
|---|---|---|
| BR_CALL_HFP_HF | 0x01 | HFP Hands-Free角色 |
| BR_CALL_HFP_AG | 0x02 | HFP Audio Gateway角色 |
bs_br_call_volume_type_t
| 枚举成员 | 取值 | 描述 |
|---|---|---|
| BR_CALL_VOLUME_MIC | 0x00 | 麦克风增益 |
| BR_CALL_VOLUME_SPEAKER | 0x01 | 扬声器增益 |
bs_br_call_opt_type_t
typedef enum {
BR_CALL_REQUEST_OUT = 0x01,
BR_CALL_REQUEST_ACCEPT = 0x02,
BR_CALL_REQUEST_FINISH = 0x03,
BR_CALL_REQUEST_REJECT = 0x04,
BR_CALL_REQUEST_HOLD = 0x05,
BR_CALL_REQUEST_CALL_INFO = 0x06,
} bs_br_call_opt_type_t;
| 枚举成员 | 取值 | 描述 |
|---|---|---|
| BR_CALL_REQUEST_OUT | 0x01 | 呼出请求,param为手机号,param_len为手机号长度 |
| BR_CALL_REQUEST_ACCEPT | 0x02 | 接听请求,param为空,param_len为0 |
| BR_CALL_REQUEST_FINISH | 0x03 | 挂断请求,param为空,param_len为0 |
| BR_CALL_REQUEST_REJECT | 0x04 | 拒接请求,param为空,param_len为0 |
| BR_CALL_REQUEST_HOLD | 0x05 | 保持当前通话请求,param为空,param_len为0 |
| BR_CALL_REQUEST_CALL_INFO | 0x06 | 通话信息请求,param为空,param_len为0 |
bs_br_call_state_t
typedef enum {
BR_CALL_STATE_ACTIVE = 0,
BR_CALL_STATE_HELD,
BR_CALL_STATE_DIALING,
BR_CALL_STATE_ALERTING,
BR_CALL_STATE_INCOMING,
BR_CALL_STATE_WAITING,
BR_CALL_STATE_RESPONSE_HELD,
BR_CALL_STATE_FINISHED
} bs_br_call_state_t;
| 枚举成员 | 取值 | 描述 |
|---|---|---|
| BR_CALL_STATE_ACTIVE | 0 | 正在通话 |
| BR_CALL_STATE_HELD | 1 | 呼叫保持通话 |
| BR_CALL_STATE_DIALING | 2 | 呼出拨号中 |
| BR_CALL_STATE_ALERTING | 3 | 呼出响铃中 |
| BR_CALL_STATE_INCOMING | 4 | 来电中 |
| BR_CALL_STATE_WAITING | 5 | 呼叫等待 |
| BR_CALL_STATE_RESPONSE_HELD | 6 | 呼叫响应保持 |
| BR_CALL_STATE_FINISHED | 7 | 通话结束 |
bs_br_call_accept_type_t
typedef enum {
BR_CALL_ACCEPT_INCOMING_CALL = 0x00,
BR_CALL_ACCEPT_OUTGOING_CALL_BY_REMOTE = 0x01
} bs_br_call_accept_type_t;
| 枚举成员 | 取值 | 描述 |
|---|---|---|
| BR_CALL_ACCEPT_INCOMING_CALL | 0x00 | 来电接听 |
| BR_CALL_ACCEPT_OUTGOING_CALL_BY_REMOTE | 0x01 | 呼出电话被对端接听 |
bs_br_call_notify_type_t
typedef enum {
BR_CALL_NOTIFY_OUT = 0x01,
BR_CALL_NOTIFY_ACCEPT = 0x02,
BR_CALL_NOTIFY_FINISH = 0x03,
BR_CALL_NOTIFY_REJECT = 0x04,
BR_CALL_NOTIFY_INCOMING = 0x05,
BR_CALL_NOTIFY_CALL_INFO = 0x06,
BR_CALL_NOTIFY_OUT_ALERTING = 0x07,
} bs_br_call_notify_type_t;
| 枚举成员 | 取值 | 描述 |
|---|---|---|
| BR_CALL_NOTIFY_OUT | 0x01 | 电话呼出通知,param为空,param_len为0 |
| BR_CALL_NOTIFY_ACCEPT | 0x02 | 接听通知,param为接听类型枚举值,param_len为1 |
| BR_CALL_NOTIFY_FINISH | 0x03 | 挂断通知,param为空,param_len为0 |
| BR_CALL_NOTIFY_REJECT | 0x04 | 来电拒接通知,param为空,param_len为0 |
| BR_CALL_NOTIFY_INCOMING | 0x05 | 来电通知,param为手机号,param_len为手机号长度 |
| BR_CALL_NOTIFY_CALL_INFO | 0x06 | 通话信息通知,param为通话信息结构体指针,param_len为结构体长度 |
| BR_CALL_NOTIFY_OUT_ALERTING | 0x07 | 电话呼出响铃对端通知,param为空,param_len为0 |
bs_br_call_ring_status_t
typedef enum {
BR_CALL_INCOMING_RING_GOING = 1,
BR_CALL_INCOMING_RING_TERMINATE = 2,
} bs_br_call_ring_status_t;
| 枚举成员 | 取值 | 描述 |
|---|---|---|
| BR_CALL_INCOMING_RING_GOING | 1 | 来电响铃中 |
| BR_CALL_INCOMING_RING_TERMINATE | 2 | 来电响铃结束 |
bs_br_sco_state_t
typedef enum {
BR_SCO_STATE_CONNECTING = 0x01,
BR_SCO_STATE_CONNECTED = 0x02,
BR_SCO_STATE_DISCONNECTED = 0x03,
} bs_br_sco_state_t;
| 枚举成员 | 取值 | 描述 |
|---|---|---|
| BR_SCO_STATE_CONNECTING | 0x01 | SCO正在连接 |
| BR_SCO_STATE_CONNECTED | 0x02 | SCO已连接 |
| BR_SCO_STATE_DISCONNECTED | 0x03 | SCO已断连 |
bs_br_sco_codec_id_t
| 枚举成员 | 取值 | 描述 |
|---|---|---|
| BR_SCO_CODEC_ID_CVSD | 0x01 | 编码格式为CVSD |
| BR_SCO_CODEC_ID_MSBC | 0x02 | 编码格式为MSBC |
Structures
bs_br_call_info_t
typedef struct {
uint8_t id;
uint8_t state;
bool multi_party;
bool outgoing;
uint8_t number_len;
uint8_t number[BR_CALL_PHONENUM_MAX_DIGITS];
} bs_br_call_info_t;
成员说明
| 成员名称 | 数据类型 | 描述 |
|---|---|---|
| id | uint8_t | 通话编号 |
| state | uint8_t | 电话呼叫状态,参考bs_br_call_state_t |
| multi_party | bool | 是否多方电话 |
| outgoing | bool | 呼入/呼出标志 |
| number_len | uint8_t | 电话号码位数 |
| number | uint8_t[] | 电话号码 |
bs_br_sco_callbacks_t
typedef struct {
bs_br_sco_state_changed_cbk sco_state_cbk;
bs_br_sco_codec_report_cbk sco_codec_cbk;
} bs_br_sco_callbacks_t;
成员说明
| 成员名称 | 数据类型 | 描述 |
|---|---|---|
| sco_state_cbk | bs_br_sco_state_changed_cbk | SCO状态变化回调,在SCO连接状态变更时被调用 |
| sco_codec_cbk | bs_br_sco_codec_report_cbk | SCO编解码上报回调,在收到SCO编解码类型信息时被调用 |
bs_br_call_callbacks_t
typedef struct {
bs_br_call_conn_state_cbk connect_state_cbk;
bs_br_call_voice_recognition_status_cbk voice_reco_status_cbk;
bs_br_call_set_volume_request_cbk set_volume_request_cbk;
bs_br_call_status_notify_cbk call_status_notify_cbk;
bs_br_call_band_ring_tone_changed_cbk band_ring_tone_changed_cbk;
bs_br_call_operate_request_cbk call_opt_req_cbk;
bs_br_call_vendor_at_cbk vendor_at_cbk;
} bs_br_call_callbacks_t;
成员说明
| 成员名称 | 数据类型 | 描述 |
|---|---|---|
| connect_state_cbk | bs_br_call_conn_state_cbk | 服务连接状态上报回调,在HFP连接状态变更时被调用 |
| voice_reco_status_cbk | bs_br_call_voice_recognition_status_cbk | 语音识别状态上报回调,在语音识别开启/关闭状态变更时被调用 |
| set_volume_request_cbk | bs_br_call_set_volume_request_cbk | 通话音量配置上报回调,在收到对端音量配置请求时被调用 |
| call_status_notify_cbk | bs_br_call_status_notify_cbk | 通话状态信息上报回调,在通话状态信息变更时被调用 |
| band_ring_tone_changed_cbk | bs_br_call_band_ring_tone_changed_cbk | 来电响铃上报回调,在来电响铃状态变更时被调用 |
| call_opt_req_cbk | bs_br_call_operate_request_cbk | 通话操作请求上报回调,在收到通话操作请求时被调用 |
| vendor_at_cbk | bs_br_call_vendor_at_cbk | 私有命令上报回调,在收到私有AT命令时被调用 |