发明内容
本发明主要解决的技术问题是提供一种连续语音交互方法及装置,能够实现对动态搜索结果进行语音控制,非常方便用户操作。
为解决上述技术问题,本发明采用的一个技术方案是:提供一种连续语音交互的方法,包括接收第一语音操作请求,并向第一服务器发送所述第一语音操作请求;接收所述第一服务器根据所述第一语音操作请求进行搜索后,返回的搜索结果和操作指令集合;接收第二语音操作请求;在所述操作指令集合中,查找与所述第二语音操作请求匹配的操作指令;若找到匹配的操作指令,则根据所述找到的操作指令,执行操作。
其中,所述接收第一语音操作请求,并向第一服务器发送所述第一语音操作请求的步骤包括:向第二服务器发送所述第一语音操作请求;接收所述第二服务器将所述第一语音操作请求识别为第一文字操作请求后,返回的所述第一文字操作请求;所述接收所述第一服务器根据所述第一语音操作请求进行搜索后,返回的搜索结果和操作指令集合的步骤具体为:接收所述第一服务器根据所述第一文字操作请求进行搜索后,返回的搜索结果和操作指令集合,其中,所述操作指令集合中的成员与所述搜索结果中的成员具有映射关系;向所述第一服务器发送所述第一文字操作请求;所述在所述操作指令集合中,查找与所述第二语音操作请求匹配的操作指令的步骤包括:向第二服务器发送所述第二语音操作请求;接收所述第二服务器将所述第二语音操作请求识别为第二文字操作请求后,返回的第二文字操作请求;在所述第二操作指令集合中,查找与所述第二文字操作请求匹配的操作指令。
其中,所述操作指令的内容包括指令名称和待匹配字符串。
其中,所述操作指令的内容还包括操作指令所需要的执行参数和/或匹配方式。
其中,所述匹配方式包括:字符串等值匹配、字符串包含匹配、字符串正则包含匹配、字符串正则全等匹配、字符串拼音相同匹配和字符串拼音正则匹配。
为解决上述技术问题,本发明采用的另一个技术方案是:提供一种连续语音交互装置,包括:第一接收模块,用于接收第一语音操作请求;第一发送模块,用于向第一服务器发送所述第一语音操作请求;第二接收模块,用于接收所述第一服务器根据所述第一语音操作请求进行搜索后,返回的搜索结果和操作指令集合,其中,操作指令集合中的成员与所述搜索结果中的成员具有映射关系;第三接收模块,用于接收第二语音操作请求;查找模块,用于在所述操作指令集合中,查找与所述第二语音操作请求匹配的操作指令;操作模块,用于在所述查找模块找到匹配的操作指令时,根据所述找到的操作指令,执行操作。
其中,所述第一发送模块包括:第一发送单元、第一接收单元和第二发送单元;所述第一发送单元,用于向第二服务器发送所述第一语音操作请求;所述第一接收单元,用于接收所述第二服务器将所述第一语音操作请求识别为第一文字操作请求后,返回的所述第一文字操作请求;所述第二发送单元,用于向所述第一服务器发送所述第一文字操作请求;所述第二接收模块具体用于接收所述第一服务器根据所述第一文字操作请求进行搜索后,返回的搜索结果和操作指令集合,其中,搜索结果中的成员和操作指令集合中的成员具有映射关系;所述查找模块包括:第三发送单元、第二接收单元和查找匹配单元;所述第三发送单元,用于向所述第二服务器发送所述第二语音操作请求;所述第二接收单元,用于接收所述第二服务器将所述第二语音操作请求识别为第二文字操作请求后,返回的第二文字操作请求;所述查找匹配单元,用于在所述第二操作指令集合中,查找与所述第二文字操作请求匹配的操作指令。
其中,所述操作指令的内容包括指令名称和待匹配字符串。
其中,所述操作指令的内容还包括操作指令所需要的执行参数和/或匹配方式。
其中,所述匹配方式包括:字符串等值匹配、字符串包含匹配、字符串正则包含匹配、字符串正则全等匹配、字符串拼音相同匹配和字符串拼音正则匹配。本发明的有益效果是:区别于现有技术的情况,本发明连续语音交互装置向第一服务器发送第一语音操作请求,以使第一服务器根据第一语音操作请求进行搜索获得搜索结果,以及根据搜索结果生成操作指令集合,其中,由于操作指令集合是根据搜索结果动态生成,因此,操作指令集合是也动态的,生成操作指令集合后,用户可对动态的搜索结果继续进行语音操作,从而实现全语音控制,非常方便用户操作。
具体实施方式
下面结合附图和实现方式对本发明进行详细说明。
如图1所示,连续语音交互***10包括连续语音交互装置11和第一服务器12。连续语音交互装置11可以为内设机顶盒的电视,并且内设的机顶盒集成有语音处理模块(图未示),第一服务器12用户于存储内容,连续语音交互装置11向第一服务器12请求内容。
连续语音交互装置11接收第一语音操作请求后,把第一语音操作请求发送到第一服务器12。其中,第一语音操作请求可由用户对连续语音交互装置11说出,例如:连续语音交互装置11当前画面显示“视频”、“音频”、“返回”等三个选项,用户对连续语音交互装置11说“视频””,则连续语音交互装置11获取“视频””语音操作请求,并向第一服务器12发送“视频””语音操作请求,以请求视频。在其他替代实施方式中,连续语音交互装置11还可预设与当前画面显示的功能对应的预设指令集,连续语音交互装置11在接收到第一语音操作请求后,在预设指令集查找与第一语音操作请求匹配的指令,若没有找到匹配的指令,则说明用户输入的请求不正确,例如:连续语音交互装置11当前画面显示“视频”、“音频”、“返回”等三个选项,而用户说“文件”语音操作请求,预设指令集中没有文件指令,则连续语音交互装置11提示用户输入请求不正确,请重新输入。
第一服务器12接收第一语音操作请求后,第一语音操作请求进行搜索后,获得搜索结果,并根据搜索结果生成操作指令集合,其中,其中,操作指令集合中的成员与搜索结果中的成员具有映射关系,具体而言,操作指令集合中的成员是根据搜索结果中的成员生成的。第一服务器12向连续语音交互装置11返回第一语音操作请求和搜索结果,例如:第一语音操作指令为“视频”,第一服务器12搜到“非诚勿扰”、“血钻”、“金刚”三部视频时,第一服务器12分别生成包含“非诚勿扰”操作指令、“血钻”操作指令和“金刚”操作指令的操作指令集合。操作指令集合中的指令可为语音指令,也可以文本指令,若指令为文本指令,则操作指令集合也可以为文本字符集合,例如:操作指令集合包括“非诚勿扰”、“血钻”、“金刚”三个文本字符。连续语音交互装置11接收到搜索结果和操作指令集后,还可存储操作指令集,显示搜索结果。
需要说明的是:第一服务器12根据第一语音操作指令进行搜索,获得的搜索结果是动态,具体而言,搜索结果不是一成不变,相同的第一语音操作指令,第一服务器12获得的搜索结果可能不一样,例如:用户在第一次查找视频,第一服务器12先前存储的视频:“非诚勿扰”、“血钻”、“金刚”,则第一服务器12返回,“非诚勿扰”、“血钻”、“金刚”;若在第一服务器12上增加“第一滴血”视频,此时,用户再次查找视频时,则第一服务器12返回:“非诚勿扰”、“血钻”、“金刚”、“第一滴血”。在第一服务器12返回的结果是动态时,在现有技术中则无法再次进行语音操作,而本发明中根据搜索结果生成操作指令集合,以使用户还可以对动态搜索结果进行语音操作。
连续语音交互装置11接收第二语音操作请求,在操作指令集合中,查找与第二语音操作请求匹配的操作指令,若没有找到匹配的操作指令,则连续语音交互装置11提示第二语音操作请求错误,请重新输入。若找到匹配的操作指令,则根据找到的操作指令,执行操作。在本发明实施方式中,操作指令的内容包括指令名称和待匹配字符串,当然,为了更好扩展操作指令,操作指令的内容还可以包括操作指令所需要的执行参数和/或匹配方式,简而言之,操作指令所需要的执行参数和匹配方式是可选项。操作指令的格式具体如下,如表1所示,
表1
指令名称用于指明要执行的动作,连续语音交互装置根据指令进行操作,执行参数是指操作指令所需要的执行参数,待匹配字符串是指与搜索请求相匹配的字符串,匹配方式匹配方法包括字符串等值匹配、字符串包含匹配、字符串正则包含匹配、字符串正则全等匹配、字符串拼音相同匹配和字符串拼音正则匹配。
表2和表3为举例的操作指令,
操作指令1:
内容 |
|
指令名称 |
ShowMovieInformation |
执行参数 |
13587 |
待匹配字符串 |
非诚勿扰 |
匹配方式 |
字符串等值匹配 |
表2
操作指令2:
内容 |
|
指令名称 |
PlayDirect |
执行参数 |
13587 |
待匹配字符串 |
播放第一部 |
匹配方式 |
字符串拼音等值匹配 |
表3
操作指令的内容也可以XML格式记录,则如下:
如下为举例的操作指令:
在其他替代实施方式中,如图2所示,***还包括第二服务器23,第二服务器用于将语音识别为文本,则连续语音交互装置21在接收到第一语音操作请求,还可向第二服务器23发送第一语音操作请求,第二服务器23将第一语音操作请求识别为第一文字操作请求,并向连续语音交互装置21返回第一文字操作请求。连续语音交互装置21在获得第一文字操作请求后,向第一服务器22发送第一文字操作请求,第一服务器22根据第一文字操作请求进行搜索,并返回搜索结果。同理的,连续语音交互装置21在接收到第二语音操作请求时,向第二服务器23发送第二语音操作请求,第二服务器23将第二语音操作请求识别为第二文字操作请求,并向连续语音交互装置21返回第二文字操作请求,连续语音交互装置21在第二操作指令集合中,查找与第二文字操作请求匹配的操作指令。进一步的,连续语音交互装置21在接收到文字操作请求时,对文字操作请求进行词意分析,提取关键词。
值得注意的是:连续语音交互装置可以一体成型的,连续语音交互装置也可以为分离的几个设备,如图3所示,连续语音交互装置31包括电视机310、机顶盒311和遥控器312,遥控器312设置有语音处理模块,语音处理模块用于接收用户输入的语音请求,遥控器312与机顶盒311无线连接。遥控器312接收用户输入的语音操作请求,将语音操作请求发送到机顶盒311,由机顶盒311进行处理。
为了让读者更好理解本发明,以下举例进行说明。
其中,连续语音交互装置31包括电视机310、机顶盒311和遥控器312。
步骤a:用户观看电视机中出现的菜单,并对遥控器312说出第一语音操作请求,遥控器312将第一语音操作请求发送到机顶盒311,机顶盒将第一语音操作请求发送到第二服务器33。
步骤b:第二服务器33将第一语音操作请求识别为第一文字操作请求,并将向机顶盒311返回第一文字操作请求。
步骤c:机顶盒311向第一服务器32发送第一文字操作请求,第一服务器32根据第一文字操作请求进行搜索,并向机顶盒311返回搜索结果以及根据搜索结果生成的操作指令集合;
步骤d:机顶盒311接收搜索结果后,并搜索结果发送到电视机进行显示;
此时,用户观看到搜索结果,并可以搜索结果进行下一步语音操作。
步骤e:用户可观看电视机310中新显示的内容,并对遥控器312说出第二语音操作请求,遥控器312将第二语音操作请求发送到机顶盒311,机顶盒将第二语音操作请求发送到第二服务器33,第二服务器33将第二语音操作请求识别为第二文字操作请求,并将向机顶盒311返回第二文字操作请求;
步骤g:机顶盒311在操作指令集合中查找与第二文字操作请求匹配的指令,若找到匹配指令,则根据找到的指令进行操作,例如:机顶盒311向第一服务器32发送找到的匹配的操作指令,第一服务器32根据找到的匹配的指令向机顶盒311返回新内容,机顶盒311将新内容发送到电视机310,电视机310显示新内容。
综上所述,可知用户在观看电视机显示的内容时,进行语音操作,而且,是全语音操作,并不需要手动操作,非常方便。
在本发明实施方式中,连续语音交互装置11将第一语音操作请求发送到第一服务器,由第一服务器根据第一语音操作请求进行搜索,获得搜索结果,以及根据搜索结果生成操作指令集合,其中,由于操作指令集合是根据搜索结果动态生成,因此,操作指令集合是也动态的,生成操作指令集合后,用户可对动态的搜索结果继续进行语音操作,从而实现全语音控制,非常方便用户操作。
本发明还提供一种连续语音交互装置实施方式,请问参阅图4,如图所示,装置40包括第一接收模块401、第一发送模块402、第二接收模块403、第三接收模块404、查找模块405和操作模块406。
第一接收模块401接收第一语音操作请求,其中,第一语音操作请求可由用户说出,用户对连续语音交互装置40说出语音操作请求后,第一接收模块401接收到第一语音操作请求。第一发送模块402向第一服务器41发送第一语音操作请求。第一服务器41根据第一语音操作请求进行搜索,获得搜索结果以及根据搜索结果生成操作指令集合,并向连续语音交互装置40返回搜索结果和操作指令集合。第二接收模块403接收第一服务器41根据第一语音操作请求进行搜索后,返回的搜索结果和操作指令集合。第三接收模块404接收第二语音操作请求,其中,第二语音操作请求也可由用户说出的。查找模块405在操作指令集合中,查找与第二语音操作请求匹配的操作指令。操作模块406在查找模块405找到匹配的操作指令时,根据找到的操作指令,执行操作。在本发明实施方式中,操作指令的内容包括指令名称和待匹配字符串,当然,为了更好扩展操作指令,操作指令的内容还可以包括操作指令所需要的执行参数和/或匹配方式,简而言之,操作指令所需要的执行参数和匹配方式是可选项,匹配方式包括字符串等值匹配、字符串包含匹配、字符串正则包含匹配、字符串正则全等匹配、字符串拼音相同匹配和字符串拼音正则匹配,其中,一个操作指令可以设置一个或者多个匹配方式。
连续语音交互装置40可识别的指令可以为语音指令,也可以文字指令,若为文字指令,则第一发送模块402包括第一发送单元4021、第一接收单元4022和第二发送单元4023。查找模块405包括第三发送单元4051、第二接收单元40522和查找匹配单元4053。
第一发送单元4021向第二服务器42发送第一语音操作请求。第一接收单元4022于接收第二服务器42将第一语音操作请求识别为第一文字操作请求后,返回的第一文字操作请求。第二发送单元4023向第一服务器41发送第一文字操作请求。第一服务器41根据第一文字操作请求进行搜索。第二接收模块404具体用于接收所述第一服务器根据所述第一文字操作请求进行搜索后,返回的搜索结果和操作指令集合,其中,搜索结果中的成员和操作指令集合中的成员具有映射关系,具体而言,操作指令集合中的成员是根据搜索结果中的成员生成的。第三发送单元4051向第二服务器42发送第二语音操作请求。第二接收单元4052接收第二服务器42将第二语音操作请求识别为第二文字操作请求后,返回的第二文字操作请求。查找匹配单元4053在第二操作指令集合中,查找与第二文字操作请求匹配的操作指令。其中,第二服务器42为语音识别服务器,语音识别服务器能够将语音识别为文字,例如:苹果sari、***语音识别引擎等等。
进一步的,连续语音交互装置40还包括显示模块407,显示模块407用于显示所述搜索结果。
需要说明的是:连续语音交互装置40可以为机顶盒和电视机一体成型的设备,也可机顶盒为电视机会离的设备,若机顶盒和电视机分离,则显示模块407为电视机,连续语音交互装置40的其他部份可设置于机顶盒内。
在其他替代实施方式中,连续语音交互装置也可以包括处理器(图未示)、总线(图未示)和网络适配器(图未示),其中,处理器和网络适配器均与总线连接。
处理器通过网络适配器接收来自第一服务器和第二服务器的数据,以及向第一服务器和第二服务器发送数据。而第一接收模块401、第一发送模块402、第二接收模块403、第三接收模块404、查找模块405和操作模块406所执行的操作均由处理器执行。
进一步的,连续语音交互装置还包括显示单元(图未示)和显示接口,显示接口与总线连接,显示单元与显示接口连接,其中,处理器通过显示接口将搜索结果发送到显示单元,由显示单元显示搜索结果。
在本发明实施方式中,连续语音交互装置40向第一服务器41发送第一语音操作请求,以使第一服务器41根据第一语音操作请求进行搜索获得搜索结果,以及根据搜索结果生成操作指令集合,其中,由于操作指令集合是根据搜索结果动态生成,因此,操作指令集合是也动态的,生成操作指令集合后,用户可对动态的搜索结果继续进行语音操作,从而实现全语音控制,非常方便用户操作。
本发明还提供连续语音交互方法实施方式。如图5所示,方法包括:
步骤S501:接收第一语音操作请求,并向第一服务器发送第一语音操作请求;
第一服务器用于存储内容,第一服务器可为网络服务器,例如:腾讯视频服务器、优酷视频服务器等等。
在其他替代实施方式中,连续语音交互装置设置有与连续语音交互装置当前显示的页面的功能对应的预设指令集,例如:当前显示的内容有“视频”、“关机”、“频道”三个选项,则预设指令集包括关机指令、进入视频指令、进行频道指令等三个操作指令,在接收到第一语音操作请求后,还可以检查第一语音操作请求与预设指令集中的指令是否匹配,若匹配再向第一服务器发送第一语音操作请求,或者向第一服务器发送找到的匹配的指令。
步骤S502:接收第一服务器根据第一语音操作请求进行搜索后,返回的搜索结果和操作指令集合;
操作指令集合中的成员与搜索结果中的成员具有映射关系,操作指令集合中的成员是根据搜索结果中的成员生成的,操作指令集合中的指令是用于对搜索结果进行操作的指令,搜索结果中的一成员可以对应操作指令集合中一个指令或者多个指令,例如:用户第一语音操作请求为“视频”,返回的搜索结果“非诚勿扰”和“一年到头”两个结果,则生成的操作指令集合可以包括“显示非诚勿扰详细信息指令”,“播放非诚勿扰详指令”,“显示一年到头详细信息指令“,”播放一年到头指令“,其中,“显示非诚勿扰详细信息指令”,“播放非诚勿扰详指令”对应“非诚勿扰”搜索结果,“显示一年到头详细信息指令“,”播放一年到头指令“对应”“一年到头”搜索结果。
进一步的,根据搜索结果生成操作指令集,还可结合搜索结果类型生成操作指令集,例如:搜索结果为文件时,操作指令集中指令对应为打开文件和关闭文件指令;搜索结果为视频时,操作指令集中指令对应为播放视频、关闭视频,当视频打开后,还可设置暂停、播放、快进、快退等等指令。
操作指令的内容包括指令名称和待匹配字符串,当然,为了更好扩展操作指令,操作指令的内容还可以包括操作指令所需要的执行参数和/或匹配方式,简而言之,操作指令所需要的执行参数和匹配方式是可选项。操作指令的格式如表1所示,
表1
指令名称用于指明要执行的动作,连续语音交互装置根据指令进行操作,执行参数是指操作指令所需要的执行参数,待匹配字符串是指与搜索请求相匹配的字符串,匹配方式匹配方法包括字符串等值匹配、字符串包含匹配、字符串正则包含匹配、字符串正则全等匹配、字符串拼音相同匹配和字符串拼音正则匹配。
步骤S503:接收第二语音操作请求;
语音操作请求均可由用户说出,连续语音交互装置接收用户说出的语音操作请求。
步骤S504:在操作指令集合中,查找与第二语音操作请求匹配的操作指令,若找到匹配的操作指令,则进入步骤S505,否则进入步骤S506;
步骤S506:等待第二语音操作请求;
其中,在操作指令集合中,没有找到与第二语音操作请求匹配的操作指令,则说明当前用户说出的语音操作请求不正确,用户需要重新输入。进一步的,为了让用户容易使用户语音操作,还可以在连续语音交互装置的显示操作指令集,用户可观看连续语音交互装置可以接受的操作指令。
步骤S505:根据找到的操作指令,执行操作;
连续语音交互装置和第一服务器可识别的指令可以为语音指令,则操作指令集合中指令也为语音指令,通过语音匹配的方式在操作指令集合中查找与第二语音操作请求匹配的操作指令;连续语音交互装置和第一服务器可识别的指令也可以为文字指令,则在本发明实施方式中,还需要将语音操作请求识别为文字操作请求,如图6所示,步骤S501包括S5011、S5012和S5013,
步骤S5011:向第二服务器发送第一语音操作请求;
第二服务器为语音识别服务器。
步骤S5012:接收第二服务器将第一语音操作请求识别为第一文字操作请求后,返回的第一文字操作请求;
步骤S5013:向第一服务器发送第一文字操作请求。
步骤S502:接收第一服务器根据第一文字操作请求进行搜索后,返回的搜索结果和操作指令集合。
同样的,步骤S504包括步骤S5041、步骤S5042和步骤S5043,
步骤S5041:向第二服务器发送第二语音操作请求;
步骤S5042:接收第二服务器将第二语音操作请求识别为第二文字操作请求后,返回的第二文字操作请求;
步骤S5043:在第二操作指令集合中,查找与第二文字操作请求匹配的操作指令。
进一步的,在接收到搜索结果,还可显示搜索结果,以使得用户可边观看搜索结果,边进操作,非常方便,则方法还包括:
步骤S507:显示搜索结果。
在本发明实施方式中,向第一服务器发送第一语音操作请求,以使第一服务器根据第一语音操作请求进行搜索获得搜索结果,以及根据搜索结果生成操作指令集合,其中,由于操作指令集合是根据搜索结果动态生成,因此,操作指令集合是也动态的,生成操作指令集合后,用户可对动态的搜索结果继续进行语音操作,从而实现全语音控制,非常方便用户操作。
以上所述仅为本发明的实施方式,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。