交互方法、设备、存储介质和操作系统与流程

文档序号:20077605发布日期:2020-03-10 09:55阅读:137来源:国知局
交互方法、设备、存储介质和操作系统与流程
本发明涉及互联网
技术领域
,尤其涉及一种交互方法、设备、存储介质和操作系统。
背景技术
:语音交互方式已逐渐成为人机交互领域中的主流交互方式之一,尤其是在用户不方便对触摸屏进行触控操作的场合,语音交互的方式为用户提供了极大的便利。从而,很多应用程序、服务、页面(page)都提供了语音交互的能力。比如有手机中的语音助手、音乐应用程序、广播应用程序、导航应用程序、搜索引擎等等。以应用程序为例,为实现语音交互,应用程序中往往预先注册了多种语音事件,语音事件中可以包括语音信息以及响应处理逻辑,当接收并识别出用户说出的某条语音时,按照相应的语音信息对应的响应处理逻辑进行响应。但是,实际上,不同的应用程序之间,可能会注册有相同的语音信息,比如音乐应用程序中注册有“下一个”这个语音信息,广播应用程序中也注册有“下一个”这个语音信息,音乐应用程序中的“下一个”语音信息对应的响应处理逻辑是播放下一首歌曲,广播应用程序中的“下一个”语音信息对应的响应处理逻辑是切换到下一个广播频道。为了避免不同应用程序由于注册有相同的语音信息而导致的冲突问题,现有技术中一种解决方案是,用户每当使用某应用程序前,都需要先唤起当前想要使用的应用程序,进而再说出包含语音信息的语音,从而,由该应用程序来响应用户的语音信息。比如,假设某应用程序的唤醒词为“你好,小乐”,则用户需要先说出“你好,小乐”的唤醒语音,此时该应用程序启动,之后用户再说出“下一个”语音信息,由该应用程序响应用户的“下一个”语音信息;当过一段时间比如几分钟之后,即使该应用程序并未退出,用户想要继续使用该应用程序,仍旧需要先说出“你好,小乐”的唤醒语音,之后再说出语音信息:“我想听刘德华的歌”。这种在用户每当想要进行语音交互前先要唤醒需使用的应用程序,之后再输出语音信息的方式,操作繁杂,尤其在用户需要切换使用不同的应用程序的情况下,用户需要说出冗长的语音才能进行语音交互,不能满足用户通过简单的语音信息即可快速实现语音交互的需求。技术实现要素:有鉴于此,本发明实施例提供一种交互方法、设备、存储介质和操作系统,用以提高语音交互的便捷性。第一方面,本发明实施例提供一种交互方法,应用于操作系统,该方法包括:响应于语音信息,确定注册有对应语音信息且占用交互媒介的响应对象;通知所述响应对象响应所述语音信息。第二方面,本发明实施例提供一种交互装置,应用于操作系统,包括:确定模块,用于响应于语音信息,确定注册有对应语音信息且占用交互媒介的响应对象;发送模块,用于通知所述响应对象响应所述语音信息。第三方面,本发明实施例提供一种电子设备,包括第一存储器、第一处理器;其中,所述第一存储器上存储有可执行代码,当所述可执行代码被所述第一处理器执行时,使所述第一处理器执行如上所述的交互方法。本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如上所述的交互方法。第四方面,本发明实施例提供一种交互方法,应用于响应对象,该方法包括:确定响应对象的注册信息,所述注册信息中包括语音信息、所述响应对象的标识;将所述注册信息发送至操作系统,以使所述操作系统根据所述注册信息对接收的语音信息进行响应处理。第五方面,本发明实施例提供一种交互装置,包括:确定模块,用于确定响应对象的注册信息,所述注册信息中包括语音信息、所述响应对象的标识。发送模块,用于将所述注册信息发送至操作系统,以使所述操作系统根据所述注册信息对接收的语音信息进行响应处理。第六方面,本发明实施例提供一种电子设备,包括第二处理器、第二存储器,其中,所述第二存储器上存储有可执行代码,当所述可执行代码被所述第二处理器执行时,使所述第二处理器执行如上第四方面所述的交互方法。本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如上第四方面所述的交互方法。第七方面,本发明实施例提供一种操作系统,包括:输入控制单元,用于控制语音输入设备接收语音信息;处理单元,用于响应于所述语音信息,确定注册有对应语音信息且占用交互媒介的响应对象,通知所述响应对象响应所述语音信息。在本发明实施例中,当接收到用户输入的某条语音信息时,由于注册有该语音信息的对应语音信息的响应对象可能有多个,通过结合当前各响应对象对诸如屏幕窗口、音频通道等交互媒介的占用情况来确定注册有该对应语音信息并且当前占用着交互媒介的响应对象,从而通知获取到的响应对象对该语音信息进行响应。通过本方案,操作系统结合各响应对象中注册的语音信息以及各响应对象对交互媒介的占用情况自动从众多响应对象中确定出用于响应用户触发的语音信息的响应对象,打破了需要用户每次说出语音信息前需要说出唤醒词启动所需的响应对象的限制,用户在使用某响应对象的过程中,仅需说出简短的表明其交互意图的语音信息即可,提高了用户进行语音交互的便捷性。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例提供的一种语音交互方法的流程图;图2为本发明实施例提供的另一种语音交互方法的流程图;图3为本发明实施例提供的又一种语音交互方法的流程图;图4为本发明实施例提供的再一种语音交互方法的流程图;图5为本发明实施例提供的操作系统的工作原理示意图;图6为本发明实施例提供的一种语音交互装置的结构示意图;图7为与图6所示实施例提供的语音交互装置对应的电子设备的结构示意图;图8为本发明实施例提供的另一种语音交互装置的结构示意图;图9为与图8所示实施例提供的语音交互装置对应的电子设备的结构示意图。具体实施方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种。应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者系统中还存在另外的相同要素。另外,下述各方法实施例中的步骤时序仅为一种举例,而非严格限定。本发明实施例提供的交互方法的核心思想是,针对任一语音交互的响应对象(比如可以为应用程序、云端的服务、页面等)来说,开发者可以针对该响应对象进行语音信息的注册(也可以称为语音事件的注册、语音匹配规则的注册),在注册语音信息的时候,注册信息中可以包括需要注册的语音信息、响应对象的标识。除此之外,可选地,该注册信息中还可以包括该语音信息对应的用户交互意图,该语音信息或者说该响应对象需占用的交互媒介的标识。基于该语音信息的注册结果,在实际应用中,运行有响应对象的设备内的操作系统在接收到用户触发的某条语音信息时,从已经存储的各注册信息中确定该语音信息的对应语音信息,亦即存在于注册信息中的、与用户触发的语音信息对应的语音信息。即使该对应语音信息被多个响应对象都注册过,操作系统也可以基于各交互媒介被各响应对象的占用情况来自动确定用于响应用户触发的语音信息的响应对象,以令该响应对象来响应用户触发的语音信息。其中,不同的交互方式往往对应于不同的交互媒介,交互媒介是指响应对象比如应用程序与用户进行人机交互时涉及到的输入输出装置(i/o装置),常见的交互媒介可以为屏幕窗口、音频通道、摄像头等。另外,本发明实施例中,由于是通过操作系统结合各交互媒介被不同响应对象的占用情况来从全局的响应对象中匹配用于响应用户触发的语音信息的响应对象的,无需用户自身通过比如唤醒词等方式定位所需的响应对象,因此,用户说出的语音信息可以比较简短,无需包含唤醒词、响应对象的名称等内容,可以仅包含表明用户交互意图的语音信息即可。由于本发明实施例中提供的交互方法在语音信息的注册过程以及对用户触发的语音信息的处理过程中均作出改变,因此,下面分别从这两个过程来对该语音交互方法进行介绍。图1为本发明实施例提供的一种交互方法的流程图,该语音交互方法可以由响应对象来执行。如图1所示,该方法可以包括如下步骤:101、确定响应对象的注册信息,注册信息中包括语音信息、响应对象的标识。可选地,该注册信息中还可以包括语音信息对应的用户交互意图、以及响应对象需占用的交互媒介的标识。102、将注册信息发送至操作系统,以使操作系统根据注册信息对用户触发的语音信息进行响应处理。实际应用中,可选地,响应对象可以基于开发者的语音信息注册操作来开始执行上述步骤。其中,语音信息注册操作可以是开发者针对某响应对象比如某应用程序触发的,目的是开发者向该应用程序中注册某个语音信息以及该语音信息的相关参数,举例来说,以某应用程序appb为例,注册信息中可以包括如下信息:phrase:下一个intent:action://next-radioscene:audio-focusappid:page://appb其中,phrase代表注册的语音信息——下一个;intent代表该语音信息对应的用户交互意图——下一频道;scene代表appb所占用的交互媒介——音频通道;appid代表应用程序的标识——appb。基于该注册信息,当用户说出:“下一个”语音,或者说出诸如“换一个”等与注册的语音信息“下一个”语义相似的语音时,如果appb此时占用着音频通道,则该appb可以作为响应该语音信息的目标应用程序。当然,实际应用中,开发者还会设置该语音信息被触发时用于响应该触发事件的响应处理逻辑,比如:找寻下一个频道,控制音频播放器播放下一个频道。开发者在设置完毕后,应用程序中存储开发者设置的信息,此时,该应用程序可以生成步骤101中的注册信息,进而将该注册信息发送至操作系统,操作系统保存该注册信息。可选地,步骤101的执行时机除了上述举例的基于开发者的语音信息注册操作外,还可以是在响应对象比如某应用程序被安装时,在安装成功时,从安装包中确定上述注册信息,将注册信息提供给操作系统保存。可以理解的是,实际应用中,可能不同的响应对象都注册有同一语音信息,比如以某应用程序appc为例,某注册信息中可以包括如下信息:phrase:下一个intent:action://next-photoscene:window-focusappid:page://appc该注册信息意味着应用程序appc下也注册了“下一个”这个语音信息,该语音信息在appc中对应的用户交互意图为下一张图片,appc所占用的交互媒介为屏幕窗口。操作系统接收到各响应对象的注册信息时,保存接收到的注册信息,比如可以将该注册信息存储到注册数据库中,或者保存在一张表格中,等等。在保存过程中,可选地,操作系统可以按照注册的语音信息,将注册的同一语音信息分别对应的各注册信息集中存储。操作系统基于各响应对象的注册信息对用户触发的语音信息的响应处理过程详见下述实施例中的介绍。图2为本发明实施例提供的另一种交互方法的流程图,该语音交互方法可以由操作系统来执行。如图2所示,该方法包括如下步骤:201、响应于语音信息,获取注册有对应语音信息且占用交互媒介的响应对象。202、通知响应对象响应语音信息。实际应用中,操作系统可以通过麦克风来采集用户触发的语音,进而识别出其中包含的语音信息,即将该语音转为文本,该文本即作为上述语音信息。在识别得到上述语音信息后,在已经存储的注册信息中寻找该语音信息的对应语音信息。其中,语音信息的对应语音信息中的对应是指:该对应语音信息即为语音信息,或者,该对应语音信息与该语音信息语义相似。也就是说,用户说出的语音信息恰好是某注册信息中包含的语音信息,或者,用户说出的语音信息与某注册信息中包含的语音信息具有相似语义。比如,假设某注册信息中包含“下一个”这个语音信息,如果识别出的文本是“下一首”、“下一张”,都可以认为是与注册信息中的“下一个”语音信息语义相似。为描述方便,以下将步骤201中的语音信息称为第一语音信息,对应语音信息称为第二语音信息。综上,操作系统可以结合已经存储的各注册信息,确定注册有第二语音信息的各响应对象,另外,操作系统响应于用户触发的第一语音信息,获取各交互媒介的占用情况,以便进一步结合该占用情况确定注册有第二语音信息且占用交互媒介的响应对象,可以将确定出的响应对象作为响应用户触发的第一语音信息的目标响应对象,向其发送通知,通知其对该第一语音信息进行响应。值得说明的是,确定出的注册有第二语音信息且占用交互媒介的响应对象可能是一个响应对象,也可能是多个响应对象。当仅为一个响应对象时,可以直接确定该响应对象即为目标响应对象。当包含多个响应对象时,可选地,也可以直接确定该多个响应对象都为目标响应对象,即都对第一语音信息进行响应。当包含多个响应对象时,可选地,也可以根据一定的策略从中确定出一个作为目标响应对象以对第一语音信息进行响应。具体来说,在一可选实施例中,若注册有第二语音信息且占用交互媒介的响应对象为至少两个,则可以确定该至少两个响应对象均为目标响应对象,通知该至少两个响应对象响应用户触发的第一语音信息。仍以图1所述实施例中的appb、appc中分别注册的“下一个”语音信息为例,假设用户触发的语音命中“下一个”语音信息(即用户触发的第一语音信息与“下一个”这个第二语音信息相同或语义相似),且假设appb当前占用着音频通道、appc当前占用着屏幕窗口,则确定出的至少两个响应对象包含appb和appc,此时,可以分别触发appb和appc来响应用户的语音信息,即appb会播放下一个频道,appc会显示下一张图片。在另一可选实施例中,若注册有第二语音信息且占用交互媒介的响应对象为至少两个,且该至少两个响应对象总共占用至少两种交互媒介,则可以根据至少两种交互媒介的优先级,从至少两个响应对象中确定占用具有最高优先级的交互媒介的响应对象作为目标响应对象,通知目标响应对象响应用户触发的第一语音信息。本实施例中,操作系统可以预先设定不同交互媒介的优先级,当上述至少两个响应对象总共占用了至少两种交互媒介时,可以从当前被占用的至少两种交互媒介中选定具有最高优先级的交互媒介,从而,当前占用着该最高优先级的交互媒介的响应对象为目标响应对象。仍以图1所述实施例中的appb、appc中分别注册的“下一个”语音信息为例,假设用户触发的语音命中“下一个”语音信息,且假设appb当前占用着音频通道、appc当前占用着屏幕窗口,则至少两个响应对象中会包含appb和appc,并且假设屏幕窗口的优先级高于音频通道,则此时,可以确定目标应用程序为appc,appc来响应用户的语音信息以显示下一张图片。本实施例中,相当于是在上述至少两个响应对象当前都处于运行状态时,需要从中选出一个作为目标响应对象,选择的依据为:所占用的交互媒介的优先级。在另一可选实施例中,若注册有第二语音信息且占用交互媒介的响应对象为至少两个,则可以根据至少两个响应对象各自对应的交互媒介占用时间,确定至少两个响应对象中最晚占用交互媒介的响应对象作为目标响应对象,通知目标响应对象响应所述语音信息。实际应用中,最晚占用交互媒介的响应对象往往是用户当前最可能使用的响应对象,因此,不管至少两个响应对象各自占用的交互媒介是什么,可以确定最晚占用了交互媒介的响应对象作为目标响应对象。仍以图1所述实施例中的appb、appc中分别注册的“下一个”语音信息为例,假设用户触发的语音命中“下一个”语音信息,且假设appb当前占用着音频通道、appc当前占用着屏幕窗口,则至少两个响应对象中会包含appb和appc,并且假设appb占用音频通道的时间为t1,appc占用屏幕窗口的时间为t2,t1早于t2,则此时,可以确定目标应用程序为appc,appc来响应用户的语音信息以显示下一张图片。综上,当接收到用户输入的某条语音信息时,由于注册该语音信息的对应语音信息的响应对象可能有多个,通过结合当前各响应对象对诸如屏幕窗口、音频通道等交互媒介的占用情况来确定注册有该对应语音信息并且当前占用着交互媒介的响应对象,进而通知确定出的响应对象对该语音信息进行响应。通过本方案,操作系统结合各响应对象中注册的语音信息以及各响应对象对交互媒介的占用情况自动从众多响应对象中确定出用于响应用户的语音信息的响应对象,打破了需要用户每次说出语音信息前需要说出唤醒词启动所需的响应对象的限制,用户在使用某响应对象的过程中,仅需说出简短的表明其使用意图的语音信息即可,提高了用户进行语音交互的便捷性。下面结合两个实施例对图2所示实施例中响应对象的确定过程进行说明。图3为本发明实施例提供的又一种交互方法的流程图,如图3所示,该方法可以包括如下步骤:301、响应于语音信息,在已经存储的注册信息中确定注册有对应语音信息的至少一个响应对象。302、获取交互媒介的占用状态信息,占用状态信息中记录了不同响应对象对不同交互媒介的占用信息。303、根据占用状态信息,从至少一个响应对象中确定占用交互媒介的响应对象。304、通知确定出的响应对象响应语音信息。本实施例中,在识别出用户触发的语音中的语音信息(称为第一语音信息)后,先在已经存储的注册信息中找到注册有该语音信息的对应语音信息(称为第二语音信息)的各响应对象作为上述至少一个响应对象。假设第二语音信息为“下一个”,注册有该第二语音信息的响应对象包括appa,appb,appc,从而,至少一个响应对象由appa,appb和appc构成。操作系统中维护有反映各交互媒介在不同时间被不同响应对象的占用情况的占用状态信息,该占用状态信息可以维护在一个表中,称为占用状态表。某交互媒介被某响应对象占用时,可以向该占用状态表中写入该交互媒介对应的占用信息,该占用信息比如可以包括交互媒介的标识、占用该交互媒介的响应对象的标识以及占用时间。其中,操作系统维护的交互媒介占用状态信息会实时更新,即占用状态表中存储的占用信息会实时更新,比如某响应对象退出使用时,该响应对象将释放之前所占用的交互媒介,从而会删除该响应对象对该交互媒介的占用信息。假设在获取至少一个响应对象后操作系统查询交互媒介的占用状态信息如下,以通过占用状态表来存储交互媒介的占用状态信息为例,占用状态表如下表所示:交互媒介标识响应对象标识占用时间音频通道appbt1屏幕窗口appct2从而,基于获取到的交互媒介的占用状态信息可以从至少一个响应对象中确定出占用着交互媒介的响应对象,亦即去除至少一个响应对象中不存在于上述占用状态表中的响应对象。具体地,假设至少一个响应对象中包含appa,appb和appc。假设appa,appb和appc中“下一个”语音信息各自对应的交互媒介分别为音频通道、音频通道和屏幕窗口,则由于当前获得的交互媒介的占用状态信息中不存在appa的占用记录,也就是说用户并未开启appa,而只有appb和appc当前处于运行状态,,则确定appb和appc为注册有对应语音信息且占用交互媒介的响应对象。当注册有对应语音信息且占用交互媒介的响应对象为多个时,如何从中确定用于响应语音信息的目标响应对象的过程可以参见前述实施例中的说明,在此不赘述。由于语音信息注册时,可以设定语音信息在注册的响应对象中对应的用户交互意图,因此,本实施例中,操作系统确定出注册有对应语音信息且占用交互媒介的响应对象后,可以根据该对应语音信息在该响应对象中对应的用户交互意图,向该响应对象发送与用户交互意图对应的控制指令,以控制该响应对象进行响应。比如,假设语音信息为“下一个”,确定出的响应对象为appc,用户交互意图为:播放下一张图片,则操作系统可以向appc发送“播放下一张图片”的控制指令。图4为本发明实施例提供的再一种交互方法的流程图,如图4所示,该方法可以包括如下步骤:401、响应于语音信息,获取交互媒介的占用状态信息,占用状态信息中记录了不同响应对象对不同交互媒介的占用信息。402、从占用状态信息中包含的响应对象中确定注册有对应语音信息的响应对象。403、通知确定出的响应对象响应所述语音信息。本实施例中,在获取到用户触发的语音信息(称为第一语音信息)后,可以先获取交互媒介的占用状态信息,也就是先获取当前正在占用交互媒介的响应对象亦即正在运行的响应对象。进而,基于对该语音信息,可以在占用状态信息中当前包含的响应对象中确定出注册有该第一语音信息的对应语音信息(称为第二语音信息)的响应对象。比如,假设当前的占用状态信息如下表所示:交互媒介标识响应对象标识占用时间音频通道appbt1屏幕窗口appct2音频通道appat3假设第二语音信息为“下一个”,根据appa,appb,appc各自对应的注册信息,确定注册有该第二语音信息的响应对象包括appb,appc,从而,确定出的注册有第二语音信息且占用交互媒介的响应对象由appb和appc构成。综上,通过在语音信息的注册信息中设置响应对象的标识,以及通过对交互媒介的占用情况的维护,当用户触发了在多个响应对象中都注册的语音信息时,操作系统也可以基于该注册信息和当前的交互媒介占用状态信息从全局的响应对象中确定出用于响应用户触发的语音信息的响应对象,无需用户在使用前先指定目标响应对象,提高了用户的操作便利性。下面,为了更加方便理解本发明实施例中对应语音信息的注册过程以及操作系统对用户触发的语音信息的响应处理过程,结合图5所示的操作系统的工作原理示意图来进行说明。值得说明的是,图5中示意的各组成单元仅为逻辑上的一种可选拆分方式,不以此限定。其中,该操作系统,包括:输入控制单元,用于控制语音输入设备接收语音信息;交互引擎,用于响应于所述语音信息,确定注册有对应语音信息且占用交互媒介的响应对象,通知所述响应对象响应所述语音信息。其中,语音输入设备可以为麦克风。当操作系统启动时,即可控制语音输入设备开始工作。为支持交互引擎实现对交互媒介占用情况的获取以及对语音信息的响应处理,如图5所示,可以将交互引擎从逻辑上划分为场景引擎和自然语言理解(naturallanguageunderstanding,简称nlu)引擎。另外,如图5所示,操作系统中还可以包括交互媒介管理器。其中,一种交互媒介对应于一种交互媒介管理器,比如图5中示意的与屏幕窗口这种交互媒介对应的窗口管理器、与音频通道这种交互媒介对应的音频管理器,等等。其中,在屏幕上可见的应用都会有一个主窗口,窗口管理器就是管理操作系统上所有应用窗口的容器,它保证同一时间只有一个应用窗口获得输入焦点,即占据屏幕窗口。音频管理器确保同一时间只有一个应用可占用音频通道播放音频。场景引擎是管理操作系统上诸如视图交互场景、语音交互场景等交互场景使用状况的引擎,接收窗口管理器、音频管理器发送的交互媒介占用状态变化信号,通过场景引擎可以知道各交互媒介所处于的占用状态。场景引擎可以将实时获得的各交互媒介的占用状态信息发送至nlu引擎,或者,场景引擎本地维护各交互媒介的实时的占用状态信息,基于nlu引擎的请求,将接收到该请求时各交互媒介的占用状态信息发送至nlu引擎。本发明实施例中,nlu引擎的作用是将用户触发的语音转换为文本,将文本中携带的语音信息(对应于前述实施例中的第一语音信息)转换为对应的用户交互意图,比如,“我要去西湖”的语音,经过nlu引擎的处理,转换为导航到西湖的用户交互意图。该操作系统运行过程中,当开发者想要向应用程序注册一条语音信息(对应于前述实施例中的第二语音信息)时,具体可以进行该第二语音信息对应的nlu匹配规则的注册,具体的注册内容可以包括:第二语音信息、第二语音信息对应的用户交互意图、应用程序所需占用的交互媒介的标识以及该应用程序的标识,当然,开发者还可以设置响应该第二语音信息的回调函数。应用程序将该注册信息亦即nlu匹配规则发送至nlu引擎,nlu引擎存储该匹配规则。基于此,nlu引擎一方面可以维护有nlu匹配规则,另一方面可以通过场景引擎获得实时的各交互媒介的占用状态信息。从而,从nlu引擎接收到用户触发的一条语音指令时,识别其中包含的语音信息(称为第一语音信息),筛选出注册有对应的第二语音信息的各nlu匹配规则,通过筛选出的各nlu匹配规则知道注册有该第二语音信息的各应用程序都有哪些。从而再结合从场景引擎获得的各交互媒介的占用状态信息,确定出用于响应该语音指令的目标应用程序,通知目标应用程序响应该语音指令。以下将详细描述本发明的一个或多个实施例的语音交互装置。本领域技术人员可以理解,这些语音交互装置均可使用市售的硬件组件通过本方案所教导的步骤进行配置来构成。图6为本发明实施例提供的一种交互装置的结构示意图,如图6所示,该装置包括:确定模块11、发送模块12。确定模块11,用于确定响应对象的注册信息,所述注册信息中包括语音信息、所述响应对象的标识。发送模块12,用于将所述注册信息发送至操作系统,以使所述操作系统根据所述注册信息对接收的语音信息进行响应处理。图6所示装置可以执行图1所示实施例的方法,本实施例未详细描述的部分,可参考对图1所示实施例的相关说明。该技术方案的执行过程和技术效果参见图1所示实施例中的描述,在此不再赘述。在一个可能的设计中,上述交互装置的结构可实现为一电子设备,如图7所示,该电子设备可以包括:第一处理器21、第一存储器22。其中,所述第一存储器22上存储有可执行代码,当所述可执行代码被所述第一处理器21执行时,使所述第一处理器21执行如前述图1所示实施例中提供的交互方法。另外,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如图1所示实施例中的交互方法。图8为本发明实施例提供的另一种交互装置的结构示意图,如图8所示,该装置包括:确定模块31、通知模块32。确定模块31,用于响应于语音信息,确定注册有对应语音信息且占用交互媒介的响应对象。通知模块32,用于通知所述响应对象响应所述语音信息。其中,所述对应语音信息是所述语音信息,或者,所述对应语音信息与所述语音信息语义相似。可选地,所述装置还包括:接收模块,存储模块。其中,所述接收模块,用于接收所述响应对象发送的注册信息,所述注册信息中包括所述对应语音信息、所述响应对象的标识。所述存储模块,用于保存所述注册信息。可选地,所述确定模块31可以用于:在已经存储的注册信息中确定注册有所述对应语音信息的至少一个响应对象;获取交互媒介的占用状态信息,所述占用状态信息中记录了不同响应对象对不同交互媒介的占用信息;根据所述占用状态信息,从所述至少一个响应对象中确定占用交互媒介的响应对象。可选地,所述确定模块31可以用于:获取交互媒介的占用状态信息,所述占用状态信息中记录了不同响应对象对不同交互媒介的占用信息;从所述占用状态信息中包含的响应对象中确定注册有所述对应语音信息的响应对象。可选地,所述通知模块32可以用于:若所述注册有对应语音信息且占用交互媒介的响应对象为至少两个,且所述至少两个响应对象总共占用至少两种交互媒介,则根据所述至少两种交互媒介的优先级,从所述至少两个响应对象中确定占用具有最高优先级的交互媒介的响应对象作为目标响应对象;通知所述目标响应对象响应所述语音信息。可选地,所述通知模块32可以用于:若所述注册有对应语音信息且占用交互媒介的响应对象为至少两个,则根据所述至少两个响应对象各自对应的交互媒介占用时间,确定所述至少两个响应对象中最晚占用交互媒介的响应对象作为目标响应对象;通知所述目标响应对象响应所述语音信息。可选地,所述注册信息中还包括与所述对应语音信息对应的用户交互意图;所述通知模块32可以用于:确定所述响应对象中所述语音信息对应的用户交互意图;向所述响应对象发送与所述用户交互意图对应的控制指令。图8所示装置可以执行图2-图4所示实施例的方法,本实施例未详细描述的部分,可参考对图2-图4所示实施例的相关说明。该技术方案的执行过程和技术效果参见图2-图4所示实施例中的描述,在此不再赘述。在一个可能的设计中,上述图8所示交互装置的结构可实现为一电子设备,如图9所示,该电子设备可以包括:第二处理器41、第二存储器42。其中,所述第二存储器42上存储有可执行代码,当所述可执行代码被所述第二处理器41执行时,使所述第二处理器41执行如图2-图4所示实施例中提供的交互方法。另外,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如图2-图4所示方法实施例中的交互方法。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助加必需的通用硬件平台的方式来实现,当然也可以通过硬件和软件结合的方式来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以计算机产品的形式体现出来,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程语音交互设备的处理器以产生一个机器,使得通过计算机或其他可编程语音交互设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程语音交互设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程语音交互设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。内存是计算机可读介质的示例。计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1