和應用程序處理操作行為作為同一條執(zhí)行操作請求,然后直接發(fā)送一條對應的請求給該應用程序,該應用程序根據(jù)該請求直接調用內部內置的與操作行為對應的接口。需要說明的是,本發(fā)明實施例的語音控制應用程序的方法適用于應用程序中具有已經(jīng)定義的與操作行為對應的接口。
[0040]舉例而言,假設用戶輸入的語音內容為“用百度貼吧搜索中國好聲音”,可分析出用戶的意圖為操作行為,操作目標為“百度貼吧”,操作行為“搜索中國好聲音”,在確定用戶的操作意圖之后,可向操作目標對應的應用程序(即百度貼吧應用程序)發(fā)送一條控制請求,該條請求中可直接調用百度貼吧應用程序中內部內置的中國好聲音搜索接口的控制指令。百度貼吧應用程序在接收到該條請求之后,可直接執(zhí)行搜索中國好聲音的操作。
[0041]本發(fā)明實施例的語音控制應用程序的方法,可先獲取用戶輸入的語音信息,并根據(jù)語音信息確定用戶的操作意圖,其中,操作意圖包括操作目標和操作行為,之后,可根據(jù)用戶的操作意圖生成對應的控制指令,并將控制指令發(fā)送至操作目標對應的應用程序,以使應用程序根據(jù)控制指令對應用程序中與操作行為對應的接口進行控制,即通過自動識別用戶的語音,更精準地分析出用戶的操作意圖,分析出操作目標和操作行為,根據(jù)操作目標和操作行為直接為用戶一步完成操作行為,縮短了用戶的操作路徑,節(jié)省了用戶的操作時間,并且提高了用戶的需求滿意度,從而提升了用戶體驗。
[0042]圖2是根據(jù)本發(fā)明另一個實施例的語音控制應用程序的方法的流程圖。
[0043]為了使得用戶能夠具有更好的使用體驗,可根據(jù)終端中所安裝的應用程序的情況來對操作目標進行不同的處理。具體地,如圖2所示,該語音控制應用程序的方法可以包括:
[0044]S201,獲取用戶輸入的語音信息,并根據(jù)語音信息確定用戶的操作意圖,其中,操作意圖包括操作目標和操作行為。
[0045]具體而言,在本發(fā)明的實施例中,可對語音信息進行語音識別以生成對應的文本信息,并對該文本信息進行語法分析以確定用戶的操作意圖。
[0046]優(yōu)選地,在本發(fā)明的一個實施例中,當文本信息中不包含操作目標的信息時,該語音控制應用程序的方法還可包括:判斷歷史操作行為記錄中是否存在操作行為;如果存在,則根據(jù)操作行為在歷史操作行為記錄進行查找以確定對應的操作目標;如果不存在,則對操作行為進行語義分析以確定與操作行為匹配的操作目標。也就是說,當用戶的輸入中沒有明顯的信息表明操作目標的信息時,可先根據(jù)分析出的操作行為判斷用戶是否已經(jīng)有過確定的該操作行為的行為記錄,若有,則可直接使用之前分析使用過的操作目標對應的應用程序進行相應的處理;若沒有,則可通過對操作行為的語義分析提供最優(yōu)的操作目標對應的應用程序。由此,即使在用戶輸入的內容沒有明顯的表明操作目標的信息時,也可以為盡可能提供更加精準的操作目標。
[0047]S202,根據(jù)用戶的操作意圖生成對應的控制指令。
[0048]S203,判斷終端中是否存在操作目標對應的應用程序。
[0049]需要說明的是,在本發(fā)明的實施例中,操作目標對應的應用程序可以是終端中自帶的服務,也可以是終端中已安裝的應用程序,還可以是終端中未安裝的應用程序。然而,由于確定的操作目標所對應的應用程序可能未在終端中安裝,所以在將控制指令發(fā)送到操作目標對應的應用程序之前,可先判斷終端中是否存在該操作目標所對應的應用程序。例如,可將操作目標與終端中已安裝的應用程序的名稱進行比對,以查找終端中是否已安裝該操作目標所對應的應用程序。
[0050]S204,如果存在操作目標對應的應用程序,則將控制指令發(fā)送至操作目標對應的應用程序,以使應用程序根據(jù)控制指令對應用程序中與操作行為對應的接口進行控制。
[0051]S205,如果不存在操作目標對應的應用程序,則進一步判斷應用程序是否存在網(wǎng)頁服務。
[0052]具體地,當判斷終端中不存在操作目標對應的應用程序時,可判斷該應用程序是否存在對應的網(wǎng)頁服務。也就是說,判斷該應用程序是否具有支持的網(wǎng)頁服務。例如,假設終端中不存在操作目標對應的百度貼吧應用程序,則可判斷該百度貼吧應用程序是否存在對應的網(wǎng)頁服務,即是否存在百度貼吧網(wǎng)頁。
[0053]S206,如果存在網(wǎng)頁服務,則調起應用程序對應的網(wǎng)頁服務,其中,網(wǎng)頁服務根據(jù)控制指令對網(wǎng)頁服務中與操作行為對應的接口進行控制。
[0054]具體地,當判斷操作目標對應的應用程序存在對應的網(wǎng)頁服務時,可調起該網(wǎng)頁服務,該網(wǎng)頁服務可根據(jù)上述控制指令調用內部內置的與操作行為對應的接口。
[0055]S207,如果不存在網(wǎng)頁服務,則生成下載提示信息并提供給用戶。
[0056]具體地,當判斷操作目標對應的應用程序不存在對應的網(wǎng)頁服務時,可認為此時終端中沒有合適的應用程序來執(zhí)行該操作行為,此時可生成該操作目標所對應的應用程序的下載提示信息,該下載提示信息可包括操作行為執(zhí)行失敗原因信息、操作目標所對應的應用程序的下載地址信息等,并可將該下載提示信息提供給用戶,使得用戶可以了解到操作行為執(zhí)行失敗的原因,也為用戶提供完成該操作行為所需要的工具,提升用戶的使用體驗。
[0057]可以理解,由于確定的操作目標所對應的應用程序可能未在終端中安裝,所以在不同的情況下需對操作目標做不同處理。例如,以操作目標為百度貼吧、操作行為為搜索中國好聲音為例,當終端中存在百度貼吧應用程序時,如圖3(a)所示,可調起該百度貼吧應用程序;當終端中不存在百度貼吧應用程序時,由于該百度貼吧應用程序存在對應的網(wǎng)頁服務,所以如圖3(b)所示,可調起網(wǎng)頁版的百度貼吧,并直接進入該百度貼吧內部內置的中國好聲音的接口,或者,如圖3 (C)所示,可直接調起該百度貼吧的插件,并直接進入該百度貼吧插件內部內置的中國好聲音的接口。
[0058]本發(fā)明實施例的語音控制應用程序的方法,在將控制指令發(fā)送到操作目標對應的應用程序之前,可先判斷終端中是否存在該操作目標所對應的應用程序,之后可根據(jù)判斷結果進行相應的操作,盡可能地為用戶提供能夠執(zhí)行操作行為的應用程序,使得用戶能夠具有更好的使用體驗。
[0059]為了實現(xiàn)上述實施例,本發(fā)明還提出了一種語音控制應用程序的裝置。
[0060]圖4是根據(jù)本發(fā)明一個實施例的語音控制應用程序的裝置的結構框圖。如圖4所示,該語音控制應用程序的裝置可以包括:獲取模塊110、確定模塊120、第一生成模塊130和發(fā)送模塊140。
[0061]具體地,獲取模塊110可用于獲取用戶輸入的語音信息。更具體地,獲取模塊110可通過終端中的麥克風部件來獲取用戶輸入的語音信息。
[0062]確定模塊120可用于根據(jù)語音信息確定用戶的操作意圖,其中,操作意圖包括操作目標和操作行為。具體而言,在本發(fā)明的實施例中,確定模塊120可對語音信息進行語音識別以生成對應的文本信息,并對文本信息進行語法分析以確定用戶的操作意圖。更具體地,確定模塊120可通過語音識別技術對語音信息進行語音識別,以得到對應的文本信息,之后可對該文本信息的內容進行語法分析,如可先對文本信息的內容進行詞法分析已得到多個詞,然后在對多個詞進行語義分析的同時進行語法檢查,以識別出用戶的意圖為某操作行為,并抽取對應的操作目標和操作行為。例如,用戶輸入語音“用百度貼吧搜索中國好聲音”,確定模塊120可對該語音進行語音識別,并對識別出的文本內容進行語法分析,以確定用戶的意圖為搜索操作行為,操作目標為“百度貼吧”,操作行為為“搜索中國好聲音”。
[0063]第一生成模塊130可用于根據(jù)用戶的操作意圖生成對應的控制指令。
[0064]需要說明的是,在本發(fā)明的實施例中,可預先存儲操作行為和操作目標對應的應用程序的對應列表以及調用方式。其中,在本實施例中,第一生成模塊130可根據(jù)操作意圖中的操作行為和操作目標信息從預先存儲的操作行為和操作目標對應的應用程序的對應列表中找到對應的操作行為對應的調用方式,并根據(jù)該調用方式生成對應的控制指令,該控制指令可理解是讓操作目標對應的應用程序執(zhí)行該操作行為的指令。
[0065]發(fā)送模塊140可用于將控制指令發(fā)送至操作目標對應的應用程序,以使應用程序根據(jù)控制指令對應用程序中與操作行為對應的接口進行控制。更具體地,發(fā)送模塊140可根據(jù)操作目標的名稱找到對應的應用程序,然后可將上述生成的控制指令發(fā)送到該應用程序,應用程序根據(jù)該控制指令直接調用該應用程序中與該操作行為對應的接口??梢岳斫猓诒景l(fā)明的實施例中,發(fā)送模塊140可將調起應用程序和應用程序處理操作行為作為同一條執(zhí)行操作請求,然后直接發(fā)送一條對應的請求給該應用程序,該應用程序根據(jù)該請求直接調用內部內置的與操作行為對應的接口。需要說明的是,本發(fā)明實施例的語音控制應用程序的方法適用于應用程序中具有已經(jīng)定義的與操作行為對應的接口。
[0066]舉例而言,假設用戶輸入的語音內容為“用百度貼吧搜索中國好聲音”,可分析出用戶的意圖為操作行為,操作目標為“百度貼吧”,操作行為“搜索中國好聲音”,在確定模塊120確定用戶的操作意圖之后,發(fā)送模塊140可向操作目標對應的應用程序(即百度貼吧應用程序)發(fā)送一條控制請求,該條請求中可直接調用百度貼吧應用程序中內部內置的中國好聲音搜索接口的控制指令。百度貼吧應用程序在接收到該條請求之后,可直接執(zhí)行搜索中國好聲音的操作。
[0067]為了使得用戶能夠具有更好的使用體驗,可根據(jù)終端中所安裝的應用程序的情況來對操作目標進行不同的處理。進一步地,在本發(fā)明的一個實施例中,如圖5所示,該語音控制應用程序的裝置還可包括:第一判斷模塊150、第二判斷模塊160、控制模塊170和第二生成模塊180。
[0068]具體地,第一判斷模塊150可用于在發(fā)送模塊140將控制指令發(fā)送至操作目標對應的應用程序之前,判斷終端中是否存在操作目標對應的應用程序。需要說明的是,在本發(fā)明的實施例中,操作目標對應的應用程序可以是終端中自帶的服務,也可以是終端中已安裝的應用程序,還可以是終端中未安裝的應用程序。然而,由于確定的操作目標所對應的應用程序可能未在終端中安裝,所以在發(fā)送模塊140將控制指令發(fā)送到操作目標對應的應用程序之前,第一判斷模塊150可先判斷終端中是否存在該操作目標所對應的應用程序。例如,第一判斷模塊150可將操作目標與終端中已安裝的應用程序的名稱進行比對,以查找終端中是否已安裝該操作目標所對應的應用程序。
[0069]其中,在本發(fā)明的實施例中,發(fā)送模塊140還可用于在第一判斷模塊15