一种数据处理方法及装置与流程

文档序号:12693864阅读:186来源:国知局
一种数据处理方法及装置与流程
本发明涉及通信
技术领域
,特别涉及一种数据处理方法及装置。
背景技术
:目前,由于许多低成本设备的cpu(CentralProcessingUnit,中央处理器)的处理能力特别弱,所以这些设备通常仅做一些离线业务,但是离线业务的数据来源仅限于本地存储的一些数据,因而离线业务的数据资源非常有限而且无法更新,这使得用户在使用之后不会有很长时间的新鲜感,为此,相关技术中为这类设备增加了在线处理数据业务的功能,但在线处理数据业务通常都是基于http(HyperTextTransferProtocol,超文本传输协议)协议,如对于普通的语音设备而言,而http协议通常需要占用很多带宽等系统资源,这导致其在弱能力设备上难以实现,而且在弱处理能力设备上使用http协议也无疑增加了弱处理能力设备的处理负担。技术实现要素:本发明提供一种数据处理方法及装置,用以在接收到数据请求时,通过将数据请求通过由TCP协议建立的目标连接发送至服务器,并接收服务器通过由TCP协议建立的长连接下发的与数据请求对应的响应结果,可以通过TCP协议使设备实现在线处理数据业务,以丰富用户的在线数据业务处理需求,且这相比于使用http协议而言,可以有效地减少所占用的带宽等系统资源,同时也可使弱处理能力设备以较低的成本实现在线服务,可以减少弱处理能力设备的在线处理负担。本发明提供一种数据处理方法,包括:在接收到数据请求时,将所述数据请求通过由TCP协议建立的目标连接发送至服务器;接收所述服务器通过由TCP协议建立的长连接下发的与所述数据请求对应的响应结果。在一个实施例中,所述数据请求包括:语音请求,且所述语音请求包括输入的用于获取响应结果的语音信息;在接收到数据请求时,将所述数据请求通过由TCP协议建立的目标连接发送至服务器,包括:在接收到所述语音请求时,将所述语音请求中的所述语音信息分为至少一个TCP包后,通过所述目标连接发送至服务器;所述响应结果包括:所述语音信息对应的数据资源,其中,所述数据资源包括以下至少一项:所述语音信息对应的音频资源、所述语音信息对应的视频资源和所述语音信息对应的文本信息,所述文本信息包括所述语音信息对应的语音识别结果。在一个实施例中,所述在接收到数据请求时,将所述数据请求通过由TCP协议建立的目标连接发送至服务器,包括:在第一设备接收到所述数据请求时,将所述数据请求通过所述目标连接发送至服务器;所述接收所述服务器通过由TCP协议建立的长连接下发的与所述数据请求对应的响应结果,包括:通过第二设备接收所述服务器通过由TCP协议建立的长连接下发的所述响应结果,其中,所述第二设备与所述第一设备相关联。在一个实施例中,在将数据请求通过由TCP协议建立的目标连接发送至服务器之前,所述方法还包括:当所述目标连接包括短连接且接收到建立短连接的提示信息时,通过TCP协议与所述服务器建立所述短连接,其中,所述建立短连接的提示信息包括以下至少一项:所述数据请求、建立短连接的语音提示词、建立短连接的操作动作;在接收所述服务器通过由TCP协议建立的长连接下发的与所述数据请求对应的响应结果之前,所述方法还包括:在接收到建立长连接的触发操作时,与所述服务器通过TCP协议建立所述长连接,其中,所述建立长连接的触发操作包括以下至少一项:开机启动操作、预设应用程序的开启操作。在一个实施例中,所述方法还包括:在接收到所述响应结果后,将所述响应结果进行显示和/或播放,其中,所述目标连接包括长连接。本发明还提供一种数据处理装置,包括:发送模块,用于在接收到数据请求时,将所述数据请求通过由TCP协议建立的目标连接发送至服务器;接收模块,用于接收所述服务器通过由TCP协议建立的长连接下发的与所述数据请求对应的响应结果。在一个实施例中,所述数据请求包括:语音请求,且所述语音请求包括输入的用于获取响应结果的语音信息;所述发送模块包括:处理子模块,用于在接收到所述语音请求时,将所述语音请求中的所述语音信息分为至少一个TCP包后,通过所述目标连接发送至服务器;所述响应结果包括:所述语音信息对应的数据资源,其中,所述数据资源包括以下至少一项:所述语音信息对应的音频资源、所述语音信息对应的视频资源和所述语音信息对应的文本信息,所述文本信息包括所述语音信息对应的语音识别结果。在一个实施例中,所述发送模块包括:发送子模块,用于在第一设备接收到所述数据请求时,将所述数据请求通过所述目标连接发送至服务器;所述接收模块包括:接收子模块,用于通过第二设备接收所述服务器通过由TCP协议建立的长连接下发的所述响应结果,其中,所述第二设备与所述第一设备相关联。在一个实施例中,所述装置还包括:第一建立模块,用于在将数据请求通过由TCP协议建立的目标连接发送至服务器之前,当所述目标连接包括短连接且接收到建立短连接的提示信息时,通过TCP协议与所述服务器建立所述短连接,其中,所述建立短连接的提示信息包括以下至少一项:所述数据请求、建立短连接的语音提示词、建立短连接的操作动作;以及第二建立模块,用于在接收所述服务器通过由TCP协议建立的长连接下发的与所述数据请求对应的响应结果之前,在接收到建立长连接的触发操作时,与所述服务器通过TCP协议建立所述长连接,其中,所述建立长连接的触发操作包括以下至少一项:开机启动操作、预设应用程序的开启操作。在一个实施例中,所述装置还包括:处理模块,用于在接收到所述响应结果后,将所述响应结果进行显示和/或播放,其中,所述目标连接包括长连接。本公开的实施例提供的技术方案可以包括以下有益效果:在接收到数据请求时,通过将数据请求通过由TCP协议建立的目标连接发送至服务器,并接收服务器通过由TCP协议建立的长连接下发的与数据请求对应的响应结果,可以通过TCP协议使设备实现在线处理数据业务,以丰富用户的在线数据业务处理需求,且这相比于使用http协议而言,可以有效地减少所占用的带宽等系统资源,同时也可使弱处理能力设备以较低的成本实现在线服务,可以减少弱处理能力设备的在线处理负担。本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。附图说明附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:图1是根据一示例性实施例示出的一种数据处理方法的流程图。图2是根据一示例性实施例示出的另一种数据处理方法的流程图。图3是根据一示例性实施例示出的一种数据处理装置的框图。图4是根据一示例性实施例示出的另一种数据处理装置的框图。图5是根据一示例性实施例示出的又一种数据处理装置的框图。图6是根据一示例性实施例示出的再一种数据处理装置的框图。图7是根据一示例性实施例示出的一种数据处理流程示意图。具体实施方式以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。相关技术中,由于许多低成本设备的cpu(CentralProcessingUnit,中央处理器)的处理能力特别弱,所以这些设备通常仅做一些离线业务,但是离线业务的数据来源仅限于本地存储的一些数据,因而离线业务的数据资源非常有限而且无法更新,这使得用户在使用之后不会有很长时间的新鲜感,为此,相关技术为这类设备增加了在线处理数据业务的功能,但在线处理数据业务(尤其是对于普通的语音设备而言)通常都是基于http(HyperTextTransferProtocol,超文本传输协议)协议,而http协议通常需要占用很多带宽等系统资源,这导致其在弱能力设备上难以实现,而且在弱处理能力设备上使用http协议也无疑增加了弱处理能力设备的处理负担,例如,由于http协议的数据包中其格式数据的数据量比较多,如http协议的数据包中头部格式的数据量比较大,使得传输http协议数据包所需要占用的带宽就比较多,同时由于http协议的数据包中格式数据的数据量比较多,因而,每次传输的http数据包中携带的待传输数据的数据量就比较小,从而使得相同数据量的待传输数据需要被拆分为更多个数据包进行传输,这又增加了带宽的占用,且也增加了传输次数和cpu的处理负担。为了解决上述技术问题,本公开实施例提供了一种数据处理方法,该方法适用于音数据处理程序、系统或装置中,如图1所示,该方法包括步骤S101至步骤S102:在步骤S101中,在接收到数据请求时,将数据请求通过由TCP(TransmissionControlProtocol传输控制协议)协议建立的目标连接发送至服务器;在步骤S102中,接收服务器通过由TCP协议建立的长连接下发的与数据请求对应的响应结果。在接收到数据请求时,通过将数据请求通过由TCP协议建立的目标连接发送至服务器,并接收服务器通过由TCP协议建立的长连接下发的与数据请求对应的响应结果,可以通过TCP协议使设备实现在线处理数据业务,以丰富用户的在线数据业务处理需求,且这相比于使用http协议而言,可以有效地减少所占用的带宽等系统资源,同时也可使弱处理能力设备以较低的成本实现在线服务,可以减少弱处理能力设备的在线处理负担。另外,本领域技术人员应当知晓,TCP协议相比于http协议至少具有以下优点才使得使用TCP协议相比于使用http协议而言可以减少所占用的带宽等系统资源,进而以较低的成本实现在线服务:TCP协议相比于http协议,其数据包的格式更加简单,具体地,其数据包中的格式数据的数据量稍微少一些,如TCP包相比于http包中头部格式的数据量比较小,使得传输TCP协议数据包相比于传输http协议数据包所需要占用的带宽比较少一些;同时由于TCP包相比于http包其格式数据的数据量比较少,因而,传输相同数据量的TCP包相比于传输相同数据量的http包而言,TCP包中携带的有效待传输数据的数据量比http包中携带的有效待传输数据的数据量大一些,从而使得传输相同数据量的待传输数据时,所需要的TCP包的数目要少于http包的数目,进而使得传输相同数据量的待传输数据时,使用TCP协议相比于使用http协议会减少带宽的占用,且减少传输次数和cpu的处理负担;另外,由于http协议的应答方式相比于TCP协议的应答方式比较繁琐,如当待传输数据被拆分成多个数据包发送至服务器时,由于使用http协议时服务器每接收到一个数据包后,都需要向发送端发送一个这个数据包已处理的通知(如当该数据包为语音数据包时,每接收到一个语音数据包,就会发送一个已对其进行语音识别的通知),而使用TCP协议时服务器仅需要在接收到最后一个数据包时,发送一个待传输数据已被处理的通知,因而,TCP协议的应答方式相比于http协议比较简洁,所以,也可以减少带宽的占用、减少执行主体应答的接收次数和cpu的处理负担;当然,由于TCP包的格式相比于http协议包的格式更加简单等原因,解析TCP包相比于解析http协议包而言更加简单,因而解析TCP的响应结果相比于解析http的响应结果,其消耗的CPU等系统资源也会少一些。最后,使用由TCP协议建立的长连接接收服务器下发的响应结果,使得本发明可适用于服务器长时间持续下发该响应结果的场景(如:将该响应结果的数据量非常大,需要被拆分为很多个TCP包持续下发很长时间才能下发完毕的场景),同时使得本发明也可适用于服务器定时下发响应结果的场景避免了在到达定时下发响应结果的时间时需要重新与服务器建立连接的问题。在一个实施例中,数据请求包括:语音请求,且语音请求包括输入的用于获取响应结果的语音信息;该数据请求可能为语音请求,且语音请求可以用于请求获取音频数据/视频数据/文本数据的语音信息,如该语音请求可以用于请求获取音频数据的“我想听周杰伦的歌”的语音信息。在接收到数据请求时,将数据请求通过由TCP协议建立的目标连接发送至服务器,包括:在接收到语音请求时,将语音请求中的语音信息分为至少一个TCP包后,通过目标连接发送至服务器;响应结果包括:语音信息对应的数据资源,其中,数据资源包括以下至少一项:语音信息对应的音频资源、语音信息对应的视频资源和语音信息对应的文本信息,文本信息包括语音信息对应的语音识别结果。由于语音请求中的语音信息的数据量可能较大,因而,在将语音请求上传至服务器时,可将该语音请求中的语音信息自动拆分为至少一个TCP包之后,依次将这至少一个TCP包通过目标连接发送至服务器。如图2所示,在一个实施例中,上述图1所示的步骤S101,即在接收到数据请求时,将数据请求通过由TCP协议建立的目标连接发送至服务器,可被执行为步骤A1:在步骤A1中,在第一设备接收到数据请求时,将数据请求通过目标连接发送至服务器;上述图1所示的步骤S102,即接收服务器通过由TCP协议建立的长连接下发的与数据请求对应的响应结果,可被执行为步骤A2:在步骤A2中,通过第二设备接收服务器通过由TCP协议建立的长连接下发的响应结果,其中,第二设备与第一设备相关联。向服务器发送数据请求和接收服务器下发的响应结果的信息可能是两个不同的设备,即执行主体(可叫做当前设备)可能包括两个设备,例如发送数据请求的第一设备可能是用于控制接收响应结果的第二设备,如第一设备为能够用于接收语音请求的手机等语音设备,而第二设备可以是可被第一设备控制的智能音响、智能冰箱、智能洗衣机、智能电饭煲等被控设备,这样,第一设备在接收到来自用户的语音请求后,可将携带有语音信息的语音请求发送至服务器,这样,服务器可将响应结果下发至第二设备,以使第二设备接收该响应结果。例如,语音请求为获取语音请求中的语音信息对应的音乐/视频时,服务器在接收到来自该第一设备的语音请求之后,可将语音信息对应的音乐/视频下发至第二设备,当然,该数据请求还有可能是控制指令等,而当该数据请求为控制指令时,服务器在接收到来自该第一设备的控制指令之后,服务器可将该控制指令通过长连接下发至第二设备,以控制该第二设备执行该控制指令。当然,向服务器发送数据请求和接收服务器下发的响应结果的信息还可能是同一个设备,即执行主体为同一个设备(可叫做当前设备,如可能是可以接收语音信息的智能儿童玩具等),这样,服务器在接收到来自当前设备发送的数据请求之后,可将响应结果下发至该当前设备,例如,当该当前设备向服务器发送的语音请求为获取语音请求中的语音信息对应的语音识别结果时,服务器可将语音信息进行语音识别、语义理解或者其他处理操作之后通过由TCP协议建立的长连接把语音识别结果发送至该当前设备。在一个实施例中,在将数据请求通过由TCP协议建立的目标连接发送至服务器之前,方法还包括:当目标连接包括短连接且接收到建立短连接的提示信息时,通过TCP协议与服务器建立短连接,其中,建立短连接的提示信息包括以下至少一项:数据请求、建立短连接的语音提示词、建立短连接的操作动作;由于执行主体可能并不需要持续地、长时间地向服务器发送数据,因而,该目标连接可以是短连接,而当目标连接包括短连接时,执行主体可在接收到建立短连接的提示信息时通过TCP协议与服务器自动建立短连接,而该建立短连接的提示信息包括以下至少一项:该数据请求、自定义的一个建立短连接的语音提示词(如该执行主体的标识的语音信息等)、自定义的一个建立短连接的操作动作(如拍打该执行主体的动作、多次点击该执行主体的动作等)。在接收服务器通过由TCP协议建立的长连接下发的与数据请求对应的响应结果之前,方法还包括:在接收到建立长连接的触发操作时,与服务器通过TCP协议建立长连接,其中,建立长连接的触发操作包括以下至少一项:开机启动操作、预设应用程序的开启操作。在接收服务器通过长连接下发的与该数据请求对应的响应结果之前,可在接收到建立长连接的提示信息时通过TCP协议与服务器自动建立长连接,如执行主体在开机后可直接与服务器通过TCP协议自动建立长连接,或者当预设应用程序被开启(如语音输入法的程序等)后再与服务器通过TCP协议自动建立长连接。其次,执行主体与服务器建立长连接之后,执行主体可以每隔n秒(如3-30秒均可),就向服务端发送一次心跳请求,表示连接存在,如果发送失败则重新建立连接,保证连接的长时间可用,而向服务器发送的心跳包可以为任意内容;且执行主体与服务器建立短连接之后,上传完该数据请求中的数据(如当该数据请求为语音请求,在上传完语音请求中的所有语音信息)之后,即可断开连接。另外,在本发明中TCP包的格式大体如下:(长连接)在向服务器发送数据请求之前,执行主体可通过长连接向服务器发送TCP包以使服务器了解一些执行主体的基本信息,而该基本信息的TCP包的格式可以为:开头标识固定参数其他参数结束标识(短连接))执行主体通过短连接向服务器发送数据请求时,该数据请求的TCP包的格式可以为:开头标识固定参数第一数据流结束标识(长连接)服务器通过长连接下发响应结果时,该响应结果的TCP包的格式可以为:开头标识固定参数第二数据流结束标识开头标识:包含一些固定的特殊的标识,以标识这是数据的开头,例如“M@”;结束标识:包含一些固定的特殊的标识,以标识这是数据的结尾,例如“!@”;固定参数:长度固定,包括一些特别需要的参数,例如:当前设备的唯一标识id(identification,编号),当前设备拥有者的id,数据类型(音频、视频、文本等),数据流长度等;其他参数用于:上传一些服务器需要用到的参数,例如:当前设备的性能、当前设备的情况,用户个性化的配置,和需要上传的一些其他参数;第一数据流即数据请求,可以包括数据请求中的语音等各种信息;第二数据流即响应结果,可以包括:音频、视频、文本等数据。在一个实施例中,方法还包括:在接收到响应结果后,将响应结果进行显示和/或播放,其中,目标连接包括长连接。在接收到该响应结果之后,还可以将该响应结果进行自动显示和/或播放,以供用户查阅和/或接听,当然,该目标连接也可以是长连接。下面将结合图7进一步详细介绍本发明的技术方案:在图7中,C表示执行主体与服务之间的长连接,可在执行主体开启时自动建立。D表示短连接,可在接收到用户发送的建立短连接的语音提示词(如该执行主体的标识的语音信息)时建立。流程步骤:剪头1,用户输入建立短连接的语音提示词以唤醒执行主体进行说话。剪头2,执行主体被唤醒,建立短连接,将采集到携带有用户的语音信息的数据请求上传到服务器,上传完毕之后断开短连接。剪头3,服务器识别出用户的语音信息,将用户想要的数据(即响应结果)返回给执行主体。(例如,用户的语音信息为“我想听周杰伦的歌”,则服务器就会找到一首周杰伦的歌曲进行下发;又例如,。用户的语音信息为一段病例描述语音信息时,则服务器就会将该段病例描述语音信息转换为文字信息进行下发)。剪头4,执行主体将服务器下发的数据播放或者显示给用户。如此完成一次整体的流程。如图3所示,本发明还提供一种数据处理装置,包括:发送模块301,被配置为在接收到数据请求时,将数据请求通过由TCP协议建立的目标连接发送至服务器;接收模块302,被配置为接收服务器通过由TCP协议建立的长连接下发的与数据请求对应的响应结果。如图4所示,在一个实施例中,数据请求包括:语音请求,且语音请求包括输入的被配置为获取响应结果的语音信息;上述图3所示的发送模块301可以包括处理子模块3011:处理子模块3011,被配置为在接收到语音请求时,将语音请求中的语音信息分为至少一个TCP包后,通过目标连接发送至服务器;响应结果包括:语音信息对应的数据资源,其中,数据资源包括以下至少一项:语音信息对应的音频资源、语音信息对应的视频资源和语音信息对应的文本信息,文本信息包括语音信息对应的语音识别结果。如图5所示,在一个实施例中,上述图3所示的发送模块301可以包括发送子模块3012:发送子模块3012,被配置为在第一设备接收到数据请求时,将数据请求通过目标连接发送至服务器;接收模块302可以包括接收子模块3021:接收子模块3021,被配置为通过第二设备接收服务器通过由TCP协议建立的长连接下发的响应结果,其中,第二设备与第一设备相关联。在一个实施例中,装置还包括:第一建立模块,被配置为在将数据请求通过由TCP协议建立的目标连接发送至服务器之前,当目标连接包括短连接且接收到建立短连接的提示信息时,通过TCP协议与服务器建立短连接,其中,建立短连接的提示信息包括以下至少一项:数据请求、建立短连接的语音提示词、建立短连接的操作动作;以及第二建立模块,被配置为在接收服务器通过由TCP协议建立的长连接下发的与数据请求对应的响应结果之前,在接收到建立长连接的触发操作时,与服务器通过TCP协议建立长连接,其中,建立长连接的触发操作包括以下至少一项:开机启动操作、预设应用程序的开启操作。如图6所示,在一个实施例中,上述图3所示的装置还可包括处理模块601:处理模块601,被配置为在接收到响应结果后,将响应结果进行显示和/或播放,其中,目标连接包括长连接。关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。最后,本发明中的数据处理装置适用于终端设备。例如,可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1