一種語音能力腳本調(diào)試方法及裝置制造方法
【專利摘要】本發(fā)明實施例公開了一種語音能力腳本調(diào)試方法及裝置,用于實現(xiàn)對腳本的調(diào)試。本發(fā)明實施例方法包括:獲取呼入信息,當所述呼入信息符合預設的調(diào)試條件時,獲取調(diào)試腳本,在所述腳本中插入斷點標識,根據(jù)所述腳本的第一變量值執(zhí)行所述腳本,當所執(zhí)行的腳本包含所述斷點標識時,將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺。這樣,通過在腳本中插入斷點標識,每執(zhí)行一條腳本,當所執(zhí)行的腳本包含斷點標識時,則將所執(zhí)行的腳本得到的第一結(jié)果信息以及所執(zhí)行的腳本中的第一變量值發(fā)送給調(diào)試平臺,便實現(xiàn)了對腳本的單步調(diào)試。
【專利說明】一種語音能力腳本調(diào)試方法及裝置
【技術(shù)領域】
[0001]本發(fā)明涉及通信領域,尤其涉及一種語音能力腳本調(diào)試方法及裝置。
【背景技術(shù)】
[0002]由于互聯(lián)網(wǎng)、話音業(yè)務等具有電信話音能力的平臺的強烈需求,能力開放平臺在話音能力上不僅提供了號碼、呼叫控制、IVR(interactive voice response,交互式語音應答)、座席、會議、FAX (facsimile,傳真)、VOIP (Voice Over Internet Protocol,將模擬信號數(shù)字化,以數(shù)據(jù)封包的形式在IP網(wǎng)絡上做實時傳遞)資源能力API (Applicat1nProgramming Interface,應用程序編程接口)的開放,還提供了腳本能力的開放,開發(fā)者利用腳本能力的開放,可以定制自己的業(yè)務邏輯,開發(fā)自己的腳本應用。
[0003]開發(fā)者開發(fā)腳本應用,部署到云平臺,綁定接入號碼,終端用戶對接入號碼發(fā)起呼口4,觸發(fā)腳本應用,獲取腳本應用的URL (uniform resource locator,通用資源定位器),執(zhí)行腳本,在腳本中調(diào)用業(yè)務的自己的資源。以物流公司提供話音在線查詢包裹為例,物流公司的話音在線查詢包裹腳本應用中,設置查詢接入號碼,部署腳本應用和對接入號碼進行關(guān)聯(lián)綁定。用戶撥打查詢接入號碼,電話撥通后觸發(fā)話音在線查詢包裹腳本應用的執(zhí)行,提示用戶輸入包裹單號,腳本根據(jù)輸入單號,在查詢物流公司的內(nèi)部信息系統(tǒng)中獲得包裹相關(guān)信息,然后播放給用戶。
[0004]在現(xiàn)有技術(shù)中,在呼出電話和接入電話時,需要話音使能部件(CTI/UAP,ComputerTelephony Integrat1n/Unified Applicat1n Platform)根據(jù)話路的接通情況進行觸發(fā)話音能力腳本的執(zhí)行,能力開放平臺在通話建立后根據(jù)關(guān)聯(lián)的腳本應用觸發(fā)腳本執(zhí)行,由于話路控制底層信令實時性要求,腳本引擎和呼入接入使能部件硬件緊密相關(guān),腳本執(zhí)行引擎無法支持調(diào)試,因而腳本無法實時調(diào)測。
【發(fā)明內(nèi)容】
[0005]本發(fā)明實施例提供了一種語音能力腳本調(diào)試方法及裝置,可實現(xiàn)用對腳本進行調(diào)試。
[0006]本發(fā)明第一方面提供一種語音能力腳本調(diào)試方法,包括:
[0007]獲取呼入信息;
[0008]當所述呼入信息符合預設的調(diào)試條件時,獲取調(diào)試腳本;
[0009]在所述腳本中插入斷點標識;
[0010]根據(jù)所述腳本的第一變量值執(zhí)行所述腳本;
[0011]當所執(zhí)行的腳本包含所述斷點標識時,將所執(zhí)行的腳本的第一變量值以
[0012]及第一結(jié)果信息發(fā)送給調(diào)試平臺。
[0013]結(jié)合本發(fā)明實施例第一方面,本發(fā)明實施例第一方面的第一種實現(xiàn)方式中,在所述獲取呼入信息之前,所述方法還包括:設置調(diào)試條件。
[0014]結(jié)合本發(fā)明實施例第一方面的第一種實現(xiàn)方式,本發(fā)明實施例第一方面的第二種實現(xiàn)方式中,在所述設置調(diào)試條件之前,所述方法還包括:從調(diào)試平臺獲取調(diào)試條件。
[0015]結(jié)合本發(fā)明實施例第一方面、第一方面的第一種實現(xiàn)方式以及第一方面的第二種實現(xiàn)方式,本發(fā)明實施例第一方面的第三種實現(xiàn)方式中,所述在當所執(zhí)行的腳本包含所述斷點標識時,將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺之前,所述方法還包括:
[0016]判斷所執(zhí)行的腳本是否包含所述斷點標識。
[0017]結(jié)合本發(fā)明實施例第一方面、第一方面的第一種實現(xiàn)方式以及第一方面的第二種實現(xiàn)方式,本發(fā)明實施例第一方面的第四種實現(xiàn)方式中,所述方法還包括:
[0018]判斷所執(zhí)行的腳本是否包含所述斷點標識,若否,則繼續(xù)執(zhí)行所述腳本。
[0019]結(jié)合本發(fā)明實施例第一方面、第一方面的第一種實現(xiàn)方式以及第一方面的第二種實現(xiàn)方式,本發(fā)明實施例第一方面的第五種實現(xiàn)方式中,在將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺之前,所述方法還包括:
[0020]掛起所述腳本的執(zhí)行;
[0021]保存執(zhí)行所述腳本得到的第一結(jié)果信息。
[0022]結(jié)合本發(fā)明實施例第一方面、第一方面的第一種實現(xiàn)方式以及第一方面的第二種實現(xiàn)方式,本發(fā)明實施例第一方面的第六種實現(xiàn)方式中,在將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺之后,所述方法還包括:
[0023]獲取所述調(diào)試平臺更改后的第二變量值,根據(jù)所述第二變量值執(zhí)行所述腳本。
[0024]結(jié)合本發(fā)明實施例第一方面的第六種實現(xiàn)方式,本發(fā)明實施例第一方面的第七種實現(xiàn)方式中,在根據(jù)所述第二變量值執(zhí)行所述腳本之后,所述方法還包括:
[0025]將根據(jù)所述第二變量值執(zhí)行腳本得到的第二結(jié)果信息發(fā)送給調(diào)試平臺。
[0026]結(jié)合本發(fā)明實施例第一方面的第七種實現(xiàn)方式,本發(fā)明實施例第一方面的第八種實現(xiàn)方式中,在根據(jù)所述第二變量值執(zhí)行所述腳本之前,所述方法還包括:
[0027]從所述調(diào)試平臺獲取調(diào)試指令。
[0028]結(jié)合本發(fā)明實施例第一方面、第一方面的第一種實現(xiàn)方式以及第一方面的第二種實現(xiàn)方式,本發(fā)明實施例第一方面的第九種實現(xiàn)方式中,所述獲取腳本包括:從腳本服務器中獲取腳本。
[0029]結(jié)合本發(fā)明實施例第一方面、第一方面的第一種實現(xiàn)方式以及第一方面的第二種實現(xiàn)方式,本發(fā)明實施例第一方面的第十種實現(xiàn)方式中,所述在所述腳本中插入斷點標識包括:
[0030]在所述腳本的每一行末插入斷點標識。
[0031]本發(fā)明第二方面提供一種語音能力腳本調(diào)試裝置,包括:
[0032]第一獲取單元,用于獲取呼入信息;
[0033]第二獲取單元,用于當所述呼入信息符合預設的調(diào)試條件時,獲取調(diào)試腳本;
[0034]插入單元,用于在所述腳本中插入斷點標識;
[0035]第一執(zhí)行單元,用于根據(jù)所述腳本的第一變量值執(zhí)行所述腳本;
[0036]第一發(fā)送單元,用于當所執(zhí)行的腳本包含所述斷點標識時,將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺。
[0037]結(jié)合本發(fā)明實施例第二方面,本發(fā)明實施例第二方面的第一種實現(xiàn)方式中,所述裝置還包括:
[0038]設置單元,用于所述獲取呼入信息之前,設置調(diào)試條件。
[0039]結(jié)合本發(fā)明實施例第二方面的第一種實現(xiàn)方式,本發(fā)明實施例第二方面的第二種實現(xiàn)方式中,所述裝置還包括:
[0040]第三獲取單元,用于在所述設置調(diào)試條件之前,從調(diào)試平臺獲取調(diào)試條件。
[0041]結(jié)合本發(fā)明實施例第二方面、第二方面的第一種實現(xiàn)方式以及第二方面的第二種實現(xiàn)方式,本發(fā)明實施例第二方面的第三種實現(xiàn)方式中,所述裝置還包括:
[0042]判斷單元,用于在當所執(zhí)行的腳本包含所述斷點標識時,將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺之前,判斷所執(zhí)行的腳本是否包含所述斷點標識。
[0043]結(jié)合本發(fā)明實施例第二方面的第三種實現(xiàn)方式,本發(fā)明實施例第二方面的第四種實現(xiàn)方式中,所述裝置還包括:
[0044]第二執(zhí)行單元,用于當所執(zhí)行的腳本包含所述斷點標識時,繼續(xù)執(zhí)行所述腳本。
[0045]結(jié)合本發(fā)明實施例第二方面、第二方面的第一種實現(xiàn)方式以及第二方面的第二種實現(xiàn)方式,本發(fā)明實施例第二方面的第五種實現(xiàn)方式中,所述裝置還包括:
[0046]掛起單元,用于在將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺之前,掛起所述腳本的執(zhí)行;
[0047]保存單元,用于在將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺之前,保存執(zhí)行所述腳本得到的第一結(jié)果信息。
[0048]結(jié)合本發(fā)明實施例第二方面、第二方面的第一種實現(xiàn)方式以及第二方面的第二種實現(xiàn)方式,本發(fā)明實施例第二方面的第六種實現(xiàn)方式中,所述裝置還包括:
[0049]第四獲取單元,用于在將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺之后,獲取所述調(diào)試平臺更改后的第二變量值;
[0050]第三執(zhí)行單元,用于根據(jù)所述第二變量值執(zhí)行所述腳本。
[0051]結(jié)合本發(fā)明實施例第二方面的第六種實現(xiàn)方式,本發(fā)明實施例第二方面的第七種實現(xiàn)方式中,所述裝置還包括:
[0052]第二發(fā)送單元,用于在根據(jù)所述第二變量值執(zhí)行所述腳本之后,將根據(jù)所述第二變量值執(zhí)行腳本得到的第二結(jié)果信息發(fā)送給調(diào)試平臺。
[0053]結(jié)合本發(fā)明實施例第二方面的第七種實現(xiàn)方式,本發(fā)明實施例第二方面的第八種實現(xiàn)方式中,所述裝置還包括:
[0054]第五獲取單元,用于在根據(jù)所述第二變量值執(zhí)行所述腳本之前,從所述調(diào)試平臺獲取調(diào)試指令。
[0055]結(jié)合本發(fā)明實施例第二方面、第二方面的第一種實現(xiàn)方式以及第二方面的第二種實現(xiàn)方式,本發(fā)明實施例第二方面的第九種實現(xiàn)方式中,所述第二獲取單元包括:
[0056]第二獲取模塊,用于從腳本服務器中獲取腳本。
[0057]結(jié)合本發(fā)明實施例第二方面、第二方面的第一種實現(xiàn)方式以及第二方面的第二種實現(xiàn)方式,本發(fā)明實施例第二方面的第十種實現(xiàn)方式中,所述插入單元包括:
[0058]插入模塊,用于在所述腳本的每一行末插入斷點標識。
[0059]本發(fā)明實施例提供一種語音能力腳本調(diào)試方法,包括:獲取呼入信息,當所述呼入信息符合預設的調(diào)試條件時,獲取調(diào)試腳本,在所述腳本中插入斷點標識,根據(jù)所述腳本的第一變量值執(zhí)行所述腳本,當所執(zhí)行的腳本包含所述斷點標識時,將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺。這樣,通過在腳本中插入斷點標識,每執(zhí)行一條腳本,當所執(zhí)行的腳本包含斷點標識時,則將所執(zhí)行的腳本得到的第一結(jié)果信息以及所執(zhí)行的腳本中的第一變量值發(fā)送給調(diào)試平臺,便實現(xiàn)了對腳本的單步調(diào)試。
【專利附圖】
【附圖說明】
[0060]圖1為本發(fā)明實施例中語音能力腳本調(diào)試實體裝置的一個實施例示意圖;
[0061]圖2為本發(fā)明實施例中語音能力腳本調(diào)試方法的一個實施例示意圖;
[0062]圖3為本發(fā)明實施例中語音能力腳本調(diào)試方法的另一實施例示意圖;
[0063]圖4為本發(fā)明實施例中語音能力腳本調(diào)試方法的另一實施例示意圖;
[0064]圖5為本發(fā)明實施例中語音能力腳本調(diào)試裝置的一個實施例示意圖;
[0065]圖6為本發(fā)明實施例中語音能力腳本調(diào)試裝置的另一實施例示意圖;
[0066]圖7為本發(fā)明實施例中語音能力腳本調(diào)試裝置的另一實施例示意圖。
【具體實施方式】
[0067]本發(fā)明實施例提供了一種語音能力腳本調(diào)試方法及裝置,用于實現(xiàn)對腳本的調(diào)試。
[0068]下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0069]下面參照圖1所示,以調(diào)試條件為呼入999號碼、語音能力腳本調(diào)試裝置為調(diào)試引擎為例,對本發(fā)明實體裝置的一個實施例進行具體描述,本發(fā)明實施例中語音能力腳本調(diào)試裝置的一個實施例包括:
[0070]開發(fā)者在調(diào)試平臺中設定調(diào)試條件為呼入99555號碼,將調(diào)試條件發(fā)送至調(diào)試引擎;調(diào)試引擎將呼入99555號碼設置為調(diào)試引擎的調(diào)試條件;當有用戶呼入時,則獲取用戶的呼入號,若呼入號為99555,則符合調(diào)試條件,調(diào)試引擎則從腳本服務器中獲取開發(fā)者所研發(fā)的腳本(假設調(diào)試的腳本為循環(huán)播放聲音文件);調(diào)試引擎在所獲取的腳本中插入斷點標識Trap,并開始執(zhí)行腳本第一行(播放提示音),得到第一結(jié)果信息(播放結(jié)果),腳本中包括第一變量值(保存播放聲音的路徑/aud1/voicel.wav),判斷所執(zhí)行的一行或一段腳本中,是否包含有斷點標識Trap,若有,則掛起腳本的執(zhí)行,保存所執(zhí)行的腳本的第一結(jié)果信息以及第一變量值,并發(fā)送給調(diào)試平臺,調(diào)試平臺展示聲音播放結(jié)果是成功還是失敗,若無,則繼續(xù)執(zhí)行腳本,直到腳本執(zhí)行完畢;調(diào)試平臺在接收到調(diào)試引擎發(fā)送的第一變量值以及第一結(jié)果信息之后,開發(fā)者可以下發(fā)修改變量值命令,更改第一變量值得到第二變量值,即將聲音文件的路徑修改為/aud1/voice2.wav,并發(fā)送給調(diào)試引擎,調(diào)試引擎接收到第二變量值以及調(diào)試平臺所發(fā)送的調(diào)試指令,根據(jù)第二變量值對第一次執(zhí)行的腳本進行第二次執(zhí)行,得到第二結(jié)果信息,再將第二結(jié)果信息發(fā)送給調(diào)試平臺;這樣,每逢一個斷點標識,便進行這樣一次操作,直到腳本循環(huán)執(zhí)行完畢。
[0071]本發(fā)明實施例中,通過在腳本中插入斷點標識,每執(zhí)行一條腳本,便判斷腳本中是否包含腳本標識,若包含,則將所執(zhí)行的腳本得到的第一結(jié)果信息以及所執(zhí)行的腳本中的第一變量值發(fā)送給調(diào)試平臺,便實現(xiàn)了對腳本的單步調(diào)試。調(diào)試平臺接收到第一變量值后,將第一變量值更改得到第二變量值,將第二變量值發(fā)送給調(diào)試引擎,調(diào)試引擎再跟句第二變量值執(zhí)行腳本得到第二結(jié)果信息,并將第二結(jié)果信息發(fā)送給調(diào)試平臺,這樣,便實現(xiàn)了調(diào)試平臺對調(diào)試引擎的雙向調(diào)試,開發(fā)者也可以通過判斷第一結(jié)果信息與第二結(jié)果信息查出腳本中存在Bug。
[0072]參照圖2所示,本發(fā)明實施例中語音能力腳本調(diào)試方法的一個實施例包括:
[0073]101、獲取呼入信息;
[0074]只有當用戶在進行呼入事件時,才能觸發(fā)語音能力腳本調(diào)試引擎,調(diào)試引擎需要判斷此次呼入是否進入調(diào)試模式,則需先獲取用戶呼入信息,呼入信息包括用戶呼入號碼。
[0075]102、當所述呼入信息符合預設的調(diào)試條件時,獲取調(diào)試腳本;
[0076]因為在腳本執(zhí)行引擎中包括多種引擎,一般為商業(yè)引擎,商業(yè)引擎在被觸發(fā)后則直接獲取腳本,然后執(zhí)行腳本,無法實現(xiàn)對腳本的調(diào)試,本發(fā)明設置一個調(diào)試引擎,以調(diào)試條件為調(diào)試引擎的接口,當判斷符合調(diào)試條件時,則進入調(diào)試引擎。當呼入信號符合調(diào)試條件時,則進入調(diào)試模式,調(diào)試引擎是針對執(zhí)行腳本的調(diào)試,所以需要先獲取腳本。
[0077]103、在所述腳本中插入斷點標識;
[0078]因為在腳本中包含多段代碼,若需要知道每段代碼執(zhí)行之后所得到的結(jié)果或狀態(tài)什么,則需要在每執(zhí)行一段代碼后,對得到的結(jié)果或狀態(tài)進行依次輸出,以達到單步調(diào)試和方便開發(fā)者根據(jù)結(jié)果信息判斷。需要說明的是,在腳本中插入斷點標識的規(guī)則可以為預設的規(guī)則,也可以為開發(fā)者按照需求插入。
[0079]104、根據(jù)所述腳本的第一變量值執(zhí)行所述腳本;
[0080]得到腳本后,則需要對腳本執(zhí)行,腳本由多行代碼組成,在腳本代碼中存在多個變量值,而每執(zhí)行一段腳本代碼,則會得到一個第一結(jié)果信息,第一結(jié)果信息可以為根據(jù)第一變量值在執(zhí)行腳本后得到的一個結(jié)果或者一種狀態(tài)。
[0081]105、當所執(zhí)行的腳本包含所述斷點標識時,將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺;
[0082]在沒有其他限制的情況下,在執(zhí)行腳本過程中,會按照約定的執(zhí)行規(guī)則對腳本全部執(zhí)行,得到最終的結(jié)果,但當在腳本中插入了斷點標識后,在執(zhí)行的過程中,當碰到了斷點標識,則不會繼續(xù)執(zhí)行,若沒有碰到斷點標識,則將繼續(xù)執(zhí)行后續(xù)的腳本代碼。當遇到斷點標識后,調(diào)試引擎先將所執(zhí)行了的斷點標識以前的腳本代碼的第一變量值以及執(zhí)行得到的第一結(jié)果信息發(fā)送至調(diào)試平臺。
[0083]本發(fā)明實施例提供一種語音能力腳本調(diào)試方法,包括:獲取呼入信息,當所述呼入信息符合預設的調(diào)試條件時,獲取調(diào)試腳本,在所述腳本中插入斷點標識,根據(jù)所述腳本的第一變量值執(zhí)行所述腳本,當所執(zhí)行的腳本包含所述斷點標識時,將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺。這樣,通過在腳本中插入斷點標識,每執(zhí)行一條腳本,當所執(zhí)行的腳本包含斷點標識時,則將所執(zhí)行的腳本得到的第一結(jié)果信息以及所執(zhí)行的腳本中的第一變量值發(fā)送給調(diào)試平臺,便實現(xiàn)了對腳本的單步調(diào)試。
[0084]上述實施例中,描述了當呼入信息符合預設的調(diào)試條件時,則獲取調(diào)試腳本,在實際應用中,在獲取呼入信息之前還包括設置調(diào)試條件,以及調(diào)試引擎是從腳本服務器中獲取腳本的,下面參照圖3所示,本發(fā)明實施例中語音能力腳本調(diào)試方法的另一個實施例包括:
[0085]201、從調(diào)試平臺獲取調(diào)試條件;
[0086]因為調(diào)試引擎自身無法生成調(diào)試條件,調(diào)試條件一般是由開發(fā)者在調(diào)試平臺撰寫生成的,所以調(diào)試引擎需要從調(diào)試平臺獲取調(diào)試條件。比如,開發(fā)者設定用戶呼入99555號碼,則可進入調(diào)試,那么呼入號99555,則為調(diào)試條件。
[0087]202、設置調(diào)試條件;
[0088]當調(diào)試引擎從調(diào)試平臺獲取到調(diào)試條件后,則可將調(diào)試條件設置在調(diào)試引擎,這樣,調(diào)試條件則可作為進入調(diào)試模式的一個接口。
[0089]203、獲取呼入信息;
[0090]只有當用戶在進行呼入事件時,才能觸發(fā)語音能力腳本調(diào)試引擎,調(diào)試引擎需要判斷此次呼入是否進入調(diào)試模式,則需先獲取用戶呼入信息,呼入信息包括用戶呼入號碼。
[0091]204、判斷所述呼入信息是否符合預設的調(diào)試條件,若是,則執(zhí)行205,若否,則執(zhí)行其他;
[0092]因為在腳本執(zhí)行引擎中包括多種引擎,一般為商業(yè)引擎,商業(yè)引擎在被觸發(fā)后則直接獲取腳本,然后執(zhí)行腳本,無法實現(xiàn)對腳本的調(diào)試,本發(fā)明設置一個調(diào)試引擎,以調(diào)試條件為調(diào)試引擎的接口,當判斷符合調(diào)試條件時,則進入調(diào)試引擎。
[0093]205、從腳本服務器中獲取調(diào)試腳本;
[0094]當呼入信號符合調(diào)試條件時,則進入調(diào)試模式,調(diào)試引擎是針對執(zhí)行腳本的調(diào)試,所以需要先獲取腳本,而調(diào)試引擎自身沒有可以永久存儲腳本的存儲器,所有的腳本都在腳本服務器中,所以需要從腳本服務器中獲取腳本。
[0095]206、在所述腳本中插入斷點標識;
[0096]因為在腳本中包含多段代碼,若需要知道每段代碼執(zhí)行之后所得到的結(jié)果或狀態(tài)什么,則需要在每執(zhí)行一段代碼后,對得到的結(jié)果或狀態(tài)進行依次輸出,以達到單步調(diào)試和方便開發(fā)者根據(jù)結(jié)果信息判斷,比如在腳本中插入Trap命令,以Trap命令作為腳本中的斷點標識。需要說明的是,在腳本中插入斷點標識的規(guī)則可以為預設的規(guī)則,也可以為開發(fā)者按照需求插入。
[0097]207、根據(jù)所述腳本的第一變量值執(zhí)行所述腳本;
[0098]得到腳本后,則需要對腳本執(zhí)行,腳本由多行代碼組成,在腳本代碼中存在多個變量值,而每執(zhí)行一段腳本代碼,則會得到一個第一結(jié)果信息,第一結(jié)果信息可以為根據(jù)第一變量值在執(zhí)行腳本后得到的一個結(jié)果或者一種狀態(tài)。
[0099]208、判斷所執(zhí)行的腳本是否包含所述斷點標識,若是,則執(zhí)行209,若否,則執(zhí)行207 ;
[0100]在沒有其他限制的情況下,在執(zhí)行腳本過程中,會按照約定的執(zhí)行規(guī)則對腳本全部執(zhí)行,得到最終的結(jié)果,但當在腳本中插入了斷點標識后,在執(zhí)行的過程中,當碰到了斷點標識,則不會繼續(xù)執(zhí)行,若沒有碰到斷點標識,則將繼續(xù)執(zhí)行后續(xù)的腳本代碼。
[0101]209、將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺;
[0102]當遇到斷點標識后,調(diào)試引擎先將所執(zhí)行了的斷點標識以前的腳本代碼的第一變量值以及執(zhí)行得到的第一結(jié)果信息發(fā)送至調(diào)試平臺。
[0103]本發(fā)明實施例中,調(diào)試引擎是通過從調(diào)試平臺獲取調(diào)試條件,并設置調(diào)試條件的,這樣,開發(fā)者可以方便得在調(diào)試平臺更改調(diào)試條件,提高了調(diào)試效率;調(diào)試引擎從腳本服務器中獲取腳本,因為腳本服務器中所存儲的腳本為最新的腳本代碼,所以調(diào)試引擎所獲取到的腳本也為最新的腳本代碼,這樣,提高了語音能力腳本調(diào)試的實時性。
[0104]上述實施例中,描述了調(diào)試引擎將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺,在實際應用中,可以在所述腳本的每一行末插入斷點標識,在將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺之前,還可以掛起所述腳本的執(zhí)行,保存執(zhí)行所述腳本得到的第一結(jié)果信息;在將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺之后,還可以獲取所述調(diào)試平臺更改后的第二變量值,根據(jù)所述第二變量值執(zhí)行所述腳本,下面參照圖4所示,本發(fā)明實施例中語音能力腳本調(diào)試方法的另一個實施例包括:
[0105]301、從調(diào)試平臺獲取調(diào)試條件;
[0106]因為調(diào)試引擎自身無法生成調(diào)試條件,調(diào)試條件一般是由開發(fā)者在調(diào)試平臺撰寫生成的,所以調(diào)試引擎需要從調(diào)試平臺獲取調(diào)試條件。比如,開發(fā)者設定用戶呼入99555號碼,則可進入調(diào)試,那么呼入號99555,則為調(diào)試條件。
[0107]302、設置調(diào)試條件;
[0108]當調(diào)試引擎從調(diào)試平臺獲取到調(diào)試條件后,則可將調(diào)試條件設置在調(diào)試引擎,這樣,調(diào)試條件則可作為進入調(diào)試模式的一個接口。
[0109]303、獲取呼入信息;
[0110]只有當用戶在進行呼入事件時,才能觸發(fā)語音能力腳本調(diào)試引擎,調(diào)試引擎需要判斷此次呼入是否進入調(diào)試模式,則需先獲取用戶呼入信息,呼入信息包括用戶呼入號碼。
[0111]304、判斷所述呼入信息是否符合預設的調(diào)試條件,若是,則執(zhí)行305,若否,則執(zhí)行其他;
[0112]因為在腳本執(zhí)行引擎中包括多種引擎,一般為商業(yè)引擎,商業(yè)引擎在被觸發(fā)后則直接獲取腳本,然后執(zhí)行腳本,無法實現(xiàn)對腳本的調(diào)試,本發(fā)明設置一個調(diào)試引擎,以調(diào)試條件為調(diào)試引擎的接口,當判斷符合調(diào)試條件時,則進入調(diào)試引擎。
[0113]305、從腳本服務器中獲取調(diào)試腳本;
[0114]當呼入信號符合調(diào)試條件時,則進入調(diào)試模式,調(diào)試引擎是針對執(zhí)行腳本的調(diào)試,所以需要先獲取腳本,而調(diào)試引擎自身沒有可以永久存儲腳本的存儲器,所有的腳本都在腳本服務器中,所以需要從腳本服務器中獲取腳本。
[0115]306、在所述腳本的每一行末插入斷點標識;
[0116]因為在腳本中包含多段代碼,若需要知道每段代碼執(zhí)行之后所得到的結(jié)果或狀態(tài)什么,則需要在每執(zhí)行一段代碼后,對得到的結(jié)果或狀態(tài)進行依次輸出,以達到單步調(diào)試和方便開發(fā)者根據(jù)結(jié)果信息判斷,比如在腳本中插入Trap命令,以Trap命令作為腳本中的斷點標識。需要說明的是,在腳本中插入斷點標識的規(guī)則可以為預設的規(guī)則,也可以為開發(fā)者按照需求插入。
[0117]307、根據(jù)所述腳本的第一變量值執(zhí)行所述腳本;
[0118]得到腳本后,則需要對腳本執(zhí)行,腳本由多行代碼組成,在腳本代碼中存在多個變量值而每執(zhí)行一段腳本代碼,則會得到一個第一結(jié)果信息,第一結(jié)果信息可以為根據(jù)第一變量值在執(zhí)行腳本后得到的一個結(jié)果或者一種狀態(tài)。
[0119]308、判斷所執(zhí)行的腳本是否包含所述斷點標識,若是,則執(zhí)行309,若否,則執(zhí)行307 ;
[0120]在沒有其他限制的情況下,在執(zhí)行腳本過程中,會按照約定的執(zhí)行規(guī)則對腳本全部執(zhí)行,得到最終的結(jié)果,但當在腳本中插入了斷點標識后,在執(zhí)行的過程中,當碰到了斷點標識,則不會繼續(xù)執(zhí)行,若沒有碰到斷點標識,則將繼續(xù)執(zhí)行后續(xù)的腳本代碼。
[0121]309、掛起所述腳本的執(zhí)行;
[0122]當在執(zhí)行腳本的過程中,碰到斷點標識,則不會繼續(xù)執(zhí)行,調(diào)試引擎可以掛起腳本的執(zhí)行。
[0123]310、保存執(zhí)行所述腳本得到的第一結(jié)果信息;
[0124]調(diào)試引擎中可以設置一個臨時內(nèi)存,用于保存每執(zhí)行一段腳本代碼后,所得到的第一結(jié)果信息,因為在腳本執(zhí)行的過程中,可能后續(xù)的腳本代碼中需要前面腳本代碼執(zhí)行后所產(chǎn)生的第一結(jié)果信息。
[0125]311、將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺;
[0126]當遇到斷點標識后,調(diào)試引擎先將所執(zhí)行了的斷點標識以前的腳本代碼的第一變量值以及執(zhí)行得到的第一結(jié)果信息發(fā)送至調(diào)試平臺。
[0127]312、獲取所述調(diào)試平臺更改后的第二變量值;
[0128]在調(diào)試引擎將第一結(jié)果信息以及第一變量值發(fā)送給調(diào)試平臺后,開發(fā)者若需要對腳本進行雙向調(diào)試,則可以更改第一變量值得到第二變量值,再將第二變量值發(fā)送給調(diào)試引擎。
[0129]313、從所述調(diào)試平臺獲取調(diào)試指令;
[0130]在調(diào)試引擎接收到調(diào)試平臺所發(fā)送的第二變量值后,需要從調(diào)試平臺獲取一個調(diào)試指令,才能根據(jù)第二變量值執(zhí)行腳本。
[0131]314、根據(jù)所述第二變量值執(zhí)行所述腳本;
[0132]調(diào)試引擎根據(jù)第二變量值對相應的執(zhí)行過一此的腳本進行第二次執(zhí)行,因為變量值更改了,結(jié)果信息自然會更改。
[0133]315、將根據(jù)所述第二變量值執(zhí)行腳本得到的第二結(jié)果信息發(fā)送個給調(diào)試平臺;
[0134]調(diào)試引擎將第二結(jié)果信息發(fā)送給調(diào)試平臺,這樣,開發(fā)者則可以根據(jù)對比第一結(jié)果信息與第二結(jié)果信息找到腳本中的Bug,也方便開發(fā)者對腳本在此進行調(diào)試。
[0135]本發(fā)明實施例中,在所述腳本的每一行末插入斷點標識,這樣每執(zhí)行一行腳本代碼,便將該行腳本代碼的第一變量值以及第一結(jié)果信息保存并發(fā)送至調(diào)試平臺,調(diào)試平臺接收到第一變量值后,將第一變量值更改得到第二變量值,將第二變量值發(fā)送給調(diào)試引擎,調(diào)試引擎再跟句第二變量值執(zhí)行腳本得到第二結(jié)果信息,并將第二結(jié)果信息發(fā)送給調(diào)試平臺,這樣,便實現(xiàn)了調(diào)試平臺對調(diào)試引擎的雙向調(diào)試,開發(fā)者也可以通過判斷第一結(jié)果信息與第二結(jié)果信息查出腳本中存在Bug。
[0136]參照圖5所示,本發(fā)明實施例中語音能力腳本調(diào)試裝置的一個實施例包括:
[0137]第一獲取單元401,用于獲取呼入信息;
[0138]只有當用戶在進行呼入事件時,才能觸發(fā)語音能力腳本調(diào)試引擎,調(diào)試引擎需要判斷此次呼入是否進入調(diào)試模式,則需先獲取用戶呼入信息,呼入信息包括用戶呼入號碼。
[0139]第二獲取單元402,用于當所述呼入信息符合預設的調(diào)試條件時,獲取腳本;
[0140]因為在腳本執(zhí)行引擎中包括多種引擎,一般為商業(yè)引擎,商業(yè)引擎在被觸發(fā)后則直接獲取腳本,然后執(zhí)行腳本,無法實現(xiàn)對腳本的調(diào)試,本發(fā)明設置一個調(diào)試引擎,以調(diào)試條件為調(diào)試引擎的接口,當判斷符合調(diào)試條件時,則進入調(diào)試引擎。當呼入信號符合調(diào)試條件時,則進入調(diào)試模式,調(diào)試引擎是針對執(zhí)行腳本的調(diào)試,所以需要先獲取腳本。
[0141]插入單元403,用于當所述呼入信息符合預設的調(diào)試條件時,在所述腳本中插入斷點標識;
[0142]因為在腳本中包含多段代碼,若需要知道每段代碼執(zhí)行之后所得到的結(jié)果或狀態(tài)什么,則需要在每執(zhí)行一段代碼后,對得到的結(jié)果或狀態(tài)進行依次輸出,以達到單步調(diào)試和方便開發(fā)者根據(jù)結(jié)果信息判斷。需要說明的是,在腳本中插入斷點標識的規(guī)則可以為預設的規(guī)則,也可以為開發(fā)者按照需求插入。
[0143]第一執(zhí)行單元404,用于根據(jù)所述腳本的第一變量值執(zhí)行所述腳本;
[0144]得到腳本后,則需要對腳本執(zhí)行,腳本由多行代碼組成,在腳本代碼中存在多個變量值,而每執(zhí)行一段腳本代碼,則會得到一個第一結(jié)果信息,第一結(jié)果信息可以為根據(jù)第一變量值在執(zhí)行腳本后得到的一個結(jié)果或者一種狀態(tài)。
[0145]第一發(fā)送單元405,用于當所執(zhí)行的腳本包含所述斷點標識時,將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺;
[0146]在沒有其他限制的情況下,在執(zhí)行腳本過程中,會按照約定的執(zhí)行規(guī)則對腳本全部執(zhí)行,得到最終的結(jié)果,但當在腳本中插入了斷點標識后,在執(zhí)行的過程中,當碰到了斷點標識,則不會繼續(xù)執(zhí)行,若沒有碰到斷點標識,則將繼續(xù)執(zhí)行后續(xù)的腳本代碼。當遇到斷點標識后,調(diào)試引擎先將所執(zhí)行了的斷點標識以前的腳本代碼的第一變量值以及執(zhí)行得到的第一結(jié)果信息發(fā)送至調(diào)試平臺。
[0147]本發(fā)明實施例提供一種語音能力腳本調(diào)試裝置,包括:獲取呼入信息,當所述呼入信息符合預設的調(diào)試條件時,獲取調(diào)試腳本,在所述腳本中插入斷點標識,根據(jù)所述腳本的第一變量值執(zhí)行所述腳本,當所執(zhí)行的腳本包含所述斷點標識時,將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺。這樣,通過在腳本中插入斷點標識,每執(zhí)行一條腳本,當所執(zhí)行的腳本包含斷點標識時,則將所執(zhí)行的腳本得到的第一結(jié)果信息以及所執(zhí)行的腳本中的第一變量值發(fā)送給調(diào)試平臺,便實現(xiàn)了對腳本的單步調(diào)試。
[0148]上述實施例中,描述了調(diào)試引擎判斷所述呼入信息是否符合預設的調(diào)試條件,若是,則獲取腳本,在實際應用中,判斷所述呼入信息是否符合預設的調(diào)試條件之前還包括設置調(diào)試條件,以及調(diào)試引擎是從腳本服務器中獲取腳本的,下面參照圖6所示,本發(fā)明實施例中語音能力腳本調(diào)試裝置的另一個實施例包括:
[0149]第三獲取單元501,用于從調(diào)試平臺獲取調(diào)試條件;
[0150]因為調(diào)試引擎自身無法生成調(diào)試條件,調(diào)試條件一般是由開發(fā)者在調(diào)試平臺撰寫生成的,所以調(diào)試引擎需要從調(diào)試平臺獲取調(diào)試條件。比如,開發(fā)者設定用戶呼入99555號碼,則可進入調(diào)試,那么呼入號99555,則為調(diào)試條件。
[0151]設置單元502,用于在所述獲取呼入信息之前,設置調(diào)試條件;
[0152]當調(diào)試引擎從調(diào)試平臺獲取到調(diào)試條件后,則可將調(diào)試條件設置在調(diào)試引擎,這樣,調(diào)試條件則可作為進入調(diào)試模式的一個接口。
[0153]第一獲取單元503,用于獲取呼入信息;
[0154]只有當用戶在進行呼入事件時,才能觸發(fā)語音能力腳本調(diào)試引擎,調(diào)試引擎需要判斷此次呼入是否進入調(diào)試模式,則需先獲取用戶呼入信息,呼入信息包括用戶呼入號碼。
[0155]第一判斷單元504,用于判斷所述呼入信息是否符合預設的調(diào)試條件;
[0156]因為在腳本執(zhí)行引擎中包括多種引擎,一般為商業(yè)引擎,商業(yè)引擎在被觸發(fā)后則直接獲取腳本,然后執(zhí)行腳本,無法實現(xiàn)對腳本的調(diào)試,本發(fā)明設置一個調(diào)試引擎,以調(diào)試條件為調(diào)試引擎的接口,當判斷符合調(diào)試條件時,則進入調(diào)試引擎。
[0157]所述第二獲取單元505包括第二獲取模塊5051,用于從腳本服務器中獲取調(diào)試腳本。
[0158]當呼入信號符合調(diào)試條件時,則進入調(diào)試模式,調(diào)試引擎是針對執(zhí)行腳本的調(diào)試,所以需要先獲取腳本,而調(diào)試引擎自身沒有可以永久存儲腳本的存儲器,所有的腳本都在腳本服務器中,所以需要從腳本服務器中獲取腳本。
[0159]插入單元506,用于當所述呼入信息符合預設的調(diào)試條件時,在所述腳本中插入斷點標識;
[0160]因為在腳本中包含多段代碼,若需要知道每段代碼執(zhí)行之后所得到的結(jié)果或狀態(tài)什么,則需要在每執(zhí)行一段代碼后,對得到的結(jié)果或狀態(tài)進行依次輸出,以達到單步調(diào)試和方便開發(fā)者根據(jù)結(jié)果信息判斷,比如在腳本中插入Trap命令,以Trap命令作為腳本中的斷點標識。需要說明的是,在腳本中插入斷點標識的規(guī)則可以為預設的規(guī)則,也可以為開發(fā)者按照需求插入。
[0161]第一執(zhí)行單元507,用于根據(jù)所述腳本的第一變量值執(zhí)行所述腳本;
[0162]得到腳本后,則需要對腳本執(zhí)行,而每執(zhí)行一段腳本代碼,則會得到一個第一結(jié)果信息,第一結(jié)果信息可以為根據(jù)第一變量值在執(zhí)行腳本后得到的一個結(jié)果或者一種狀態(tài)。
[0163]第二判斷單元508,用于判斷所執(zhí)行的腳本是否包含所述斷點標識;
[0164]在沒有其他限制的情況下,在執(zhí)行腳本過程中,會按照約定的執(zhí)行規(guī)則對腳本全部執(zhí)行,得到最終的結(jié)果,但當在腳本中插入了斷點標識后,在執(zhí)行的過程中,當碰到了斷點標識,則不會繼續(xù)執(zhí)行。
[0165]第二執(zhí)行單元509,用于當所執(zhí)行的腳本不包含所述斷點標識時,繼續(xù)執(zhí)行所述腳本。
[0166]若沒有碰到斷點標識,則將繼續(xù)執(zhí)行后續(xù)的腳本代碼。
[0167]第一發(fā)送單元510,用于當所執(zhí)行的腳本包含所述斷點標識時,將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺;
[0168]當遇到斷點標識后,調(diào)試引擎先將所執(zhí)行了的斷點標識以前的腳本代碼的第一變量值以及執(zhí)行得到的第一結(jié)果信息發(fā)送至調(diào)試平臺。
[0169]本發(fā)明實施例中,調(diào)試引擎是通過從調(diào)試平臺獲取調(diào)試條件,并設置調(diào)試條件的,這樣,開發(fā)者可以方便得在調(diào)試平臺更改調(diào)試條件,提高了調(diào)試效率;調(diào)試引擎從腳本服務器中獲取腳本,因為腳本服務器中所存儲的腳本為最新的腳本代碼,所以調(diào)試引擎所獲取到的腳本也為最新的腳本代碼,這樣,提高了語音能力腳本調(diào)試的實時性。
[0170]上述實施例中,描述了調(diào)試引擎將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺,在實際應用中,可以在所述腳本的每一行末插入斷點標識,在將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺之前,還可以掛起所述腳本的執(zhí)行,保存執(zhí)行所述腳本得到的第一結(jié)果信息;在將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺之后,還可以獲取所述調(diào)試平臺更改后的第二變量值,根據(jù)所述第二變量值執(zhí)行所述腳本,下面參照圖7所示,本發(fā)明實施例中語音能力腳本調(diào)試裝置的另一個實施例包括:
[0171]第三獲取單元601,用于從調(diào)試平臺獲取調(diào)試條件;
[0172]因為調(diào)試引擎自身無法生成調(diào)試條件,調(diào)試條件一般是由開發(fā)者在調(diào)試平臺撰寫生成的,所以調(diào)試引擎需要從調(diào)試平臺獲取調(diào)試條件。比如,開發(fā)者設定用戶呼入99555號碼,則可進入調(diào)試,那么呼入號99555,則為調(diào)試條件。
[0173]設置單元602,用于在所述獲取呼入信息之前,設置調(diào)試條件;
[0174]當調(diào)試引擎從調(diào)試平臺獲取到調(diào)試條件后,則可將調(diào)試條件設置在調(diào)試引擎,這樣,調(diào)試條件則可作為進入調(diào)試模式的一個接口。
[0175]第一獲取單元603,用于獲取呼入信息;
[0176]只有當用戶在進行呼入事件時,才能觸發(fā)語音能力腳本調(diào)試引擎,調(diào)試引擎需要判斷此次呼入是否進入調(diào)試模式,則需先獲取用戶呼入信息,呼入信息包括用戶呼入號碼。
[0177]第一判斷單元604,用于判斷所述呼入信息是否符合預設的調(diào)試條件;
[0178]因為在腳本執(zhí)行引擎中包括多種引擎,一般為商業(yè)引擎,商業(yè)引擎在被觸發(fā)后則直接獲取腳本,然后執(zhí)行腳本,無法實現(xiàn)對腳本的調(diào)試,本發(fā)明設置一個調(diào)試引擎,以調(diào)試條件為調(diào)試引擎的接口,當判斷符合調(diào)試條件時,則進入調(diào)試引擎。
[0179]所述第二獲取單元605包括第二獲取模塊6051,用于從腳本服務器中獲取調(diào)試腳本。
[0180]當呼入信號符合調(diào)試條件時,則進入調(diào)試模式,調(diào)試引擎是針對執(zhí)行腳本的調(diào)試,所以需要先獲取腳本,而調(diào)試引擎自身沒有可以永久存儲腳本的存儲器,所有的腳本都在腳本服務器中,所以需要從腳本服務器中獲取腳本。
[0181]插入單元606,用于當所述呼入信息符合預設的調(diào)試條件時,在所述腳本中插入斷點標識;
[0182]因為在腳本中包含多段代碼,若需要知道每段代碼執(zhí)行之后所得到的結(jié)果或狀態(tài)什么,則需要在每執(zhí)行一段代碼后,對得到的結(jié)果或狀態(tài)進行依次輸出,以達到單步調(diào)試和方便開發(fā)者根據(jù)結(jié)果信息判斷,比如在腳本中插入Trap命令,以Trap命令作為腳本中的斷點標識。需要說明的是,在腳本中插入斷點標識的規(guī)則可以為預設的規(guī)則,也可以為開發(fā)者按照需求插入。
[0183]第一執(zhí)行單元607,用于根據(jù)所述腳本的第一變量值執(zhí)行所述腳本;
[0184]得到腳本后,則需要對腳本執(zhí)行,而每執(zhí)行一段腳本代碼,則會得到一個第一結(jié)果信息,第一結(jié)果信息可以為根據(jù)第一變量值在執(zhí)行腳本后得到的一個結(jié)果或者一種狀態(tài)。
[0185]第二判斷單元608,用于判斷所執(zhí)行的腳本是否包含所述斷點標識;
[0186]在沒有其他限制的情況下,在執(zhí)行腳本過程中,會按照約定的執(zhí)行規(guī)則對腳本全部執(zhí)行,得到最終的結(jié)果,但當在腳本中插入了斷點標識后,在執(zhí)行的過程中,當碰到了斷點標識,則不會繼續(xù)執(zhí)行。
[0187]第二執(zhí)行單元609,用于當所執(zhí)行的腳本不包含所述斷點標識時,繼續(xù)執(zhí)行所述腳本。
[0188]若沒有碰到斷點標識,則將繼續(xù)執(zhí)行后續(xù)的腳本代碼。
[0189]掛起單元610,用于在將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺之前,掛起所述腳本的執(zhí)行;
[0190]當在執(zhí)行腳本的過程中,碰到斷點標識,則不會繼續(xù)執(zhí)行,調(diào)試引擎可以掛起腳本的執(zhí)行。
[0191]保存單元611,用于在將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺之前,保存執(zhí)行所述腳本得到的第一結(jié)果信息;
[0192]調(diào)試引擎中可以設置一個臨時內(nèi)存,用于保存每執(zhí)行一段腳本代碼后,所得到的第一結(jié)果信息,因為在腳本執(zhí)行的過程中,可能后續(xù)的腳本代碼中需要前面腳本代碼執(zhí)行后所產(chǎn)生的第一結(jié)果信息。
[0193]第一發(fā)送單元612,用于當所執(zhí)行的腳本包含所述斷點標識時,將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺;
[0194]當遇到斷點標識后,調(diào)試引擎先將所執(zhí)行了的斷點標識以前的腳本代碼的第一變量值以及執(zhí)行得到的第一結(jié)果信息發(fā)送至調(diào)試平臺。
[0195]第四獲取單元613,用于在將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺之后,獲取所述調(diào)試平臺更改后的第二變量值;
[0196]在調(diào)試引擎將第一結(jié)果信息以及第一變量值發(fā)送給調(diào)試平臺后,開發(fā)者若需要對腳本進行雙向調(diào)試,則可以更改第一變量值得到第二變量值,再將第二變量值發(fā)送給調(diào)試引擎。
[0197]第五獲取單元614,用于在根據(jù)所述第二變量值執(zhí)行所述腳本之前,從所述調(diào)試平臺獲取調(diào)試指令;
[0198]在調(diào)試引擎接收到調(diào)試平臺所發(fā)送的第二變量值后,需要從調(diào)試平臺獲取一個調(diào)試指令,才能根據(jù)第二變量值執(zhí)行腳本。
[0199]第三執(zhí)行單元615,用于根據(jù)所述第二變量值執(zhí)行所述腳本;
[0200]調(diào)試引擎根據(jù)第二變量值對相應的執(zhí)行過一此的腳本進行第二次執(zhí)行,因為變量值更改了,結(jié)果信息自然會更改。
[0201]第二發(fā)送單元616,用于在根據(jù)所述第二變量值執(zhí)行所述腳本之后,將根據(jù)所述第二變量值執(zhí)行腳本得到的第二結(jié)果信息發(fā)送給調(diào)試平臺;
[0202]調(diào)試引擎將第二結(jié)果信息發(fā)送給調(diào)試平臺,這樣,開發(fā)者則可以根據(jù)對比第一結(jié)果信息與第二結(jié)果信息找到腳本中的Bug,也方便開發(fā)者對腳本在此進行調(diào)試。
[0203]本發(fā)明實施例中,在所述腳本的每一行末插入斷點標識,這樣每執(zhí)行一行腳本代碼,便將該行腳本代碼的第一變量值以及第一結(jié)果信息保存并發(fā)送至調(diào)試平臺,調(diào)試平臺接收到第一變量值后,將第一變量值更改得到第二變量值,將第二變量值發(fā)送給調(diào)試引擎,調(diào)試引擎再跟句第二變量值執(zhí)行腳本得到第二結(jié)果信息,并將第二結(jié)果信息發(fā)送給調(diào)試平臺,這樣,便實現(xiàn)了調(diào)試平臺對調(diào)試引擎的雙向調(diào)試,開發(fā)者也可以通過判斷第一結(jié)果信息與第二結(jié)果信息查出腳本中存在Bug。
[0204]以上所述,以上實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述實施例對本發(fā)明進行了詳細的說明,本領域的普通技術(shù)人員應當理解:其依然可以對前述各實施例所記載的技術(shù)方案進行修改,或者對其中部分技術(shù)特征進行等同替換;而這些修改或者替換,并不使相應技術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技術(shù)方案的精神和范圍。
【權(quán)利要求】
1.一種語音能力腳本調(diào)試方法,其特征在于,包括: 獲取呼入?目息; 當所述呼入信息符合預設的調(diào)試條件時,獲取調(diào)試腳本; 在所述腳本中插入斷點標識; 根據(jù)所述腳本的第一變量值執(zhí)行所述腳本; 當所執(zhí)行的腳本包含所述斷點標識時,將所執(zhí)行的腳本的第一變量值以 及第一結(jié)果信息發(fā)送給調(diào)試平臺。
2.根據(jù)權(quán)利要求1所述方法,其特征在于,在所述獲取呼入信息之前,所述方法還包括:設置調(diào)試條件。
3.根據(jù)權(quán)利要求2所述方法,其特征在于,在所述設置調(diào)試條件之前,所述方法還包括:從調(diào)試平臺獲取調(diào)試條件。
4.根據(jù)權(quán)利要求1至3其中任意一項所述方法,其特征在于,所述在當所執(zhí)行的腳本包含所述斷點標識時,將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺之前,所述方法還包括: 判斷所執(zhí)行的腳本是否包含所述斷點標識。
5.根據(jù)權(quán)利要求4所述方法,其特征在于,所述方法還包括: 判斷所執(zhí)行的腳本是否包含所述斷點標識,若否,則繼續(xù)執(zhí)行所述腳本。
6.根據(jù)權(quán)利要求1至3其中任意一項所述方法,其特征在于,在將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺之前,所述方法還包括: 掛起所述腳本的執(zhí)行; 保存執(zhí)行所述腳本得到的第一結(jié)果信息。
7.根據(jù)權(quán)利要求1至3其中任意一項所述方法,其特征在于,在將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺之后,所述方法還包括: 獲取所述調(diào)試平臺更改后的第二變量值,根據(jù)所述第二變量值執(zhí)行所述腳本。
8.根據(jù)權(quán)利要求7所述方法,其特征在于,在根據(jù)所述第二變量值執(zhí)行所述腳本之后,所述方法還包括: 將根據(jù)所述第二變量值執(zhí)行腳本得到的第二結(jié)果信息發(fā)送給調(diào)試平臺。
9.根據(jù)權(quán)利要求8所述方法,其特征在于,在根據(jù)所述第二變量值執(zhí)行所述腳本之前,所述方法還包括: 從所述調(diào)試平臺獲取調(diào)試指令。
10.根據(jù)權(quán)利要求1至3其中任意一項所述方法,其特征在于,所述獲取腳本包括:從腳本服務器中獲取腳本。
11.根據(jù)權(quán)利要求1至3其中任意一項所述方法,其特征在于,所述在所述腳本中插入斷點標識包括: 在所述腳本的每一行末插入斷點標識。
12.—種語音能力腳本調(diào)試裝置,其特征在于,包括: 第一獲取單元,用于獲取呼入信息; 第二獲取單元,用于當所述呼入信息符合預設的調(diào)試條件時,獲取調(diào)試 腳本; 插入單元,用于在所述腳本中插入斷點標識; 第一執(zhí)行單元,用于根據(jù)所述腳本的第一變量值執(zhí)行所述腳本; 第一發(fā)送單元,用于當所執(zhí)行的腳本包含所述斷點標識時,將所執(zhí)行的 腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺。
13.根據(jù)權(quán)利要求12所述裝置,其特征在于,所述裝置還包括: 設置單元,用于在所述獲取呼入信息之前,設置調(diào)試條件。
14.根據(jù)權(quán)利要求13所述裝置,其特征在于,所述裝置還包括: 第三獲取單元,用于在所述設置調(diào)試條件之前,從調(diào)試平臺獲取調(diào)試條件。
15.根據(jù)權(quán)利要求12至14其中任意一項所述裝置,其特征在于,所述裝置還包括: 判斷單元,用于在當所執(zhí)行的腳本包含所述斷點標識時,將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺之前,判斷所執(zhí)行的腳本是否包含所述斷點標識。
16.根據(jù)權(quán)利要求15所述裝置,其特征在于,所述裝置還包括: 第二執(zhí)行單元,用于當所執(zhí)行的腳本不包含所述斷點標識時,繼續(xù)執(zhí)行所述腳本。
17.根據(jù)權(quán)利要求12至14其中任意一項所述裝置,其特征在于,所述裝置還包括: 掛起單元,用于在將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺之前,掛起所述腳本的執(zhí)行; 保存單元,用于在將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺之前,保存執(zhí)行所述腳本得到的第一結(jié)果信息。
18.根據(jù)權(quán)利要求12至14其中任意一項所述裝置,其特征在于,所述裝置還包括: 第四獲取單元,用于在將所執(zhí)行的腳本的第一變量值以及第一結(jié)果信息發(fā)送給調(diào)試平臺之后,獲取所述調(diào)試平臺更改后的第二變量值; 第三執(zhí)行單元,用于根據(jù)所述第二變量值執(zhí)行所述腳本。
19.根據(jù)權(quán)利要求18所述裝置,其特征在于,所述裝置還包括: 第二發(fā)送單元,用于在根據(jù)所述第二變量值執(zhí)行所述腳本之后,將根據(jù)所述第二變量值執(zhí)行腳本得到的第二結(jié)果信息發(fā)送給調(diào)試平臺。
20.根據(jù)權(quán)利要求19所述裝置,其特征在于,所述裝置還包括: 第五獲取單元,用于在根據(jù)所述第二變量值執(zhí)行所述腳本之前,從所述調(diào)試平臺獲取調(diào)試指令。
21.根據(jù)權(quán)利要求12至14其中任意一項所述裝置,其特征在于,所述第二獲取單元包括: 第二獲取模塊,用于從腳本服務器中獲取腳本。
22.根據(jù)權(quán)利要求12至14其中任意一項所述裝置,其特征在于,所述插入單元包括: 插入模塊,用于在所述腳本的每一行末插入斷點標識。
【文檔編號】G06F11/36GK104461889SQ201410767088
【公開日】2015年3月25日 申請日期:2014年12月12日 優(yōu)先權(quán)日:2014年12月12日
【發(fā)明者】朱繼先 申請人:華為技術(shù)有限公司