專(zhuān)利名稱:VoiceXml呼叫控制實(shí)現(xiàn)方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及移動(dòng)通訊領(lǐng)域,特別是涉及ー種VoiceXml呼叫控制實(shí)現(xiàn)方法及裝置。
背景技術(shù):
語(yǔ)音可擴(kuò)展標(biāo)記語(yǔ)言(VoiceExtensible Markup Language,簡(jiǎn)稱為 VoiceXML)是萬(wàn)維網(wǎng)聯(lián)盟(World Wide Web Consortium,簡(jiǎn)稱為W3C)組織發(fā)布的國(guó)際標(biāo)準(zhǔn)。VoiceXML可以用于描述語(yǔ)音業(yè)務(wù)流程,并通過(guò)語(yǔ)音業(yè)務(wù)流程與終端完成一次交互式的對(duì)話。由于VoiceXML的開(kāi)放性、與底層設(shè)備的無(wú)關(guān)性、以及類(lèi)似web的開(kāi)發(fā)方式,使得VoiceXML迅速得到電信運(yùn)營(yíng)商以及語(yǔ)音業(yè)務(wù)開(kāi)發(fā)者的關(guān)注。但是,在實(shí)際應(yīng)用中,VoiceXML始終無(wú)法替代parlay接ロ、或者智能網(wǎng)業(yè)務(wù)生成環(huán)境(Service Creation Environment,簡(jiǎn)稱為SCE)成為智能網(wǎng)增值業(yè)務(wù)開(kāi)發(fā)方式的選擇。 VoiceXML的缺點(diǎn)在于其缺乏呼叫控制能力。VoiceXML—次僅能與ー個(gè)終端完成一次交互式的對(duì)話;但呼叫控制卻要求能同時(shí)控制多個(gè)終端,井能實(shí)時(shí)地、異步地處理來(lái)自網(wǎng)絡(luò)層的各種事件。W3C組織試圖提出呼叫控制可擴(kuò)展標(biāo)記語(yǔ)言(Call ControlExtensible Markup Language,簡(jiǎn)稱為 CCXML)規(guī)范來(lái)彌補(bǔ) VoiceXML 這一缺陷。圖I是現(xiàn)有技術(shù)中CCXML與VoiceXML協(xié)作實(shí)現(xiàn)呼叫控制的示意圖,如圖I所示,電信網(wǎng)絡(luò)層產(chǎn)生呼叫事件,該呼叫事件被CCXML解析器接收,CCXML解析器根據(jù)CCXML文檔調(diào)用VoiceXML解析器,VoiceXML解析器根據(jù)VoiceXML文檔與電信網(wǎng)絡(luò)層實(shí)現(xiàn)放音等對(duì)話交互。從圖I所示的示意圖可以看出,以上引入CCXML的方法,存在以下問(wèn)題首先,CCXML語(yǔ)法完全不同于VoiceXML,引入CCXML意味著業(yè)務(wù)開(kāi)發(fā)者學(xué)習(xí)代價(jià)的増加;其次,除了要保留已有的VoiceXML解析器,還需要新實(shí)現(xiàn)ー個(gè)CCXML解析器,而且兩者需要進(jìn)行某種復(fù)雜的整合,這大大増加了設(shè)備提供商的開(kāi)發(fā)難度。因此,目前急需ー種簡(jiǎn)單的方法支持VoiceXML實(shí)現(xiàn)呼叫控制能力。
發(fā)明內(nèi)容
本發(fā)明提供ー種VoiceXml呼叫控制實(shí)現(xiàn)方法及裝置,以解決現(xiàn)有技術(shù)中通過(guò)CCXML實(shí)現(xiàn)VoiceXML呼叫控制能力的開(kāi)發(fā)學(xué)習(xí)難度大的問(wèn)題。本發(fā)明提供ー種VoiceXml呼叫控制實(shí)現(xiàn)方法,包括VoiceXML解析器調(diào)用預(yù)先擴(kuò)展的事件分發(fā)標(biāo)簽,通過(guò)事件分發(fā)標(biāo)簽獲取新到來(lái)的一個(gè)或多個(gè)呼叫事件的參數(shù)信息,將參數(shù)信息傳遞給VoiceXML腳本模塊;VoiceXML腳本模塊根據(jù)參數(shù)信息調(diào)用異步子對(duì)話標(biāo)簽,通過(guò)異步子對(duì)話標(biāo)簽創(chuàng)建與一個(gè)或多個(gè)呼叫事件相對(duì)應(yīng)的ー個(gè)或多個(gè)子對(duì)話,在一個(gè)或多個(gè)子對(duì)話中與終端進(jìn)行交互,在每個(gè)子對(duì)話執(zhí)行完成后通知事件分發(fā)標(biāo)簽。本發(fā)明還提供了ー種VoiceXml呼叫控制實(shí)現(xiàn)裝置,包括VoiceXml解析器,用于調(diào)用預(yù)先擴(kuò)展的事件分發(fā)標(biāo)簽,通過(guò)事件分發(fā)標(biāo)簽獲取新到來(lái)的一個(gè)或多個(gè)呼叫事件的參數(shù)信息,將參數(shù)信息傳遞給VoiceXML腳本模塊;VoiceXml腳本模塊,用于根據(jù)參數(shù)信息調(diào)用異步子對(duì)話標(biāo)簽,通過(guò)異步子對(duì)話標(biāo)簽創(chuàng)建與一個(gè)或多個(gè)呼叫事件相對(duì)應(yīng)的ー個(gè)或多個(gè)子對(duì)話,在ー個(gè)或多個(gè)子對(duì)話中與終端進(jìn)行交互,在每個(gè)子對(duì)話執(zhí)行完成后通知事件分發(fā)標(biāo)簽。本發(fā)明有益效果如下本發(fā)明實(shí)施例通過(guò)擴(kuò)展VoiceXML標(biāo)簽,以ー種簡(jiǎn)潔、有效的方式為VoiceXML提供了呼叫控制的能力,解決了現(xiàn)有技術(shù)中通過(guò)CCXML實(shí)現(xiàn)VoiceXML呼叫控制能力的開(kāi)發(fā)學(xué)習(xí)難度大的問(wèn)題,能夠避免引入CCXML而造成設(shè)備提供商開(kāi)發(fā)壓力、VoiceXML開(kāi)發(fā)者學(xué)習(xí)壓力増大的狀況,能夠簡(jiǎn)單方便的實(shí)現(xiàn)VoiceXML呼叫控制能力,VoiceXML將具備充足的智能網(wǎng)業(yè)務(wù)開(kāi)發(fā)能力以代替目前的業(yè)務(wù)開(kāi)發(fā)方式。
圖I是現(xiàn)有技術(shù)中CCXML與VoiceXML協(xié)作實(shí)現(xiàn)呼叫控制的示意圖;圖2是本發(fā)明實(shí)施例的VoiceXml呼叫控制實(shí)現(xiàn)方法的流程圖;圖3是本法明實(shí)施例的擴(kuò)展VoiceXML支持呼叫控制的示意圖;圖4是本發(fā)明實(shí)施例的VoiceXml呼叫控制實(shí)現(xiàn)裝置的結(jié)構(gòu)示意圖。
具體實(shí)施例方式為了解決現(xiàn)有技術(shù)中通過(guò)CCXML實(shí)現(xiàn)VoiceXML呼叫控制能力的開(kāi)發(fā)學(xué)習(xí)難度大的問(wèn)題,本發(fā)明提供了ー種VoiceXml呼叫控制實(shí)現(xiàn)方法及裝置,本發(fā)明實(shí)施例通過(guò)擴(kuò)展VoiceXML標(biāo)簽來(lái)支持呼叫控制能力。以下結(jié)合附圖以及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不限定本發(fā)明。方法實(shí)施例根據(jù)本發(fā)明的實(shí)施例,提供了ー種VoiceXml呼叫控制實(shí)現(xiàn)方法,圖2是本發(fā)明實(shí)施例的VoiceXml呼叫控制實(shí)現(xiàn)方法的流程圖,如圖2所示,根據(jù)本發(fā)明實(shí)施例的VoiceXml呼叫控制實(shí)現(xiàn)方法包括如下處理步驟201,VoiceXML解析器調(diào)用預(yù)先擴(kuò)展的事件分發(fā)標(biāo)簽,通過(guò)事件分發(fā)標(biāo)簽獲取新到來(lái)的一個(gè)或多個(gè)呼叫事件的參數(shù)信息,將參數(shù)信息傳遞給VoiceXML腳本模塊;在步驟201中,具體地,在實(shí)際應(yīng)用中,在一個(gè)或多個(gè)新呼叫事件到來(lái)后,VoiceXml解析器首先調(diào)用預(yù)先擴(kuò)展的事件分發(fā)標(biāo)簽,并通過(guò)事件分發(fā)標(biāo)簽依次將一個(gè)或多個(gè)新呼叫事件的參數(shù)信息發(fā)送給VoiceXml腳本模塊,隨后,VoiceXml解析器還需要通過(guò)事件分發(fā)標(biāo)簽調(diào)用事件分發(fā)標(biāo)簽的相應(yīng)子標(biāo)簽;需要說(shuō)明的是,VoiceXML標(biāo)準(zhǔn)中提供了〈object〉標(biāo)簽,W3C的規(guī)范允許提供商通過(guò)此標(biāo)簽提供更高級(jí)的能力,VoiceXml解析器預(yù)先將VoiceXml標(biāo)準(zhǔn)中的〈object〉標(biāo)簽擴(kuò)展為事件分發(fā)標(biāo)簽、以及異步子對(duì)話標(biāo)簽,本發(fā)明實(shí)施例不會(huì)破壞目前的VoiceXML標(biāo)準(zhǔn)規(guī)范。呼叫控制能力的核心在于要求同一會(huì)話中能同時(shí)控制多個(gè)終端(本發(fā)明實(shí)施例后續(xù)稱之為Connection),能夠及時(shí)地、異步地處理各種呼叫事件,本發(fā)明實(shí)施例通過(guò)擴(kuò)展〈object〉標(biāo)簽實(shí)現(xiàn)這兩個(gè)要求。
首先,通過(guò)擴(kuò)展〈object〉標(biāo)簽,本發(fā)明實(shí)施例提供事件分發(fā)標(biāo)簽,事件分發(fā)標(biāo)簽主要用于接收會(huì)話中的各種事件,將事件名稱、攜帯的參數(shù)返回給VoiceXML腳本,由VoiceXML腳本決定如何處理到來(lái)的事件。通過(guò)擴(kuò)展〈object〉,本發(fā)明實(shí)施例提供異步子對(duì)話標(biāo)簽,相對(duì)于VoiceXML標(biāo)準(zhǔn)中提供的〈subdialog〉標(biāo)簽,該新擴(kuò)展的異步子對(duì)話標(biāo)簽不阻塞當(dāng)前對(duì)話的執(zhí)行,它在另外的線程上獨(dú)立運(yùn)行。需要說(shuō)明的是,步驟201中的VoiceXML腳本模塊主要用于對(duì)具體業(yè)務(wù)邏輯的實(shí)現(xiàn),為支持VoiceXml呼叫控制,VoiceXML腳本模塊只需在主對(duì)話部分做少許修改,在主對(duì)話中,VoiceXML腳本模塊循環(huán)調(diào)用事件分發(fā)標(biāo)簽并處理事件,使得主對(duì)話總處于等待接受事件的狀態(tài)。VoiceXML解析器是用于執(zhí)行VoiceXML腳本的容器,它通過(guò)擴(kuò)展〈object〉標(biāo)簽提供對(duì)事件分發(fā)標(biāo)簽、異步子對(duì)話標(biāo)簽的支持;VoiceXML解析器也可選擇性地通過(guò)擴(kuò)展〈object〉標(biāo)簽支持連接呼叫標(biāo)簽、異步接續(xù)標(biāo)簽和創(chuàng)建會(huì)場(chǎng)標(biāo)簽。步驟202,VoiceXML腳本模塊根據(jù)參數(shù)信息調(diào)用異步子對(duì)話標(biāo)簽,通過(guò)異步子對(duì) 話標(biāo)簽創(chuàng)建與一個(gè)或多個(gè)呼叫事件相對(duì)應(yīng)的ー個(gè)或多個(gè)子對(duì)話,在一個(gè)或多個(gè)子對(duì)話中與終端進(jìn)行交互,在每個(gè)子對(duì)話執(zhí)行完成后通知事件分發(fā)標(biāo)簽。在步驟202中,具體地,VoiceXml腳本模塊首先在VoiceXml解析器調(diào)用的事件分發(fā)標(biāo)簽的相應(yīng)子標(biāo)簽內(nèi),根據(jù)參數(shù)信息依次創(chuàng)建ー個(gè)或多個(gè)新呼叫事件的處理邏輯,隨后,根據(jù)處理邏輯調(diào)用ー個(gè)或多個(gè)預(yù)先擴(kuò)展的異步子對(duì)話標(biāo)簽,井根據(jù)參數(shù)信息通知異步子對(duì)話標(biāo)簽需要建立的一個(gè)或多個(gè)子對(duì)話的終端信息;VoiceXml腳本模塊通過(guò)ー個(gè)或多個(gè)異步子對(duì)話標(biāo)簽根據(jù)終端信息和預(yù)先設(shè)置的子腳本的地址與相應(yīng)終端建立ー個(gè)或多個(gè)子對(duì)話,其中,建立的一個(gè)或多個(gè)子對(duì)話分別被VoiceXml解析器分配有獨(dú)立的上下文環(huán)境,并在獨(dú)立的線程上運(yùn)行。圖3是本法明實(shí)施例的擴(kuò)展VoiceXML支持呼叫控制的示意圖,如圖3所示,在利用VoiceXML時(shí),可以循環(huán)地不斷調(diào)用事件分發(fā)標(biāo)簽新到來(lái)的呼叫事件被VoiceXML腳本處理后,再回到事件分發(fā)標(biāo)簽,該循環(huán)稱為主對(duì)話;而具體的對(duì)話處理,則交由異步子對(duì)話標(biāo)簽來(lái)完成,異步子對(duì)話標(biāo)簽觸發(fā)子對(duì)話,子對(duì)話只處理ー個(gè)Connection的交互;在需要同時(shí)處理多個(gè)Connection時(shí),貝U只需同時(shí)發(fā)起多個(gè)子對(duì)話即可(例如,Connection-1,Connection-2,. . . , Connection-N)。這樣,VoiceXML就能適應(yīng)呼叫控制所要求的并發(fā)處理多Connection且子對(duì)話不影響(或阻塞)主對(duì)話處理的要求。在步驟202中,具體地,VoiceXml腳本模塊在ー個(gè)或多個(gè)子對(duì)話中與相應(yīng)終端進(jìn)行交互,在一個(gè)或多個(gè)子對(duì)話執(zhí)行完成后,通過(guò)相應(yīng)的子對(duì)話以事件形式通知事件分發(fā)標(biāo)簽。優(yōu)選地,為支持將兩個(gè)Connection關(guān)聯(lián)起來(lái)以進(jìn)行雙向通話,還可以過(guò)擴(kuò)展〈object〉提供連接呼叫標(biāo)簽,可以輔助性地提供異步接續(xù)標(biāo)簽,也可以通過(guò)提供創(chuàng)建會(huì)場(chǎng)標(biāo)簽,提供會(huì)議的能力。也就是說(shuō),VoiceXml解析器還可以預(yù)先將VoiceXml標(biāo)準(zhǔn)中的對(duì)象object標(biāo)簽擴(kuò)展為異步接續(xù)標(biāo)簽、連接呼叫標(biāo)簽、和/或創(chuàng)建會(huì)場(chǎng)標(biāo)簽。具體地,在VoiceXml腳本模塊根據(jù)參數(shù)信息在相應(yīng)子標(biāo)簽內(nèi)依次創(chuàng)建ー個(gè)或多個(gè)新呼叫事件的處理邏輯之后I、根據(jù)需要,VoiceXml腳本模塊可以根據(jù)處理邏輯調(diào)用預(yù)先擴(kuò)展的異步接續(xù)標(biāo)簽,通過(guò)異步接續(xù)標(biāo)簽呼叫新的終端,并通過(guò)調(diào)用異步子對(duì)話標(biāo)簽對(duì)新的終端發(fā)起子對(duì)話。2、根據(jù)需要,VoiceXml腳本模塊可以根據(jù)處理邏輯調(diào)用預(yù)先擴(kuò)展的連接呼叫標(biāo)簽,通過(guò)連接呼叫標(biāo)簽建立新終端與其他終端之間的連接,并通過(guò)調(diào)用異步子對(duì)話標(biāo)簽發(fā)起新終端與其他終端的子對(duì)話。3、根據(jù)需要,VoiceXml腳本模塊可以根據(jù)處理邏輯調(diào)用預(yù)先擴(kuò)展的創(chuàng)建會(huì)場(chǎng)標(biāo)簽,通過(guò)創(chuàng)建會(huì)場(chǎng)標(biāo)簽建立多個(gè)終端之間的會(huì)議連接,并通過(guò)調(diào)用異步子對(duì)話標(biāo)簽發(fā)起多個(gè)終端之間的子對(duì)話。 以下對(duì)本發(fā)明實(shí)施例的上述技術(shù)方案進(jìn)行詳細(xì)說(shuō)明。步驟I, VoiceXml解析器擴(kuò)展〈object〉實(shí)現(xiàn)事件分發(fā)標(biāo)簽,該標(biāo)簽等待新的呼叫事件的到來(lái)后執(zhí)行其子標(biāo)簽〈filled〉,同時(shí)VoiceXml解析器將事件名稱和事件參數(shù)發(fā)送給VoiceXML腳本;
步驟2, VoiceXML腳本在事件分發(fā)標(biāo)簽的〈filled〉子標(biāo)簽內(nèi)編寫(xiě)事件的處理邏輯,攔截腳本所感興趣的呼叫事件,例如,振鈴、應(yīng)答、拆線等;事件處理中,腳本可能會(huì)調(diào)用異步子對(duì)話標(biāo)簽發(fā)起ー個(gè)或多個(gè)子對(duì)話;步驟3, VoiceXml解析器擴(kuò)展〈object〉實(shí)現(xiàn)異步子對(duì)話標(biāo)簽;該標(biāo)簽依據(jù)傳入的VoiceXML腳本的統(tǒng)一資源定位符(Universal Resource Locator,簡(jiǎn)稱為URL)和指定的Connection發(fā)起ー個(gè)新的對(duì)話,該對(duì)話稱為主對(duì)話的子對(duì)話;VoiceXml解析器將為子對(duì)話分配獨(dú)立的上下文環(huán)境,并在單獨(dú)的線程上執(zhí)行,以此實(shí)現(xiàn)主對(duì)話和子對(duì)話的并行執(zhí)行;步驟4, VoiceXML腳本在子對(duì)話中對(duì)指定的Connection進(jìn)行放音、收號(hào)、錄音等交互;子對(duì)話執(zhí)行完成后會(huì)以事件形式通知主對(duì)話,并可被事件分發(fā)標(biāo)簽所捕獲和處理;步驟5,VoiceXML腳本在主對(duì)話中處理事件時(shí),可調(diào)用異步接續(xù)標(biāo)簽呼叫新的Connection,呼通后,可以對(duì)新的Connection發(fā)起異步子對(duì)話,或者調(diào)用連接呼叫將新的Connection與其他Connection連接起來(lái)讓兩者進(jìn)行通話;步驟6, VoiceXML腳本可重復(fù)步驟2至步驟5中的處理,以此異步地、并發(fā)地與多個(gè)Connection同時(shí)進(jìn)行交互,從而具備比較完整的呼叫控制能力。本發(fā)明實(shí)施例通過(guò)擴(kuò)展VoiceXML標(biāo)簽,以ー種簡(jiǎn)潔、有效的方式為VoiceXML提供了呼叫控制的能力,解決了現(xiàn)有技術(shù)中通過(guò)CCXML實(shí)現(xiàn)VoiceXML呼叫控制能力的開(kāi)發(fā)學(xué)習(xí)難度大的問(wèn)題,能夠避免引入CCXML而造成設(shè)備提供商開(kāi)發(fā)壓力、VoiceXML開(kāi)發(fā)者學(xué)習(xí)壓力増大的狀況,能夠簡(jiǎn)單方便的實(shí)現(xiàn)VoiceXML呼叫控制能力,VoiceXML將具備充足的智能網(wǎng)業(yè)務(wù)開(kāi)發(fā)能力以代替目前的業(yè)務(wù)開(kāi)發(fā)方式。裝置實(shí)施例根據(jù)本發(fā)明的實(shí)施例,提供了ー種VoiceXml呼叫控制實(shí)現(xiàn)裝置,圖4是本發(fā)明實(shí)施例的VoiceXml呼叫控制實(shí)現(xiàn)裝置的結(jié)構(gòu)示意圖,如圖4所示,根據(jù)本發(fā)明實(shí)施例的VoiceXml呼叫控制實(shí)現(xiàn)裝置包括=VoiceXml解析器40、以及VoiceXml腳本模塊42,以下對(duì)本發(fā)明實(shí)施例的各個(gè)模塊進(jìn)行詳細(xì)的說(shuō)明。具體地,VoiceXml解析器40,用于調(diào)用預(yù)先擴(kuò)展的事件分發(fā)標(biāo)簽,通過(guò)事件分發(fā)標(biāo)簽獲取新到來(lái)的一個(gè)或多個(gè)呼叫事件的參數(shù)信息,將參數(shù)信息傳遞給VoiceXML腳本模塊42。具體地,在實(shí)際應(yīng)用中,在一個(gè)或多個(gè)新呼叫事件到來(lái)后,VoiceXml解析器40首先調(diào)用預(yù)先擴(kuò)展的事件分發(fā)標(biāo)簽,并通過(guò)事件分發(fā)標(biāo)簽依次將一個(gè)或多個(gè)新呼叫事件的參數(shù)信息發(fā)送給VoiceXml腳本模塊42,隨后,VoiceXml解析器40還需要通過(guò)事件分發(fā)標(biāo)簽調(diào)用事件分發(fā)標(biāo)簽的相應(yīng)子標(biāo)簽;VoiceXML解析器40主要是用于執(zhí)行VoiceXML腳本的容器,它通過(guò)擴(kuò)展〈object〉標(biāo)簽提供對(duì)事件分發(fā)標(biāo)簽、異步子對(duì)話標(biāo)簽的支持JoiceXML解析器40也可選擇性地通過(guò)擴(kuò)展〈object〉標(biāo)簽支持連接呼叫標(biāo)簽、異步接續(xù)標(biāo)簽和創(chuàng)建會(huì)場(chǎng)標(biāo)簽。需要說(shuō)明的是,VoiceXML標(biāo)準(zhǔn)中提供了〈object〉標(biāo)簽,W3C的規(guī)范允許提供商通過(guò)此標(biāo)簽提供更高級(jí)的能力,VoiceXml解析器40預(yù)先將VoiceXml標(biāo)準(zhǔn)中的〈object〉標(biāo)簽擴(kuò)展為事件分發(fā)標(biāo)簽、以及異步子對(duì)話標(biāo)簽,本發(fā)明實(shí)施例不會(huì)破壞目前的VoiceXML標(biāo)準(zhǔn)規(guī)范。呼叫控制能力的核心在于要求同一會(huì)話中能同時(shí)控制多個(gè)終端,能夠及時(shí)地、異步地處理各種呼叫事件,本發(fā)明實(shí)施例通過(guò)擴(kuò)展〈object〉標(biāo)簽實(shí)現(xiàn)這兩個(gè)要求。 首先,通過(guò)VoiceXml解析器40擴(kuò)展〈object〉標(biāo)簽,本發(fā)明實(shí)施例提供事件分發(fā)標(biāo)簽,事件分發(fā)標(biāo)簽主要用于接收會(huì)話中的各種事件,將事件名稱、攜帯的參數(shù)返回給VoiceXml腳本模塊42,由VoiceXml腳本模塊42決定如何處理到來(lái)的事件。通過(guò)VoiceXml解析器40擴(kuò)展〈object〉,本發(fā)明實(shí)施例提供異步子對(duì)話標(biāo)簽,相對(duì)于VoiceXML標(biāo)準(zhǔn)中提供的〈subdialog〉標(biāo)簽,該新擴(kuò)展的異步子對(duì)話標(biāo)簽不阻塞當(dāng)前對(duì)話的執(zhí)行,它在另外的線程上獨(dú)立運(yùn)行。VoiceXml腳本模塊42,用于根據(jù)參數(shù)信息調(diào)用異步子對(duì)話標(biāo)簽,通過(guò)異步子對(duì)話標(biāo)簽創(chuàng)建與一個(gè)或多個(gè)呼叫事件相對(duì)應(yīng)的ー個(gè)或多個(gè)子對(duì)話,在ー個(gè)或多個(gè)子對(duì)話中與終端進(jìn)行交互,在每個(gè)子對(duì)話執(zhí)行完成后通知事件分發(fā)標(biāo)簽。VoiceXml腳本模塊42首先在VoiceXml解析器調(diào)用的事件分發(fā)標(biāo)簽的相應(yīng)子標(biāo)簽內(nèi),根據(jù)參數(shù)信息依次創(chuàng)建ー個(gè)或多個(gè)新呼叫事件的處理邏輯,隨后,根據(jù)處理邏輯調(diào)用一個(gè)或多個(gè)預(yù)先擴(kuò)展的異步子對(duì)話標(biāo)簽,井根據(jù)參數(shù)信息通知異步子對(duì)話標(biāo)簽需要建立的一個(gè)或多個(gè)子對(duì)話的終端信息;VoiceXml腳本模塊通過(guò)ー個(gè)或多個(gè)異步子對(duì)話標(biāo)簽根據(jù)終端信息和預(yù)先設(shè)置的子腳本的地址與相應(yīng)終端建立ー個(gè)或多個(gè)子對(duì)話;在ー個(gè)或多個(gè)子對(duì)話中與相應(yīng)終端進(jìn)行交互,在一個(gè)或多個(gè)子對(duì)話執(zhí)行完成后,通過(guò)相應(yīng)的子對(duì)話以事件形式通知事件分發(fā)標(biāo)簽,其中,建立的一個(gè)或多個(gè)子對(duì)話分別被VoiceXml解析器40分配有獨(dú)立的上下文環(huán)境,并在獨(dú)立的線程上運(yùn)行。需要說(shuō)明的是,VoiceXml腳本模塊42主要用于對(duì)具體業(yè)務(wù)邏輯的實(shí)現(xiàn),為支持VoiceXml呼叫控制,VoiceXml腳本模塊42只需在主對(duì)話部分做少許修改,在主對(duì)話中,VoiceXml腳本模塊42循環(huán)調(diào)用事件分發(fā)標(biāo)簽并處理事件,使得主對(duì)話總處于等待接受事件的狀態(tài)。如圖3所示,在利用VoiceXML時(shí),可以循環(huán)地不斷調(diào)用事件分發(fā)標(biāo)簽新到來(lái)的呼叫事件被VoiceXml腳本模塊42處理后,再回到事件分發(fā)標(biāo)簽,該循環(huán)稱為主對(duì)話;而具體的對(duì)話處理,則交由異步子對(duì)話標(biāo)簽來(lái)完成,異步子對(duì)話標(biāo)簽觸發(fā)子對(duì)話,子對(duì)話只處理ー個(gè)Connection的交互;在需要同時(shí)處理多個(gè)Connection時(shí),則只需同時(shí)發(fā)起多個(gè)子對(duì)話即可(例如,Connection-1, Connection-2, , Connection-N)。這樣,VoiceXML 就能適應(yīng)呼叫控制所要求的并發(fā)處理多Connection且子對(duì)話不影響(或阻塞)主對(duì)話處理的要求。優(yōu)選地,為支持將兩個(gè)Connection關(guān)聯(lián)起來(lái)以進(jìn)行雙向通話,還可以過(guò)擴(kuò)展〈object〉提供連接呼叫標(biāo)簽,可以輔助性地提供異步接續(xù)標(biāo)簽,也可以通過(guò)提供創(chuàng)建會(huì)場(chǎng)標(biāo)簽,提供會(huì)議的能力。也就是說(shuō),VoiceXml解析器40還可以預(yù)先將VoiceXml標(biāo)準(zhǔn)中的對(duì)象object標(biāo)簽擴(kuò)展為異步接續(xù)標(biāo)簽、連接呼叫標(biāo)簽、和/或創(chuàng)建會(huì)場(chǎng)標(biāo)簽。具體地,在VoiceXml腳本模塊42根據(jù)參數(shù)信息在相應(yīng)子標(biāo)簽內(nèi)依次創(chuàng)建ー個(gè)或多個(gè)新呼叫事件的處理邏輯之后I、根據(jù)需要,VoiceXml腳本模塊42可以根據(jù)處理邏輯調(diào)用預(yù)先擴(kuò)展的異步接續(xù)標(biāo)簽,通過(guò)異步接續(xù)標(biāo)簽呼叫新的終端,并通過(guò)調(diào)用異步子對(duì)話標(biāo)簽對(duì)新的終端發(fā)起子對(duì)話。2、根據(jù)需要,VoiceXml腳本模塊42可以根據(jù)處理邏輯調(diào)用預(yù)先擴(kuò)展的連接呼叫標(biāo)簽,通過(guò)連接呼叫標(biāo)簽建立新終端與其他終端之間的連接,并通過(guò)調(diào)用異步子對(duì)話標(biāo)簽 發(fā)起新終端與其他終端的子對(duì)話。3、根據(jù)需要,VoiceXml腳本模塊42可以根據(jù)處理邏輯調(diào)用預(yù)先擴(kuò)展的創(chuàng)建會(huì)場(chǎng)標(biāo)簽,通過(guò)創(chuàng)建會(huì)場(chǎng)標(biāo)簽建立多個(gè)終端之間的會(huì)議連接,并通過(guò)調(diào)用異步子對(duì)話標(biāo)簽發(fā)起多個(gè)終端之間的子對(duì)話。本發(fā)明實(shí)施例通過(guò)擴(kuò)展VoiceXML標(biāo)簽,以ー種簡(jiǎn)潔、有效的方式為VoiceXML提供了呼叫控制的能力,解決了現(xiàn)有技術(shù)中通過(guò)CCXML實(shí)現(xiàn)VoiceXML呼叫控制能力的開(kāi)發(fā)學(xué)習(xí)難度大的問(wèn)題,能夠避免引入CCXML而造成設(shè)備提供商開(kāi)發(fā)壓力、VoiceXML開(kāi)發(fā)者學(xué)習(xí)壓力増大的狀況,能夠簡(jiǎn)單方便的實(shí)現(xiàn)VoiceXML呼叫控制能力,VoiceXML將具備充足的智能網(wǎng)業(yè)務(wù)開(kāi)發(fā)能力以代替目前的業(yè)務(wù)開(kāi)發(fā)方式。盡管為示例目的,已經(jīng)公開(kāi)了本發(fā)明的優(yōu)選實(shí)施例,本領(lǐng)域的技術(shù)人員將意識(shí)到各種改進(jìn)、増加和取代也是可能的,因此,本發(fā)明的范圍應(yīng)當(dāng)不限于上述實(shí)施例。
權(quán)利要求
1.一種語(yǔ)音可擴(kuò)展標(biāo)記語(yǔ)言VoiceXml呼叫控制實(shí)現(xiàn)方法,其特征在于,包括 VoiceXML解析器調(diào)用預(yù)先擴(kuò)展的事件分發(fā)標(biāo)簽,通過(guò)所述事件分發(fā)標(biāo)簽獲取新到來(lái)的一個(gè)或多個(gè)呼叫事件的參數(shù)信息,將所述參數(shù)信息傳遞給VoiceXML腳本模塊; 所述VoiceXML腳本模塊根據(jù)所述參數(shù)信息調(diào)用異步子對(duì)話標(biāo)簽,通過(guò)所述異步子對(duì)話標(biāo)簽創(chuàng)建與所述ー個(gè)或多個(gè)呼叫事件相對(duì)應(yīng)的ー個(gè)或多個(gè)子對(duì)話,在所述ー個(gè)或多個(gè)子對(duì)話中與終端進(jìn)行交互,在每個(gè)子對(duì)話執(zhí)行完成后通知所述事件分發(fā)標(biāo)簽。
2.如權(quán)利要求I所述的方法,其特征在于,通過(guò)所述異步子對(duì)話標(biāo)簽創(chuàng)建與所述ー個(gè)或多個(gè)呼叫事件相對(duì)應(yīng)的ー個(gè)或多個(gè)子對(duì)話具體包括 所述VoiceXml腳本模塊在所述VoiceXml解析器調(diào)用的所述事件分發(fā)標(biāo)簽的相應(yīng)子標(biāo)簽內(nèi),根據(jù)所述參數(shù)信息依次創(chuàng)建所述ー個(gè)或多個(gè)新呼叫事件的處理邏輯,根據(jù)所述處理邏輯調(diào)用ー個(gè)或多個(gè)預(yù)先擴(kuò)展的異步子對(duì)話標(biāo)簽,井根據(jù)所述參數(shù)信息通知所述異步子對(duì)話標(biāo)簽需要建立的一個(gè)或多個(gè)子對(duì)話的終端信息; 所述VoiceXml腳本模塊通過(guò)所述一個(gè)或多個(gè)異步子對(duì)話標(biāo)簽根據(jù)所述終端信息和預(yù)先設(shè)置的子腳本的地址與相應(yīng)終端建立所述ー個(gè)或多個(gè)子對(duì)話。
3.如權(quán)利要求I所述的方法,其特征在于,所述方法還包括 所述VoiceXml解析器預(yù)先將VoiceXml標(biāo)準(zhǔn)中的對(duì)象object標(biāo)簽擴(kuò)展為所述事件分發(fā)標(biāo)簽、以及所述異步子對(duì)話標(biāo)簽。
4.如權(quán)利要求2所述的方法,其特征在于,所述方法還包括 所述VoiceXml解析器預(yù)先將VoiceXml標(biāo)準(zhǔn)中的對(duì)象object標(biāo)簽擴(kuò)展為異步接續(xù)標(biāo)簽、和連接呼叫標(biāo)簽; 所述VoiceXml腳本模塊根據(jù)所述參數(shù)信息在所述相應(yīng)子標(biāo)簽內(nèi)依次創(chuàng)建所述ー個(gè)或多個(gè)新呼叫事件的處理邏輯之后,所述方法還包括 所述VoiceXml腳本模塊根據(jù)所述處理邏輯調(diào)用預(yù)先擴(kuò)展的異步接續(xù)標(biāo)簽,通過(guò)所述異步接續(xù)標(biāo)簽呼叫新終端; 所述VoiceXml腳本模塊通過(guò)調(diào)用所述異步子對(duì)話標(biāo)簽對(duì)所述新終端發(fā)起子對(duì)話;所述VoiceXml腳本模塊根據(jù)所述處理邏輯調(diào)用預(yù)先擴(kuò)展的連接呼叫標(biāo)簽,通過(guò)所述連接呼叫標(biāo)簽建立所述新終端與其他終端之間的連接; 所述VoiceXml腳本模塊通過(guò)調(diào)用所述異步子對(duì)話標(biāo)簽發(fā)起所述新終端與所述其他終端的子對(duì)話。
5.如權(quán)利要求2所述的方法,其特征在于,所述方法還包括 所述VoiceXml解析器預(yù)先將VoiceXml標(biāo)準(zhǔn)中的對(duì)象object標(biāo)簽擴(kuò)展為創(chuàng)建會(huì)場(chǎng)標(biāo)簽; 所述VoiceXml腳本模塊根據(jù)所述參數(shù)信息在所述相應(yīng)子標(biāo)簽內(nèi)依次創(chuàng)建所述ー個(gè)或多個(gè)新呼叫事件的處理邏輯之后,所述方法還包括 所述VoiceXml腳本模塊根據(jù)所述處理邏輯調(diào)用預(yù)先擴(kuò)展的創(chuàng)建會(huì)場(chǎng)標(biāo)簽,通過(guò)所述創(chuàng)建會(huì)場(chǎng)標(biāo)簽建立多個(gè)終端之間的會(huì)議連接; 所述VoiceXml腳本模塊通過(guò)調(diào)用所述異步子對(duì)話標(biāo)簽發(fā)起所述多個(gè)終端之間的子對(duì)話。
6.一種語(yǔ)音可擴(kuò)展標(biāo)記語(yǔ)言VoiceXml呼叫控制實(shí)現(xiàn)裝置,其特征在于,包括VoiceXml解析器,用于調(diào)用預(yù)先擴(kuò)展的事件分發(fā)標(biāo)簽,通過(guò)所述事件分發(fā)標(biāo)簽獲取新到來(lái)的一個(gè)或多個(gè)呼叫事件的參數(shù)信息,將所述參數(shù)信息傳遞給VoiceXML腳本模塊; 所述VoiceXml腳本模塊,用于根據(jù)所述參數(shù)信息調(diào)用異步子對(duì)話標(biāo)簽,通過(guò)所述異步子對(duì)話標(biāo)簽創(chuàng)建與所述ー個(gè)或多個(gè)呼叫事件相對(duì)應(yīng)的ー個(gè)或多個(gè)子對(duì)話,在所述ー個(gè)或多個(gè)子對(duì)話中與終端進(jìn)行交互,在每個(gè)子對(duì)話執(zhí)行完成后通知所述事件分發(fā)標(biāo)簽。
7.如權(quán)利要求6所述的裝置,其特征在干, 所述VoiceXml腳本模塊具體用于在所述VoiceXml解析器調(diào)用的所述事件分發(fā)標(biāo)簽的相應(yīng)子標(biāo)簽內(nèi),根據(jù)所述參數(shù)信息依次創(chuàng)建所述ー個(gè)或多個(gè)新呼叫事件的處理邏輯,根據(jù)所述處理邏輯調(diào)用ー個(gè)或多個(gè)預(yù)先擴(kuò)展的異步子對(duì)話標(biāo)簽,井根據(jù)所述參數(shù)信息通知所述異步子對(duì)話標(biāo)簽需要建立的一個(gè)或多個(gè)子對(duì)話的終端信息;通過(guò)所述一個(gè)或多個(gè)異步子對(duì)話標(biāo)簽根據(jù)所述終端信息和預(yù)先設(shè)置的子腳本的地址與相應(yīng)終端建立所述ー個(gè)或多個(gè)子對(duì)話。
8.如權(quán)利要求6所述的裝置,其特征在于,所述VoiceXml解析器還用于 預(yù)先將VoiceXml標(biāo)準(zhǔn)中的對(duì)象object標(biāo)簽擴(kuò)展為所述事件分發(fā)標(biāo)簽、以及所述異步子對(duì)話標(biāo)簽。
9.如權(quán)利要求6所述的裝置,其特征在干, 所述VoiceXml解析器還用于所述VoiceXml解析器預(yù)先將VoiceXml標(biāo)準(zhǔn)中的對(duì)象object標(biāo)簽擴(kuò)展為異步接續(xù)標(biāo)簽、和/或連接呼叫標(biāo)簽; 所述VoiceXml腳本模塊還用于 根據(jù)所述處理邏輯調(diào)用預(yù)先擴(kuò)展的異步接續(xù)標(biāo)簽,通過(guò)所述異步接續(xù)標(biāo)簽呼叫新終端;通過(guò)調(diào)用所述異步子對(duì)話標(biāo)簽對(duì)所述新終端發(fā)起子對(duì)話; 根據(jù)所述處理邏輯調(diào)用預(yù)先擴(kuò)展的連接呼叫標(biāo)簽,通過(guò)所述連接呼叫標(biāo)簽建立所述新終端與其他終端之間的連接;通過(guò)調(diào)用所述異步子對(duì)話標(biāo)簽發(fā)起所述新終端與所述其他終端的子對(duì)話。
10.如權(quán)利要求6所述的裝置,其特征在干, 所述VoiceXml解析器還用于預(yù)先將VoiceXml標(biāo)準(zhǔn)中的對(duì)象object標(biāo)簽擴(kuò)展為創(chuàng)建會(huì)場(chǎng)標(biāo)簽; 所述VoiceXml腳本模塊還用于 根據(jù)所述處理邏輯調(diào)用預(yù)先擴(kuò)展的創(chuàng)建會(huì)場(chǎng)標(biāo)簽,通過(guò)所述創(chuàng)建會(huì)場(chǎng)標(biāo)簽建立多個(gè)終端之間的會(huì)議連接;通過(guò)調(diào)用所述異步子對(duì)話標(biāo)簽發(fā)起所述多個(gè)終端之間的子對(duì)話。
全文摘要
本發(fā)明公開(kāi)了一種VoiceXml呼叫控制實(shí)現(xiàn)方法及裝置。該方法包括VoiceXML解析器調(diào)用預(yù)先擴(kuò)展的事件分發(fā)標(biāo)簽,通過(guò)事件分發(fā)標(biāo)簽獲取新到來(lái)的一個(gè)或多個(gè)呼叫事件的參數(shù)信息,將參數(shù)信息傳遞給VoiceXML腳本模塊;VoiceXML腳本模塊根據(jù)參數(shù)信息調(diào)用異步子對(duì)話標(biāo)簽,通過(guò)異步子對(duì)話標(biāo)簽創(chuàng)建與一個(gè)或多個(gè)呼叫事件相對(duì)應(yīng)的一個(gè)或多個(gè)子對(duì)話,在一個(gè)或多個(gè)子對(duì)話中與終端進(jìn)行交互,在每個(gè)子對(duì)話執(zhí)行完成后通知事件分發(fā)標(biāo)簽。通過(guò)上述處理,能夠簡(jiǎn)單方便的實(shí)現(xiàn)VoiceXML呼叫控制能力,VoiceXML將具備充足的智能網(wǎng)業(yè)務(wù)開(kāi)發(fā)能力以代替目前的業(yè)務(wù)開(kāi)發(fā)方式。
文檔編號(hào)H04M3/493GK102685337SQ20111006385
公開(kāi)日2012年9月19日 申請(qǐng)日期2011年3月17日 優(yōu)先權(quán)日2011年3月17日
發(fā)明者喬旭峰 申請(qǐng)人:中興通訊股份有限公司