基于BLE的蓝牙耳机语音互动通讯方法技术

技术编号:26607687 阅读:23 留言:0更新日期:2020-12-04 21:32
本发明专利技术提出一种基于BLE的蓝牙耳机语音互动通讯方法,实现蓝牙耳机与终端APP之间的语音互动功能,且免除了用户选择BLE设备的困惑;其具体包含以下操作:定义蓝牙耳机的BLE广播报文中的厂商数据包;其中包括蓝牙耳机Mac址字段、Magic字符串字段和校验字段;所述Magic字符串字段中记录有Magic字符串;所述Magic字符串预设定于蓝牙耳机及终端APP的软件代码里;蓝牙耳机广播BLE广播报文;终端APP接收BLE广播报文并从中提取到蓝牙耳机的Mac址,根据预设的Magic字符串以及所获得的Mac址自行构建上述厂商数据包,并计算获得对应的校验md5值;取md5值与所接收到的BLE广播报文作比对,若与BLE广播报文中的校验字段内容一致,则判定为目标设备,终端APP向该目标设备建立BLE链接。

【技术实现步骤摘要】
基于BLE的蓝牙耳机语音互动通讯方法
本专利技术属于蓝牙耳机
,具体涉及一种基于BLE的蓝牙耳机语音互动通讯方法。
技术介绍
近几年,蓝牙耳机市场迅猛发展,音质越来越好,价格也逐渐走低。另一方面,手机上的语音助手、翻译助手类App也越来越成熟。传统的蓝牙耳机在与手机配对连接后,主要用于打电话、听音乐等功能,近年虽然苹果手机上有siri语音助手,安卓手机上各大手机厂商也推出了类似的语音助手,但整体上这些语音助手的功能还不够实用,对沟通过程中上下文的理解也很欠缺。因此,一些体验更好的语音互动App不断涌现,可是这些App都无法使用蓝牙耳机来进行互动,因为蓝牙耳机用于语音输入的麦克风缺省是关闭的,因此根本无法拾音。
技术实现思路
为克服现有技术中存在的缺陷,本专利技术提出一种基于BLE的蓝牙耳机语音互动通讯方法,其利用BLE通讯通过实现跟手机App的通讯对接,实现蓝牙耳机与终端APP之间的语音互动功能,且免除了用户选择BLE设备的困惑,其具体
技术实现思路
如下:一种基于BLE的蓝牙耳机语音互动通讯方法,其包含以下操作:1)定义蓝牙耳机的BLE广播报文中的厂商数据包;所述厂商数据包的字段包括有:蓝牙耳机Mac地址字段、Magic字符串字段和校验字段;其中,所述Magic字符串字段中记录有用于蓝牙耳机和终端APP相识别的Magic字符串;所述Magic字符串预设定于蓝牙耳机及终端APP的软件代码里;2)建立BLE链接;蓝牙耳机广播带有上述厂商数据包的BLE广播报文;终端APP接收BLE广播报文并从中提取到蓝牙耳机的Mac地址;终端APP根据预设的Magic字符串以及所获得的Mac址自行构建上述厂商数据包,并计算获得对应的校验md5值;将计算所得的md5值与所接收到的蓝牙耳机的BLE广播报文作比对,若与BLE广播报文中的校验字段内容一致,则判定为目标设备,终端APP向该目标设备建立BLE链接;3)认证操作;在终端App和蓝牙耳机建立BLE链接后,终端App向蓝牙耳机发出认证请求,所述认证请求中包含终端APP的通讯令牌;蓝牙耳机接收到所述认证请求后,首先对认证请求中除校验字段外的数据进行md5计算,将计算获得的校验md5值与认证请求的校验字段进行比对,若一致,则蓝牙耳机保存所述终端APP的通讯令牌,并生成响应数据包发送给终端APP,所述响应数据包中包含有耳机的通讯令牌以及认证结果result;终端APP在接收到响应数据包后,对响应数据包除校验字段外的数据进行md5计算,将计算获得的校验md5值与响应数据包的校验字段进行比对,若一致,则终端APP保存所述耳机的通讯令牌,完成认证;4)语音交互操作;在终端APP的认证请求通过后,通过蓝牙耳机的任意按键操作触发启动语音互动模式;在语音互动模式下,蓝牙耳机向终端APP发出开启互动模式请求,所述开启互动模式请求中包含所述终端APP的通讯令牌;终端APP接收到开启互动模式请求后,对所述开启互动模式请求中除校验字段外的数据进行md5计算,将计算获得的校验md5值与开启互动模式请求的校验字段进行比对,若一致,则与蓝牙耳机建立sco连接进行通讯,即使用蓝牙耳机来进行拾音和播音;终端APP通过蓝牙耳机拾取用户的语音数据,然后发送给云端实现语音数据的识别及信息处理操作,最后,处理结果通过语音形式发回给蓝牙耳机。于本专利技术的一个或多个实施例当中,所述厂商数据包、认证请求、响应数据包、开启互动模式请求中的各校验字段存储两字节的md5值;对应地,在执行各步骤中的校验操作时,将计算获得的校验md5值取前两字节与校验字段的内容进行比对。于本专利技术的一个或多个实施例当中,在所述语音交互操作中,终端APP接收到开启互动模式请求并校验通过后,调用startBluetoothSco()函数建立蓝牙sco连接,其中,终端APP先注册ACTION_SCO_AUDIO_STATE_UPDATED事件,当收到这个事件并且附带的状态参数是SCO_AUDIO_STATE_CONNECTED时,即表示建立蓝牙sco链路成功;随后调用setBluetoothScoOn(true)来请求使用蓝牙耳机来进行sco通讯。于本专利技术的一个或多个实施例当中,在所述认证操作当中,终端App向蓝牙耳机发出的认证请求中包含心跳频率Freq;在蓝牙耳机与终端APP连接后,蓝牙耳机依照心跳频率Freq向终端APP发出心跳数据包,所述心跳数据包中包含蓝牙耳机的电量值信息;通过所述心跳数据包向终端APP反馈蓝牙耳机的电量状态,以及保持终端APP与蓝牙耳机的通讯连接。于本专利技术的一个或多个实施例当中,在接收到心跳数据包后,终端APP向蓝牙耳机回应一答复数据包以告知是否成功获取到电量值信息;若成功,则蓝牙耳机等待下一发送时刻再发送新的心跳数据包;否则,立即重发。于本专利技术的一个或多个实施例当中,所述厂商数据包的字段依次包括:厂商数据包长度字段、厂商数据包标志字段、蓝牙耳机Mac址字段、Magic字符串字段和校验字段。于本专利技术的一个或多个实施例当中,所述认证请求、响应数据包、开启互动模式请求、心跳数据包、答复数据包的报文格式相同,分别包括:通讯数据包长度字段、Magic字符串字段、通讯主命令字段、通讯子命令字段、命令参数字段和校验字段。本专利技术的有益效果是:通过Magic字符串与设备Mac址构成数据包并进行md5计算,继而通过md5值与设备BLE广播报文中进行校验,自动确定目标设备并建立连接,免除了现有技术当中用户选择BLE设备的困惑,实现蓝牙耳机的差异化增值;并经认正、语音交互操作实现蓝牙耳机与终端APP之间的语音互动功能,在外出驾车等特殊情况下,对改善用户体验有很大的帮助;而且该方法通用性强,可在多种蓝牙耳机方案上实现,也可在各类终端App集成实现互动。附图说明图1为本专利技术的终端APP与蓝牙耳机的通讯流程图。具体实施方式如下结合附图1对本申请方案作进一步描述:一般的BLE设备发出的广播包,尽管也会包括设备名称、蓝牙地址类的信息,但是并无特别之处,用户需要在手机屏幕上挑选一个他需要的设备来进行连接。就像一个人初到一个陌生的城市的机场,接机的人员只告诉你说他在出口等你,所以一旦你到达出口,面对一长排接机的人员,会变得手足无措。但是如果双方约定好一个暗号数字,然后让接机者举着这个暗号数字的牌子,你就扫一眼就能准确无误的发现他了。故此,我们应用到广播包的厂商数据包里,其组成如下(参见下表1):厂商数据包长度字段、厂商数据包标志字段、蓝牙耳机Mac址字段、Magic字符串字段和校验字段;其中,所述Magic字符串字段中记录有用于蓝牙耳机和终端APP识别的Magic字符串;表1厂商数据包格式所述Magic字符串预设于终端APP及蓝牙耳机端的软件代码里;在BLE扫描过程中,终端APP(即手机AI语音助手)可以本文档来自技高网...

【技术保护点】
1.一种基于BLE的蓝牙耳机语音互动通讯方法,其特征在于,包含以下操作:/n1)定义蓝牙耳机的BLE广播报文中的厂商数据包;/n所述厂商数据包的字段包括有:蓝牙耳机Mac地址字段、Magic字符串字段和校验字段;其中,所述Magic字符串字段用于记录蓝牙耳机和终端APP相互识别的Magic字符串;/n所述Magic字符串预设定于蓝牙耳机及终端APP的软件代码里;/n2)建立BLE链接;/n蓝牙耳机广播带有上述厂商数据包的BLE广播报文;/n终端APP接收BLE广播报文并从中提取到蓝牙耳机的Mac地址;/n终端APP根据预设的Magic字符串以及所获得的Mac地址自行构建上述厂商数据包,并计算获得对应的校验md5值;/n将计算所得的md5值与所接收到的蓝牙耳机的BLE广播报文作比对,若与BLE广播报文中的校验字段内容一致,则判定为目标设备,终端APP向该目标设备发起建立BLE链接请求;/n3)认证操作;/n在终端App和蓝牙耳机建立BLE链接后,终端App向蓝牙耳机发出认证请求,所述认证请求中包含终端APP的通讯令牌;/n蓝牙耳机接收到所述认证请求后,首先对认证请求中除校验字段外的数据进行md5计算,将计算获得的校验md5值与认证请求的校验字段进行比对,若一致,则蓝牙耳机保存所述终端APP的通讯令牌,并生成响应数据包发送给终端APP,所述响应数据包中包含有耳机的通讯令牌以及认证结果result;/n终端APP在接收到响应数据包后,对响应数据包除校验字段外的数据进行md5计算,将计算获得的校验md5值与响应数据包的校验字段进行比对,若一致,则终端APP保存所述耳机的通讯令牌,完成认证;/n4)语音交互操作;/n在终端APP的认证请求通过后,通过蓝牙耳机的任意按键操作触发启动语音互动模式;/n在语音互动模式下,蓝牙耳机向终端APP发出开启互动模式请求,所述开启互动模式请求中包含所述终端APP的通讯令牌;/n终端APP接收到开启互动模式请求后,对所述开启互动模式请求中除校验字段外的数据进行md5计算,将计算获得的校验md5值与开启互动模式请求的校验字段进行比对,若一致,则与蓝牙耳机建立sco连接进行通讯,即使用蓝牙耳机来进行拾音和播音;/n终端APP通过蓝牙耳机拾取用户的语音数据,然后发送给云端实现语音数据的识别及信息处理操作,最后,处理结果通过语音形式发回给蓝牙耳机。/n...

【技术特征摘要】
1.一种基于BLE的蓝牙耳机语音互动通讯方法,其特征在于,包含以下操作:
1)定义蓝牙耳机的BLE广播报文中的厂商数据包;
所述厂商数据包的字段包括有:蓝牙耳机Mac地址字段、Magic字符串字段和校验字段;其中,所述Magic字符串字段用于记录蓝牙耳机和终端APP相互识别的Magic字符串;
所述Magic字符串预设定于蓝牙耳机及终端APP的软件代码里;
2)建立BLE链接;
蓝牙耳机广播带有上述厂商数据包的BLE广播报文;
终端APP接收BLE广播报文并从中提取到蓝牙耳机的Mac地址;
终端APP根据预设的Magic字符串以及所获得的Mac地址自行构建上述厂商数据包,并计算获得对应的校验md5值;
将计算所得的md5值与所接收到的蓝牙耳机的BLE广播报文作比对,若与BLE广播报文中的校验字段内容一致,则判定为目标设备,终端APP向该目标设备发起建立BLE链接请求;
3)认证操作;
在终端App和蓝牙耳机建立BLE链接后,终端App向蓝牙耳机发出认证请求,所述认证请求中包含终端APP的通讯令牌;
蓝牙耳机接收到所述认证请求后,首先对认证请求中除校验字段外的数据进行md5计算,将计算获得的校验md5值与认证请求的校验字段进行比对,若一致,则蓝牙耳机保存所述终端APP的通讯令牌,并生成响应数据包发送给终端APP,所述响应数据包中包含有耳机的通讯令牌以及认证结果result;
终端APP在接收到响应数据包后,对响应数据包除校验字段外的数据进行md5计算,将计算获得的校验md5值与响应数据包的校验字段进行比对,若一致,则终端APP保存所述耳机的通讯令牌,完成认证;
4)语音交互操作;
在终端APP的认证请求通过后,通过蓝牙耳机的任意按键操作触发启动语音互动模式;
在语音互动模式下,蓝牙耳机向终端APP发出开启互动模式请求,所述开启互动模式请求中包含所述终端APP的通讯令牌;
终端APP接收到开启互动模式请求后,对所述开启互动模式请求中除校验字段外的数据进行md5计算,将计算获得的校验md5值与开启互动模式请求的校验字段进行比对,若一致,则与蓝牙耳机建立sco连接进行通讯,即使用蓝牙耳机来进行拾音和播音;
终端APP通过蓝牙耳机拾取用户的语音数据,然后发送给云端实现语音数据的识别及信息处理操作,最后,处理结果...

【专利技术属性】
技术研发人员:谢军陈有源
申请(专利权)人:深圳市蓝蜂时代实业有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1