首页 > 乐器声学 专利正文
消息处理方法、语音处理方法、装置、终端和存储介质与流程

时间:2022-02-18 阅读: 作者:专利查询

消息处理方法、语音处理方法、装置、终端和存储介质与流程

1.本发明涉及通信技术,尤其涉及一种消息处理方法、语音处理方法、装置、终端和存储介质。


背景技术:

2.由于小程序具有上线灵活、使用场景广泛、开发成本低等诸多优点,越来越多的应用程序中集成了小程序。在实现本发明的过程中,发明人发现,目前的小程序的使用,通常依赖手动操作,比如需要手动点击进入小程序,小程序内的功能项也都是需要用户手动操作才能使用,十分不便。


技术实现要素:

3.本发明实施例提供一种消息处理方法、语音处理方法、装置、终端和存储介质,能够让小程序的使用更加灵活、方便。
4.第一方面,本发明实施例提供一种消息处理方法,应用于终端,所述终端中具有语音处理程序和预设应用程序,所述预设应用程序中集成有小程序,所述小程序的开发框架中注入有注册关系,所述消息处理方法包括:
5.所述小程序接收所述语音处理程序发送的控制消息,所述控制消息是由所述语音处理程序对输入的语音指令进行转换生成的;
6.所述小程序查询所述注册关系以获取所述控制消息对应的目标事件;
7.所述小程序执行所述目标事件。
8.第二方面,本发明实施例提供一种语音处理方法,应用于终端,所述终端中具有语音处理程序和预设应用程序,所述预设应用程序中集成有小程序,所述小程序的开发框架中注入有注册关系,所述语音处理方法包括:
9.所述语音处理程序获取输入的语音指令;
10.所述语音处理程序对所述语音指令进行转换生成控制消息;
11.所述语音处理程序向所述小程序发送所述控制消息,以使得所述小程序查询所述注册关系以获取所述控制消息对应的目标事件并执行所述目标事件。
12.第三方面,本发明实施例提供一种消息处理装置,应用于终端,所述终端中具有语音处理程序和预设应用程序,所述预设应用程序中集成有小程序,所述小程序的开发框架中注入有注册关系,所述消息处理装置包括:
13.接收模块,用于接收所述语音处理程序发送的控制消息,所述控制消息是由所述语音处理程序对输入的语音指令进行转换生成的;
14.查询模块,用于查询所述注册关系以获取所述控制消息对应的目标事件;
15.执行模块,用于执行所述目标事件。
16.第四方面,本发明实施例提供一种语音处理装置,应用于终端,所述终端中具有语音处理程序和预设应用程序,所述预设应用程序中集成有小程序,所述小程序的开发框架
中注入有注册关系,所述语音处理装置包括:
17.获取模块,用于获取输入的语音指令;
18.转换模块,用于对所述语音指令进行转换生成控制消息;
19.发送模块,用于向所述小程序发送所述控制消息,以使得所述小程序查询所述注册关系以获取所述控制消息对应的目标事件并执行所述目标事件。
20.第五方面,本发明实施例提供一种终端,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现如本发明实施例任一所述的消息处理方法,或者所述处理器执行所述程序时实现如本发明实施例任一所述的语音处理方法。
21.第六方面,本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例任一所述的消息处理方法,或者该程序被处理器执行时实现如本发明实施例任一所述的语音处理方法。
22.本发明实施例中,小程序可以接收语音处理程序发送的控制消息,该控制消息是由语音处理程序对输入的语音指令进行转换生成的,然后查询小程序开发框架中注入的注册关系以获取该控制消息对应的目标事件,最后执行该目标事件,即本发明实施例中,小程序可以和语音处理程序结合,根据小程序开发框架中注入的注册关系来执行语音指令,为用户提供了通过语音指令使用小程序的方法,从而让小程序的使用更加灵活、方便,满足了更多场景下的小程序使用需求。
附图说明
23.图1是本发明实施例提供的消息处理方法的一个流程示意图。
24.图2是本发明实施例提供一个应用架构示意图。
25.图3是本发明实施例提供的控制消息的一个结构示意图。
26.图4是本发明实施例提供的消息处理方法的另一流程示意图。
27.图5是本发明实施例提供的消息处理方法的又一流程示意图。
28.图6是本发明实施例提供的语音处理方法的一个流程示意图。
29.图7是本发明实施例提供的消息处理装置的一个结构示意图。
30.图8是本发明实施例提供的语音处理装置的一个结构示意图。
31.图9是本发明实施例提供的终端的一个结构示意图。
具体实施方式
32.下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
33.由于现有小程序的使用方法,多依赖用户手动操作,比如,需要用户手动点击才能打开小程序,需要用户滑动才能实现翻页等,十分不便。在一些场景下,手动操作控制小程序的方法,甚至存在安全隐患。比如,在驾驶过程中,手动操作小程序会影响用户的驾驶操作。因而,本发明实施例提供一种消息处理方法,可以应用于终端,终端中具有语音处理程序和预设应用程序,预设应用程序中集成有小程序,小程序的开发框架中注入有注册关系,
小程序可以接收语音处理程序发送的控制消息,该控制消息是由语音处理程序对输入的语音指令进行转换生成的,然后查询注册关系以获取该控制消息对应的目标事件,执行该目标事件,即小程序可以和语音处理程序结合来执行语音指令,为用户提供了通过语音指令使用小程序的方法,从而让小程序的使用更加灵活、方便,满足了更多场景下的小程序使用需求。
34.图1为本发明实施例提供的消息处理方法的一个流程示意图,该方法可以由本发明实施例提供的消息处理装置来执行,该装置可采用软件和/或硬件的方式实现。在一个具体的实施例中,该装置可以集成在终端中,终端可以是车载终端,比如车载电脑、车载电视等;终端还可以是用户终端,比如手机、平板电脑、笔记本电脑、台式电脑等。以下实施例将以该装置集成在终端中为例进行说明,终端中可以具有语音处理程序和小程序,语音处理程序可以是语音助手、智慧语音等能够识别语音指令的应用程序,小程序可以集成在预设应用程序中,预设应用程序比如微信、支付宝、百度等应用程序,即小程序可以是微信小程序、支付宝小程序、百度小程序等,小程序的开发框架中注入有注册关系。参考图1,该方法具体可以包括如下步骤:
35.步骤101,小程序接收语音处理程序发送的控制消息,该控制消息是由语音处理程序对输入的语音指令进行转换生成的。
36.具体地,当用户需要对终端上的小程序进行控制时,可以发出语音指令,终端采集该语音指令,并利用语音处理程序对该语音指令进行识别、转换,以生成控制消息。比如,语音处理程序可以对该语音指令进行识别,以将该语音指令转换成机器能够理解的文本序列,通过文本序列识别用户的意图(比如用户要操作哪个小程序),然后根据识别出的用户意图和文本序列中的关键词生成控制消息,并将控制消息发送给小程序,小程序接收语音处理程序发送的控制消息。
37.例如,当用户需要打开终端上的微信乘车码时,用户可以发出“打开微信乘车码”的语音指令,终端上的语音处理程序可以根据该语音指令生成控制消息,并将控制消息发送给微信乘车码这个小程序。
38.步骤102,小程序查询注册关系以获取该控制消息对应的目标事件。
39.在一个具体的实施例中,控制消息中可以包括目标指令,目标指令可以是用文字形式表示的指令,则小程序可以查询注册关系以获取目标指令对应的目标事件。
40.具体实现中,可以预先在小程序的开发框架中注入注册关系,注册关系中包括注册指令和注册事件的对应关系,其中,注册指令可以是用文字形式表示的指令,注册事件可以是以函数形式封装的事件处理方法。具体地,可以在小程序开发框架的逻辑层(即service层)注入注册关系,也可以在小程序开发框架的视图层(即view层)注入注册关系,还可以在小程序开发框架的逻辑层和视图层均注入注册关系。
41.小程序开发框架的逻辑层,通常用来逻辑处理、数据请求、接口调用,小程序开发框架的视图层,通常用来渲染页面结构。小程序开发框架的逻辑层和视图层可以通过系统层的jsbridage进行通信,逻辑层把数据变化通知到视图层,触发视图层页面更新,视图层把触发的事件通知到逻辑层进行业务处理。
42.在一个具体的实施例中,小程序开发框架的逻辑层可以具有消息队列,则可以按照如下方式在小程序开发框架的逻辑层注入注册关系:将注册关系中的注册指令作为键
(key),将注册关系中的注册事件作为值(value),将注册指令与注册事件的对应关系通过预设应用程序编程接口(application programming interface,api)按照键值对(key

value)的方式注入该消息队列,预设api可以是针对语音控制功能开放的api。
43.在一个具体的实施例中,小程序开发框架的视图层可以有预设视图,预设视图具有指令属性和绑定输入字段(bind),则可以按照如下方式在小程序开发框架的视图层注入注册关系:将注册关系中的注册指令写入预设视图的指令属性,将注册关系中的注册事件写入预设视图的绑定输入字段,通过预设视图的指令属性和绑定输入字段将注册关系与视图层中的预设视图绑定。视图层中一般会有多个视图,预设视图可以是这多个视图中的任意一个视图,小程序可以记录作为预设视图的视图标识(id),以便后续查询该预设视图绑定的注册关系。
44.具体实现中,在获取目标指令对应的目标事件时,可以通过小程序开发框架的逻辑层获取目标指令对应的目标事件,具体获取方法可如下:
45.(1)小程序向开发框架的逻辑层发送控制消息,以通过逻辑层查询逻辑层中通过预设api注入的注册关系。
46.(2)小程序从逻辑层获取目标指令对应的目标事件。
47.示例地,小程序开发框架的逻辑层在接收到该控制消息之后,可以提取该控制消息中的目标指令,在逻辑层的消息队列中查询是否存在该目标指令;如果存在该目标指令,则从消息队列中获取该目标指令对应的目标事件,向小程序反馈该目标事件;如果不存在该目标指令,则可以结束处理。
48.具体实现中,在获取目标指令对应的目标事件时,可以通过小程序开发框架的视图层获取目标指令对应的目标事件,具体获取方法可如下:
49.(1)小程序通过开发框架的逻辑层向开发框架的视图层发送控制消息,以通过视图层查询视图层中的预设视图绑定的注册关系;
50.(2)小程序从视图层获取目标指令对应的目标事件。
51.示例地,小程序开发框架的逻辑层在接收到该控制消息之后,可以直接将该控制消息转发给开发框架的视图层,视图层提取该控制消息中的目标指令,根据视图id找到预设视图,在预设视图绑定的注册关系中查询是否存在该目标指令;如果存在该目标指令,则从绑定的注册关系中获取该目标指令对应的目标事件,向小程序反馈该目标事件;如果不存在该目标指令,则可以结束处理。
52.具体实现中,当小程序开发框架的逻辑层和视图层均注入有注册关系时,可以通过逻辑层和视图层中的任意一层获取目标指令对应的目标事件,也可以优先通过小程序开发框架的逻辑层获取目标指令对应的目标事件,当逻辑层无法反馈目标指令对应的目标事件时,再通过小程序开发框架的视图层获取目标指令对应的目标事件。
53.比如,可以先将控制消息发送给小程序开发框架的逻辑层,逻辑层在接收到该控制消息时,可以查询注册关系以获取目标指令对应的目标事件,当能够获取到目标指令对应的目标事件时,可以在控制消息中添加处理标记,并向视图层发送添加了处理标记的控制消息;当未能获取到目标指令对应的目标事件时,可以直接将控制消息转发给视图层;视图层在接收到控制消息时,可以先查询控制消息中是否存在处理标记,若存在处理标记,则无需对该控制消息进行处理,若控制消息中不存在处理标记,则可以对该控制消息进行处
理,以获取目标指令对应的目标事件。
54.在一个具体的实施例中,注册关系中一个注册指令可能对应多个注册事件,比如初始时,为指令1绑定的注册事件为事件a1,后面对指令1绑定的注册事件进行了更新,为指令1绑定了事件a2。则在逻辑层或视图层查询目标指令对应的目标事件时,可能查询到多个注册事件(即多个候选事件),则逻辑层或视图层可以从多个候选事件中选取最后一次为目标指令绑定的事件,将最后一次绑定的事件作为目标事件。比如,在对注册指令绑定对应的注册事件时,可以添加注册时间戳,逻辑层或视图层可以根据每个候选事件的注册时间戳,从多个候选事件中选取最后一次为目标指令绑定的注册事件(注册时间戳距离当前时间最近),将最后一次绑定的注册事件作为目标事件。也就是说,无论注册关系中为注册指令绑定的注册事件有几个,最终反馈的目标指令对应的目标事件,可以只有一个。
55.步骤103,小程序执行该目标事件。
56.执行该目标事件即实现了语音控制小程序,比如目标指令为“打开微信乘车码”,该目标指令对应的目标事件可以是“启动微信乘车码小程序”,则执行该目标事件即实现了在语音指令的控制下启动微信乘车码这个小程序。
57.在一个具体的实施例中,通过本发明实施例公开的消息处理方法,不仅可以实现语音控制小程序的启动,还能实现语音控制小程序跳转至某些功能页。比如,可以通过语音控制启动微信乘车码,还能进一步地通过语音控制跳转至微信乘车码的“实时公交”、“地铁图”等页面,整个控制过程用户只需要发出语音指令即可。而如果采用手动操作的方法,则需要用户先点击启动微信,再在微信中搜索“乘车码”这一小程序并点击启动乘车码,然后再乘车码页面点击“实时公交”、“地铁图”等,才能跳转至微信乘车码的“实时公交”、“地铁图”等页面,操作步骤繁琐。相较于手动操作的方式,本发明实施例提供的语音控制小程序的方式,让小程序的使用更加灵活、方便,满足了更多场景下的小程序使用需求。
58.在一个具体的实施例中,控制消息中还可以包括多个目标指令,则小程序可以根据预设的优先级确定每个目标指令的优先级,根据每个目标指令的优先级获取每个目标指令对应的目标事件,并按照每个目标指令的优先级执行对应目标指令对应的目标事件。
59.比如,控制消息中包括的目标指令有指令1和指令2,指令1的优先级高于指令2的优先级,则可以先查询注册关系获取指令1对应的目标事件a1,并执行目标事件a1,再查询注册关系获取指令2对应的目标事件b1,并执行目标事件b1。
60.上述技术方案,可以将小程序和语音处理程序结合,根据小程序开发框架中注入的注册关系来执行语音指令,为用户提供了通过语音指令使用小程序的方法,从而让小程序的使用更加灵活、方便,满足了更多场景下的小程序使用需求。
61.比如,在驾驶场景,当将本发明实施例提供的方法应用于车载终端时,用户发出语音指令即可控制打开车载终端上的小程序,或控制车载终端上的小程序跳转至指定功能。例如,车载终端上有加油小程序,则用户通过发出语音指令即可控制加油小程序查找附近的加油站并导航至该加油站加油,十分方便。
62.图2是本发明实施例提供的终端的应用架构图,如图2所示,终端具有语音处理程序和小程序,语音处理程序可以是语音助手、智慧语音等能够识别语音指令的应用程序,小程序可以集成在预设应用程序中,预设应用程序比如微信、支付宝、百度等应用程序,即小程序可以是微信小程序、支付宝小程序、百度小程序等,小程序的开发框架注入有注册关
系,小程序开发框架可以包括逻辑层和视图层,注册关系可以注入在开发框架的逻辑层,也可以注入在开发框架的视图层。用户发出的语音指令经由语音处理程序进行转换生成控制消息,控制消息中包含目标指令,小程序在接收到该控制消息之后,可以通过开发框架的逻辑层查询注册关系以获取目标指令对应的目标事件,也可以通过开发框架的视图层查询注册关系以获取目标指令对应的目标事件,最终执行该目标事件。
63.在一个具体的实施例中,所生成的控制消息的结构可如图3所示,包括消息标识(id)、目标指令、附加参数等。其中,消息标识可以用来区分不同的控制消息,此外,逻辑层和视图层还可以根据消息标识确定是否需要处理该控制消息,比如,当一个控制消息已被成功处理时,可以在消息标识中添加处理标记,当逻辑层或视图层接收到包含处理标记的控制消息时,可以确定该控制消息不需要处理,如果逻辑层或视图层接收到的控制消息中不包含处理标记时,可以确定该控制消息需要处理。目标指令可以是用文字形式表示的指令,附加参数可以是与目标指令相关的参数,附加参数可以随着目标事件一块儿反馈给小程序。比如,目标指令为打开微信音乐播放器,附加参数可以是用户需要播放的歌曲的名称。
64.下面以小程序通过开发框架的逻辑层查询注册关系获取目标指令对应的目标事件为例,说明本发明实施例的消息处理方法,如图4所示,该方法包括以下步骤:
65.步骤201,小程序接收语音处理程序发送的控制消息,该控制消息是由语音处理程序对输入的语音指令进行转换生成的,控制消息中包括目标指令。
66.具体地,当用户需要对终端上的小程序进行控制时,可以发出语音指令,终端采集该语音指令,并利用语音处理程序对该语音指令进行识别、转换,以生成控制消息,并将控制消息发送给小程序,小程序接收语音处理程序发送的控制消息,控制消息中包括目标指令。
67.步骤202,小程序向开发框架的逻辑层发送控制消息,以通过逻辑层查询逻辑层中注入的注册关系。
68.示例地,可以预先在小程序开发框架的逻辑层注入注册关系,注册关系中包括注册指令和注册事件的对应关系。小程序开发框架的逻辑层,通常用来逻辑处理、数据请求、接口调用。具体在本发明实施例中,小程序开发框架的逻辑层可以具有消息队列,则可以按照如下方式在小程序开发框架的逻辑层注入注册关系:将注册关系中的注册指令作为键(key),将注册关系中的注册事件作为值(value),将注册指令与注册事件的对应关系通过预设api按照键值对(key

value)的方式注入该消息队列,预设api可以是针对语音控制功能开放的api。
69.在一个具体的实施例中,假如注册关系中的注册指令包括指令1和指令2,指令1对应的注册事件为事件a1,指令2对应的注册事件为事件b1,则逻辑层的消息队列可如下表1所示:
70.键(key)值(value)指令1事件a1指令2事件b1
71.表1
72.则小程序开发框架的逻辑层在接收到该控制消息之后,可以提取该控制消息中的
目标指令,在逻辑层的消息队列中查询是否存在该目标指令;如果存在该目标指令,则从消息队列中获取该目标指令对应的目标事件,向小程序反馈该目标事件;如果不存在该目标指令,则可以结束处理。
73.比如,控制消息中包括的目标指令为指令1,则在消息队列中可以查到指令1,则获取指令1对应的注册事件,即事件1。再例如,控制消息中包括的目标指令为指令3,则在消息队列中查不到指令3,即指令3是一个未注册的指令,因而可以结束处理,整个语音指令的冒泡流程到此结束。
74.步骤203,小程序从逻辑层获取目标指令对应的目标事件。
75.在一个具体的实施例中,注册关系中一个注册指令可能对应多个注册事件,则在逻辑层查询目标指令对应的目标事件时,可能查询到多个注册事件(即多个候选事件),则逻辑层可以从多个候选事件中选取最后一次为目标指令绑定的事件,将最后一次绑定的事件作为目标事件。比如初始时,为指令1绑定的注册事件为事件a1,后面对指令1绑定的注册事件进行了更新,为指令1绑定了事件a2,事件a1和事件a2均可以有对应的注册时间戳,且事件a2的注册时间戳晚于事件a1的注册时间戳(即事件a2是最后一次绑定的注册事件);当目标指令为指令1时,逻辑层可根据注册时间戳选取事件a2作为指令1对应的目标事件。
76.步骤204,小程序执行目标事件。
77.执行该目标事件即实现了语音控制小程序。比如目标指令为“打开微信音乐”,该目标指令对应的目标事件可以是“调起微信中的音乐播放器”,则执行该目标事件即实现了在语音指令的控制下打开微信音乐这个小程序。
78.在一个具体的实施例中,控制消息中还可以包括多个目标指令,则逻辑层可以根据预设的优先级确定每个目标指令的优先级,根据每个目标指令的优先级获取每个目标指令对应的目标事件,小程序可以按照每个目标指令的优先级执行对应目标指令对应的目标事件。
79.比如,控制消息中包括的目标指令有指令1和指令2,指令1的优先级高于指令2的优先级,则逻辑层可以先查询注册关系获取指令1对应的事件a1,并返回事件a1;然后再查询注册关系获取指令2对应的事件b1,并返回事件b1,小程序先执行事件a1,再执行事件b1。
80.上述技术方案,可以将小程序和语音处理程序结合,根据小程序开发框架的逻辑层中注入的注册关系来执行语音指令,为用户提供了通过语音指令使用小程序的方法,从而让小程序的使用更加灵活、方便,满足了更多场景下的小程序使用需求。
81.下面以小程序通过开发框架的视图层查询注册关系获取目标指令对应的目标事件为例,说明本发明实施例的消息处理方法,如图5所示,该方法包括以下步骤:
82.步骤301,小程序接收语音处理程序发送的控制消息,该控制消息是由语音处理程序对输入的语音指令进行转换生成的,控制消息中包括目标指令。
83.具体地,当用户需要对终端上的小程序进行控制时,可以发出语音指令,终端采集该语音指令,并利用语音处理程序对该语音指令进行识别、转换,以生成控制消息,并将控制消息发送给小程序,小程序接收语音处理程序发送的控制消息,控制消息中包括目标指令。
84.步骤302,小程序通过开发框架的逻辑层向开发框架的视图层发送控制消息,以通过视图层查询视图层中的预设视图绑定的注册关系。
85.示例地,可以预先在小程序开发框架的视图层注入注册关系,注册关系中包括注册指令和注册事件的对应关系。小程序开发框架的视图层,通常用来渲染页面结构。具体在本发明实施例中,小程序开发框架的视图层可以有预设视图,预设视图具有指令属性和绑定输入字段,则可以按照如下方式在小程序开发框架的视图层注入注册关系:将注册关系中的注册指令写入预设视图的指令属性,将注册关系中的注册事件写入预设视图的绑定输入字段,通过预设视图的指令属性和绑定输入字段将注册关系与视图层中的预设视图绑定。视图层中一般会有多个视图,预设视图可以是这多个视图中的任意一个视图,小程序可以记录作为预设视图的视图标识(id),以便后续查询该预设视图绑定的注册关系。
86.在一个具体的实施例中,假如注册关系中的注册指令包括指令1和指令2,指令1对应的注册事件包括事件a1,指令2对应的注册事件为事件b1,则可以在预设视图的指令属性中写入指令1和指令2,并在预设视图的绑定输入字段对应输入事件a1和事件b1。
87.则小程序开发框架的逻辑层在接收到该控制消息之后,可以直接将该控制消息转发给视图层,视图层提取该控制消息中的目标指令,根据视图id找到预设视图,在预设视图绑定的注册关系中查询是否存在该目标指令;如果存在该目标指令,则从绑定的注册关系中获取该目标指令对应的目标事件,向小程序反馈该目标事件;如果不存在该目标指令,则可以结束处理。
88.比如,控制消息中包括的目标指令为指令1,则在预设视图绑定的注册关系中可以查到指令1,则获取指令1对应的注册事件,即事件a1。再例如,控制消息中包括的目标指令为指令3,则在预设视图绑定的注册关系中查不到指令3,即指令3是一个未注册的指令,因而可以结束处理,整个语音指令的冒泡流程到此结束。
89.步骤303,小程序从视图层获取目标指令对应的目标事件。
90.在一个具体的实施例中,注册关系中一个注册指令可能对应多个注册事件,则在视图层查询目标指令对应的目标事件时,可能查询到多个注册事件(即多个候选事件),则视图层可以从多个候选事件中选取最后一次为目标指令绑定的事件,将最后一次绑定的事件作为目标事件。比如初始时,为指令1绑定的注册事件为事件a1,后面对指令1绑定的注册事件进行了更新,为指令1绑定了事件a2,事件a1和事件a2均可以有对应的注册时间戳,且事件a2的注册时间戳晚于事件a1的注册时间戳(即事件a2是最后一次绑定的注册事件);当目标指令为指令1时,视图层可根据注册时间戳选取事件a2作为指令1对应的目标事件。
91.步骤304,小程序执行目标事件。
92.执行该目标事件即实现了语音控制小程序。在一个具体的实施例中,控制消息中还可以包括多个目标指令,则视图层可以根据预设的优先级确定每个目标指令的优先级,根据每个目标指令的优先级获取每个目标指令对应的目标事件,小程序可以按照每个目标指令的优先级执行对应目标指令对应的目标事件。
93.比如,控制消息中同时包括的目标指令有指令1和指令2,指令1的优先级高于指令2的优先级,则视图层可以先查询注册关系获取指令1对应的事件a1,并返回事件a1;然后再查询注册关系获取指令2对应的事件b1,并返回事件b1,小程序先执行事件a1,再执行事件b1。
94.上述技术方案,可以将小程序和语音处理程序结合,根据小程序开发框架的视图层中注入的注册关系来执行语音指令,为用户提供了通过语音指令使用小程序的方法,从
而让小程序的使用更加灵活、方便,满足了更多场景下的小程序使用需求。
95.图6是本发明实施例公开的语音处理方法的一个流程示意图,该语音处理方法可应用于终端,终端中具有语音处理程序和预设应用程序,预设应用程序中集成有小程序,小程序的开发框架中注入有注册关系,如图6所示,该语音处理方法包括以下步骤:
96.步骤401,语音处理程序获取输入的语音指令。
97.具体地,当用户需要对终端上的小程序进行控制时,可以发出语音指令,终端采集该语音指令,并将该语音指令发送给语音处理程序,语音处理程序获取该语音指令,对该语音指令进行识别、转换,以生成控制消息。比如,语音处理程序可以对该语音指令进行识别,以将该语音指令转换成机器能够理解的文本序列,通过文本序列识别用户的意图(比如用户要操作哪个小程序),然后根据识别出的用户意图和文本序列中的关键词生成控制消息,并将控制消息发送给小程序。
98.步骤402,语音处理程序对语音指令进行转换生成控制消息。
99.步骤403,语音处理程序向小程序发送该控制消息,以使得小程序查询注册关系以获取该控制消息对应的目标事件并执行目标事件。
100.小程序处理该控制消息的方法,可参阅前面实施例的描述,此处不再赘述。
101.本发明实施例中,语音处理程序可以和小程序结合来执行语音指令,为用户提供了通过语音指令使用小程序的方法,从而让小程序的使用更加灵活、方便,满足了更多场景下的小程序使用需求。
102.图7是本发明实施例提供的消息处理装置的结构示意图,该消息处理装置应用于终端,终端中具有语音处理程序和预设应用程序,预设应用程序中集成有小程序,小程序的开发框架中注入有注册关系,如图7所示,该消息处理装置包括:
103.接收模块501,用于接收语音处理程序发送的控制消息,所述控制消息是由所述语音处理程序对输入的语音指令进行转换生成的;
104.查询模块502,用于查询注册关系以获取所述控制消息对应的目标事件;
105.执行模块503,用于执行所述目标事件。
106.一实施例中,所述控制消息中包括目标指令,所述查询模块502查询注册关系以获取所述控制消息对应的目标事件,包括:
107.查询所述注册关系以获取所述目标指令对应的目标事件。
108.一实施例中,所述查询模块502查询所述注册关系以获取所述目标指令对应的目标事件,包括:
109.向开发框架的逻辑层发送所述控制消息,以通过所述逻辑层查询所述逻辑层中注入的所述注册关系;
110.从所述逻辑层获取所述目标指令对应的目标事件。
111.一实施例中,所述逻辑层具有消息队列,所述注册关系包括注册指令与注册事件的对应关系,所述注册指令与注册事件的对应关系通过应用程序编程接口预设api按照键值对的方式注入所述消息队列。
112.一实施例中,所述查询模块502查询所述注册关系以获取所述目标指令对应的目标事件,包括:
113.通过开发框架的逻辑层向所述开发框架的视图层发送所述控制消息,以通过所述
视图层查询所述视图层中注入的所述注册关系;
114.从所述视图层获取所述目标指令对应的目标事件。
115.一实施例中,所述视图层具有预设视图,所述预设视图具有指令属性和绑定输入字段,所述注册关系包括注册指令与注册事件的对应关系,所述注册指令与注册事件的对应关系通过所述预设视图的指令属性和绑定输入字段与所述预设视图绑定。
116.一实施例中,所述查询模块502查询所述注册关系以获取所述目标指令对应的目标事件,包括:
117.查询所述注册关系以获取所述目标指令对应的多个候选事件,每个候选事件具有注册时间戳;
118.按照所述注册时间戳从所述多个候选事件中选取所述目标事件。
119.一实施例中,所述目标指令包括多个,所述执行模块503执行所述目标事件,包括:
120.确定所述多个目标指令中每个目标指令的优先级;
121.按照每个目标指令的优先级处理对应目标指令对应的目标事件。
122.本领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述功能模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
123.本发明实施例的装置,可以接收语音处理程序发送的控制消息,该控制消息是由语音处理程序对输入的语音指令进行转换生成的,然后查询小程序开发框架中注入的注册关系以获取该控制消息对应的目标事件,最后执行该目标事件,即本发明实施例中,小程序可以和语音处理程序结合,根据小程序开发框架中注入的注册关系来执行语音指令,为用户提供了通过语音指令使用小程序的方法,从而让小程序的使用更加灵活、方便,满足了更多场景下的小程序使用需求。
124.图8是本发明实施例提供的语音处理装置的结构示意图,该语音处理装置应用于终端,所述终端中具有语音处理程序和预设应用程序,所述预设应用程序中集成有小程序,所述小程序的开发框架中注入有注册关系,如图8所示,该语音处理装置包括:
125.获取模块601,用于获取输入的语音指令;
126.转换模块602,用于对所述语音指令进行转换生成控制消息;
127.发送模块603,用于向小程序发送所述控制消息,以使得所述小程序查询注册关系以获取所述控制消息对应的目标事件并执行所述目标事件。
128.本发明实施例的装置,可以将语音处理程序和小程序结合来执行语音指令,为用户提供了通过语音指令使用小程序的方法,从而让小程序的使用更加灵活、方便,满足了更多场景下的小程序使用需求。
129.本发明实施例还提供了一种终端,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任一实施例提供的消息处理方法,或者所述处理器执行所述程序时实现上述任一实施例提供的语音处理方法。
130.本发明实施例还提供了一种计算机可读介质,其上存储有计算机程序,所述程序
被处理器执行时实现上述任一实施例提供的消息处理方法,或者所述程序被处理器执行时实现上述任一实施例提供的语音处理方法。
131.下面参考图9,其示出了适于用来实现本发明实施例的终端的计算机系统700的结构示意图。图9示出的终端仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
132.如图9所示,计算机系统700包括中央处理单元(cpu)701,其可以根据存储在只读存储器(rom)702中的程序或者从存储部分708加载到随机访问存储器(ram)703中的程序而执行各种适当的动作和处理。在ram 703中,还存储有系统700操作所需的各种程序和数据。cpu 701、rom 702以及ram 703通过总线704彼此相连。输入/输出(i/o)接口705也连接至总线704。
133.以下部件连接至i/o接口705:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至i/o接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。
134.特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被中央处理单元(cpu)701执行时,执行本发明的系统中限定的上述功能。
135.需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd

rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。
136.附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代
表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
137.描述于本发明实施例中所涉及到的模块和/或单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块和/或单元也可以设置在处理器中,例如,可以描述为:一种处理器包括接收模块、查询模块和执行模块,或者可以描述为:一种处理器包括获取模块、转换模块和发送模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定。
138.作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:接收语音处理程序发送的控制消息,所述控制消息是由所述语音处理程序对输入的语音指令进行转换生成的;查询注册关系以获取所述控制消息对应的目标事件;执行所述目标事件。
139.或者使得该设备包括:获取输入的语音指令;对所述语音指令进行转换生成控制消息;向小程序发送所述控制消息,以使得所述小程序查询注册关系以获取所述控制消息对应的目标事件并执行所述目标事件。
140.根据本发明实施例的技术方案,可以将小程序和语音处理程序结合来执行语音指令,为用户提供了通过语音指令使用小程序的方法,从而让小程序的使用更加灵活、方便,满足了更多场景下的小程序使用需求。
141.上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。