Bluetooth技术学习笔记 ——HFP控制功能之连接管理

参考:HFP_v1.7.1
SLC:Service Level Connection,服务级连接
AG:Audio Gateway,音频网关
HF,hands-free,免提
Service Level Connection Establishment,服务级连接建立
Link Loss Recovery,链路损坏恢复
Service Level Connection Release,服务级连接释放
1. 连接管理相关AT指令
  • AT+BRSF = <HF supported features>:HF告知AG其所支持的特性。
  • +BRSF :<HF supported features>:AG向HF响应其所支持的特性。
  • AT+BAC = <HF available codecs>:HF告知AG其可用的编码器。
  • AT+CIND=?:HF向AG询问其所支持的指示器,以及它们的顺序。
  • AT+CIND?:HF读取AG所支持指示器的状态。
  • AT+CMER:HF使能AG指示器状态更新功能。
  • AT+CHLD=?:查询AG如何支持call waiting和多方服务。
  • AT+BIND = <HF supported HF indicators>:HF告知AG其支持指示器特性。
  • AT+BIND=? :HF向AG询问AG所支持的HF指示器信息。
  • AT+BIND? :HF向AG询问AG使能的HF指示器。
     
2. 服务级连接建立

(1) 服务级连接
在这里插入图片描述
(2) 服务级连接建立前提条件:

  • RFCOMM连接已建立。

(3) 服务级连接初始化
     当RFCOMM连接建立后,需发起服务级连接初始化过程。

  • Supported features exchange,HF和AG所支持的特性交换。

  • Codec Negotiation,编码器协商。若HF支持编码器协商特性,则检查AG是否支持编码器协商特性,若支持,HF向AG发送其可用的编解码器,AG回复OK。

  • AG Indicators,AG指示器。当HF收到AG所支持的特性后,需要确认AG所支持的指示器,以及它们的顺序。
    — HF向AG发送AT+CIND=?测试命令,询问AG所支持的指示器,以及它们的顺序。AG以+CIND:应答。
    — 一旦HF得到了必要的AG指示器及其顺序信息,向AG发送AT+CIND?读取命令,获取AG所支持指示器当前的状态。AG以+CIND:应答。
    — HF向AG发送AT+CMER,使能AG指示器状态更新功能。AG以OK应答。若AG指示器状态发生了变更,则向HF发送+CIEV 结果码进行告知,HF更新指示器状态。
    — 若AG和HF都支持Call waiting 和 3-way calling,HF向AG发送AT+CHLD=?,获得其支持的call waiting和多方服务信息。

  • HF Indicators,HF指示器。
    — 若HF支持指示器特性,则查询AG是否支持HF指示器特性。若HF和AG都支持HF指示器,则HF向AG发送AT+BIND=<HF supported HF indicators> ,告知AG其支持指示器特性。AG以OK应答。
    — HF向AG发送AT+BIND=? ,询问AG所支持的HF指示器信息。若AG以+BIND响应列表+OK应答。
    — HF向AG发送AT+BIND? ,询问AG使能的HF指示器。若AG以+BIND响应列表+OK应答。

  • End of Service Level Connection,若满足以下任何一种情况,HF认为服务级连接初始化完成:
    – 当且仅当HF和AG都支持HF指示器特性时,HF收到了AG当前使能的HF指示器信息。
    – 当且仅当HF和AG都支持“Call waiting and 3-way calling”时,且HF和AG并非都支持HF指示器特性,HF收到了AG如何支持call waiting和多方服务的信息。
    – 当HF和AG并非都支持“Call waiting and 3-way calling”和HF指示器特性时,HF成功使能AG指示器状态更新。

 

3. 链路损坏恢复

当蓝牙链路损坏时,HF可以重新建立与AG的连接。

  • 若因HF或AG主动发起断开服务级连接(如Service connection release),HF或AG应该等待一段时间用户主动发起的命令,然后再决定是否发起重建立服务连接。
  • 若因链路监控超时而判决为服务连接断开,HF可以发起服务连接建立过程,建立一个新的服务连接。
     
4. 服务级连接释放

释放服务级连接时,会断开AG与HF之间的RFCOMM数据信道和已存在的音频连接,L2CAP和LL层选择性断开。可能发起服务级连接释放的情况如下:

  • 用户操作
  • AG或HF的蓝牙功能不可用
  • 正在进行的语音向AG转移语音传输(Audio Connection transfer towards the AG)。
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值