基于网关查询缓冲节点的蓝牙通信方法和装置转让专利

申请号 : CN201811032735.7

文献号 : CN109089249A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李文田

申请人 : 北京字节跳动网络技术有限公司

摘要 :

本公开公开了一种基于网关查询缓冲节点的蓝牙通信方法、装置、电子设备和计算机可读存储介质。其中该基于网关查询缓冲节点的蓝牙通信方法包括:发送数据传输请求到蓝牙网关,所述数据传输请求中包括接收所述数据的第二设备的信息以及第一设备的信息;发送连接请求到所述蓝牙网关模拟的第二设备;响应于连接到所述蓝牙网关模拟的第二设备,发送所述数据到所述蓝牙网关模拟的第二设备。本公开实施例通过查询缓冲节点并将数据先缓存在缓冲节点的方式,解决了蓝牙设备的独占问题。

权利要求 :

1.一种基于网关查询缓冲节点的蓝牙通信方法,其特征在于,包括:发送数据传输请求到蓝牙网关,所述数据传输请求中包括接收所述数据的第二设备的信息以及第一设备的信息;

发送连接请求到所述蓝牙网关模拟的第二设备;

响应于连接到所述蓝牙网关模拟的第二设备,发送所述数据到所述蓝牙网关模拟的第二设备。

2.根据权利要求1所述的基于网关查询缓冲节点的蓝牙通信方法,其特征在于,在发送数据传输请求到云端之前,还包括:发送连接请求到第二设备;

确定未收到第二设备的响应或者收到拒绝连接的响应。

3.根据权利要求1所述的基于网关查询缓冲节点的蓝牙通信方法,其特征在于,所述响应于连接到所述蓝牙网关模拟的第二设备,发送所述数据到所述蓝牙网关模拟的第二设备,包括:响应于连接到所述蓝牙网关模拟的第二设备,发送数据、第一设备的信息以及第一信息到所述蓝牙网关模拟的第二设备。

4.根据权利要求3所述的基于网关查询缓冲节点的蓝牙通信方法,其特征在于,所述第一设备的信息为第一设备的MAC地址,所述第一信息为令牌。

5.根据权利要求1所述的基于网关查询缓冲节点的蓝牙通信方法,其特征在于,所述发送连接请求到所述蓝牙网关模拟的第二设备,包括:响应于扫描到带有所述蓝牙网关模拟的第二设备的信息的广播,发送连接请求到所述蓝牙网关模拟的第二设备。

6.一种基于网关查询缓冲节点的蓝牙通信方法,其特征在于,包括:接收第一设备发送的数据传输请求,所述数据传输请求中包括接收所述数据的第二设备的信息以及第一设备的信息;

查询与所述第二设备对应的缓冲节点的信息;

响应于查询到所述第二设备的缓冲节点为第三设备,创建第一服务模拟所述第二设备;

接收第一设备的连接请求,并将所述第一设备连接到所述第一服务上;

接收所述第一设备发送的数据。

7.根据权利要求6所述的基于网关查询缓冲节点的蓝牙通信方法,其特征在于,所述查询与所述第二设备对应的缓冲节点的信息,包括:通过第二设备的信息查询缓冲节点表,查询到与所述第二设备信息对应的缓冲节点的信息。

8.根据权利要求6所述的基于网关查询缓冲节点的蓝牙通信方法,其特征在于,所述响应于查询到所述第二设备的缓冲节点为第三设备,创建第一服务模拟所述第二设备,包括:响应于查询到所述第二设备的缓冲节点为第三设备,在本地创建第一服务模拟所述第二设备,第一服务发送带有所述第二设备的信息的广播。

9.根据权利要求6所述的基于网关查询缓冲节点的蓝牙通信方法,其特征在于,在所述接收第一设备发送的数据传输请求之前,还包括:接收第二设备的信息;

将所述第二设备的信息保存在缓冲节点表中。

10.根据权利要求6所述的基于网关查询缓冲节点的蓝牙通信方法,其特征在于,在接收所述第一设备发送的数据之后,还包括:扫描第二设备的广播;

响应于扫描到所述第二设备的广播,连接到所述第二设备;

发送所述数据到所述第二设备。

11.一种基于网关查询缓冲节点的蓝牙通信装置,其特征在于,包括:数据传输请求发送模块,用于发送数据传输请求到蓝牙网关,所述数据传输请求中包括接收所述数据的第二设备的信息以及第一设备的信息;

第一连接请求发送模块,用于发送连接请求到所述蓝牙网关模拟的第二设备;

第一数据发送模块,用于响应于连接到所述蓝牙网关模拟的第二设备,发送所述数据到所述蓝牙网关模拟的第二设备。

12.一种基于网关查询缓冲节点的蓝牙通信装置,其特征在于,包括:数据传输请求接收模块,用于接收第一设备发送的数据传输请求,所述数据传输请求中包括接收所述数据的第二设备的信息以及第一设备的信息;

查询模块,用于查询与所述第二设备对应的缓冲节点的信息;

模拟模块,用于响应于查询到所述第二设备的缓冲节点为第三设备,创建第一服务模拟所述第二设备;

第一连接模块,用于接收第一设备的连接请求,并将所述第一设备连接到所述第一服务上;

第一数据接收模块,用于接收所述第一设备发送的数据。

13.一种基于网关查询缓冲节点的蓝牙通信设备,包括:存储器,用于存储非暂时性计算机可读指令;以及处理器,用于运行所述计算机可读指令,使得所述处理器执行时实现根据权利要求1-5中任意一项所述的基于网关查询缓冲节点的蓝牙通信方法。

14.一种基于网关查询缓冲节点的蓝牙通信设备,包括:存储器,用于存储非暂时性计算机可读指令;以及处理器,用于运行所述计算机可读指令,使得所述处理器执行时实现根据权利要求6-

10中任意一项所述的基于网关查询缓冲节点的蓝牙通信方法。

15.一种计算机可读存储介质,用于存储非暂时性计算机可读指令,当所述非暂时性计算机可读指令由计算机执行时,使得所述计算机执行权利要求1-5中任意一项所述的基于网关查询缓冲节点的蓝牙通信方法。

16.一种计算机可读存储介质,用于存储非暂时性计算机可读指令,当所述非暂时性计算机可读指令由计算机执行时,使得所述计算机执行权利要求6-10中任意一项所述的基于网关查询缓冲节点的蓝牙通信方法。

说明书 :

基于网关查询缓冲节点的蓝牙通信方法和装置

技术领域

[0001] 本公开涉及通信领域,尤其涉及一种基于网关查询缓冲节点的蓝牙通信方法、装置、电子设备及计算机可读存储介质。

背景技术

[0002] 近年来,随着科技更新速度不断地加快,人们非常希望可以将新兴科技应用在日常生活中。相较于传统家居产品,智能化、网络化的家居产品由于其安全、简便、功能强大等特点更受欢迎。依托当下己经成熟的自动化技术,传感器技术,电气技术以及嵌入式技术,己经使部分家居产品智能化成为现实,如智能窗帘、智能照明、智能插座等。但智能家居的最终目的并不是单个家居产品的智能化,而是众多家居设备一起组成家居网络,结合现在己经普及的智能客户端设备,如智能手机,智能平板等,不断使日常的家居生活更加便捷化和人性化。目前,在智能家居终端设备方面标准化程度比较高,主流的无线通信方式有蓝牙通信。
[0003] 然而在使用蓝牙通信时,会出现蓝牙设备的独占问题,即当蓝牙设备已经被一个设备连接时,其他设备要连接这个蓝牙设备,必须等已连接的设备断开蓝牙通信之后才能连接该蓝牙设备,这给蓝牙设备的使用造成了不便。

发明内容

[0004] 第一方面,本公开实施例提供一种基于网关查询缓冲节点的蓝牙通信方法,包括:发送数据传输请求到蓝牙网关,所述数据传输请求中包括接收所述数据的第二设备的信息以及第一设备的信息;发送连接请求到所述蓝牙网关模拟的第二设备;响应于连接到所述蓝牙网关模拟的第二设备,发送所述数据到所述蓝牙网关模拟的第二设备。
[0005] 进一步的,在发送数据传输请求到云端之前,还包括:发送连接请求到第二设备;确定未收到第二设备的响应或者收到拒绝连接的响应。
[0006] 进一步的,所述响应于连接到所述蓝牙网关模拟的第二设备,发送所述数据到所述蓝牙网关模拟的第二设备,包括:响应于连接到所述蓝牙网关模拟的第二设备,发送数据、第一设备的信息以及第一信息到所述蓝牙网关模拟的第二设备。
[0007] 进一步的,所述第一设备的信息为第一设备的MAC地址,所述第一信息为令牌。
[0008] 进一步的,所述发送连接请求到所述蓝牙网关模拟的第二设备,包括:响应于扫描到带有所述蓝牙网关模拟的第二设备的信息的广播,发送连接请求到所述蓝牙网关模拟的第二设备。
[0009] 第二方面,本公开实施例提供一种基于网关查询缓冲节点的蓝牙通信方法,包括:接收第一设备发送的数据传输请求,所述数据传输请求中包括接收所述数据的第二设备的信息以及第一设备的信息;查询与所述第二设备对应的缓冲节点的信息;响应于查询到所述第二设备的缓冲节点为第三设备,创建第一服务模拟所述第二设备;接收第一设备的连接请求,并将所述第一设备连接到所述第一服务上;接收所述第一设备发送的数据。
[0010] 进一步的,所述查询与所述第二设备对应的缓冲节点的信息,包括:通过第二设备的信息查询缓冲节点表,查询到与所述第二设备信息对应的缓冲节点的信息。
[0011] 进一步的,所述响应于查询到所述第二设备的缓冲节点为第三设备,创建第一服务模拟所述第二设备,包括:响应于查询到所述第二设备的缓冲节点为第三设备,第三设备在本地创建第一服务模拟所述第二设备,第一服务发送带有所述第二设备的信息的广播。
[0012] 进一步的,在所述接收第一设备发送的数据传输请求之前,还包括:接收第二设备的信息;将所述第二设备的信息保存在缓冲节点表中。
[0013] 进一步的,在接收所述第一设备发送的数据之后,还包括:扫描第二设备的广播;响应于扫描到所述第二设备的广播,连接到所述第二设备;发送所述数据到所述第二设备。
[0014] 第三方面,本公开实施例提供一种基于网关查询缓冲节点的蓝牙通信装置,包括:
[0015] 数据传输请求发送模块,用于发送数据传输请求到蓝牙网关,所述数据传输请求中包括接收所述数据的第二设备的信息以及第一设备的信息;
[0016] 第一连接请求发送模块,用于发送连接请求到所述蓝牙网关模拟的第二设备;
[0017] 第一数据发送模块,用于响应于连接到所述蓝牙网关模拟的第二设备,发送所述数据到所述蓝牙网关模拟的第二设备。
[0018] 进一步的,所述基于网关查询缓冲节点的蓝牙通信装置还包括:
[0019] 连接请求发送模块,用于发送连接请求到第二设备;
[0020] 确定模块,用于确定未收到第二设备的响应或者收到拒绝连接的响应。
[0021] 进一步的,所述第一数据发送模块,用于响应于连接到所述蓝牙网关模拟的第二设备,发送数据、第一设备的信息以及第一信息到所述蓝牙网关模拟的第二设备。
[0022] 进一步的,所述第一连接请求发送模块,用于响应于扫描到带有所述蓝牙网关模拟的第二设备的信息的广播,发送连接请求到所述蓝牙网关模拟的第二设备。
[0023] 第四方面,本公开实施例提供一种基于网关查询缓冲节点的蓝牙通信装置,包括:
[0024] 数据传输请求接收模块,用于接收第一设备发送的数据传输请求,所述数据传输请求中包括接收所述数据的第二设备的信息以及第一设备的信息;
[0025] 查询模块,用于查询与所述第二设备对应的缓冲节点的信息;
[0026] 模拟模块,用于响应于查询到所述第二设备的缓冲节点为第三设备,创建第一服务模拟所述第二设备;
[0027] 第一连接模块,用于接收第一设备的连接请求,并将所述第一设备连接到所述第一服务上;
[0028] 第一数据接收模块,用于接收所述第一设备发送的数据。
[0029] 进一步的,所述查询模块,用于通过第二设备的信息查询缓冲节点表,查询到与所述第二设备信息对应的缓冲节点的信息。
[0030] 进一步的,所述模拟模块,用于响应于查询到所述第二设备的缓冲节点为第三设备,第三设备在本地创建第一服务模拟所述第二设备,第一服务发送带有所述第二设备的信息的广播。
[0031] 进一步的,所述基于网关查询缓冲节点的蓝牙通信装置还包括:
[0032] 信息接收模块,用于接收第二设备的信息;
[0033] 保存模块,用于将所述第二设备的信息保存在缓冲节点表中。
[0034] 进一步的,所述基于网关查询缓冲节点的蓝牙通信装置还包括:
[0035] 第一扫描模块,用于扫描第二设备的广播;
[0036] 第二连接模块,用于响应于扫描到所述第二设备的广播,连接到所述第二设备;
[0037] 第二数据发送模块,用于发送所述数据到所述第二设备。
[0038] 第五方面,本公开实施例提供一种基于网关查询缓冲节点的蓝牙通信设备,包括:至少一个处理器;以及,
[0039] 与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有能被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行前述第一方面中的任一所述基于网关查询缓冲节点的蓝牙通信方法。
[0040] 第六方面,本公开实施例提供一种基于网关查询缓冲节点的蓝牙通信设备,包括:至少一个处理器;以及,
[0041] 与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有能被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行前述第二方面中的任一所述基于网关查询缓冲节点的蓝牙通信方法。
[0042] 第七方面,本公开实施例提供一种非暂态计算机可读存储介质,其特征在于,该非暂态计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行前述第一方面中的任一所述基于网关查询缓冲节点的蓝牙通信方法。
[0043] 第八方面,本公开实施例提供一种非暂态计算机可读存储介质,其特征在于,该非暂态计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行前述第二方面中的任一所述基于网关查询缓冲节点的蓝牙通信方法。
[0044] 本公开实施例提供一种基于网关查询缓冲节点的蓝牙通信方法、装置、电子设备和计算机可读存储介质。其中该基于网关查询缓冲节点的蓝牙通信方法包括:发送数据传输请求到蓝牙网关,所述数据传输请求中包括接收所述数据的第二设备的信息以及第一设备的信息;发送连接请求到所述蓝牙网关模拟的第二设备;响应于连接到所述蓝牙网关模拟的第二设备,发送所述数据到所述蓝牙网关模拟的第二设备。本公开实施例通过查询缓冲节点并将数据先缓存在缓冲节点的方式,解决了蓝牙设备的独占问题,使得需要连接蓝牙设备的用户设备可以及时连接到需要的蓝牙设备上。
[0045] 上述说明仅是本公开技术方案的概述,为了能更清楚了解本公开的技术手段,而可依照说明书的内容予以实施,并且为让本公开的上述和其他目的、特征和优点能够更明显易懂,以下特举较佳实施例,并配合附图,详细说明如下。

附图说明

[0046] 为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0047] 图1为本公开实施例的典型应用环境示意图;
[0048] 图2为本公开实施例提供的基于网关查询缓冲节点的蓝牙通信方法实施例一的流程图;
[0049] 图3为本公开实施例提供的基于网关查询缓冲节点的蓝牙通信方法实施例二流程图;
[0050] 图4为本公开实施例提供的基于网关查询缓冲节点的蓝牙通信系统的通信流程图;
[0051] 图5为本公开实施例提供的基于网关查询缓冲节点的蓝牙通信装置实施例一的结构示意图;
[0052] 图6为本公开实施例提供的基于网关查询缓冲节点的蓝牙通信装置实施例二的结构示意图;
[0053] 图7为根据本公开实施例提供的基于网关查询缓冲节点的蓝牙通信设备的结构示意图;
[0054] 图8为根据本公开实施例提供的计算机可读存储介质的结构示意图;
[0055] 图9为根据本公开实施例提供的基于网关查询缓冲节点的蓝牙通信终端的结构示意图。

具体实施方式

[0056] 以下通过特定的具体实例说明本公开的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本公开的其他优点与功效。显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。本公开还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本公开的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
[0057] 需要说明的是,下文描述在所附权利要求书的范围内的实施例的各种方面。应显而易见,本文中所描述的方面可体现于广泛多种形式中,且本文中所描述的任何特定结构及/或功能仅为说明性的。基于本公开,所属领域的技术人员应了解,本文中所描述的一个方面可与任何其它方面独立地实施,且可以各种方式组合这些方面中的两者或两者以上。举例来说,可使用本文中所阐述的任何数目个方面来实施设备及/或实践方法。另外,可使用除了本文中所阐述的方面中的一或多者之外的其它结构及/或功能性实施此设备及/或实践此方法。
[0058] 还需要说明的是,以下实施例中所提供的图示仅以示意方式说明本公开的基本构想,图式中仅显示与本公开中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
[0059] 另外,在以下描述中,提供具体细节是为了便于透彻理解实例。然而,所属领域的技术人员将理解,可在没有这些特定细节的情况下实践所述方面。
[0060] 图1为本公开的典型应用场景示意图。在一个典型的应用中,系统中有多个用户设备101,典型的,用户设备101可以是智能手机,用户设备101可以通过特定的APP来控制蓝牙设备102,典型的,所述蓝牙设备102可以是蓝牙电灯,蓝牙设备102可以由蓝牙网关103来管理,用户设备101与蓝牙网关103以及蓝牙设备102与蓝牙网关103之间通过蓝牙链接105连接,蓝牙网关103可以通过wifi或者4G网络106与云端服务器连接。
[0061] 图2为本公开实施例提供的基于网关查询缓冲节点的蓝牙通信方法实施例一的流程图,本实施例提供的该基于网关查询缓冲节点的蓝牙通信方法可以由一基于网关查询缓冲节点的蓝牙通信装置来执行,该基于网关查询缓冲节点的蓝牙通信装置可以实现为软件,或者实现为软件和硬件的组合,该基于网关查询缓冲节点的蓝牙通信装置可以集成设置在通信系统中的某设备中,比如通信终端设备中。如图2所示,该方法包括如下步骤:
[0062] 步骤S201,发送数据传输请求到蓝牙网关,所述数据传输请求中包括接收所述数据的第二设备的信息以及第一设备的信息;
[0063] 在该步骤中,第一设备发送数据传输请求到蓝牙网关,以查找第二设备的缓冲节点,所述缓冲节点可以是一个有存储能力的设备。其中,所述第一设备可以是用户设备A,典型的用户设备A可以是各种智能终端设备,第二设备为蓝牙设备B,所述的第二设备的信息可以是所述蓝牙设备B的MAC地址,所述的第一设备的信息可以是用户设备A的用户ID。
[0064] 步骤S202,发送连接请求到所述蓝牙网关模拟的第二设备;
[0065] 在该步骤中,当用户设备A发送了数据发送请求之后,可以开始扫描蓝牙设备B的广播,所述广播中带有蓝牙设备B的MAC地址,当扫描到蓝牙设备B的广播时,发送连接请求到所述蓝牙设备B,请求连接到所述蓝牙设备B;在一种实现方式中,当用户设备A发送了数据发送请求之后,也可以直接使用蓝牙设备B的MAC地址连接所述蓝牙设备B。在该实施例中,所述蓝牙设备B为蓝牙网关所模拟出来的。
[0066] 步骤S203,响应于连接到所述蓝牙网关模拟的第二设备,发送所述数据到所述蓝牙网关模拟的第二设备。
[0067] 在连接到所述蓝牙设备B之后,用户设备A向所述蓝牙设备B发送数据,在该步骤中,所述数据中还包括第一信息和第一设备的信息,所述第一信息可以是令牌,所述第一设备的信息可以是用户设备A的用户ID。
[0068] 在该实施例中,在步骤S201之前,还可以包括:
[0069] 步骤S204,发送连接请求到第二设备;
[0070] 步骤S205,确定未收到第二设备的响应或者收到拒绝连接的响应。
[0071] 在上述步骤中,用户设备A尝试连接蓝牙设备B,但是由于蓝牙设备B已经被其他设备所连接或者蓝牙设备B暂时故障,因此可能不会对用户设备A的连接请求做出响应,当一定时间没有收到蓝牙设备B的响应时,用户设备A可以确定蓝牙设备B无响应;或者蓝牙设备B可以直接给用户设备A一个直接的拒绝连接的响应。当无法连接蓝牙设备B时,用户设备A才执行步骤S201。
[0072] 本公开实施例提供一种基于网关查询缓冲节点的蓝牙通信方法、装置、电子设备和计算机可读存储介质。其中该基于网关查询缓冲节点的蓝牙通信方法包括:发送数据传输请求到蓝牙网关,所述数据传输请求中包括接收所述数据的第二设备的信息以及第一设备的信息;发送连接请求到所述蓝牙网关模拟的第二设备;响应于连接到所述蓝牙网关模拟的第二设备,发送所述数据到所述蓝牙网关模拟的第二设备。本公开实施例通过查询缓冲节点并将数据先缓存在缓冲节点的方式,解决了蓝牙设备的独占问题,使得需要连接蓝牙设备的用户设备可以及时连接到需要的蓝牙设备上。
[0073] 图3为本公开实施例提供的基于网关查询缓冲节点的蓝牙通信方法实施例一的流程图,本实施例提供的该基于网关查询缓冲节点的蓝牙通信方法可以由一基于网关查询缓冲节点的蓝牙通信装置来执行,该基于网关查询缓冲节点的蓝牙通信装置可以实现为软件,或者实现为软件和硬件的组合,该基于网关查询缓冲节点的蓝牙通信装置可以集成设置在通信系统中的某设备中,比如云端设备中。如图3所示,该方法包括如下步骤:
[0074] 步骤301,接收第一设备发送的数据传输请求,所述数据传输请求中包括接收所述数据的第二设备的信息以及第一设备的信息;
[0075] 在该步骤中,蓝牙网关C接收用户设备A发送的数据传输请求,该数据传输请求是请求传输数据到蓝牙设备B,因此所述数据传输请求中包括了需要接收所述数据的蓝牙设备B的信息以及用户设备A的信息。在该实施例中,所述蓝牙设备B的信息可以是所述蓝牙设备B的MAC地址
[0076] 步骤302,查询与所述第二设备对应的缓冲节点的信息;
[0077] 在该步骤中,蓝牙网关根据第二设备的信息查询第二设备的缓存节点。在一个实施例中,所述缓存节点的信息存储在缓存节点表中,缓存节点可以是蓝牙网关C,所述缓存节点表可以是一个多对1的表,比如蓝牙网关C所管理的多个蓝牙设备都以蓝牙网关C作为缓存节点,以蓝牙设备B的MAC地址在所述缓存节点表中可以查到管理所述蓝牙设备B的蓝牙网关C的MAC地址。
[0078] 步骤303,响应于查询到所述第二设备的缓冲节点为第三设备,创建第一服务模拟所述第二设备;
[0079] 在该步骤中,当查询到蓝牙设备B的缓冲节点为蓝牙网关C之后,蓝牙网关C在本地创建第一服务来模拟蓝牙设备B,所述第一服务可以是gatt server,具体的,所述蓝牙网关可以在本地创建一个gatt server来模拟蓝牙设备B发送广播信号,所述广播信号中带有所述蓝牙设备B的MAC地址;或者所述gatt server只是模拟蓝牙设备B,等待其他用户设备的连接。
[0080] 步骤S304,接收第一设备的连接请求,并将所述第一设备连接到所述第一服务上;
[0081] 接收用户设备A的连接请求,并将所述用户设备A连接到所述gatt server上。
[0082] 步骤S305,接收所述第一设备发送的数据。
[0083] 蓝牙网关C通过gatt server接收用户设备A发送的数据,所述数据为发送给蓝牙设备B的数据,且所述数据中包括用户设备A的用户ID和/或与蓝牙设备B通信用的令牌。
[0084] 在该实施例中,在步骤S301之前,还可以包括:
[0085] 步骤S306,接收第二设备的信息;
[0086] 步骤S307,将所述第二设备的信息保存在缓冲节点表中。
[0087] 在该步骤中,蓝牙网关C可以接收蓝牙设备B的信息,该信息可以为蓝牙设备B的MAC地址;蓝牙设备B上电或者复位时,向蓝牙网关C发送设备的信息,蓝牙网关C将所述蓝牙设备B的信息保存在缓冲节点表中。
[0088] 在该实施例中,在步骤S305之后,还可以包括:
[0089] 步骤S308,扫描第二设备的广播;
[0090] 步骤S309,响应于扫描到所述第二设备的广播,连接到所述第二设备;
[0091] 步骤S310,发送所述数据到所述第二设备。
[0092] 需要注意的,在蓝牙网关还可以加入鉴权的步骤,蓝牙网关中预先存储有用户设备的鉴权信息,当接收到查询请求之后,云端会先对数据传输请求中的用户设备A的信息进行鉴权,比如查找用户设备A的用户ID和/或MAC地址是否在注册设备列表中。当鉴权通过之后,才会触发之后的查询操作,否则直接发送拒绝给用户设备A。
[0093] 图4为本公开实施例提供的基于网关查询缓冲节点的蓝牙通信系统的整体流程图,如图4所示,整个系统包括用户设备A、蓝牙设备B、蓝牙网关C三部分。在该通信系统中,最开始用户设备A连接蓝牙设备B,但是由于蓝牙设备B已经被其他用户设备所连接或者蓝牙设备B故障,用户设备A没有得到响应或者得到了拒绝连接的响应,此时用户设备A发送数据传输请求到蓝牙网关C,请求发送数据到蓝牙设备B,蓝牙网关C接收到用户设备A的请求之后,查询蓝牙设备B缓冲节点的信息,当查询到蓝牙设备B的缓冲节点为蓝牙网关C时,蓝牙网关C在本地创建第一服务来模拟蓝牙设备B,模拟方式可以是在蓝牙网关C的本地创建gatt server模拟蓝牙设备B发送广播,当用户设备A连接到gatt server之后,将数据发送到所述gatt server(实际上就是发送到蓝牙网关C上),蓝牙网关C在接收到所述所述数据之后,开始扫描蓝牙设备B的广播,当扫描到蓝牙设备B的广播之后,连接蓝牙设备B并将所述数据发送到所述蓝牙设备B中。在一个实施例中,如果所述蓝牙网关C在自己的缓冲节点表中没有查到蓝牙设备B的信息,其可以将数据发送请求转发给其他蓝牙网关,直到有蓝牙网关查到蓝牙设备B的信息,并模拟所述蓝牙设备B。
[0094] 在上述过程中,还可以加入鉴权的过程,蓝牙网关C预先存储有用户设备的鉴权信息,当接收到查询请求之后,蓝牙网关C会先对查询请求中的用户设备A的信息进行鉴权,比如查找用户设备A的用户ID和/或MAC地址是否在注册设备列表中。当鉴权通过之后,才会触发查询,否则直接发送拒绝给用户设备A。
[0095] 图5为本公开实施例提供的基于网关查询缓冲节点的蓝牙通信装置50实施例一的结构示意图,如图5所示,该装置包括:数据传输请求发送模块51、第一连接请求发送模块52、第一数据发送模块53。其中,
[0096] 数据传输请求发送模块51,用于发送数据传输请求到蓝牙网关,所述数据传输请求中包括接收所述数据的第二设备的信息以及第一设备的信息;
[0097] 第一连接请求发送模块52,用于发送连接请求到所述蓝牙网关模拟的第二设备;
[0098] 第一数据发送模块53,用于响应于连接到所述蓝牙网关模拟的第二设备,发送所述数据到所述蓝牙网关模拟的第二设备。
[0099] 进一步的,所述基于网关查询缓冲节点的蓝牙通信装置50还包括:
[0100] 连接请求发送模块54,用于发送连接请求到第二设备;
[0101] 确定模块55,用于确定未收到第二设备的响应或者收到拒绝连接的响应。
[0102] 进一步的,所述第一数据发送模块53,用于响应于连接到所述蓝牙网关模拟的第二设备,发送数据、第一设备的信息以及第一信息到所述蓝牙网关模拟的第二设备。
[0103] 进一步的,所述第一连接请求发送模块52,用于响应于扫描到带有所述蓝牙网关模拟的第二设备的信息的广播,发送连接请求到所述蓝牙网关模拟的第二设备。
[0104] 图5所示装置可以执行图2所示实施例的方法,本实施例未详细描述的部分,可参考对图2所示实施例的相关说明。该技术方案的执行过程和技术效果参见图2所示实施例中的描述,在此不再赘述。
[0105] 在本公开实施例提供的基于网关查询缓冲节点的蓝牙通信装置60实施例二中,如图6所示,所述基于网关查询缓冲节点的蓝牙通信装置60包括:数据传输请求接收模块61、查询模块62、模拟模块63、第一连接模块64、第一数据接收模块65。其中,
[0106] 数据传输请求接收模块61,用于接收第一设备发送的数据传输请求,所述数据传输请求中包括接收所述数据的第二设备的信息以及第一设备的信息;
[0107] 查询模块62,用于查询与所述第二设备对应的缓冲节点的信息;
[0108] 模拟模块63,用于响应于查询到所述第二设备的缓冲节点为第三设备,创建第一服务模拟所述第二设备;
[0109] 第一连接模块64,用于接收第一设备的连接请求,并将所述第一设备连接到所述第一服务上;
[0110] 第一数据接收模块65,用于接收所述第一设备发送的数据。
[0111] 进一步的,所述查询模块62,用于通过第二设备的信息查询缓冲节点表,查询到与所述第二设备信息对应的缓冲节点的信息。
[0112] 进一步的,所述模拟模块63,用于响应于查询到所述第二设备的缓冲节点为第三设备,第三设备在本地创建第一服务模拟所述第二设备,第一服务发送带有所述第二设备的信息的广播。
[0113] 进一步的,所述基于网关查询缓冲节点的蓝牙通信装置60还包括:
[0114] 信息接收模块66,用于接收第二设备的信息;
[0115] 保存模块67,用于将所述第二设备的信息保存在缓冲节点表中。
[0116] 进一步的,所述基于网关查询缓冲节点的蓝牙通信装置60还包括:
[0117] 第一扫描模块68,用于扫描第二设备的广播;
[0118] 第二连接模块69,用于响应于扫描到所述第二设备的广播,连接到所述第二设备;
[0119] 第二数据发送模块610,用于发送所述数据到所述第二设备。
[0120] 图6所述实施例二中的装置可以执行图3所示实施例的方法,本实施例未详细描述的部分,可参考对图3所示实施例的相关说明。该技术方案的执行过程和技术效果参见图3所示实施例中的描述,在此不再赘述。
[0121] 图7是图示根据本公开的实施例的电子设备的硬件框图。如图7所示,根据本公开实施例的电子设备70包括存储器71和处理器72。
[0122] 该存储器71用于存储非暂时性计算机可读指令。具体地,存储器71可以包括一个或多个计算机程序产品,该计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。该易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。该非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。
[0123] 该处理器72可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元,并且可以控制电子设备70中的其它组件以执行期望的功能。在本公开的一个实施例中,该处理器72用于运行该存储器71中存储的该计算机可读指令,使得该电子设备70执行前述的本公开各实施例的基于网关调度连接的蓝牙通信方法的全部或部分步骤。
[0124] 本领域技术人员应能理解,为了解决如何获得良好用户体验效果的技术问题,本实施例中也可以包括诸如通信总线、接口等公知的结构,这些公知的结构也应包含在本发明的保护范围之内。
[0125] 有关本实施例的详细说明可以参考前述各实施例中的相应说明,在此不再赘述。
[0126] 图8是图示根据本公开的实施例的计算机可读存储介质的示意图。如图8所示,根据本公开实施例的计算机可读存储介质80,其上存储有非暂时性计算机可读指令81。当该非暂时性计算机可读指令81由处理器运行时,执行前述的本公开各实施例的基于网关调度连接的蓝牙通信方法的全部或部分步骤。
[0127] 上述计算机可读存储介质80包括但不限于:光存储介质(例如:CD-ROM和DVD)、磁光存储介质(例如:MO)、磁存储介质(例如:磁带或移动硬盘)、具有内置的可重写非易失性存储器的媒体(例如:存储卡)和具有内置ROM的媒体(例如:ROM盒)。
[0128] 有关本实施例的详细说明可以参考前述各实施例中的相应说明,在此不再赘述。
[0129] 图9是图示根据本公开实施例的终端设备的硬件结构示意图。如图9所示,该基于网关调度连接的蓝牙通信终端90包括上述基于网关调度连接的蓝牙通信装置实施例。
[0130] 该终端设备可以以各种形式来实施,本公开中的终端设备可以包括但不限于诸如移动电话、智能电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、导航装置、车载终端设备、车载显示终端、车载电子后视镜等等的移动终端设备以及诸如数字TV、台式计算机等等的固定终端设备。
[0131] 作为等同替换的实施方式,该终端还可以包括其他组件。如图9所示,该基于网关调度连接的蓝牙通信终端90可以包括电源单元91、无线通信单元92、A/V(音频/视频)输入单元93、用户输入单元94、感测单元95、接口单元96、控制器97、输出单元98和存储单元99等等。图9示出了具有各种组件的终端,但是应理解的是,并不要求实施所有示出的组件,也可以替代地实施更多或更少的组件。
[0132] 其中,无线通信单元92允许终端90与无线通信系统或网络之间的无线电通信。A/V输入单元93用于接收音频或视频信号。用户输入单元94可以根据用户输入的命令生成键输入数据以控制终端设备的各种操作。感测单元95检测终端90的当前状态、终端90的位置、用户对于终端90的触摸输入的有无、终端90的取向、终端90的加速或减速移动和方向等等,并且生成用于控制终端90的操作的命令或信号。接口单元96用作至少一个外部装置与终端90连接可以通过的接口。输出单元98被构造为以视觉、音频和/或触觉方式提供输出信号。存储单元99可以存储由控制器97执行的处理和控制操作的软件程序等等,或者可以暂时地存储己经输出或将要输出的数据。存储单元99可以包括至少一种类型的存储介质。而且,终端90可以与通过网络连接执行存储单元99的存储功能的网络存储装置协作。控制器97通常控制终端设备的总体操作。另外,控制器97可以包括用于再现或回放多媒体数据的多媒体模块。控制器97可以执行模式识别处理,以将在触摸屏上执行的手写输入或者图片绘制输入识别为字符或图像。电源单元91在控制器97的控制下接收外部电力或内部电力并且提供操作各元件和组件所需的适当的电力。
[0133] 本公开提出的基于网关调度连接的蓝牙通信方法的各种实施方式可以使用例如计算机软件、硬件或其任何组合的计算机可读介质来实施。对于硬件实施,本公开提出的基于网关调度连接的蓝牙通信方法的各种实施方式可以通过使用特定用途集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理装置(DSPD)、可编程逻辑装置(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、被设计为执行这里描述的功能的电子单元中的至少一种来实施,在一些情况下,本公开提出的基于网关调度连接的蓝牙通信方法的各种实施方式可以在控制器77中实施。对于软件实施,本公开提出的基于网关调度连接的蓝牙通信方法的各种实施方式可以与允许执行至少一种功能或操作的单独的软件模块来实施。软件代码可以由以任何适当的编程语言编写的软件应用程序(或程序)来实施,软件代码可以存储在存储单元99中并且由控制器97执行。
[0134] 有关本实施例的详细说明可以参考前述各实施例中的相应说明,在此不再赘述。
[0135] 以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
[0136] 本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
[0137] 另外,如在此使用的,在以“至少一个”开始的项的列举中使用的“或”指示分离的列举,以便例如“A、B或C的至少一个”的列举意味着A或B或C,或AB或AC或BC,或ABC(即A和B和C)。此外,措辞“示例的”不意味着描述的例子是优选的或者比其他例子更好。
[0138] 还需要指出的是,在本公开的系统和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。
[0139] 可以不脱离由所附权利要求定义的教导的技术而进行对在此所述的技术的各种改变、替换和更改。此外,本公开的权利要求的范围不限于以上所述的处理、机器、制造、事件的组成、手段、方法和动作的具体方面。可以利用与在此所述的相应方面进行基本相同的功能或者实现基本相同的结果的当前存在的或者稍后要开发的处理、机器、制造、事件的组成、手段、方法或动作。因而,所附权利要求包括在其范围内的这样的处理、机器、制造、事件的组成、手段、方法或动作。
[0140] 提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
[0141] 为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。