终端之间的通信方法、装置、系统、电子设备及存储介质与流程

文档序号:18358743发布日期:2019-08-06 23:31阅读:258来源:国知局
终端之间的通信方法、装置、系统、电子设备及存储介质与流程

本发明涉及网络技术领域,具体而言,本发明涉及一种终端之间的通信方法、装置、系统、电子设备及存储介质。



背景技术:

现有的大屏互动技术中,通常需要依赖专门的遥控设备(如支持红外线的遥控器或遥控笔等)实现与被遥控终端(如大屏终端)之间的通信互动。但是,由于不同的终端所支持的软硬件平台的不同,导致不同的终端无法使用软硬件不兼容的遥控设备,导致在各平台之间遥控设备不具备通用性,使得遥控设备的开发维护成本极大。



技术实现要素:

本发明实施例的主要目的在于提供一种终端之间的通信方法、装置、系统、电子设备及存储介质,通过本发明实施例的方案,能够节省遥控设备的开发成本。

第一方面,本发明实施例提供了一种终端之间的通信方法,该方法由服务器执行,该方法包括:

接收第一终端发送的控制命令,控制命令为第一终端通过以下方式生成的:

通过第一终端上显示的第二终端的终端控制界面接收用户在终端控制界面上的操作,根据操作生成对第二终端的控制命令,控制命令中包括第二终端的终端标识和操作对应的操作任务;

其中,终端控制界面是第一终端通过安装终端控制界面的控制组件获取到的,控制组件是第一终端基于终端标识向服务器发送通信连接请求获取到的,终端标识是第一终端通过扫描第二终端上显示的终端扫描码获取到的;

根据终端标识,将操作任务发送至第二终端,以使第二终端根据接收到的操作任务执行相应的操作。

第一方面的一种可选实施例中,接收第一终端发送的控制命令之前,该方法还包括:

接收第一终端发送的通信连接请求,通信连接请求为第一终端通过扫描终端扫描码触发的,终端扫描码中包括终端标识,通信连接请求中包括终端标识;

根据终端标识,以服务器作为通信中转媒介,建立起第一终端与第二终端之间的通信连接;

基于终端标识,将控制组件发送至第一终端。

第一方面的一种可选实施例中,在第二终端启动时,或者,在与第二终端连接的所有终端均与第二终端断开连接时,该方法还包括:

基于终端标识,将新的终端扫描码发送至第二终端,以使第二终端将新的终端扫描码显示在第二终端上。

第一方面的一种可选实施例中,在以服务器作为通信中转媒介,建立起第一终端与第二终端的通信连接之后,该方法还包括:

向第二终端发送第一终端的终端设备信息,以使第二终端显示终端设备信息。

第一方面的一种可选实施例中,第一终端包括移动终端,第二终端包括大屏终端。

第一方面的一种可选实施例中,根据终端标识,将操作任务发送至第二终端,包括:

根据终端标识,将操作任务添加到与终端标识对应的操作任务队列中;

通过以下任意一种方式将操作任务队列中的操作任务发送至第二终端:

在接收到第二终端发送的任务获取请求时,将与终端标识对应的操作任务队列中的所有操作任务发送至第二终端,任务获取请求中包括终端标识;

将操作任务队列中的操作任务发送至第二终端。

第一方面的一种可选实施例中,该方法还包括:

接收第二终端发送的连接状态查询请求,连接状态查询请求包括终端标识;

基于终端标识,将第二终端的通信连接状态发送给第二终端,通信连接状态为第二终端与其他终端之间的通信连接状态,其他终端包括第一终端,通信连接状态包括未连接、已连接和连接已断开中的任一项。

第一方面的一种可选实施例中,该方法还包括:

接收第一终端发送的断开连接请求,断开连接请求中包括终端标识;

基于终端标识,断开以服务器作为通信中转媒介所建立起的第一终端与第二终端之间的通信连接。

第二方面,本发明实施例提供了一种终端之间的通信方法,该方法由第一终端执行,该方法包括:

接收用户在第一终端上显示的第二终端的终端控制界面上的操作;

根据操作生成对第二终端的控制命令,控制命令中包括第二终端的终端标识和操作对应的操作任务;

其中,终端控制界面是第一终端通过安装终端控制界面的控制组件获取到的,控制组件是第一终端基于终端标识向服务器发送通信连接请求获取到的,终端标识是第一终端通过扫描第二终端上显示的终端扫描码获取到的;

将控制命令发送至服务器,以使服务器根据终端标识将操作任务发送至第二终端,第二终端根据接收到的操作任务执行相应的操作。

第二方面的一种可选实施例中,接收用户在第一终端上显示的第二终端的终端控制界面上的操作之前,该方法还包括:

在检测到对终端扫描码的扫描操作时,解析终端扫描码得到终端标识;

基于终端标识向服务器发送通信连接请求,以使服务器在接收到通信连接请求时,以服务器作为通信中转媒介,建立起第一终端与终端标识对应的第二终端之间的通信连接;

接收服务器基于终端标识发送的控制组件,安装控制组件以显示终端控制界面。

第三方面,本发明实施例提供了一种终端之间的通信方法,该方法由第二终端执行,该方法包括:

接收服务器发送的操作任务,操作任务为控制命令中携带的信息,控制命令为第一终端发送至服务器的,控制命令是第一终端通过以下方式生成的:

通过第一终端上显示的第二终端的终端控制界面接收用户在终端控制界面上的操作,根据操作生成对第二终端的控制命令,控制命令中包括第二终端的终端标识和操作对应的操作任务;

其中,终端控制界面是第一终端通过安装终端控制界面的控制组件获取到的,控制组件是第一终端基于终端标识向服务器发送通信连接请求获取到的,终端标识是第一终端通过扫描第二终端上显示的终端扫描码获取到的;

基于接收到的操作任务执行相应的操作。

第三方面的一种可选实施例中,在第二终端启动时,或者,在与第二终端连接的所有终端均与第二终端断开连接时,该方法还包括:

向服务器发送扫描码获取请求,扫描码获取请求中包括终端标识;

获取与终端标识对应的第二终端的终端扫描码并显示。

第三方面的一种可选实施例中,该方法还包括:

向服务器发送连接状态查询请求,连接状态查询请求包括终端标识;

接收服务器基于第二终端发送的连接状态查询请求发送的第二终端通信连接状态,通信连接状态包括未连接、已连接和连接已断开中的任一项。

第四方面,本发明提供了一种终端之间的通信装置,该装置包含在服务器中,该装置包括:

控制命令接收模块,用于接收第一终端发送的控制命令,控制命令为第一终端通过以下方式生成的:

通过第一终端上显示的第二终端的终端控制界面接收用户在终端控制界面上的操作,根据操作生成对第二终端的控制命令,控制命令中包括第二终端的终端标识和操作对应的操作任务;

其中,终端控制界面是第一终端通过安装终端控制界面的控制组件获取到的,控制组件是第一终端基于终端标识向服务器发送通信连接请求获取到的,终端标识是第一终端通过扫描第二终端上显示的终端扫描码获取到的;

第一操作任务处理模块,用于根据终端标识,将操作任务发送至第二终端,以使第二终端根据接收到的操作任务执行相应的操作。

第四方面的一种可选实施例中,该装置还包括:

第一通信连接建立模块,用于在接收第一终端发送的控制命令之前,接收第一终端发送的通信连接请求,通信连接请求为第一终端通过扫描终端扫描码触发的,终端扫描码中包括终端标识,通信连接请求中包括终端标识;根据终端标识,以服务器作为通信中转媒介,建立起第一终端与第二终端之间的通信连接,基于终端标识,将控制组件发送至第一终端。

第四方面的一种可选实施例中,该装置还包括:

第一扫描码获取模块,用于在第二终端启动时,或者,在与第二终端连接的所有终端均与第二终端断开连接时,基于终端标识,将新的终端扫描码发送至第二终端,以使第二终端将新的终端扫描码显示在第二终端上。

第四方面的一种可选实施例中,该装置还包括:

设备信息显示模块,用于在以服务器作为通信中转媒介,建立起第一终端与第二终端的通信连接之后,向第二终端发送第一终端的终端设备信息,以使第二终端显示终端设备信息。

第四方面的一种可选实施例中,第一终端包括移动终端,第二终端包括大屏终端。

第四方面的一种可选实施例中,第一操作任务处理模块在根据终端标识,将操作任务发送至第二终端时,具体用于:

根据终端标识,将操作任务添加到与终端标识对应的操作任务队列中;

通过以下任意一种方式将操作任务队列中的操作任务发送至第二终端:

在接收到第二终端发送的任务获取请求时,将与终端标识对应的操作任务队列中的所有操作任务发送至第二终端,任务获取请求中包括终端标识;

基于终端标识,将操作任务队列中的操作任务发送至第二终端。

第四方面的一种可选实施例中,该装置还包括:

第一连接状态查询模块,用于接收第二终端发送的连接状态查询请求,连接状态查询请求包括终端标识;基于终端标识,将第二终端的通信连接状态发送给第二终端,通信连接状态为第二终端与其他终端之间的通信连接状态,其他终端包括第一终端,通信连接状态包括未连接、已连接和连接已断开中的任一项。

第四方面的一种可选实施例中,该装置还包括:

通信连接断开模块,用于接收第一终端发送的断开连接请求,断开连接请求中包括终端标识;基于终端标识,断开以服务器作为通信中转媒介所建立起的第一终端与第二终端之间的通信连接。

第五方面,本发明提供了一种终端之间的通信装置,该装置包含在第一终端中,该装置包括:

操作接收模块,用于接收用户在第一终端上显示的第二终端的终端控制界面上的操作;

控制命令生成模块,用于根据操作生成对第二终端的控制命令,控制命令中包括第二终端的终端标识和操作对应的操作任务;

其中,终端控制界面是第一终端通过安装终端控制界面的控制组件获取到的,控制组件是第一终端基于终端标识向服务器发送通信连接请求获取到的,终端标识是第一终端通过扫描第二终端上显示的终端扫描码获取到的;

第二操作任务处理模块,用于将控制命令发送至服务器,以使服务器根据终端标识将操作任务发送至第二终端,第二终端根据接收到的操作任务执行相应的操作。

第五方面的一种可选实施例中,该装置还包括:

第二通信连接建立模块,用于在接收用户在第一终端上显示的第二终端的终端控制界面上的操作之前,在检测到对终端扫描码的扫描操作时,解析终端扫描码得到终端标识;基于终端标识向服务器发送通信连接请求,以使服务器在接收到通信连接请求时,以服务器作为通信中转媒介,建立起第一终端与终端标识对应的第二终端之间的通信连接;接收服务器基于终端标识发送的控制组件,安装控制组件以显示终端控制界面。

第六方面,本发明提供了一种终端之间的通信装置,该装置包含在第二终端中,该装置包括:

操作任务接收模块,用于接收服务器发送的操作任务,操作任务为控制命令中携带的信息,控制命令为第一终端发送至服务器的,控制命令是第一终端通过以下方式生成的:

通过第一终端上显示的第二终端的终端控制界面接收用户在终端控制界面上的操作,根据操作生成对第二终端的控制命令,控制命令中包括第二终端的终端标识和操作对应的操作任务;

其中,终端控制界面是第一终端通过安装终端控制界面的控制组件获取到的,控制组件是第一终端基于终端标识向服务器发送通信连接请求获取到的,终端标识是第一终端通过扫描第二终端上显示的终端扫描码获取到的;

第三操作任务处理模块,用于基于接收到的操作任务执行相应的操作。

第六方面的一种可选实施例中,该装置还包括:

第二扫描码获取模块,用于在第二终端启动时,或者,在与第二终端连接的所有终端均与第二终端断开连接时,向服务器发送扫描码获取请求,扫描码获取请求中包括终端标识;获取与终端标识对应的第二终端的新的终端扫描码并显示。

第六方面的一种可选实施例中,该装置还包括:

第二连接状态查询模块,用于向服务器发送连接状态查询请求,连接状态查询请求包括终端标识;接收服务器基于第二终端发送的连接状态查询请求发送的第二终端通信连接状态,通信连接状态为第二终端与其他终端之间的通信连接状态,其他终端包括第一终端,通信连接状态包括未连接、已连接和连接已断开中的任一项。

第七方面,本发明实施例提供了一种通信系统,该通信系统包括第一终端、第二终端和服务器,其中,第一终端包括第四方面或第四方面任一实施例中的终端之间的通信装置,第二终端中包括第五方面或第五方面任一实施例中的终端之间的通信装置,服务器包括第六方面或第六方面任一实施例中的终端之间的通信装置。

第八方面,本发明实施例提供了一种电子设备,电子设备包括处理器和存储器;存储器中存储有可读指令,可读指令由处理器加载并执行时,实现如上述第一方面至第三方面或第一方面至第三方面中的任一可选实施例中所示的方法。

第九方面,本发明实施例提供了一种计算机可读存储介质,存储介质中存储有可读指令,可读指令由处理器加载并执行时,实现如上述第一方面至第三方面或第一方面至第三方面中的任一可选实施例中所示的方法。

本发明实施例提供的技术方案带来的有益效果是:本发明实施例所提供的终端之间的通信方案,第一终端可以通过扫描第二终端上显示的终端扫描码,通过服务器建立起以服务器为通信中转媒介的第一终端与第二终端之间的通信连接,并通过安装所获取到的终端控制界面的控制组件将终端控制界面显示,之后,第一终端即可以通过该终端控制界面接收对第二终端的控制命令,并将该命令通过服务器发送给第二终端,以使第二终端执行相应的操作。本发明实施例的方案,将第一终端作为遥控设备,实现了通过第一终端控制第二终端的功能。通过该方案,不需要考虑第二终端的软硬件与第一终端的软硬件是否兼容,即可通过本方案实现第一终端与第二终端之间的通信,节省了遥控设备的开发成本,更好的满足了实际应用需求。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单地介绍。

图1示出了本发明实施例所适用的一种终端之间的通信系统的架构示意图;

图2示出了本发明实施例中提供的一种终端之间的通信方法的流程示意图;

图3示出了本发明实施例中提供的又一种终端之间的通信方法的流程示意图;

图4示出了本发明实施例中提供的服务器中各服务命令的业务调用关系示意图;

图5示出了本发明实施例中提供的又一种终端之间的通信方法的流程示意图;

图6a示出了本发明实施例中提供的一种大屏终端与手机终端之间的通信连接过程的示意图;

图6b示出了本发明实施例中提供的一种大屏终端与手机终端之间的通信过程的示意图;

图7示出了本发明实施例中提供的一种终端之间的通信装置的结构示意图;

图8示出了本发明实施例中提供的又一种终端之间的通信装置的结构示意图;

图9示出了本发明实施例中提供的另一种终端之间的通信装置的结构示意图;

图10示出了本发明实施例提供的一种电子设备的结构示意图。

具体实施方式

为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

下面详细描述本发明的实施例,该实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。

为了更好的理解及说明本发明实施例的方案,下面对本发明实施例中所涉及到的一些技术用语进行简单说明。

b/s:b/s结构(browser/server,浏览器/服务器模式),是互联网兴起后的一种网络结构模式,网页web浏览器是客户端主要的应用软件。

http:超文本传输协议(hypertexttransferprotocol),是客户端浏览器或其他程序与web服务器之间的应用层通信协议,http包含命令和传输信息,不仅可用于web访问,也可以用于其他因特网/内联网应用系统之间的通信。

https:超文本传输安全协议(hypertexttransferprotocolsecure),是一种网络安全传输协议,在计算机网络上,https经由超文本传输协议进行通信,但利用ssl(securesocketlayer)/tls(transportlayersecurity)来加密数据包。https开发的主要目的是提供对网络服务器的身份认证,保护交换数据的隐私与完整性。

websocket:websocket协议是基于tcp的一种新协议,websocket最初在html5规范中被引用为tcp连接,作为基于tcp的套接字api(applicationprogramminginterface)的占位符,它实现了浏览器与服务器全双工(full-duplex)通信,其中,传输控制协议tcp(transmissioncontrolprotocol)是一种面向连接的、基于字节流的传输层通信协议。

微信:微信(wechat)是腾讯公司推出的一个为智能终端提供即时通讯服务的免费应用程序。

微信小程序:微信小程序是一种全新的连接用户与服务的方式,它可以在微信内被便捷地获取和传播。

二维码:又称二维条码,常见的二维码为qrcode,qr(quickresponse)是一个近几年来移动设备上超流行的一种编码方式,它比传统的barcode(条形码)能存更多的信息,也能表示更多的数据类型。

小程序码:小程序码是微信专属的二维码,可以通过微信官方提供的createwxaqrcode、getwxacode、getwxacodeunlimit等api创建微信小程序码。

应用服务器:应用服务器(applicationserver)是指通过各种协议把商业逻辑曝露给客户端的程序。它提供了访问商业逻辑的途径以供客户端应用程序使用。应用服务器使用此商业逻辑就像调用对象的一个方法一样。

轮询:轮询(polling)是一种cpu决策如何提供周边设备服务的方式,又称“程控输出入”(programmedi/o)。轮询法的概念是,由cpu定时发出询问,依序询问每一个周边设备是否需要其服务,有即给予服务,服务结束后再问下一个周边,接着不断周而复始。

vr:vr(virtualreality)又称虚拟现实技术,是一种可以创建和体验虚拟世界的计算机仿真系统,它利用计算机生成一种模拟环境,是一种多源信息融合的、交互式的三维动态视景和实体行为的系统仿真使用户沉浸到该环境中。

ar:ar(augmentedreality)又称增强现实技术,是一种实时地计算摄影机影像的位置及角度并加上相应图像、视频、3d模型的技术,这种技术的目标是在屏幕上把虚拟世界套在现实世界并进行互动。这种技术于1990年提出,随着随身电子产品cpu运算能力的提升,预期增强现实的用途将会越来越广。

lot:物联网(internetofthings)是互联网、传统电信网等信息承载体,让所有能行使独立功能的普通物体实现互联互通的网络。

目前,与大屏终端互动的方式,通常需要依赖专门的遥控设备(如支持红外线的遥控器或遥控笔等)实现与大屏终端之间的通信互动。但是,由于不同大屏终端所支持的软硬件平台的不同,导致不同的大屏终端无法使用软硬件不兼容的遥控设备。比如,大屏终端a与大屏终端b所对应兼容的遥控设备不同,大屏终端a兼容遥控设备a,大屏终端b兼容遥控设备b,但通过遥控设备a很有可能是无法实现与大屏终端b之间的通信,也就是无法通过遥控设备a来控制大屏终端,需要遥控设备b才可实现与大屏终端b之间的通信,由此,需要在开发阶段针对不同的大屏终端所兼容的软硬件,生产对应的遥控设备,从而导致遥控设备的开发成本大。

针对现有技术存在的问题,以及更好的满足实际应用需求,本发明实施例提供了一种终端之间的通信方法,通过该方法能够节省开发维护成本,提升用户体验。

下面以具体地实施例对本发明的技术方案以及本发明的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本发明的实施例进行描述。

图1示出了本发明实施例所提供的终端之间的通信方法所适用的一种终端之间的通信系统的结构示意图。如图中所示,该终端之间的通信系统主要可以包括第一终端11、第二终端12和服务器13。具体的,本示例中的第一终端11可以为智能手机、第二终端12可以为大屏终端,服务器可以为云端服务器13。其中,云端服务器13作为应用服务器,可分别与第一终端11和第二终端12通信,用户如果想将第一终端11作为遥控设备,实现对第二终端12的遥控,则需要建立起第二终端12与第一终端11之间的通信通道。

基于本发明实施例所提供的方案,为了建立起第二终端12与第一终端11之间的通信通道,本方案中,第二终端12上显示有第二终端12的终端扫描码,该终端扫描码中包括第二终端12的终端标识,第一终端11扫描该终端扫描码时,触发通信连接请求,该请求中包括第二终端12的终端标识,并将该请求发送给服务器13,服务器13基于第二终端12的终端标识,以服务器13作为通信中转媒介,建立起第二终端12与第一终端11之间的通信连接,并且,在建立起连接后,服务器13将第二终端12的控制组件发送给第一终端11,以使第一终端11将该控制组件安装并显示对应的终端控制界面,用户基于第一终端11上所显示的终端控制界面,可以向服务器13发送控制命令,该控制命令中包括第二终端12的终端标识以及操作任务;服务器13基于第二终端12的终端标识将该操作任务发送给第二终端12,第二终端12基于该操作任务进行相应的操作。通过上述方式,可以将服务器13作为通信中转媒介,建立起第一终端11与第二终端12之间的通信连接,并且,可以将第一终端11作为遥控器,实现对第二终端12的遥控。可见,对于图1中所示的系统而言,本发明实施例的终端之间的通信方法可以由服务器13执行,或者由第一终端11执行,或者由第二终端12执行。

需要说明的是,图1所示的系统架构只是本发明实施例的方案所适用的系统的架构的示例,并不是对本发明实施例方案的应用场景的限定。

图2示出了本发明提供的一种终端之间的通信方法的流程示意图,如图中所示,若该方法由第一终端执行,该方法可以包括步骤s110至步骤s130,其中:

步骤s110:接收用户在第一终端上显示的第二终端的终端控制界面上的操作。

步骤s120:根据操作生成对第二终端的控制命令,控制命令中包括第二终端的终端标识和操作对应的操作任务。

其中,终端控制界面是第一终端通过安装终端控制界面的控制组件获取到的,控制组件是第一终端基于第二终端的终端标识向服务器发送通信连接请求获取到的,第二终端的终端标识是第一终端通过扫描第二终端上显示的终端扫描码获取到的。

具体的,终端控制界面是一种用于用户与终端进行交互的用户界面,终端控制界面可以相当于虚拟遥控器,可以理解的是,终端控制界面上可以显示有用于触发控制命令的控制标识,比如功能按钮,不同的功能按钮可以对应不同的控制功能,通过该控制标识可以接收对第二终端的相关控制操作。控制组件与第二终端的终端控制界面相对应,该控制组件可用于调整第二终端的相关参数,比如,第二终端屏幕的显示亮度等,控制组件可以基于实际需求配置,比如,基于不同的终端,可以对应配置不同的控制组件。

终端扫描码是一种可以通过识别装置扫描并识别的图形码,包括但不限于二维码和条形码,终端扫描码中可以基于实际需求配置需要告知或传递的信息,本发明实施例的方案中,终端扫描码中包括对应终端的终端标识。

具体的,控制命令的具体实现形式可以基于实际需求配置,比如,触控终端控制界面中的控制标识的触控操作,或者,基于终端控制界面上所显示的控制标识的语音指令,本发明中不限定控制命令的具体实现形式。

终端标识用于标识终端的身份,终端标识可以基于实际需求配置,比如,终端标识可以是对应设备的设备id或设备型号等唯一编码,为了描述方便,以下将第一终端的终端标识称为第一终端标识,将第二终端的终端标识称为第二终端标识。可选的,可以通过标识符uuid(universallyuniqueidentifier,通用唯一识别码)表示第一终端标识和第二终端标识。

本发明实施例中,第一终端是具有扫描并识别终端扫描码,网络通信及信息显示功能的电子设备,第一终端包括但不限于手机、平板电脑、便携式计算机、vr设备、ar设备、iot设备等电子设备,本发明实施例中,第一终端通常为便携式终端设备,比如,手机、平板电脑等。

第二终端是具有网络通信功能及信息显示功能的电子设备,第二终端包括但不限于可视化硬件大屏终端等。

需要说明的是,第一终端在扫描第二终端上的终端扫描码时,第一终端中已经具有解码该终端扫描码对应的解码程序,则在第一终端扫描第二终端上的终端扫描码时,可以解码出该终端扫描码中所包含的第二终端标识。

步骤s130:将控制命令发送至服务器,以使服务器根据第二终端标识将操作任务发送至第二终端,并使第二终端根据接收到的操作任务执行相应的操作。

具体的,服务器在接收到控制命令后,可以将服务器作为通信中转媒介,通过服务器将该控制命令中的操作任务发送给第二终端,即第一终端与第二终端之间需要通信时,第一终端与第二终端之间可以将服务器作为通信中转站,实现通信。

本发明实施例所提供的终端之间的通信方法,第一终端可以通过扫描第二终端上显示的终端扫描码,通过服务器建立起以服务器为通信中转媒介的第一终端与第二终端之间的通信连接,并通过安装所获取到的终端控制界面的控制组件将终端控制界面显示,之后,第一终端即可以通过该终端控制界面接收对第二终端的控制命令,并将该命令通过服务器发送给第二终端,以使第二终端执行相应的操作。本发明实施例的方案,将第一终端作为遥控设备,实现了通过第一终端控制第二终端的功能。通过该方案,不需要考虑第二终端的软硬件与第一终端的软硬件是否兼容,即可通过本方案实现第一终端与第二终端之间的通信,节省了遥控设备的开发成本,更好的满足了实际应用需求。另外,用户基于终端控制界面即可实现第一终端与第二终端之间的交互,操作方便,提高了用户体验。

作为一可选方式,终端扫描码可以为小程序码,用户可以使用第一终端上所安装的应用程序的扫码功能扫描第二终端上的小程序码。其中,应用程序可以包括但不限于浏览器、具有扫码功能的客户端程序(如微信)等。例如,用户可以通过使用其手机的微信中的“扫一扫”功能来扫描小程序码。

另外,需要说明的是,控制组件所对应的终端控制界面的具体形式可以根据实际需求配置,本发明实施例中对其不作限定。例如,作为一可选方式,终端控制界面的界面形式可以与第二终端实体的硬件遥控设备的界面形式相同,如第二终端设备为智能电视,终端控制界面的界面形式则可以与该智能电视的实体遥控器的控制界面的形式相同或类似。作为另一可选方式,由于终端控制界面为虚拟的用户界面,因此,可以对终端控制界面中的虚拟控制功能按钮(以下简称功能按钮)进行分层级显示,比如,在功能按钮较多时,终端控制界面的控制组件中可以对控制功能进行了分类,对于每一类的控制功能可以先对应配置一个上一层级的功能按钮,每一类别下的具体功能按键再分别配置各自对应的下一层级的功能按钮,比如,控制功能选项,则在显示该终端控制界面时,可以直接显示每一类别对应的功能按钮,基于用户对该类别功能按钮的触控操作,可以再显示该类别功能下的下一层级的功能按钮(即每一个控制功能各自对应的功能按钮,控制功能选项),当然,如果某个或某些功能未进行类别划分,对应的功能按钮可以直接显示在界面上。

作为一个示例,比如,基于第二终端的控制组件所对应的控制功能的类别,将第二终端的控制功能分为两个层级,第一个层级包括两个控制标识,这两个控制标识以不同的功能按钮的形式显示,两个功能按钮分别为功能按钮a和功能按钮b,这两个功能按钮同时显示在第一终端的终端控制界面上,功能按钮a对应的控制功能为调节第二终端屏幕的亮度,功能按钮b对应的控制功能为切换第二终端所显示的用户界面,在第二层级中,功能按钮a下一层级的功能按钮为调亮和调暗两个控制功能选项,功能按钮b下一层级的功能按钮为上一页和下一页两个控制功能选项。在用户对终端控制界面上的功能按钮b进行触发时,表示用户想通过第一终端对第二终端上所显示的用户界面进行页面切换,则在用户触发功能按钮b后,可以对应显示上一页和下一页两个控制功能选项,基于该两个控制功能选项,用户可以选择上述两个控制功能选项中的任意一个,如果选择的是“下一页”对应的控制标识,则基于对该“下一页”控制标识的触发操作,将对应的操作任务通过服务器发送给第二终端,此时,控制命令中操作任务所对应的控制功能为页面切换功能中的切换到下一页,第二终端基于该操作任务,将第二终端当前页面上所显示的用户界面切换至下一页所显示的界面。

本发明的可选方案中,终端扫描码可以显示在第二终端的指定位置。

具体的,指定位置可以基于实际需求配置,比如,为了不在第二终端的屏幕上显示信息时,终端扫描码遮挡住第二终端所显示的信息,可以将终端扫描码显示在第二终端屏幕的边缘区域,比如,第二终端屏幕的左上角,右上角、左下角、右下角等区域。

本发明的可选方案中,服务器可以为应用服务器。

具体的,应用服务器提供的是客户端应用程序可以调用的方法,应用服务器可以通过很多协议来为应用程序提供商业逻辑,则在本方案中,基于应用服务器,可以基于终端(第一终端或第二终端)上已安装的应用程序调用应用服务器中的相关方法,以实现第一终端与第二终端的通信,无需在终端上安装其他应用程序,方便用户操作,从而提升了用户的体验。

本发明的可选方案中,服务器还可以为云端应用服务器。云服务器是基于服务器集群的,因此硬件冗余度较高,故障率低,云服务器的计算能力高于同等配置的独立服务器的计算能力,可满足高性能计算的要求。服务器也可以为本地服务器,则如果第一终端和第二终端在同一个局域网下,可以通过本地服务器实现通信。

本发明的可选方案中,如图3所示,在接收用户在第一终端上显示的第二终端的终端控制界面上的操作之前,该方法还可以包括步骤s101至步骤s105,其中:

步骤s101:在检测到对终端扫描码的扫描操作时,解析终端扫描码得到第二终端标识;

步骤s102:基于第二终端标识向服务器发送通信连接请求;

其中,第一终端与第二终端之间的通信连接时通过以下方式建立的:

步骤s130:服务器在接收到通信连接请求时,以服务器作为通信中转媒介,建立起第一终端与第二终端标识对应的第二终端之间的通信连接;

步骤s104:接收服务器基于第二终端标识发送的控制组件;

其中,终端控制界面是通过以下方式显示的:

步骤s105:第一终端安装控制组件,并显示终端控制界面。

具体的,在第一终端扫描第二终端上的终端扫描码之后,服务器可以基于第二终端的终端标识,以服务器作为通信中转媒介,建立起第一终端与第二终端之间的通信,同时,服务器可以基于第二终端的终端标识,将第二终端的控制组件发送给第一终端,第一终端安装该控制组件并显示该安装组件对应的终端控制界面。

具体的,服务器中可以预先存储各个终端的终端标识以及对应的控制组件,则在服务器接收到第一终端发送的通信连接请求时,可将与终端标识(第二终端标识)对应的控制组件发送给第一终端,以使第一终端将该控制组件安装到第一终端中。

本发明的可选方案中,第一终端包括移动终端,第二终端包括大屏终端。

具体的,移动终端是具有扫描终端扫描码功能的终端,大屏终端上可以显示对应的终端扫描码,比如,移动终端可以为智能手机,大屏终端可以为智能电视机。

基于与图2中所示的方法相同的原理,本发明实施例还提供了一种终端之间的通信连接方法,该方法由服务器执行,该方法可以包括:

步骤s210,接收第一终端发送的控制命令。

可以理解的是,该步骤s210即图2中所示的步骤s130,如图2所示,该控制命令为第一终端通过以下方式生成的:

步骤s110,通过第一终端上显示的第二终端的终端控制界面接收用户在终端控制界面上的操作;

步骤s120,根据操作生成对第二终端的控制命令,控制命令中包括第二终端的终端标识和操作对应的操作任务;

其中,终端控制界面第一终端通过安装终端控制界面的控制组件获取到的,控制组件是第一终端基于第二终端标识向服务器发送通信连接请求获取到的,第二终端标识是第一终端通过扫描第二终端上显示的终端扫描码获取到的。

步骤s220,根据第二终端标识,将操作任务发送至第二终端,以使第二终端根据接收到的操作任务执行相应的操作。

可以理解的是,该步骤s220即图2中所示的步骤s150。

本发明实施例所提供的终端之间的通信方法,第一终端可以通过扫描第二终端上显示的终端扫描码,通过服务器建立起以服务器为通信中转媒介的第一终端与第二终端之间的通信连接,并通过安装所获取到的终端控制界面的控制组件将终端控制界面显示,之后,第一终端即可以通过该终端控制界面接收对第二终端的控制命令,并将该命令通过服务器发送给第二终端,以使第二终端执行相应的操作。本发明实施例的方案,将第一终端作为遥控设备,实现了通过第一终端控制第二终端的功能。通过该方案,不需要考虑第二终端的软硬件与第一终端的软硬件是否兼容,即可通过本方案实现第一终端与第二终端之间的通信,节省了遥控设备的开发成本,更好的满足了实际应用需求。另外,用户基于终端控制界面即可实现第一终端与第二终端之间的交互,操作方便,提高了用户体验。

本发明的可选方案中,如图3所示,步骤s210中,在接收第一终端发送的控制命令之前,该方法还可以包括步骤s101至步骤s105,其中:

步骤s102,接收第一终端发送的通信连接请求;

其中,通信连接请求为通过以下方式生成的:

步骤s101,第一终端通过扫描终端扫描码触发的,终端扫描码中包括第二终端标识,通信连接请求中包括第二终端标识;

步骤s103,根据第二终端标识,以服务器作为通信中转媒介,建立起第一终端与第二终端之间的通信连接;

步骤s104,在第一终端与第二终端建立通信连接之后,基于第二终端标识,将控制组件发送至第一终端;

其中,终端控制界面是通过以下方式显示的:

步骤s105,第一终端安装控制组件并显示终端控制界面。

本发明的可选方案中,在第二终端启动时,或者,在与第二终端连接的所有终端均与第二终端断开连接时,该方法还可以包括:

基于第二终端标识,将新的终端扫描码发送至第二终端,以使第二终端将新的终端扫描码显示在第二终端上。

具体的,服务器中可以预先配置各个终端的终端标识与对应终端扫描码,则基于第二终端标识,可由服务器将新的终端扫描码发送至第二终端,具体可以包括以下两种实现方式:

第一种,由第二终端向服务器主动获取,具体为:在第二终端启动时,或者,与第二终端连接的所有终端均与第二终端断开连接时,向服务器发送扫描码获取请求,该扫描码获取请求中包括第二终端标识,基于第二终端标识,服务器将对应的新的终端扫描码发送给第二终端。

第二种,由服务器主动向第二终端发送,具体为:在第二终端启动时,或者,与第二终端连接的所有终端均与第二终端断开连接时,服务器基于第二终端标识,将第二终端对应的新的终端扫描码发送给第二终端。

需要说明的是,第二终端的终端扫描码也可以由第二终端基于对应的终端标识生成。

本发明的可选方案中,触发连接请求中还包括第一终端标识,第二终端与第一终端建立通信连接之后,该方法还可以包括:

基于第一终端标识,向第一终端发送通信连接状态标识。

具体的,通信连接状态标识用于标识第二终端与第一终端的连接结果,比如,连接成功还是连接失败,基于该连接结果,第一终端可以明确是否与第二终端成功建立起通信连接。其中,通信连接状态标识可以为设定的标识符,不同的标识符表示不同的通信连接状态,比如,标识符为0时,表示连接成功,标识符为1时,表示连接失败。

本发明的可选方案中,该方法还可以包括:

接收第二终端发送的连接状态查询请求,连接状态查询请求包括第二终端标识;

基于第二终端标识,将第二终端的通信连接状态发送给第二终端,通信连接状态为第二终端与其他终端之间的通信连接状态,其他终端包括第一终端,通信连接状态包括未连接、已连接和连接已断开中的任一项。

具体的,未连接表示的是没有与第二终端建立起通信连接的终端,已连接表示的是有至少一个与第二终端建立起通信连接的终端,连接已断开标的是的与第二终端建立连接的终端已经全部与第二终端断开连接。

可选的,上述方案中如何判断与第二终端连接的所有终端均与第二终端断开连接,具体可通过以下方式判断:

第一种,在预设时长内,服务器未接收到其他终端中的任何终端发送的操作指令,则可以判断此时与第二终端连接的所有终端均与第二终端断开连接。

第二种,接收其他终端中任一终端发送的断开连接请求,断开连接请求中包括任一终端的终端标识;基于任一终端的终端标识,断开以服务器作为通信中转媒介所建立起的第一终端与任一终端之间的通信连接。

可以理解的是,任一终端包括第一终端,如果任一终端为第一终端,则在第一终端的用户界面上可以预先配置用于触发断开连接请求的触发标识,该用户界面可以是终端控制界面,也可以是其他用户界面,该触发标识可以是功能按钮,用户在触发该按钮时,即触发了断开与第二终端之间的通信连接的请求,该请求即为断开连接请求。

可以理解的是,断开第一终端与第二终端的通信连接实际指的是服务器不再接收任何第一终端发送的请求,不再将第一终端的任何信息向第二终端转发。

本发明的可选方案中,如果第二终端与第一终端断开成功,则可以向第一终端发送断开结果,通过该断开结果可以标识第二终端与第一终端是否断开成功,该断开结果可以通过设定的标识符表示,比如,标识符为0时,表示断开成功,标识符为1时,表示断开失败;还可以直接以文字的形式标识断开结果,比如:“xx已断开成功,或者,xx已断开失败”,其中,“xx”可以为设备的名称。

在本方案中,第二终端可以通过轮询的方式检测是否有终端与第二终端成功建立起通信连接的终端,即定时向服务器发送连接状态查询请求。

在本方案中,在接收到第二终端发送的通信连接状态查询请求时,可以以不同的标识符标识不同的通信连接状态,即服务器可以基于第二终端标识,向第二终端发送用于标识通信连接状态的标识符,该标识符可以基于实际需求配置,比如,标识符为0时,表示通信连接状态为未连接,标识符为1时,表示通信连接状态为已连接,标识符为2时,表示通信连接状态为连接已断开。

可选的,在与第二终端连接的所有终端均与第二终端断开连接时,向第二终端发送的终端扫描码可以是新的终端扫描码。

可以理解的是,如果没有终端与第二终端成功建立起通信连接,则第二终端上显示的终端扫描码不变。

基于上述判断与第二终端连接的所有终端是否均与第二终端断开连接的方式,可以在服务器判断与第二终端连接的所有终端均与第二终端断开连接时,服务器基于第二终端标识,将新的终端扫描码主动发送至第二终端。

本发明的可选方案中,在以服务器作为通信中转媒介,建立起第一终端与第二终端的通信连接之后,该方法还可以包括:

向第二终端发送第一终端的终端设备信息,以使第二终端显示终端设备信息。

具体的,与第二终端建立连接的终端可以为至少一个,如果有其他终端同时想与第二终端建立起通信连接,则可以基于终端设备信息标识对应终端的身份,即通过终端设备信息可以知道具体是哪个用户的终端与第二终端建立起通信连接。其中,终端设备信息为用于标识终端身份的信息,比如,终端设备信息可以是终端的设备型号,如果用户是基于第一终端上某个应用程序的扫描功能扫描的第二终端上的终端扫描码,则终端设备信息还可以是用户在该应用程序上的用户id(identification),账号名称等。

可选的,在第二终端上,可以以预配置的形式显示该终端设备信息,比如,预配置的形式可以为“xx已连接”,其中,“xx”可以为终端设备的设备名称。

本发明的可选方案中,根据第二终端标识,将操作任务发送至第二终端,可以包括:

根据第二终端标识,将操作任务添加到与第二终端标识对应的操作任务队列中;

通过以下任意一种方式将操作任务队列中的操作任务发送至第二终端:

第一种,在接收到第二终端发送的任务获取请求时,将与第二终端标识对应的操作任务队列中的所有操作任务发送至第二终端,任务获取请求中包括第二终端标识。

具体的,第二终端可以同时与多个终端建立通过前文描述的方法建立通信连接,或者,第一终端可以向服务器发送多个操作任务,比如,第一终端向服务器发送第一操作任务后,第一终端又向服务器发送了第二操作任务,此时,服务器接收到两个操作任务,则基于上述两种情况,第二终端基于任务获取请求获取到的操作任务可能同时有多个,为了让第二终端可以正常完成每个操作任务,则可以建立一个操作任务队列,在接收到第二终端发送的任务获取请求后,将接收到的操作任务添加到第二终端对应的操作任务队列中,然后服务器可以基于接收到的任务获取请求,将队列中的所有操作任务,即所有第二终端需要做的任务发送给第二终端。

在本方案中,第二终端可以通过轮询的方式,向服务器获取操作任务,即第二终端定时向服务器发送任务获取请求。

作为一个示例,第二终端与第一终端(终端a)建立起通信连接之后,终端a通过服务器依次向第二终端发送两个操作任务,分别为操作任务a和操作任务b,服务器接收到操作任务a的时间早于接收到操作任务b的时间,则在操作任务队列中,操作任务a的顺序在操作任务b之前,第二终端以轮询的方式获取操作任务,即按照预设的时间间隔向服务器发送任务获取请求,在发送任务获取请求时,同时获得到操作任务a和操作任务b,则第二终端可以按照操作任务a和操作任务b在操作任务队列中的顺序依次执行操作任务所对应的任务。

第二种,基于第二终端标识,将操作任务队列中的操作任务发送至第二终端。

具体的,服务器还可以按照接收到的操作任务的时间先后,基于任务获取请求,按顺序将队列中的操作任务一个一个发送给第二终端,即第二终端完成一个操作任务后,可以向服务器发送一个标识,服务器按照操作任务队列中各操作任务的顺序把下一个操作任务发送给第二终端,或者,服务器按照预先配置的时间间隔,按照顺序把下一个操作任务发送给第二终端。

本发明的可选方案中,若操作任务中还包括第一终端的终端标识(第一终端标识),在接收第一终端通过终端控制界面发送的操作任务之后,该方法还可以包括:

基于第一终端标识,向第一终端发送任务发送结果。

具体的,任务发送结果用来标识第一终端所发送的操作任务是否成功被列入服务器的操作任务队列中,其中,任务发送结果可以基于实际需求配置,比如,可以通过设定的标识符标识任务发送结果,标识符为0时,表示发送成功,标识符为1时,表示发送失败。

本发明的可选方案中,在第二终端完成操作任务对应的操作后,该方法还可以包括:

服务器接收第二终端发送的完成操作任务的操作结果,并将该操作结果发送给第一终端。

具体的,在第二终端完成一次操作任务后,可以反馈给服务器一个操作结果,该操作结果表示此次操作任务是否操作成功,则基于该操作结果,服务器和第一终端可以知道第二终端是否操作成功。其中,操作结果可以基于实际需求配置,比如,可以通过设定的标识符标识操作结果,标识符为0时,表示操作成功,标识符为1时,表示操作失败。

本发明的可选方案中,第二终端和第一终端均可以通过浏览器/服务器模式b/s(browser/server)标准通讯协议与服务器通信。

具体的,b/s模式可以将系统功能实现的核心部分集中到服务器上,即将实现前文所描述的方案集中在服务器上,通过服务器实现第二终端与第一终端之间的通信连接,以及操作任务的传输等,由此,可以不需要对第二终端和第一终端进行复杂的开发,从而可以简化系统的开发、维护和使用。

本发明的可选方案中,b/s标准通讯协议包括超文本传输协议http(hypertexttransportprotocol)、超文本传输安全协议https(hypertexttransferprotocoloversecuresocketlayer)、网络协议websocket中的至少一种。

可以理解的是,以服务器作为执行主体所描述的该终端之间的通信方法,与前文中以第一终端作为执行主体所描述的终端之间的通信方法,在实质上是相同的技术方案,只是从不同的角度对方案进行的描述。以服务器作为执行主体所描述的该终端之间的通信方法的详细描述及对方案的解释说明,可以参考前文中以第一终端作为执行主体时对终端之间的通信方法的描述,在此不再赘述。

基于与图2中所示的方法相同的原理,本发明实施例还提供了一种终端之间的通信连接方法,该方法由第二终端执行,该方法可以包括:

步骤s310,接收服务器发送的操作任务,操作任务为控制命令中携带的信息,控制命令为第一终端发送至服务器的。

可以理解的是,该步骤s310即图2中所示的步骤s140,如图2所示,该控制命令为第一终端通过以下方式生成的:

步骤s110,通过第一终端上显示的第二终端的终端控制界面接收用户在终端控制界面上的操作;

步骤s120,根据操作生成对第二终端的控制命令,控制命令中包括第二终端的终端标识和操作对应的操作任务。

其中,终端控制界面是第一终端通过安装终端控制界面的控制组件获取到的,控制组件是第一终端基于第二终端标识向服务器发送通信连接请求获取到的,第二终端标识是第一终端通过扫描第二终端上显示的终端扫描码获取到的;

步骤s320,基于接收到的操作任务执行相应的操作。

可以理解的是,该步骤s320即图2中所示的步骤s150。

本发明实施例所提供的终端之间的通信方法,第一终端可以通过扫描第二终端上显示的终端扫描码,通过服务器建立起以服务器为通信中转媒介的第一终端与第二终端之间的通信连接,并通过安装所获取到的终端控制界面的控制组件将终端控制界面显示,之后,第一终端即可以通过该终端控制界面接收对第二终端的控制命令,并将该命令通过服务器发送给第二终端,以使第二终端执行相应的操作。本发明实施例的方案,将第一终端作为遥控设备,实现了通过第一终端控制第二终端的功能。通过该方案,不需要考虑第二终端的软硬件与第一终端的软硬件是否兼容,即可通过本方案实现第一终端与第二终端之间的通信,节省了遥控设备的开发成本,更好的满足了实际应用需求。另外,用户基于终端控制界面即可实现第一终端与第二终端之间的交互,操作方便,提高了用户体验。

本发明的可选方案中,在第二终端启动时,或者,在与第二终端连接的所有终端均与第二终端断开连接时,该方法还可以包括:

向服务器发送扫描码获取请求,扫描码获取请求中包括第二终端标识;

获取与第二终端标识对应的第二终端的新的终端扫描码并显示。

可选的,第二终端可以通过轮询的方式向服务器发送扫描码获取请求。

本发明的可选方案中,该方法还可以包括:

向服务器发送连接状态查询请求,连接状态查询请求包括第二终端标识;

接收服务器基于第二终端发送的连接状态查询请求发送的第二终端通信连接状态,通信连接状态为第二终端与其他终端之间的通信连接状态,其他终端包括第一终端,通信连接状态包括未连接、已连接和连接已断开中的任一项。

可选的,第二终端可以通过轮询的方式向服务器发送连接状态查询请求。

可以理解的是,以第二终端作为执行主体所描述的该终端之间的通信方法,与前文中以第一终端和服务器作为执行主体所描述的终端之间的通信方法,在实质上是相同的技术方案,只是从不同的角度对方案进行的描述。以第二终端作为执行主体所描述的该终端之间的通信方法的详细描述及对方案的解释说明,可以参考前文中以第一终端和服务器作为执行主体时对终端之间的通信方法的描述,在此不再赘述。

本发明的技术实现原理是通过软件实现的,具备平台无关性,适用于桌面平台,移动平台、可视化硬件大屏、vr/ar设备、lot设备等软硬件设备,第一终端是具有扫描终端扫描码功能的终端,因此,具有扫描终端扫描码功能的vr/ar设备,lot设备等均可以作为第一终端。

本发明的可选方案中,可以在服务器中集成用于实现前文所描述的方案的服务命令,具体为:

a)、createqrcode服务:用于第二终端获取终端标识符uuid与对应的终端扫描码;

b)、checkconnection服务:用于第二终端通过终端标识符uuid轮询查询当前是否有第一终端成功连接第二终端;

c)、createconnection服务:用于第一终端扫描并识别第二终端上的终端扫描码,以获取第二终端的终端标识uuid,从而以服务器为通信中转媒介,创建第二终端与第一终端的通信连接;

d)、pushcommand服务:用于第一终端发送控制命令,远程操作第二终端;

e)、pullcommand服务:用于第二终端实时获取第一终端下发的操作任务队列,并执行操作任务队列中对应的操作任务;

f)、closeconnection服务:用于第一终端操作断开与第二终端的通信连接,结束通信。

下面基于上述几个服务命令,参见图4中所示的各服务命令的业务调用关系示意图,以及图5中所示的一种终端之间的通信方法的流程示意图,对本发明的方案进行具体描述,其中,在本实施例中,第一终端为手机终端,第二终端为大屏终端;手机终端通过微信小程序中的扫一扫功能识别大屏终端上的终端扫描码,对应的终端扫描码为小程序码,应用服务器中预先配置各个终端标识与对应的小程序码,以及各个终端标识与对应的控制组件。

1、startserver,启动云端应用服务器:云端应用服务器提供上述6个服务命令。

2、启动大屏终端初始化任务:启动大屏终端客户端进程,调用应用服务器的createqrcode服务,基于大屏终端标识(第二终端标识),向服务器获取该大屏终端标识对应的小程序码,并将该小程序码展示到大屏终端的屏幕上,其中,小程序码中包括大屏终端的终端标识符uuid。

3、启动大屏终端轮询查询通信连接状态任务:大屏终端轮询调用云端应用服务器中的checkconnection服务,通过该服务检测是否有其他终端已成功连接到大屏终端,若是,则显示已连接成功的终端设备信息,若检测到手机终端a与大屏终端成功连接,则可以在大屏终端上显示“手机终端a已连接”,若没有检测到有终端与大屏终端成功连接,继续显示该小程序码,等待其他终端连接。

其中,若已成功连接的终端为手机终端a,则在以云端应用服务器为通信中转媒介,创建手机终端a与大屏终端的通信连接后,云端应用服务器向大屏终端返回标识大屏终端是否与手机终端a建立通信连接的标识符,比如,标识符为0时,表示手机终端a与大屏终端的通信连接状态为未连接,标识符为1时,表示手机终端a与大屏终端成功建立起通信连接,即手机终端a与大屏终端的通信连接状态为已连接,标识符为2时,表示手机终端a与大屏终端的通信连接状态为连接已断开。

4、启动手机终端启动连接任务:打开手机终端a的微信小程序对应的扫一扫功能,识别大屏终端上的小程序码,获取大屏终端的终端标识符uuid,触发通信连接请求,该通信连接请求中包括大屏终端的终端标识符uuid,将该触发通信连接请求发送给云端应用服务器,调用云端应用服务器的createconnection服务,以云端应用服务器为通信中转媒介,创建手机终端a与大屏终端的通信连接,并在建立连接后,基于大屏终端标识符uuid,获取大屏终端的终端控制界面的控制组件,将控制组件安装在手机终端a中,并将该控制组件对应的终端控制界面显示在手机终端a上;

其中,如果手机终端a与大屏终端成功建立起通信连接,服务器可以向手机终端a发送用于标识手机终端a是否成功与大屏终端建立通信连接的标识符,比如,标识符为0时,表示该手机终端a已经成功与大屏终端建立起通信连接。

需要说明的是,上述步骤3和步骤4在执行时可以没有先后顺序,大屏终端可以一直执行轮询查询通信连接状态任务,来检测是否有与大屏终端建立成功的终端。

5、启动手机终端下发控制命令任务:手机终端a成功与大屏终端建立起通信连接后,用户可基于手机终端a向大屏终端发送操作任务,此时,调用云端应用服务器的pushcommand服务,通过服务器将该操作任务发送给对应的大屏终端,该指令中包括大屏终端的终端标识符uuid以及操作任务所对应的操作类型。

其中,若操作指令中还包括手机终端a的终端标识(第一终端标识),在接收手机终端a通过终端控制界面发送的操作任务之后,服务器基于手机终端标识,向手机终端a发送用于标识操作任务是否成功被列入服务器的操作任务队列中的任务发送结果,比如,可以通过设定的标识符标识任务发送结果,标识符为0时,表示发送成功,标识符为1时,表示发送失败。

6、启动大屏终端轮询获取控制命令任务:大屏终端轮询调用云端应用服务器的pullcommand服务,获取手机终端下发的操作任务队列(对应于图4中所示的操作指令队列),此时,如果有多个终端同时与大屏终端建立起通信连接,并有至少两个手机终端向服务器发送操作任务,则可以按照操作任务队列中接收到操作任务的时间顺序,执行对应的操作任务。

在基于操作任务操作成功后,服务器基于手机终端标识,向手机终端发送用于标识是否操作成功的标识符,比如,标识符为0时,表示操作成功,标识符为1时,表示操作失败。

需要说明的是,上述步骤5和步骤6在执行时可以没有先后顺序,大屏终端可以一直执行轮询查询是否接收到控制命令,即是否有待处理任务。

7、启动手机终端断开连接任务:用户可基于手机终端a下发断开连接请求,该请求中可以包括大屏终端的终端标识符uuid以及手机终端的终端标识,此时,基于该请求,手机终端调用云端应用服务器中的closeconnection服务,断开与大屏终端的通信连接。

其中,在手机终端与大屏终端断开连接时,服务器可以向手机终端a发送用于标识是否断开连接的标识符,比如,标识符为0时,表示该断开连接成功,标识符为1时,表示断开连接失败,当断开连接失败时,可以重新触发断开连接请求,以实现大屏终端与手机终端a断开通信连接。

8、重新调用应用服务器的createqrcode服务:当大屏终端轮询查询检测到该手机终端a连接已断开时,重新调用云端应用服务器中的createqrcode服务,类似返回于步骤2,获取新的小程序码,等待接收基于新的终端扫码所触发通信连接请求。

需要说明的是,本申请实施例中,不限定步骤1至步骤8的执行顺序,例如步骤3和步骤4可以同时执行,也可以分别执行,本领域技术人员可以根据实际情况进行设置。

通过本实施例的方法,手机终端可以通过扫描大屏终端上显示的小程序码,以云端应用服务器为通信中转媒介,建立起手机终端与大屏终端之间的通信连接,在建立连接后,可通过安装所获取到的终端控制界面的控制组件将终端控制界面显示,之后,可以通过手机终端上显示的大屏终端的终端控制界面接收对大屏终端的控制命令,基于该命令,可以通过服务器发送给大屏终端杆,将手机终端作为遥控设备,实现通过手机终端对大屏终端的远程遥控。通过该方案,不需要考虑大屏终端与手机终端的软硬件是否兼容,手机终端即可通过本方案实现与大屏终端的通信,节省了遥控设备的开发成本。另外,用户基于终端控制界面即可实现手机终端与大屏终端之间的交互,操作方便,提高了用户体验。

为了更好的理解本发明实施例所提供的方法,下面结合具体应用场景的示例对本发明实施例的方案进行进一步详细说明。

示例一

作为一个示例,应用场景为会议,如图6a所示的一种大屏终端与手机终端之间的通信连接过程的示意图,以及图6b所示的一种大屏终端与手机终端之间的通信过程的示意图,第二终端为可视化硬件大屏,比如,会议室显示设备,以下简称为大屏终端,第一终端可以为手机终端,大屏终端在会议过程中,可以用于将需要展示给参会人员的信息进行展示,在会议过程中,通常需要基于大屏终端显示会议的内容,大屏终端上所显示的会议内容可以辅助会议主讲人更好的介绍会议内容,同样参会人员也可以借助大屏终端上所展示的信息更好的理解会议内容,对于该大屏终端,由于软硬件兼容的问题,会议主讲人可能只能通过与该大屏终端相适配的遥控设备控制大屏终端,无法通过其他与该大屏终端不兼容的遥控设备遥控该大屏终端。

基于上述问题,将本发明的方案应用于云端应用服务器中,以下简称为服务器,该服务器可与多个大屏终端进行通信,也可以与其他终端进行通信,在本示例中,在启动服务器时,云服务器可以提供前文所描述的6个服务命令,然后,在启动大屏终端时,大屏终端进行初始化,基于大屏终端的终端标识,向服务器获取对应的小程序码并显示在大屏终端上,在需要使用大屏终端时,即开会过程中需要通过大屏终端展示相应的内容时,通过图6a中所示的步骤a,将手机终端与大屏终端之间通过服务器建立起通信连接:

会议主讲人可以通过手机终端中的微信小程序中的扫一扫功能扫描大屏终端上的小程序码,该小程序码中包括大屏终端的终端标识,扫描小程序码的同时可以触发通信连接请求,该请求中包括大屏终端的终端标识,服务器基于该请求,以服务器作为通信中转媒介,建立起大屏终端与手机终端之间的通信连接,同时,服务器基于大屏终端的终端标识,将大屏终端的控制组件发送给手机终端,以使手机终端将控制组件安装在手机终端上,并在手机终端上显示该控制组件对应的终端控制界面,该界面上可以包括多个控制标识,不同的控制标识对应不同的控制功能,比如如图6b中所示的两个控制标识,“上一页”和“下一页”。

接着,在通过服务器建立起大屏终端和手机终端的通信连接之后,会议主讲人可以在会议过程中,以手机终端作为遥控器遥控大屏终端,具体控制过程可通过图6b中的步骤b实现,如图6b中所示的手机终端上所显示的大屏终端的终端控制界面,该终端控制界面上包括两个控制标识,分别为“上一页”和“下一页”,会议主讲人可以基于终端控制界面上所显示的控制标识触发对应的控制命令,该控制命令中包括大屏终端的终端标识和操作任务,大屏终端以轮询的方式向服务器获取操作任务,并基于获取到的操作任务执行相应的操作,通常操作结果可直接在大屏终端上直观的显示出来,比如,操作任务为切换至下一页,则大屏终端可基于当前所显示的界面切换至下一界面所显示的内容,基于手机终端的终端控制界面控制大屏终端,可以方便用户操作,并且手机终端不需要额外下载其他应用程序,可直接基于已安装的具有扫描功能的应用即可,进一步提高了用户的使用体验。

最后,在会议结束后,会议主讲人可以通过手机终端发送断开连接请求,即请求与大屏终端断开连接,服务器基于该请求可断开大屏终端与手机终端之间的通信连接,同时,手机终端上所显示的终端控制界面消失,大屏终端此时会接收到服务器发送的新的小程序码,大屏终端将新的小程序码显示在大屏终端上,以使下一次会议时,其他终端通过新的小程序码连接大屏终端。

通过本方案的方法,不需要借助硬件设备(遥控设备)即可实现与大屏终端之间的通信,也不需要考虑大屏终端与硬件设备的兼容性问题,基于大屏终端上所显示的小程序码即可实现,将手机终端作为遥控器,将服务器作为通信中转媒介,建立手机终端与大屏终端的通信连接的目的,节省了遥控设备的开发成本,且用户基于手机终端即可实现与大屏终端之间的互动,操作方便,提高了用户体验。

基于与图2中所示的方法相同的原理,本发明实施例还提供了一种终端之间的通信装置10,该装置包含在服务器中,如图7中所示,该终端之间的通信装置10可以包括控制命令接收模块110和第一操作任务处理模块120,其中:

控制命令接收模块110,用于接收第一终端发送的控制命令,控制命令为第一终端通过以下方式生成的:

通过第一终端上显示的第二终端的终端控制界面接收用户在终端控制界面上的操作,根据操作生成对第二终端的控制命令,控制命令中包括第二终端的终端标识(第二终端标识)和操作对应的操作任务;

其中,终端控制界面第一终端通过安装终端控制界面的控制组件获取到的,控制组件是第一终端基于第二终端标识向服务器发送通信连接请求获取到的,终端标识是第一终端通过扫描第二终端上显示的终端扫描码获取到的;

第一操作任务处理模块120,用于根据第二终端标识,将操作任务发送至第二终端,以使第二终端根据接收到的操作任务执行相应的操作。

通过本实施例中的方案,第一终端可以通过扫描第二终端上显示的终端扫描码,通过服务器建立起以服务器为通信中转媒介的第一终端与第二终端之间的通信连接,并通过安装所获取到的终端控制界面的控制组件将终端控制界面显示,之后,第一终端即可以通过该终端控制界面接收对第二终端的控制命令,并将该命令通过服务器发送给第二终端,以使第二终端执行相应的操作。本发明实施例的方案,将第一终端作为遥控设备,实现了通过第一终端控制第二终端的功能。通过该方案,不需要考虑第二终端的软硬件与第一终端的软硬件是否兼容,即可通过本方案实现第一终端与第二终端之间的通信,节省了遥控设备的开发成本,更好的满足了实际应用需求。

可选的,该装置还可以包括:

第一通信连接建立模块,用于在接收第一终端发送的控制命令之前,接收第一终端发送的通信连接请求,通信连接请求为第一终端通过扫描终端扫描码触发的,终端扫描码中包括第二终端标识,通信连接请求中包括终端标识;根据终端标识,以服务器作为通信中转媒介,建立起第一终端与第二终端之间的通信连接,并在第一终端与第二终端建立通信连接之后,基于第二终端标识,将控制组件发送至第一终端,以使第一终端安装控制组件并显示终端控制界面。

可选的,该装置还可以包括:

第一扫描码获取模块,用于在第二终端启动时,或者,在与第二终端连接的所有终端均与第二终端断开连接时,基于第二终端标识,将新的终端扫描码发送至第二终端,以使第二终端将新的终端扫描码显示在第二终端上。

可选的,该装置还可以包括:

设备信息显示模块,用于在以服务器作为通信中转媒介,建立起第一终端与第二终端的通信连接之后,向第二终端发送第一终端的终端设备信息,以使第二终端显示终端设备信息。

可选的,第二操作任务处理模块220在根据第二终端标识,将操作任务发送至第二终端时,具体用于:

根据第二终端标识,将操作任务添加到与第二终端标识对应的操作任务队列中;

通过以下任意一种方式将操作任务队列中的操作任务发送至第二终端:

在接收到第二终端发送的任务获取请求时,将与第二终端标识对应的操作任务队列中的所有操作任务发送至第二终端,任务获取请求中包括第二终端标识;

基于第二终端标识,将操作任务队列中操作任务发送至第二终端。

可选的,该装置还可以包括:

第一连接状态查询模块,用于接收第二终端发送的连接状态查询请求,连接状态查询请求包括第二终端标识;基于第二终端标识,将第二终端的通信连接状态发送给第二终端,通信连接状态为第二终端与其他终端之间的通信连接状态,其他终端包括第一终端,通信连接状态包括未连接、已连接和连接已断开中的任一项。

可选的,该装置还可以包括:

通信连接断开模块,用于接收第一终端发送的断开连接请求,断开连接请求中包括第二终端标识;基于第二终端标识,断开以服务器作为通信中转媒介所建立起的第一终端与第二终端之间的通信连接。

基于与图2中所示的方法相同的原理,本发明实施例还提供了一种终端之间的通信装置20,该装置包含在第一终端中,如图8中所示,该终端之间的通信装置20可以包括操作接收模块210、控制命令生成模块220以及第二操作任务处理模块230,其中:

操作接收模块210,用于接收用户在第一终端上显示的第二终端的终端控制界面上的操作。

控制命令生成模块220,用于根据操作生成对第二终端的控制命令,控制命令中包括第二终端的第二终端标识和操作对应的操作任务;

其中,终端控制界面是第一终端通过安装终端控制界面的控制组件获取到的,控制组件是第一终端基于第二终端标识向服务器发送通信连接请求获取到的,第二终端标识是第一终端通过扫描第二终端上显示的终端扫描码获取到的;

第二操作任务处理模块230,用于将控制命令发送至服务器,以使服务器根据第二终端标识将操作任务发送至第二终端,第二终端根据接收到的操作任务执行相应的操作。

通过本实施例中的方案,第一终端可以通过扫描第二终端上显示的终端扫描码,通过服务器建立起以服务器为通信中转媒介的第一终端与第二终端之间的通信连接,并通过安装所获取到的终端控制界面的控制组件将终端控制界面显示,之后,第一终端即可以通过该终端控制界面接收对第二终端的控制命令,并将该命令通过服务器发送给第二终端,以使第二终端执行相应的操作。本发明实施例的方案,将第一终端作为遥控设备,实现了通过第一终端控制第二终端的功能。通过该方案,不需要考虑第二终端的软硬件与第一终端的软硬件是否兼容,即可通过本方案实现第一终端与第二终端之间的通信,节省了遥控设备的开发成本,更好的满足了实际应用需求。

可选的,该装置还可以包括:

第二通信连接建立模块,用于在接收用户在第一终端上显示的第二终端的终端控制界面上的操作之前,在检测到对终端扫描码的扫描操作时,解析终端扫描码得到第二终端标识;基于第二终端标识向服务器发送通信连接请求,以使服务器在接收到第一终端发送的通信连接请求时,以服务器作为通信中转媒介,建立起第一终端与第二终端标识对应的第二终端之间的通信连接;接收服务器基于第二终端标识发送的控制组件,安装控制组件以显示终端控制界面。

可选的,第一终端包括移动终端,第二终端包括大屏终端。

基于与图2中所示的方法相同的原理,本发明实施例还提供了一种终端之间的通信装置30,该装置包含在第一终端中,如图9中所示,该终端之间的通信装置30可以包括操作任务接收模块310和第三操作任务处理模块320,其中:

操作任务接收模块310,用于接收服务器发送的操作任务,操作任务为控制命令中携带的信息,操作任务为控制命令中携带的信息,控制命令为第一终端发送至服务器的,控制命令是通过以下方式生成的:

通过第一终端上显示的第二终端的终端控制界面接收用户在终端控制界面上的操作,根据操作生成对第二终端的控制命令,控制命令中包括第二终端的终端标识和操作对应的操作任务;

其中,终端控制界面是第一终端通过安装终端控制界面的控制组件获取到的,控制组件是第一终端基于第二终端标识向服务器发送通信连接请求获取到的,终端标识是第一终端通过扫描第二终端上显示的终端扫描码获取到的;

第三操作任务处理模块320,用于基于接收到的操作任务执行相应的操作。

通过本实施例中的方案,第一终端可以通过扫描第二终端上显示的终端扫描码,通过服务器建立起以服务器为通信中转媒介的第一终端与第二终端之间的通信连接,并通过安装所获取到的终端控制界面的控制组件将终端控制界面显示,之后,第一终端即可以通过该终端控制界面接收对第二终端的控制命令,并将该命令通过服务器发送给第二终端,以使第二终端执行相应的操作。本发明实施例的方案,将第一终端作为遥控设备,实现了通过第一终端控制第二终端的功能。通过该方案,不需要考虑第二终端的软硬件与第一终端的软硬件是否兼容,即可通过本方案实现第一终端与第二终端之间的通信,节省了遥控设备的开发成本,更好的满足了实际应用需求。

可选的,该装置还可以包括:

第二扫描码获取模块,用于在第二终端启动时,或者,在与第二终端连接的所有终端均与第二终端断开连接时,向服务器发送扫描码获取请求,扫描码获取请求中包括第二终端标识;获取与终端标识对应的第二终端的新的终端扫描码并显示。

可选的,该装置还可以包括:

第二连接状态查询模块,用于向服务器发送连接状态查询请求,连接状态查询请求包括第二终端标识;接收服务器基于第二终端发送的连接状态查询请求发送的第二终端通信连接状态,信连接状态为第二终端与其他终端之间的通信连接状态,其他终端包括第一终端,通信连接状态包括未连接、已连接和连接已断开中的任一项。

由于本发明实施例所提供的装置为可以执行本发明实施例中的方法的装置,故而基于本发明实施例中所提供的方法,本领域所属技术人员能够了解本发明实施例的装置的具体实施方式以及其各种变化形式,所以在此对于该装置如何实现本发明实施例中的方法不再详细介绍。只要本领域所属技术人员实施本发明实施例中的方法所采用的装置,都属于本申请所欲保护的范围。

基于与本发明实施例所提供的方法和装置相同的原理,本发明实施例还提供了一种通信系统,该通信系统包括第一终端、第二终端和服务器,其中,第一终端包括终端之间的通信装置10,第二终端中包括终端之间的通信装置20,服务器包括终端之间的通信装置30。

基于与本发明实施例所提供的方法和装置相同的原理,本发明实施例还提供了一种电子设备,该电子设备可以包括处理器和存储器。其中,存储器中存储有可读指令,可读指令由处理器加载并执行时,可以实现本发明任一实施例中所示的方法。

作为一个示例,图10中示出了本申请实施例的方案所适用的一种电子设备4000的结构示意图,如图10中所示,该电子设备4000可以包括处理器4001和存储器4003。其中,处理器4001和存储器4003相连,如通过总线4002相连。可选地,电子设备4000还可以包括收发器4004。需要说明的是,实际应用中收发器4004不限于一个,该电子设备4000的结构并不构成对本申请实施例的限定。

处理器4001可以是cpu(centralprocessingunit,中央处理器),通用处理器,dsp(digitalsignalprocessor,数据信号处理器),asic(applicationspecificintegratedcircuit,专用集成电路),fpga(fieldprogrammablegatearray,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器4001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,dsp和微处理器的组合等。

总线4002可包括一通路,在上述组件之间传送信息。总线4002可以是pci(peripheralcomponentinterconnect,外设部件互连标准)总线或eisa(extendedindustrystandardarchitecture,扩展工业标准结构)总线等。总线4002可以分为地址总线、数据总线、控制总线等。为便于表示,图10中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

存储器4003可以是rom(readonlymemory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,ram(randomaccessmemory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是eeprom(electricallyerasableprogrammablereadonlymemory,电可擦可编程只读存储器)、cd-rom(compactdiscreadonlymemory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。

存储器4003用于存储执行本申请方案的应用程序代码,并由处理器4001来控制执行。处理器4001用于执行存储器4003中存储的应用程序代码,以实现前述任一方法实施例所示的方案。

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

以上仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

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