一种指令传输方法、装置、存储介质及服务器与流程

文档序号:20916996发布日期:2020-05-29 13:39阅读:186来源:国知局
一种指令传输方法、装置、存储介质及服务器与流程

本申请涉及计算机技术领域,尤其涉及一种指令传输方法、装置、存储介质及服务器。



背景技术:

互联网是能够相互交流,相互沟通,相互参与的互动平台。通过互联网,我们可以购物、查阅资料、即时通讯以及在线学习等。互联网改变人们思维方式的同时也智慧着人们的生活。

网络通信不受时间、地域、距离等因素的限制,终端用户可以随时随地相互发送信息。

目前,终端之间的通信是通过信令服务器来将第一终端发送的信息发送给第二终端,而该过程容易出现信息发送失败的情况,导致终端之间通信失败,通信成功率低。



技术实现要素:

本申请实施例提供了一种指令传输方法、装置、存储介质及服务器,可以解决上述终端之间通信成功率低的问题。所述技术方案如下:

第一方面,本申请实施例提供了一种指令传输方法,所述方法包括:

接收第一终端发送的控制指令,将所述控制指令发送至第二终端;

当确定所述第二终端未接收到所述控制指令时,通知业务服务器,以使所述业务服务器将所存储的所述控制指令发送至所述第二终端,所述业务服务器上所存储的所述控制指令由所述第一终端发送。

第二方面,本申请实施例提供了一种指令传输装置,所述装置包括:

控制指令第一发送模块,用于接收第一终端发送的控制指令,将所述控制指令发送至第二终端;

控制指令第二发送模块,用于当确定所述第二终端未接收到所述控制指令时,通知业务服务器,以使所述业务服务器将所存储的所述控制指令发送至所述第二终端,所述业务服务器上所存储的所述控制指令由所述第一终端发送。

第三方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一项方法的步骤。

第四方面,本申请实施例提供了一种服务器,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任一项方法的步骤。

本申请一些实施例提供的技术方案带来的有益效果至少包括:

在本申请的一个或多个实施例中,首先接收第一终端发送的控制指令,然后将所接收的控制指令发送至第二终端;当确定所述第二终端未接收到所述控制指令时,通知业务服务器,以使所述业务服务器将所存储的所述控制指令发送至所述第二终端,所述业务服务器上所存储的所述控制指令由所述第一终端发送。本申请实施例将控制指令存储在业务服务器上,这样在第二终端未接收到控制指令的情况下,还可以将业务服务器存储的控制指令发送给第二终端,提升了指令发送成功率以及第一终端与第二终端之间的通信成功率。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的一种指令传输方法的流程示意图;

图2是本申请实施例提供的一种指令传输方法的流程示意图;

图3是本申请实施例提供的一种指令传输方法的流程示意图;

图4是本申请实施例提供的一种指令传输装置的结构示意图;

图5是本申请实施例提供的一种指令传输装置的结构示意图;

图6是本申请实施例提供的一种指令传输装置的结构示意图;

图7是本申请实施例提供的一种终端结构框图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施例方式作进一步地详细描述。

下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

在本申请的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。此外,在本申请的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

下面将结合附图1-附图3,对本申请实施例提供的指令传输方法进行详细介绍。

请参见图1,为本申请实施例提供的一种指令传输方法的流程示意图。

如图1所示,本申请实施例的所述方法可以包括以下步骤:

s101,接收第一终端发送的控制指令,将所述控制指令发送至第二终端;

终端之间的相互通信依赖于信令服务器,信息的传递均须由信令服务器进行中转交换,也就是说,信令服务器是一个能让终端之间交换信息的服务器。本申请实施例提供的指令传输方法均由信令服务器执行。

实施方式中,信令服务器接收第一终端发送的控制指令,并将所接收的控制指令发送给第二终端;其中,所述第一终端发送的控制指令包含了所要发送的内容以及第二终端标识,所述第一终端要发送的内容例如可以是文字、语音、图片、视频等,内容的生成例如可以是:用户在第一终端的即时通信界面上手动输入文字从而生成发送内容,或者在视频播放界面点击视频分享按钮从而生成分享内容等;内容生成后,第一终端获取第二终端标识,并基于所述发送内容以及第二终端标识生成控制指令;本申请提供的实施例中,第一终端不同于第二终端,所获取的第二终端标识例如可以是终端序列号、uuid、mac地址等,凡是能对用户终端进行区分的标识均可。

s102,当确定所述第二终端未接收到所述控制指令时,通知业务服务器,以使所述业务服务器将所存储的所述控制指令发送至所述第二终端,所述业务服务器上所存储的所述控制指令由所述第一终端发送。

本实施例中,第一终端将所生成的控制指令发送给信令服务器的同时,还将所述控制指令发送给业务服务器进行存储(作为备用);在信令服务器将所接收的控制指令发送给第二终端后,可以根据第二终端返回的响应指令来确定所述第二终端是否接收到了所述控制指令。

具体而言,若信令服务器接收到了响应指令,则表明控制指令发送成功,第二终端接收到了所述控制指令,指令发送任务结束;若信令服务器始终未能接收到响应指令,则表明控制指令发送失败,第二终端未接收到所述控制指令,此时,通知业务服务器将备用控制指令(也就是所存储的控制指令)发送给第二终端;第二终端在成功接收到信令/业务服务器发送的控制指令后,对该指令进行解析,获得信息并通过显示屏将该信息显示给第二终端用户。

区别于对信息进行中转交换的信令服务器,业务服务器主要用于处理业务。本申请实施例可以在第二终端未成功接收到所发送的指令/信息时,将存储于业务服务器上的备用指令/信息发送给第二终端,有效避免了终端通信过程中的信息丢失问题。

在本申请实施例中,首先接收第一终端发送的控制指令,然后将所接收的控制指令发送至第二终端;当确定所述第二终端未接收到所述控制指令时,通知业务服务器,以使所述业务服务器将所存储的所述控制指令发送至所述第二终端,所述业务服务器上所存储的所述控制指令由所述第一终端发送。本申请实施例将控制指令存储在业务服务器上,这样在第二终端未接收到控制指令的情况下,还可以将业务服务器存储的控制指令发送给第二终端,提升了指令发送成功率以及第一终端与第二终端之间的通信成功率。

请参见图2,为本申请实施例提供的一种指令传输方法的流程示意图。

如图2所示,本申请实施例的所述方法可以包括以下步骤:

s201,接收第一终端发送的控制指令,将所述控制指令发送至第二终端;

信令服务器将所接收的控制指令发送给第二终端后,执行步骤s202或s204。

本步骤未作详尽说明之处具体可参见s101,此处不再赘述。

s202,向所述第二终端发送查询指令,以确定所述第二终端是否成功接收到所述控制指令;

信令服务器向第二终端发送的查询指令可以是与控制指令同步发送,也可以是在控制指令发送之后的某一时刻发送(例如控制指令发送之后的第5s,向第二终端发送查询指令);查询指令用于查询所述第二终端是否成功接收到了所述控制指令;在查询指令发送至第二终端后,第二终端执行查询操作,并将查询结果反馈给信令服务器;基于所反馈的查询结果,信令服务器执行相应的操作,具体地,当查询结果显示第二终端已成功接收控制指令时,信令服务器的指令发送任务结束;当查询结果显示第二终端未成功接收控制指令时,执行下一步骤。需要说明的是,为保证查询结果的准确性,信令服务器还可以向第二终端多次发送查询指令,多次发送查询指令时,可以实时发送,也可以周期性发送。

s203,当接收到所述第二终端反馈的未成功接收到所述控制指令时,向所述业务服务器发送通知,通知所述业务服务器将所存储的所述控制指令发送至所述第二终端,所述业务服务器上所存储的所述控制指令由所述第一终端发送;

本申请提供的实施例,第一终端在将控制指令发送给信令服务器的同时,还将所述控制指令发送至业务服务器进行存储(作为备用);信令服务器将所接收的控制指令以及查询指令发送给第二终端后,基于第二终端反馈回来的查询结果可以确定所述第二终端是否成功接收控制指令。

当反馈回来的查询指令显示第二终端未能成功接收控制指令时,信令服务器向业务服务器发送通知,通知业务服务器将所存储的控制指令发送给第二终端;第二终端在成功接收到服务器发送的控制指令后,对该指令进行解析,获得信息并通过显示屏将该信息显示给第二终端用户。

当然,信令服务器也可以是基于多次反馈回来的查询结果来最终确定第二终端是否接收到了所述控制指令。本实施例通过发送查询指令可以及时获知第二终端是否接收到了所述控制指令,在确定控制指令发送失败时及时将备用的控制指令发送给第二终端,保证用户体验。

s204,获取发送控制指令的时间戳;

时间戳是根据系统时间生成的一组随机数字,实施方式中也可以将所述时间戳转换为时间。本申请实施例获取时间戳是为了确定信令服务器发送控制指令的时间。

s205,当在距离所述时间戳预设时长内未接收到所述第二终端的响应指令时,确定所述第二终端未接收到所述控制指令,通知业务服务器,以使所述业务服务器将所存储的所述控制指令发送至所述第二终端,所述业务服务器上所存储的所述控制指令由所述第一终端发送。

通过信令服务器对信息进行转达发送时,第二终端在接收到所发送的控制指令后,可以向信令服务器发送响应指令,用以告知控制指令发送成功。

基于步骤s204获取的时间戳以及预设的时间长度,确定目标时间戳,若目标时间戳内信令服务器未接收到所述第二终端发送的响应指令,则表明控制指令发送失败,第二终端未接收到所述控制指令,此时,信令服务器通知业务服务器将所存储的控制指令发送给第二终端,第二终端在成功接收到服务器发送的控制指令后,对该指令进行解析,获得信息并通过显示屏将该信息显示给第二终端用户。具体实施时,将时间戳转换为时间,所述预设时长例如可以设置为3s,当信令服务器发送控制指令的时间为00:10时,若在00:13还未接收到第二终端发送的响应指令,那么信令服务器便向业务服务器发送通知。

在本申请实施例中,首先接收第一终端发送的控制指令,然后将所接收的控制指令发送至第二终端;当确定所述第二终端未接收到所述控制指令时,通知业务服务器,以使所述业务服务器将所存储的所述控制指令发送至所述第二终端,所述业务服务器上所存储的所述控制指令由所述第一终端发送。本申请实施例将控制指令存储在业务服务器上,这样在第二终端未接收到控制指令的情况下,还可以将业务服务器存储的控制指令发送给第二终端,提升了指令发送成功率以及第一终端与第二终端之间的通信成功率。

请参见图3,为本申请实施例提供的一种指令传输方法的流程示意图。

如图3所示,本申请实施例的所述方法可以包括以下步骤:

s301,接收第一终端发送的控制指令,将所述控制指令发送至第二终端;

该步骤具体可参见s101,此处不再赘述。

s302,当确定所述第二终端接收到所述控制指令时,通知业务服务器,以使所述业务服务器清除所存储的所述控制指令;

信令服务器在将所接收的控制指令发送给第二终端后,基于第二终端返回的响应指令确定所述第二终端是否接收到了所述控制指令:若信令服务器接收到响应指令,则表明控制指令发送成功,第二终端接收到了所述控制指令,指令发送任务结束;信令服务器向业务服务器发送通知,通知业务服务器清除所存储的控制指令(清除备用控制指令)。本实施例在确定第二终端成功接收控制指令之后,通知业务服务器清除所存储的控制指令能够扩大业务服务器的存储空间。

s303,当确定所述第二终端未接收到所述控制指令时,从所述业务服务器获取所存储的所述控制指令,并将所获取的控制指令发送至所述第二终端,所述业务服务器上所存储的所述控制指令由所述第一终端发送。

本申请实施例在信令服务器始终未能接收到第二终端发送的响应指令时,还可以向业务服务器获取备用控制指令(也就是业务服务器所存储的控制指令),并由信令服务器将该备用控制指令发送至第二终端。通过信令服务器将备用控制指令发送给第二终端,可以继续对发送结果进行监测(也就是发送查询指令或者接收第二终端发送的响应指令),在控制指令二次发送失败时,信令服务器还可以继续从业务服务器获取备用控制指令然后再次发送给第二终端,直至第二终端接收成功。本申请实施例保证了终端之间的信息传递。

需要说明的是,本申请提供的实施例中,所述第一终端与所述第二终端中的至少一个终端为教学终端,所述控制指令可以为教学交互控制指令。

在本申请实施例中,首先接收第一终端发送的控制指令,然后将所接收的控制指令发送至第二终端;当确定所述第二终端未接收到所述控制指令时,通知业务服务器,以使所述业务服务器将所存储的所述控制指令发送至所述第二终端,所述业务服务器上所存储的所述控制指令由所述第一终端发送。本申请实施例将控制指令存储在业务服务器上,这样在第二终端未接收到控制指令的情况下,还可以将业务服务器存储的控制指令发送给第二终端,提升了指令发送成功率以及第一终端与第二终端之间的通信成功率。

下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。

请参见图4,为本申请一个示例性实施例提供的指令传输装置的结构示意图。该指令传输装置可以通过软件、硬件或者两者的结合实现成为终端的全部或一部分,还可以作为独立的模块集成于服务器上。本申请实施例中的指令传输装置应用于终端,所述该装置1包括控制指令第一发送模块11以及控制指令第二发送模块12,其中:

控制指令第一发送模块11,用于接收第一终端发送的控制指令,将所述控制指令发送至第二终端;

控制指令第二发送模块12,用于当确定所述第二终端未接收到所述控制指令时,通知业务服务器,以使所述业务服务器将所存储的所述控制指令发送至所述第二终端,所述业务服务器上所存储的所述控制指令由所述第一终端发送。

请参见图5,为本申请一个示例性实施例提供的指令传输装置的结构示意图。

可选的,如图5所示,本申请实施例提供的所述指令传输装置1中的控制指令第二发送模块12包括:

查询指令发送单元121,用于向所述第二终端发送查询指令,以确定所述第二终端是否成功接收到所述控制指令;

通知发送单元122,用于当接收到所述第二终端反馈的未成功接收到所述控制指令时,向所述业务服务器发送通知,通知所述业务服务器将所存储的所述控制指令发送至所述第二终端。

可选的,所述控制指令第二发送模块12具体用于:

获取发送控制指令的时间戳;

当在距离所述时间戳预设时长内未接收到所述第二终端的响应指令时,确定所述第二终端未接收到所述控制指令,通知业务服务器。

请参见图6,为本申请一个示例性实施例提供的指令传输装置的结构示意图。

可选的,如图6所示,本申请实施例提供的所述指令传输装置1还包括:

控制指令清除模块13,用于当确定所述第二终端接收到所述控制指令时,通知业务服务器,以使所述业务服务器清除所存储的所述控制指令;

所述控制指令第二发送模块12具体用于:

当确定所述第二终端未接收到所述控制指令时,向所述业务服务器获取所存储的所述控制指令;

将所述控制指令发送至所述第二终端。

需要说明的是,上述实施例提供的指令传输装置在执行指令传输方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的指令传输装置与指令传输方法实施例属于同一构思,其体现实现过程详见方法实施例,这里不再赘述。

上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。

在本申请实施例中,首先接收第一终端发送的控制指令,然后将所接收的控制指令发送至第二终端;当确定所述第二终端未接收到所述控制指令时,通知业务服务器,以使所述业务服务器将所存储的所述控制指令发送至所述第二终端,所述业务服务器上所存储的所述控制指令由所述第一终端发送。本申请实施例将控制指令存储在业务服务器上,这样在第二终端未接收到控制指令的情况下,还可以将业务服务器存储的控制指令发送给第二终端,提升了指令发送成功率以及第一终端与第二终端之间的通信成功率。

本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前述任一实施例方法的步骤。其中,计算机可读存储介质可以包括但不限于任何类型的盘,包括软盘、光盘、dvd、cd-rom、微型驱动器以及磁光盘、rom、ram、eprom、eeprom、dram、vram、闪速存储器设备、磁卡或光卡、纳米系统(包括分子存储器ic),或适合于存储指令和/或数据的任何类型的媒介或设备。

本申请实施例还提供了一种终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现上述任一实施例方法的步骤。

请参见图7,为本申请实施例提供的一种终端结构框图。

如图7所示,终端600包括有:处理器601和存储器602。

本申请实施例中,处理器601为计算机系统的控制中心,可以是实体机的处理器,也可以是虚拟机的处理器。处理器601可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器601可以采用dsp(digitalsignalprocessing,数字信号处理)、fpga(field-programmablegatearray,现场可编程门阵列)、pla(programmablelogicarray,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器601也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(centralprocessingunit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。

存储器602可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器602还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在本申请的一些实施例中,存储器602中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器601所执行以实现本申请实施例中的方法。

一些实施例中,终端600还包括有:外围设备接口603和至少一个外围设备。处理器601、存储器602和外围设备接口603之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口603相连。具体地,外围设备包括:显示屏604、摄像头605和音频电路606中的至少一种。

外围设备接口603可被用于将i/o(input/output,输入/输出)相关的至少一个外围设备连接到处理器601和存储器602。在本申请的一些实施例中,处理器601、存储器602和外围设备接口603被集成在同一芯片或电路板上;在本申请的一些其他实施例中,处理器601、存储器602和外围设备接口603中的任意一个或两个可以在单独的芯片或电路板上实现。本申请实施例对此不作具体限定。

显示屏604用于显示ui(userinterface,用户界面)。该ui可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏604是触摸显示屏时,显示屏604还具有采集在显示屏604的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器601进行处理。此时,显示屏604还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在本申请的一些实施例中,显示屏604可以为一个,设置终端600的前面板;在本申请的另一些实施例中,显示屏604可以为至少两个,分别设置在终端600的不同表面或呈折叠设计;在本申请的再一些实施例中,显示屏604可以是柔性显示屏,设置在终端600的弯曲表面上或折叠面上。甚至,显示屏604还可以设置成非矩形的不规则图形,也即异形屏。显示屏604可以采用lcd(liquidcrystaldisplay,液晶显示屏)、oled(organiclight-emittingdiode,有机发光二极管)等材质制备。

摄像头605用于采集图像或视频。可选地,摄像头605包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及vr(virtualreality,虚拟现实)拍摄功能或者其它融合拍摄功能。在本申请的一些实施例中,摄像头605还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。

音频电路606可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器601进行处理。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端600的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。

电源607用于为终端600中的各个组件进行供电。电源607可以是交流电、直流电、一次性电池或可充电电池。当电源607包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。

本申请实施例中示出的终端结构框图并不构成对终端600的限定,终端600可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。

在本申请中,术语“第一”、“第二”等仅用于描述的目的,而不能理解为指示或暗示相对重要性或顺序;术语“多个”则指两个或两个以上,除非另有明确的限定。术语“安装”、“相连”、“连接”、“固定”等术语均应做广义理解,例如,“连接”可以是固定连接,也可以是可拆卸连接,或一体地连接;“相连”可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。

本申请的描述中,需要理解的是,术语“上”、“下”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或单元必须具有特定的方向、以特定的方位构造和操作,因此,不能理解为对本申请的限制。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。

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