BT_蓝牙电话数据包分析_拒接电话

基于Android P版本分析

通话过程协议分析

拒接电话

从AG端接听Incoming call的流程比较简单,其中包括了几个动作:来电、响铃和拒接,AG只是会通过+CIEV、RING和AT+CLCC等指令进行交互,其中通过+CIEV指令更新callsetup和call状态;

这个过程和接听来电的过程非常相似,他们之间唯一的差别在与:接听和拒接的区别,对应了两个AT+指令;

AG侧拒接和HF侧拒接基本相同;

中间和接听电话的逻辑一致,不做分析;

拒接
AT+CHUP

标准挂起AT命令,执行命令使AG终止当前活动的调用;

yaml 复制代码
Bluetooth HFP Profile
    [Role: HS - Headset (2)]
    AT Stream: AT+CHUP\r
    Command 0: +CHUP
        Command Line Prefix: AT
        Command: +CHUP (Call Hang-up)
        Type: Action Command (0x000d)
        Parameters: No

对应返回OK Response;

+CIEV: 2,0
yaml 复制代码
Bluetooth HFP Profile
    [Role: AG - Audio Gate (1)]
    AT Stream: \r\n+CIEV: 2,0\r\n
    Command 0: +CIEV
        Command: +CIEV (Indicator Events Reporting)
        Type: Response (0x003a)
        Parameters
            Indicator Index: 2
            Indicator 2: 0
  • callsetup = 0:代表了当前没在呼叫中,callsetup 状态从 1 -> 0,代表了从呼叫状态到结束呼叫状态的变化;
相关推荐
fake_ss1982 小时前
AI时代学习全栈项目开发的新范式
java·人工智能·学习·架构·个人开发·学习方法
米高梅狮子3 小时前
第2章 docker容器
运维·docker·云原生·容器·架构·kubernetes·自动化
simplepeng4 小时前
我们都知道但总是忽略的5个Jetpack Compose细节
android·android jetpack
微学AI5 小时前
Hermes Agent vs Claude Code 架构对比与创新分析
架构
沪漂阿龙5 小时前
面试题详解:检索链路设计全攻略——RAG 检索架构、查询理解、多路召回、混合检索、Rerank、上下文构造与评估闭环
大数据·人工智能·架构
刮风那天5 小时前
Android 如何提高进程优先级避免被查杀?
android
码云之上6 小时前
万星入坞·其二:子应用如何优雅地"入坞"
性能优化·架构·前端框架
Apache RocketMQ6 小时前
RocketMQ 源码解析——Controller 高可用切换架构
架构·rocketmq·java-rocketmq
数字化顾问6 小时前
(122页PPT)数字化架构的演进和治理(附下载方式)
java·运维·架构
修行者对6666 小时前
安卓阿里云镜像
android