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,代表了从呼叫状态到结束呼叫状态的变化;
相关推荐
高梦轩3 小时前
MySQL高可用
android·运维·数据库
学嵌入式的小杨同学6 小时前
STM32 进阶封神之路(三十三):W25Q64 任意长度写入深度实战 —— 从页限制到工业级通用读写(附完整代码 + 避坑指南)
stm32·单片机·嵌入式硬件·架构·硬件架构·嵌入式·flash
RATi GORI7 小时前
MySQL中的CASE WHEN语句:用法、示例与解析
android·数据库·mysql
MoFe18 小时前
【Mysql】创建IP授权用户并授权
android
wefly20178 小时前
纯前端架构深度解析:jsontop.cn,JSON 格式化与全栈开发效率平台
java·前端·python·架构·正则表达式·json·php
冬奇Lab9 小时前
Camera2 API架构基础:Android视频系统的大门
android·音视频开发·源码阅读
hnlgzb9 小时前
安卓app kotlin语法,Hilt是什么东西?
android·开发语言·kotlin
odoo中国10 小时前
Claude Code 架构总览
架构·claude·自动编程·claude cdoe
a东方青10 小时前
Claude Code 架构概览:从启动入口、查询引擎到工具链与远程桥接
架构
ANii_Aini10 小时前
Claude Code源码架构分析(含可以启动的源码本地部署)
架构·agent·claude·claude code