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,代表了从呼叫状态到结束呼叫状态的变化;
相关推荐
Predestination王瀞潞1 分钟前
3. JVM(Java Virtual Machine,Java 虚拟机):从核心架构到运行机制的全方位剖析
java·jvm·架构
别催小唐敲代码6 分钟前
前后端交互原理与架构全解
架构·状态模式·前后端
程知农6 分钟前
Android的配置笔记
android·笔记
Yungoal8 分钟前
计算机存储体系
架构
工作log10 分钟前
AI点餐助手架构全流程解析
java·开发语言·微服务·架构
幸福在路上wellbeing12 分钟前
Android 程序员 常用的AI工具有哪些
android·人工智能
阿拉斯攀登13 分钟前
【RK3576 安卓 JNI/NDK 系列 03】JNI 核心语法(上):数据类型映射与方法调用
android·安卓ndk入门·jni方法签名·java调用c++·rk3576底层开发
SelectDB技术团队14 分钟前
PostgreSQL + Apache Doris:构建用于实时分析的 HTAP 架构
数据库·postgresql·架构·实时数仓·湖仓一体·apache doris·selectdb
XerCis19 分钟前
安卓手机搭建Samba服务器SMB
android·服务器·智能手机
studyForMokey20 分钟前
【Android面试】Context专题
android·面试·职场和发展