终端调度方法和装置与流程

文档序号:15650516发布日期:2018-10-12 23:06阅读:179来源:国知局

本发明涉及通信技术领域,特别是涉及一种终端调度方法和装置。



背景技术:

随着生活水平的不断提高,用户终端需要与越来越多的设备建立连接进行通信,为用户提供服务。

当设备与用户终端建立连接之后,用户终端可以给设备发数据,设备也可以给用户终端发数据。例如,蓝牙设备与用户终端a连接之后,蓝牙设备可以与用户终端a进行通信,蓝牙设备是资源独占的,也即,一个蓝牙设备为一个用户终端服务,当用户终端a与某个蓝牙设备连接之后,用户终端a之外的其它用户终端不能与该蓝牙设备建立连接。

但是,通常情况下,在设备与用户终端建立连接后,设备与用户终端只在少部分时间进行通信,而大部分时间设备是空闲的,造成资源浪费。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种能够提高蓝牙设备的资源利用率的终端调度方法和装置。

一种终端调度方法,所述方法包括:

接收请求终端发送的请求消息;其中,所述请求消息包括所述请求终端的终端标识和蓝牙设备的设备标识;

根据所述蓝牙设备的设备标识确定所述蓝牙设备的通信状态;

根据所述蓝牙设备的通信状态和预设的调度规则,从所述蓝牙设备的设备标识对应的多个终端中确定目标终端;

向所述目标终端发送蓝牙连接消息,所述蓝牙连接消息用于指示所述目标终端与所述蓝牙设备连接。

在其中一个实施例中,所述根据所述蓝牙设备的设备标识确定所述蓝牙设备的通信状态,包括:

若在预设时长内未接收到所述蓝牙设备的设备标识对应的通信消息,则确定所述蓝牙设备的通信状态为空闲状态;所述通信消息为正在与所述蓝牙设备通信的终端发送的消息;

若在预设时长内接收到所述蓝牙设备的设备标识对应的通信消息,则确定所述蓝牙设备的通信状态为工作状态。

在其中一个实施例中,所述根据所述蓝牙设备的通信状态和预设的调度规则,从所述蓝牙设备的设备标识对应的多个终端中确定目标终端,包括:

若所述蓝牙设备的通信状态为所述空闲状态,则根据各请求终端的优先级顺序,从所述蓝牙设备的设备标识对应的多个终端中,确定所述目标终端。

在其中一个实施例中,所述根据各请求终端的优先级顺序,从所述蓝牙设备的设备标识对应的多个终端中,确定所述目标终端,包括:

若所述蓝牙设备的设备标识对应的多个终端中存在一个最高优先级的终端,则将所述最高优先级的终端确定为所述目标终端;

若所述蓝牙设备的设备标识对应的多个终端中存在至少两个最高优先级的终端,则将所述至少两个最高优先级的终端中,最早请求与所述蓝牙设备连接的终端确定为所述目标终端。

在其中一个实施例中,所述根据所述蓝牙设备的通信状态和预设的调度规则,从所述蓝牙设备的设备标识对应的多个终端中确定目标终端,包括:

若所述蓝牙设备的通信状态为工作状态,则根据所述请求终端与第一终端的优先级确定所述目标终端;所述第一终端为当前正在与所述蓝牙设备通信的终端。

在其中一个实施例中,所述根据所述请求终端与所述第一终端的优先级确定所述目标终端,包括:

若所述请求终端的优先级高于所述第一终端的优先级,则将所述请求终端确定为所述目标终端;

或者,

若所述请求终端的优先级与所述第一终端的优先级相同,则获取所述第一终端与所述蓝牙设备之间的通信频率,并在所述通信频率小于预设阈值时,将所述请求终端确定为所述目标终端。

在其中一个实施例中,所述向所述目标终端发送连接消息之前,所述方法还包括:

向所述第一终端发送断开连接请求消息;所述断开连接请求消息用于指示所述第一终端与所述蓝牙设备断开连接;

接收所述第一终端发送的断开连接响应消息;所述断开连接响应消息用于表征所述第一终端与所述蓝牙设备已断开连接。

在其中一个实施例中,所述根据所述请求终端与所述第一终端的优先级确定所述目标终端,包括:

若所述请求终端的优先级小于所述第一终端的优先级,则检测所述第一终端与所述蓝牙设备之间的连接状态;

在确定所述第一终端与所述蓝牙设备之间的连接状态为断开连接时,将所述请求终端确定为所述目标终端。

在其中一个实施例中,所述方法还包括:

接收第二终端发送的第一通知消息;所述通知消息为所述第二终端在接收到所述蓝牙设备的广播消息后发送的消息,所述广播消息用于指示所述蓝牙设备当前需要与所述目标终端通信;

将所述第二通知消息发送给所述目标终端;所述第二通知消息携带许可码,所述许可码用于所述蓝牙设备对所述目标终端的身份进行验证。

一种终端调度装置,包括:

接收模块,用于接收请求终端发送的请求消息;其中,所述请求消息包括所述请求终端的终端标识和蓝牙设备的设备标识;

检测模块,用于根据所述蓝牙设备的设备标识确定所述蓝牙设备的通信状态;所述通信状态为空闲状态或工作状态;

确定模块,用于根据所述蓝牙设备的通信状态和预设的调度规则,从所述蓝牙设备的设备标识对应的多个终端中确定目标终端;

发送模块,用于向所述目标终端发送蓝牙连接消息,所述蓝牙连接消息用于指示所述目标终端与所述蓝牙设备连接。

在其中一个实施例中,所述检测模块具体用于若在预设时长内未接收到所述蓝牙设备的设备标识对应的通信消息,则确定所述蓝牙设备的通信状态为空闲状态;所述通信消息为正在与所述蓝牙设备通信的终端发送的消息;若在预设时长内接收到所述蓝牙设备的设备标识对应的通信消息,则确定所述蓝牙设备的通信状态为工作状态。

在其中一个实施例中,所述确定模块具体用于若所述蓝牙设备的通信状态为所述空闲状态,则根据各请求终端的优先级顺序,从所述蓝牙设备的设备标识对应的多个终端中,确定所述目标终端。

在其中一个实施例中,所述确定模块根据各请求终端的优先级顺序,从所述蓝牙设备的设备标识对应的多个终端中,确定所述目标终端,包括:

若所述确定模块确定所述蓝牙设备的设备标识对应的多个终端中存在一个最高优先级的终端,则将所述最高优先级的终端确定为所述目标终端;

若所述确定模块确定所述蓝牙设备的设备标识对应的多个终端中存在至少两个最高优先级的终端,则将所述至少两个最高优先级的终端中,最早请求与所述蓝牙设备连接的终端确定为所述目标终端。

在其中一个实施例中,所述确定模块具体用于若所述蓝牙设备的通信状态为工作状态,则根据所述请求终端与第一终端的优先级确定所述目标终端;所述第一终端为当前正在与所述蓝牙设备通信的终端。

在其中一个实施例中,所述确定模块根据所述请求终端与所述第一终端的优先级确定所述目标终端,包括:

若所述确定模块确定所述请求终端的优先级高于所述第一终端的优先级,则将所述请求终端确定为所述目标终端;

或者,

若所述确定模块确定所述请求终端的优先级与所述第一终端的优先级相同,则获取所述第一终端与所述蓝牙设备之间的通信频率,并在所述通信频率小于预设阈值时,将所述请求终端确定为所述目标终端。

在其中一个实施例中,所述发送模块还用于向所述第一终端发送断开连接请求消息;所述断开连接请求消息用于指示所述第一终端与所述蓝牙设备断开连接;

所述接收模块还用于接收所述第一终端发送的断开连接响应消息;所述断开连接响应消息用于表征所述第一终端与所述蓝牙设备已断开连接。

在其中一个实施例中,所述确定模块根据所述请求终端与所述第一终端的优先级确定所述目标终端,包括:

若所述确定模块确定所述请求终端的优先级小于所述第一终端的优先级,则检测所述第一终端与所述蓝牙设备之间的连接状态;在确定所述第一终端与所述蓝牙设备之间的连接状态为断开连接时,将所述请求终端确定为所述目标终端。

在其中一个实施例中,所述接收模块还用于接收第二终端发送的第一通知消息;所述通知消息为所述第二终端在接收到所述蓝牙设备的广播消息后发送的消息,所述广播消息用于指示所述蓝牙设备当前需要与所述目标终端通信;

所述发送模块还用于将所述第二通知消息发送给所述目标终端;所述第二通知消息携带许可码,所述许可码用于所述蓝牙设备对所述目标终端的身份进行验证。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下方法步骤:

接收请求终端发送的请求消息;其中,所述请求消息包括所述请求终端的终端标识和蓝牙设备的设备标识;

根据所述蓝牙设备的设备标识确定所述蓝牙设备的通信状态;

根据所述蓝牙设备的通信状态和预设的调度规则,从所述蓝牙设备的设备标识对应的多个终端中确定目标终端;

向所述目标终端发送蓝牙连接消息,所述蓝牙连接消息用于指示所述目标终端与所述蓝牙设备连接。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下方法步骤:

接收请求终端发送的请求消息;其中,所述请求消息包括所述请求终端的终端标识和蓝牙设备的设备标识;

根据所述蓝牙设备的设备标识确定所述蓝牙设备的通信状态;

根据所述蓝牙设备的通信状态和预设的调度规则,从所述蓝牙设备的设备标识对应的多个终端中确定目标终端;

向所述目标终端发送蓝牙连接消息,所述蓝牙连接消息用于指示所述目标终端与所述蓝牙设备连接。

本申请实施例提供的终端调度方法和装置,接收请求终端发送的请求消息,根据蓝牙设备的设备标识确定蓝牙设备的通信状态,根据蓝牙设备的通信状态和预设的调度规则,从蓝牙设备的设备标识对应的多个终端中确定目标终端,向目标终端发送蓝牙连接消息,以使目标终端与蓝牙设备连接,云端服务器根据蓝牙设备的通信状态,调度终端与蓝牙设备通信,提高了蓝牙设备的资源利用率。

附图说明

图1为本申请实施例提供的一种终端调度的方法的应用场景示意图;

图2为本申请一实施例提供的一种终端调度方法的流程图;

图3为本申请另一实施例提供的一种终端调度方法的流程图;

图4为本申请又一实施例提供的一种终端调度方法的流程图;

图5为本申请实施例提供的一种终端调度装置的框图;

图6是本申请实施例提供的执行终端调度方法的电子设备的硬件结构示意图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请提供的终端调度方法,可以应用于如图1所示的应用环境中。如图1所示,该场景中包括终端1、终端2、终端3、云端服务器4和蓝牙设备5。其中,终端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,云端服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现,一个云端服务器可以同时管理多个终端和多个蓝牙设备,蓝牙设备为低功耗的蓝牙设备等。需要说明的是,图1中画出了三个终端和一个蓝牙设备,还可以包括更多数目的终端和更多数据的蓝牙设备,并不以图1为限。

图2为本申请一实施例提供的一种终端调度方法的流程图,该方法的执行主体为图1中所示的云端服务器,如图2所示,该方法包括以下步骤:

步骤201、接收请求终端发送的请求消息;其中,请求消息包括请求终端的终端标识和蓝牙设备的设备标识。

其中,蓝牙设备为蓝牙资源独占设备。

在本实施例中,当请求终端需要与蓝牙设备通信时,向云端服务器发送携带请求终端的终端标识和蓝牙设备的设备标识的请求消息,请求与该设备标识对应的蓝牙设备直连。直连指的是终端与蓝牙设备直接连接,终端与蓝牙设备之间不需要其他设备作为通信节点。该蓝牙设备可以为低功耗的蓝牙传感器,且该蓝牙设备为蓝牙资源独占设备,蓝牙资源独占设备与一个终端连接时,其它的终端不能与该蓝牙资源独占设备连接。

请求终端的终端标识可以为请求终端的型号、唯一标识码、编码等,蓝牙设备的设备标识可以为蓝牙设备的型号、唯一标识码、编码等。

步骤202、根据蓝牙设备的设备标识确定蓝牙设备的通信状态。

在本实施例中,云端服务器接收到请求终端发送的请求消息后,检测该请求消息中的设备标识对应的蓝牙设备的通信状态。例如,每个终端从向云端服务器发送请求消息开始,不断向云端服务器上报通状况,终端不论是与蓝牙设备建立连接、发送数据、接收数据、断开连接等,终端都需要向云端服务器发送通信消息,云端服务器可以根据终端上报的通信消息中的蓝牙设备的设备标识判断各蓝牙设备的通信状态。或者,云端服务器还可以监测蓝牙设备的通信数据,根据蓝牙设备的通信数据判断蓝牙设备的通信状态;或者,云端服务器监测蓝牙设备的发射功率和接收功率,从而判断蓝牙设备的通信状态。

可选地,蓝牙设备的通信状态可以为空闲状态或工作状态。空闲状态指的是蓝牙设备当前没有进行数据收发或没有与终端正在建立连接,工作状态指的是蓝牙设备当前正在进行数据收发或者正在与终端建立连接。例如,若蓝牙设备当前没有与任何设备连接,或者,蓝牙设备当前与终端a连接,但没有与终端a进行数据通信,则蓝牙设备为空闲状态。若蓝牙设备当前正在与终端b建立连接,或者,蓝牙设备当前正在与终端b进行数据通信,则蓝牙设备为工作状态。对于蓝牙设备的空闲状态和工作状态的定义和划分,还可以采用其它的规则,本申请中不以此为限。

步骤203、根据蓝牙设备的通信状态和预设的调度规则,从蓝牙设备的设备标识对应的多个终端中确定目标终端。

其中,蓝牙设备的设备标识对应的多个终端包括请求与该蓝牙设备连接的请求终端和当前正在与该蓝牙设备连接的终端。

在本实施例中,可以根据实际需求预先设置调度规则,该调度规则可以为等级优先级规则、时间优先级规则、业务优先级规则等,根据蓝牙设备的通信状态和预设的调度规则,从蓝牙设备的设备标识对应的多个终端中确定目标终端。例如,当蓝牙设备的通信状态为空闲状态时,可以将多个请求终端中等级优先级最高的终端确定为目标终端;或者,当蓝牙设备的通信状态为空闲状态时,将最早请求与蓝牙设备直连的请求终端确定为目标终端,等等。

步骤204、向目标终端发送蓝牙连接消息,蓝牙连接消息用于指示目标终端与蓝牙设备连接。

在本实施例中,云端服务器确定了目标终端后,向该目标终端发送蓝牙连接消息,目标终端接收到蓝牙连接消息后,与蓝牙终端建立连接。

可选地,该蓝牙连接消息中还可以包括许可码,该许可码可以为一次有效,目标终端将该许可码发送给蓝牙设备,蓝牙设备根据该许可码对目标终端的身份进行验证,验证通过后,蓝牙设备与目标终端连接成功。

现有技术中,当蓝牙设备与终端a连接时,在终端a与蓝牙设备断开连接之前,其它的终端b无法与蓝牙设备连接,必须等待终端a主动与蓝牙设备断开连接之后,终端b才可以与蓝牙设备连接,在终端a与蓝牙设备之间没有数据传输时,蓝牙设备仍然被占用,造成资源浪费。本申请实施例的方法,采用预设的调度规则,在蓝牙设备与终端a连接时,还可以调度其它的终端b与蓝牙设备连接,尤其是云端服务器监测到蓝牙设备为空闲状态时,可以调度其它的终端b与蓝牙设备直连通信,提高了蓝牙设备的资源利用率。

本申请实施例提供的终端调度方法,接收请求终端发送的请求消息,根据蓝牙设备的设备标识确定蓝牙设备的通信状态,根据蓝牙设备的通信状态和预设的调度规则,从蓝牙设备的设备标识对应的多个终端中确定目标终端,向目标终端发送蓝牙连接消息,以使目标终端与蓝牙设备连接,云端服务器根据蓝牙设备的通信状态,调度终端与蓝牙设备通信,提高了蓝牙设备的资源利用率。

可选地,在图2所示实施例的基础上,步骤202“根据蓝牙设备的设备标识确定蓝牙设备的通信状态”的一种可能的实现方式,包括:若在预设时长内未接收到蓝牙设备的设备标识对应的通信消息,则确定蓝牙设备的通信状态为空闲状态;通信消息为正在与蓝牙设备通信的终端发送的消息;或者,若在预设时长内接收到蓝牙设备的设备标识对应的通信消息,则确定蓝牙设备的通信状态为工作状态。

在本实施例中,预设时长可以根据实际需求来设置,云端服务器从接收到一条通信消息的时刻开始,若云端服务器在预设时长内未接收到终端上报的通信消息,则确定该蓝牙设备为空闲状态;若云端服务器在预设时长内接收到终端上报的通信消息,则确定该蓝牙设备的工作状态,该方法可以快速、准确地确定蓝牙设备的通信状态,以便于云端服务器能快速、准确地调度终端与蓝牙设备通信。

下面分别介绍蓝牙设备的通信状态为空闲状态和工作状态这两种通信状态下,云端服务器调度终端与蓝牙设备通信的过程。

可选地,在图2所示实施例的基础上,若蓝牙设备为空闲状态,则步骤203“根据蓝牙设备的通信状态和预设的调度规则,从蓝牙设备的设备标识对应的终端中确定目标终端”的一种可能的实现方式,包括:若蓝牙设备的通信状态为空闲状态,则根据各请求终端的优先级顺序,从蓝牙设备的设备标识对应的多个终端中,确定目标终端。

在本实施例中,若蓝牙设备的通信状态为空闲状态,云端服务器可以根据请求终端的优先级顺序,从蓝牙设备的设备标识对应的多个终端中,确定目标终端,例如,当云端服务器同时接收到多个请求终端发送的请求消息,且该多个请求消息请求与同一个蓝牙设备直连,则可以将发送请求消息的多个请求终端中优先级最高的终端确定为目标终端。

进一步地,步骤“根据各请求终端的优先级顺序,从蓝牙设备的设备标识对应的多个终端中,确定目标终端”,包括:若蓝牙设备的设备标识对应的多个终端中存在一个最高优先级的终端,则将最高优先级的终端确定为目标终端;若蓝牙设备的设备标识对应的多个终端中存在至少两个最高优先级的终端,则将最早请求与该蓝牙设备连接的终端确定为目标终端。

示例性的,若蓝牙设备的设备标识对应的多个终端中存在一个最高优先级的终端,则将最高优先级的终端确定为目标终端。例如,蓝牙设备的设备标识对应的多个终端中有三个终端a、终端b、终端c,终端a的优先级为中,终端b的优先级为高,终端c的优先级为低,则将终端b确定为目标终端,然后,云端服务器通过蓝牙连接消息调度该终端b与蓝牙设备直连通信。

示例性的,若蓝牙设备的设备标识对应的多个终端中存在至少两个最高优先级的终端,则将最早请求与该蓝牙设备连接的终端确定为目标终端。例如,蓝牙设备的设备标识对应的多个终端中有四个终端a、终端b、终端c、终端d,终端a的优先级为中,终端b的优先级为高,终端c的优先级为低,终端d的优先级为高,由于终端b和终端d对应的优先级均为高,则云端服务器判断终端b和终端d发送请求消息的时间,若终端b早于终端d发送请求消息,则将终端b确定为目标终端。

需要说明的是,可以预先根据实际需求对终端划分优先级,例如,根据主终端、从终端划分终端的优先级,根据终端所要传输的业务类型划分终端的优先级等。该终端的优先级可以是用户划分的,由请求终端将自身的优先级携带在请求消息中发送给云端服务器,或者,云端服务器也可以根据终端的业务类型确定终端的优先级。

本申请实施例提供的方法,若蓝牙设备的设备标识对应的多个终端中存在一个最高优先级的终端,则将最高优先级的终端确定为目标终端;若蓝牙设备的设备标识对应的多个终端中存在至少两个最高优先级的终端,则将至少两个最高优先级的终端中,最早请求与该蓝牙设备连接的终端确定为目标终端,使得优先级高的终端优先与蓝牙设备直连通信,不仅提高了蓝牙设备的资源利用率,还可以提高蓝牙设备的服务质量。

可选地,在图2所示实施例的基础上,若蓝牙设备为工作状态,则步骤203“根据蓝牙设备的通信状态和预设的调度规则,从蓝牙设备的设备标识对应的多个终端中确定目标终端”的一种可能的实现方式,包括:若蓝牙设备的通信状态为工作状态,则根据请求终端与第一终端的优先级确定目标终端;第一终端为当前正在与蓝牙设备通信的终端。

在本实施例中,当请求终端a请求与蓝牙设备c直连时,若蓝牙设备c当前正在与第一终端b进行数据通信,则云端服务器可以根据请求终端a和第一终端b的优先级确定目标终端。

步骤“根据请求终端与第一终端的优先级确定目标终端”可以分为以下三种情况。

第一种情况:若请求终端的优先级高于第一终端的优先级,则将请求终端确定为目标终端。

在本实施例中,若请求终端a的优先级高于第一终端b的优先级,则将该请求终端a确定为目标终端,使得优先级高的终端优先与蓝牙设备直连通信,提高了蓝牙设备的服务质量。

第二中情况:若请求终端的优先级与第一终端的优先级相同,则获取第一终端与蓝牙设备之间的通信频率,并在通信频率小于预设阈值时,将请求终端确定为目标终端。

在本实施例中,若请求终端a的优先级与第一终端b的优先级相同,云端服务器可以周期性的获取第一终端b与蓝牙设备c之间的通信频率,当该通信频率小于预设阈值时,将请求终端a确定为目标终端,相当于云端服务器检测第一终端b与蓝牙设备c的通信活跃度,当第一终端b与蓝牙设备c的通信活跃度很低时,云端服务器调度请求终端a与蓝牙设备c通信。

进一步地,在第一种情况和第二种情况下,在通知目标终端与蓝牙设备直连之前,云端服务器需要控制第一设备与蓝牙设备断开连接,在图2所示实施例的基础上,如图3所示,步骤204“向目标终端发送连接消息”之前,该方法还包括:

步骤301、向第一终端发送断开连接请求消息;断开连接请求消息用于指示第一终端与蓝牙设备断开连接。

在本实施例中,当需要当前正在与蓝牙设备通信的第一终端与蓝牙设备断开连接时,云端服务器向第一终端发送断开连接请求消息,第一终端接收到该断开连接请求消息之后,第一终端可以立刻与蓝牙设备断开连接,第一终端也可以在当前数据通信完成之后,再与蓝牙设备断开连接。例如,第一终端接收到该断开连接请求消息时,第一终端正在接收蓝牙设备发送的蓝牙数据,第一终端可以评估该蓝牙数据的权重,若该蓝牙数据的权重大于预设权重阈值,则说明该蓝牙数据的重要性较高,第一终端可以在该蓝牙数据接收完成之后再与蓝牙设备断开连接;或者,若该蓝牙数据的权重不大于预设权重阈值,则说明该蓝牙数据的重要性较低,第一终端立刻停止接收该蓝牙数据,并与蓝牙设备断开连接。

步骤302、接收第一终端发送的断开连接响应消息;断开连接响应消息用于表征第一终端与蓝牙设备已断开连接。

在本实施例中,第一终端与蓝牙设备断开连接后,向云端服务器反馈断开连接响应消息,通知云端服务器第一终端与蓝牙设备已断开连接,云端服务器接收到第一终端发送的断开连接响应消息之后,向目标终端发送蓝牙连接消息,指示目标终端与蓝牙设备直连。

需要说明的是,当第一终端被云端服务器强制断开连接后,还可以重新发起请求消息,请求与蓝牙设备连接。

本实施例提供的终端调度方法,当需要当前正在与蓝牙设备通信的第一终端与蓝牙设备断开连接时,云端服务器向第一终端发送断开连接请求消息,并在接收第一终端发送的断开连接响应消息之后,向目标终端发送蓝牙连接消息,指示目标终端与蓝牙设备直连,避免了目标终端接收到云端服务器发送的蓝牙连接消息后,蓝牙设备仍然与第一终端直连的情况,保证了目标终端与蓝牙设备直连的可靠性。

第三中情况:若请求终端的优先级小于第一终端的优先级,则检测第一终端与蓝牙设备之间的连接状态;在确定第一终端与蓝牙设备之间的连接状态为断开连接时,将请求终端确定为目标终端。

在本实施例中,若请求终端a的优先级小于第一终端b的优先级,则云端服务器实时检测第一终端与蓝牙设备之间的连接状态,云端服务器接收到第一终端b发送的用于表征第一终端b与蓝牙设备c已断开连接的通信消息之后,将请求终端a确定为目标终端。也即,若请求终端a的优先级小于第一终端b的优先级,则云端服务器会等到第一终端b主动与蓝牙设备c断开连接之后,再通知请求终端a与蓝牙设备c直连。

可选地,在图2或图3所示实施例的基础上,本申请还提供如图4所示的实施例,该实施例涉及的是蓝牙设备需要与目标终端通信时,如何通知目标终端的实现过程,如图4所示,该方法还还包括:

步骤401、接收第二终端发送的第一通知消息;通知消息为第二终端在接收到蓝牙设备的广播消息后发送的消息,广播消息用于指示蓝牙设备当前需要与目标终端通信。

其中,第二终端可以为当前正在与蓝牙设备通信的终端,也可以为当前没有与蓝牙设备通信的终端。

在本实施例中,若蓝牙设备需要与目标终端通信时,可以采用以下两种方式通知目标终端。

第一种方式:

蓝牙设备当前没有和任何终端连接,蓝牙设备不断的发送广播消息,该广播消息中包括蓝牙设备的设备标识和目标终端的终端标识,若目标终端未接收到该广播消息,但第二终端接收到了该广播消息,第二终端将该广播消息中的蓝牙设备的设备标识和目标终端的终端标识携带在第一通知消息中发送给云端服务器。

第二中方式:

蓝牙设备当前正在与第二终端通知,则蓝牙设备将广播消息直接发送给第二终端,第二终端将该广播消息中的蓝牙设备的设备标识和目标终端的终端标识携带在第一通知消息中发送给云端服务器。

步骤402、将第二通知消息发送给目标终端;第二通知消息携带许可码,许可码用于蓝牙设备对目标终端的身份进行验证。

在本实施例中,云端服务器接收到第二终端发送的第一通知消息后,将许可码携带在第二通知消息中,并将第二通知消息发送给广播消息中的终端标识对应的目标终端,目标终端接收到第二通知消息后,将许可码发送给蓝牙设备进行身份验证,验证通过后,目标终端与蓝牙设备进行通信。

本实施例提供的终端调度方法,当蓝牙设备需要与目标终端通信时,蓝牙设备通过第二终端向云端服务器发送第一通知消息,指示蓝牙设备当前需要与目标终端通信,云端服务器将第二通知消息发送给目标终端,通知目标终端与蓝牙设备直连通信,保证数据传输的实时性和准确性,并且,第二通知消息携带许可码,用于蓝牙设备对目标终端的身份进行验证,保证数据传输的可靠性。

应该理解的是,虽然图2-4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-4中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

图5为本申请实施例提供的一种终端调度装置的框图,如图5所示,该装置包括接收模块11、检测模块12、确定模块13和发送模块14。

接收模块11,用于接收请求终端发送的请求消息;其中,所述请求消息包括所述请求终端的终端标识和蓝牙设备的设备标识;

检测模块12,用于根据所述蓝牙设备的设备标识确定所述蓝牙设备的通信状态;

确定模块13,用于根据所述蓝牙设备的通信状态和预设的调度规则,从所述蓝牙设备的设备标识对应的多个终端中确定目标终端;

发送模块14,用于向所述目标终端发送蓝牙连接消息,所述蓝牙连接消息用于指示所述目标终端与所述蓝牙设备连接。

在其中一个实施例中,所述检测模块12具体用于若在预设时长内未接收到所述蓝牙设备的设备标识对应的通信消息,则确定所述蓝牙设备的通信状态为空闲状态;所述通信消息为正在与所述蓝牙设备通信的终端发送的消息;若在预设时长内接收到所述蓝牙设备的设备标识对应的通信消息,则确定所述蓝牙设备的通信状态为工作状态。

在其中一个实施例中,所述确定模块13具体用于若所述蓝牙设备的通信状态为所述空闲状态,则根据各请求终端的优先级顺序,从所述蓝牙设备的设备标识对应的多个终端中,确定所述目标终端。

在其中一个实施例中,所述确定模块13根据各请求终端的优先级顺序,从所述蓝牙设备的设备标识对应的多个终端中,确定所述目标终端,包括:若所述确定模块13确定所述蓝牙设备的设备标识对应的多个终端中存在一个最高优先级的终端,则将所述最高优先级的终端确定为所述目标终端;若所述确定模块13确定所述蓝牙设备的设备标识对应的多个终端中存在至少两个最高优先级的终端,则将所述至少两个最高优先级的终端中,最早请求与所述蓝牙设备连接的终端确定为所述目标终端。

在其中一个实施例中,所述确定模块13具体用于若所述蓝牙设备的通信状态为工作状态,则根据所述请求终端与第一终端的优先级确定所述目标终端;所述第一终端为当前正在与所述蓝牙设备通信的终端。

在其中一个实施例中,所述确定模块13根据所述请求终端与所述第一终端的优先级确定所述目标终端,包括:若所述确定模块13确定所述请求终端的优先级高于所述第一终端的优先级,则将所述请求终端确定为所述目标终端;或者,若所述确定模块13确定所述请求终端的优先级与所述第一终端的优先级相同,则获取所述第一终端与所述蓝牙设备之间的通信频率,并在所述通信频率小于预设阈值时,将所述请求终端确定为所述目标终端。

在其中一个实施例中,所述发送模块14还用于向所述第一终端发送断开连接请求消息;所述断开连接请求消息用于指示所述第一终端与所述蓝牙设备断开连接;所述接收模块11还用于接收所述第一终端发送的断开连接响应消息;所述断开连接响应消息用于表征所述第一终端与所述蓝牙设备已断开连接。

在其中一个实施例中,所述确定模块13根据所述请求终端与所述第一终端的优先级确定所述目标终端,包括:若所述确定模块13确定所述请求终端的优先级小于所述第一终端的优先级,则检测所述第一终端与所述蓝牙设备之间的连接状态;在确定所述第一终端与所述蓝牙设备之间连接状态的为断开连接时,将所述请求终端确定为所述目标终端。

在其中一个实施例中,所述接收模块11还用于接收第二终端发送的第一通知消息;所述第一通知消息为所述第二终端在接收到所述蓝牙设备的广播消息后发送的消息,所述广播消息用于指示所述蓝牙设备当前需要与所述目标终端通信;所述发送模块14还用于将所述第二通知消息发送给所述目标终端;所述第二通知消息携带许可码,所述许可码用于所述蓝牙设备对所述目标终端的身份进行验证。

关于终端调度装置的具体限定可以参见上文中对于终端调度方法的限定,在此不再赘述。上述终端调度装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

图6是本申请实施例提供的执行终端调度方法的电子设备的硬件结构示意图,如图6所示,该电子设备包括:

一个或多个处理器610以及存储器620,图6中以一个处理器610为例。

该电子设备还可以包括:输入装置630和输出装置640。

处理器610、存储器620、输入装置630和输出装置640可以通过总线或者其他方式连接,图6中以通过总线连接为例。

存储器620作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本申请实施例中的终端调度方法对应的程序指令/模块(例如,附图5所示的接收模块11、检测模块12、确定模块13和发送模块14)。处理器610通过运行存储在存储器620中的非暂态软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的终端调度方法。

存储器620可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据终端调度装置的使用所创建的数据等。此外,存储器620可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器620可选包括相对于处理器610远程设置的存储器,这些远程存储器可以通过网络连接至终端调度装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

输入装置630可接收输入的数字或字符信息,以及产生与终端调度装置的用户设置以及功能控制有关的键信号输入。输出装置640可包括显示屏等显示设备。

所述一个或者多个模块存储在所述存储器620中,当被所述一个或者多个处理器610执行时,执行上述任意方法实施例中的终端调度方法。

上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。

本发明实施例的电子设备以多种形式存在,包括但不限于:

(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iphone)、多媒体手机、功能性手机,以及低端手机等。

(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:pda、mid和umpc设备等,例如ipad。

(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如ipod),掌上游戏机,电子书,以及智能玩具和便携式车载设备。

(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。

(5)其他具有数据交互功能的电子装置。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如磁碟、光盘、只读存储记忆体(rom)或随机存储记忆体(ram)等等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1