本技術(shù)涉及通話領(lǐng)域,并且具體地,涉及一種用于通話連接的方法和裝置。
背景技術(shù):
1、主叫終端與被叫終端在建立通話連接的過程,可采用會(huì)話初始協(xié)議(sessioninitiation?protocol,sip)協(xié)議中的消息或信令進(jìn)行通信。sip是由國(guó)際互聯(lián)網(wǎng)工程任務(wù)組(the?internet?engineering?task?force,ietf)提出的一個(gè)在ip網(wǎng)絡(luò)上進(jìn)行多媒體通信的應(yīng)用層控制協(xié)議。主叫終端與被叫終端可基于ip多媒體子系統(tǒng)(ip?multimediasubsystem,ims)網(wǎng)絡(luò)進(jìn)行語(yǔ)音通話。目前在一些場(chǎng)景下,主叫終端在呼叫被叫終端后,在未顯示被叫終端已接通的情況下卻能聽到被叫終端用戶的說(shuō)話聲音,造成主叫用戶困惑,影響通話體驗(yàn)。
技術(shù)實(shí)現(xiàn)思路
1、有鑒于此,本技術(shù)提供了一種用于通話連接的方法、裝置、計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)和計(jì)算機(jī)程序產(chǎn)品,能夠降低通話無(wú)聲的概率,提升用戶通話體驗(yàn)。
2、第一方面,提供了一種用于通話連接的方法,所述方法應(yīng)用于第一終端,所述方法包括:
3、通過網(wǎng)絡(luò)設(shè)備向第二終端發(fā)送會(huì)話邀請(qǐng)(比如,invite信令),所述會(huì)話邀請(qǐng)用于請(qǐng)求與所述第二終端建立語(yǔ)音通話;
4、接收所述網(wǎng)絡(luò)設(shè)備發(fā)送的第一臨時(shí)響應(yīng)消息(比如,100trying),所述第一臨時(shí)響應(yīng)用于表示所述網(wǎng)絡(luò)設(shè)備接收到所述會(huì)話邀請(qǐng);
5、接收所述第二終端通過所述網(wǎng)絡(luò)設(shè)備返回的第二臨時(shí)響應(yīng)消息(比如,183session?progress信令或者180ringing信令),所述第二臨時(shí)響應(yīng)消息是針對(duì)所述會(huì)話邀請(qǐng)的臨時(shí)響應(yīng)消息,其中,所述第二臨時(shí)響應(yīng)消息中不包括早媒體信息;
6、接收所述第二終端通過所述網(wǎng)絡(luò)設(shè)備發(fā)送的下行語(yǔ)音包;
7、在未接收到來(lái)自第二終端的會(huì)話邀請(qǐng)響應(yīng)消息(比如,200ok?for?invite信令)的情況下,不播放所述下行語(yǔ)音包,所述會(huì)話邀請(qǐng)響應(yīng)消息是對(duì)所述會(huì)話邀請(qǐng)的響應(yīng),所述會(huì)話邀請(qǐng)響應(yīng)消息用于表示所述第二終端已接收到所述會(huì)話邀請(qǐng)。
8、示例性地,所述第一終端是主叫終端,所述第二終端是被叫終端。
9、上述技術(shù)方案由第一終端或者第一終端中的芯片執(zhí)行?;谏鲜龇桨?,在第一終端向第二終端發(fā)起呼叫后,接收到來(lái)自被叫終端的第二臨時(shí)響應(yīng)消息,第二臨時(shí)響應(yīng)消息中(不包括早期媒體pem);如果第一終端未收到第二終端回復(fù)的會(huì)話邀請(qǐng)響應(yīng)消息,卻接收到來(lái)自被叫終端的下行語(yǔ)音包,那么即使收到了來(lái)自第二終端的下行語(yǔ)音包,第一終端也不進(jìn)行播放。這樣避免了主叫終端在未顯示接通(比如,主叫終端的通話界面顯示對(duì)方振鈴中,或者,主叫終端的通話界面顯示正在呼叫中)的情況下還能聽到被叫終端的聲音的問題,減少用戶困惑,有助于提升用戶的通話體驗(yàn)。
10、在第一終端與第二終端建立呼叫的過程中,如果第一終端收到來(lái)自第二終端的振鈴消息,說(shuō)明第二終端已開始振鈴。進(jìn)一步地,本技術(shù)實(shí)施例可基于振鈴消息決策是否播放下行語(yǔ)音包。
11、在一些可能的實(shí)現(xiàn)方式中,在接收到所述第二終端的下行語(yǔ)音包之前,所述方法還包括:
12、判斷是否接收到來(lái)自所述第二終端的振鈴消息(比如,180ringing信令),所述振鈴消息用于向第一終端通知所述第二終端已開始振鈴;
13、其中,在未接收到來(lái)自第二終端的會(huì)話邀請(qǐng)響應(yīng)消息的情況下,不播放所述下行語(yǔ)音包,包括:在未接收到所述振鈴消息的情況下,以及,在未接收到來(lái)自第二終端的會(huì)話邀請(qǐng)響應(yīng)消息的情況下,不播放所述下行語(yǔ)音包。
14、因此,第一終端如果沒有收到來(lái)自第二終端的振鈴消息,也沒收到第二終端回復(fù)的會(huì)話邀請(qǐng)響應(yīng)消息,卻接收到來(lái)自被叫終端的下行語(yǔ)音包,那么即使收到了來(lái)自被叫終端的下行語(yǔ)音包,第一終端也不進(jìn)行播放。這樣避免了主叫終端在未顯示接通的情況下還能聽到被叫終端的聲音的問題,減少用戶困惑,有助于提升用戶的通話體驗(yàn)。
15、在一些可能的實(shí)現(xiàn)方式中,所述方法還包括:
16、在接收到所述振鈴消息的情況下,判斷所述振鈴消息中是否包括早媒體信息;
17、如果所述振鈴消息中包括早媒體信息,則播放所述下行語(yǔ)音包;
18、如果所述振鈴消息中不包括早媒體信息,則判斷是否接收到來(lái)自所述會(huì)話邀請(qǐng)響應(yīng)消息。
19、也就是說(shuō),如果第一終端收到了振鈴消息,那么可以基于振鈴消息中是否攜帶早媒體信息,來(lái)決定是否播放下行語(yǔ)音包。如果振鈴消息中包括早媒體信息,那么可以播放下行語(yǔ)音包;如果振鈴消息中也不包括早媒體信息,那么要結(jié)合是否收到會(huì)話邀請(qǐng)響應(yīng)消息決定是否播放下行語(yǔ)音包。
20、在一些可能的實(shí)現(xiàn)方式中,所述方法還包括:
21、在接收到所述會(huì)話邀請(qǐng)響應(yīng)消息的情況下,播放所述下行語(yǔ)音包。
22、示例性地,如果接收到200ok?for?invite信令,那么需要播放收到的下行語(yǔ)音包。
23、在一些可能的實(shí)現(xiàn)方式中,在接收到所述第二臨時(shí)響應(yīng)消息后,所述方法還包括:
24、判斷所述第二臨時(shí)響應(yīng)消息中是否包括所述早媒體信息;
25、在所述第二臨時(shí)響應(yīng)消息中包括所述早媒體信息的情況下,播放所述下行語(yǔ)音包。
26、示例性地,如果收到的183session?progress信令中包括pem,那么需要播放下行語(yǔ)音包。在一些可能的實(shí)現(xiàn)方式中,所述第二臨時(shí)響應(yīng)消息包括183會(huì)話進(jìn)程信令,所述183會(huì)話進(jìn)程信令用于建立早期媒體業(yè)務(wù);所述早媒體信息包括早期媒體pem參數(shù)。
27、在一些可能的實(shí)現(xiàn)方式中,所述會(huì)話邀請(qǐng)響應(yīng)消息為200ok消息,比如,200ok(invite)信令。
28、當(dāng)然,第一終端與第二終端建立呼叫的過程中,涉及到的更多的信令交互可參考sip協(xié)議中的描述。此處僅是示出了部分信令,本技術(shù)實(shí)施例并不限于此。
29、在一些可能的實(shí)現(xiàn)方式中,所述方法還包括:
30、通過所述網(wǎng)絡(luò)設(shè)備向所述第二終端發(fā)送確認(rèn)消息,所述確認(rèn)消息用于通知所述第二終端所述第一終端收到了所述第二臨時(shí)響應(yīng)消息;
31、接收所述第二終端通過所述網(wǎng)絡(luò)設(shè)備發(fā)送的成功響應(yīng)消息,所述成功響應(yīng)消息用于表示所述第二終端通收到所述確認(rèn)消息。
32、比如,所述確認(rèn)消息為prack;所述成功響應(yīng)消息為200ok(prack)信令。
33、第二方面,提供了一種用于通話連接的方法,所述方法應(yīng)用于網(wǎng)絡(luò)設(shè)備,所述方法包括:
34、接收來(lái)自第一終端的會(huì)話邀請(qǐng),所述會(huì)話邀請(qǐng)用于請(qǐng)求與所述第二終端建立語(yǔ)音通話;
35、向所述第一終端發(fā)送第一臨時(shí)響應(yīng)消息,所述第一臨時(shí)響應(yīng)用于表示所述網(wǎng)絡(luò)設(shè)備接收到所述會(huì)話邀請(qǐng);
36、向所述第二終端發(fā)送所述會(huì)話邀請(qǐng);
37、接收來(lái)自所述第二終端的第二臨時(shí)響應(yīng)消息,所述第二臨時(shí)響應(yīng)消息是針對(duì)所述會(huì)話邀請(qǐng)的臨時(shí)響應(yīng)消息,其中,所述第二臨時(shí)響應(yīng)消息中不包括早媒體信息;
38、向所述第一終端發(fā)送所述第二臨時(shí)響應(yīng)消息;
39、接收來(lái)自所述第二終端的下行語(yǔ)音包;
40、向所述第一終端發(fā)送所述下行語(yǔ)音包。
41、上述技術(shù)方案由網(wǎng)絡(luò)設(shè)備或者網(wǎng)絡(luò)設(shè)備中的芯片執(zhí)行?;谏鲜龇桨福诘谝唤K端向第二終端發(fā)起呼叫后,網(wǎng)絡(luò)設(shè)備將第二終端的第二臨時(shí)響應(yīng)消息(比如,183sessionprogress信令)發(fā)送至第一終端,第二臨時(shí)響應(yīng)消息中(不包括早期媒體pem);并將來(lái)自第二終端的下行語(yǔ)音包發(fā)送至第一終端,未向第一終端發(fā)送會(huì)話邀請(qǐng)響應(yīng)消息,這樣第一終端在沒有收到會(huì)話邀請(qǐng)響應(yīng)消息的情況下不會(huì)進(jìn)行語(yǔ)音包的播放,從而避免了主叫終端在未顯示接通(比如,主叫終端的通話界面顯示對(duì)方振鈴中,或者,主叫終端的通話界面顯示正在呼叫中)的情況下還能聽到被叫終端的聲音的問題,減少用戶困惑,有助于提升用戶的通話體驗(yàn)。
42、或者,在一些實(shí)現(xiàn)方式中,網(wǎng)絡(luò)設(shè)備在收到來(lái)自第二終端的不包括pem的第二臨時(shí)響應(yīng)消息后,如果后續(xù)接收到了第二終端的下行語(yǔ)音包,那么網(wǎng)絡(luò)設(shè)備不向第一終端傳遞第二終端的下行語(yǔ)音包,或者說(shuō)不進(jìn)行放音,或者說(shuō)將第二終端發(fā)送的下行語(yǔ)音包進(jìn)行攔截。這樣第一終端將無(wú)法收到來(lái)自第二終端的下行語(yǔ)音包,那么第一終端的用戶也就不會(huì)聽的第二終端的用戶說(shuō)話的聲音,避免產(chǎn)生困惑。
43、或者,在一些實(shí)施例中,網(wǎng)絡(luò)設(shè)備在收到來(lái)自第二終端的下行語(yǔ)音包后,可在下行語(yǔ)音包中增加字段或標(biāo)識(shí),以將網(wǎng)絡(luò)放音(比如彩鈴)與第二終端的聲音進(jìn)行區(qū)分。這樣,第一終端在收到來(lái)自第二終端的下行語(yǔ)音包后,如果解析出來(lái)下行語(yǔ)音包中攜帶目標(biāo)字段或目標(biāo)標(biāo)識(shí),那么將不播放下行語(yǔ)音包。
44、第三方面,提供了一種用于通話連接的方法,所述方法應(yīng)用于第一終端,所述方法包括:
45、通過網(wǎng)絡(luò)設(shè)備向第二終端發(fā)送會(huì)話邀請(qǐng)(比如,invite信令),所述會(huì)話邀請(qǐng)用于請(qǐng)求與所述第二終端建立語(yǔ)音通話;
46、接收所述網(wǎng)絡(luò)設(shè)備發(fā)送的第一臨時(shí)響應(yīng)消息(比如,100trying),所述第一臨時(shí)響應(yīng)用于表示所述網(wǎng)絡(luò)設(shè)備接收到所述會(huì)話邀請(qǐng);
47、接收所述第二終端通過所述網(wǎng)絡(luò)設(shè)備返回的第二臨時(shí)響應(yīng)消息(比如,183session?progress信令或者180ringing信令),所述第二臨時(shí)響應(yīng)消息是針對(duì)所述會(huì)話邀請(qǐng)的臨時(shí)響應(yīng)消息;
48、接收到所述第一終端的用戶的上行語(yǔ)音包;
49、在未接收到來(lái)自第二終端的會(huì)話邀請(qǐng)響應(yīng)消息(比如,200ok?for?invite信令)的情況下,不發(fā)送所述上行語(yǔ)音包,所述會(huì)話邀請(qǐng)響應(yīng)消息是對(duì)所述會(huì)話邀請(qǐng)的響應(yīng),所述會(huì)話邀請(qǐng)響應(yīng)消息用于表示所述第二終端已接收到所述會(huì)話邀請(qǐng)。
50、上述技術(shù)方案由第一終端或者第一終端中的芯片執(zhí)行。基于上述方案,在第一終端向第二終端發(fā)起呼叫后,接收到來(lái)自被叫終端的第二臨時(shí)響應(yīng)消息;如果第一終端未收到第二終端回復(fù)的會(huì)話邀請(qǐng)響應(yīng)消息,卻收到來(lái)自第一終端的用戶的上行語(yǔ)音包,那么第一終端不會(huì)發(fā)送上行語(yǔ)音包。這樣,在主叫終端顯示未接通的情況下,避免主叫終端的用戶說(shuō)話的聲音被傳遞至被叫終端,以降低在通話接通之前主叫用戶的聲音數(shù)據(jù)被泄露的風(fēng)險(xiǎn),保證了用戶的隱私。
51、當(dāng)然,第一終端與第二終端建立呼叫的過程中,涉及到的更多的信令交互可參考sip協(xié)議中的描述。此處僅是示出了部分信令,本技術(shù)實(shí)施例并不限于此。
52、第四方面,提供了一種通信裝置,包括用于執(zhí)行第一方面或第三方面中任一種實(shí)現(xiàn)方式中方法的單元。該通信裝置可以是第一終端,也可以是第一終端內(nèi)的芯片。該通信裝置包括輸入單元、顯示單元和處理單元。
53、當(dāng)該通信裝置是第一終端時(shí),該處理單元可以是處理器,該輸入單元可以是通信接口,該顯示單元可以是圖形處理模塊和屏幕;該終端還可以包括存儲(chǔ)器,該存儲(chǔ)器用于存儲(chǔ)計(jì)算機(jī)程序代碼,當(dāng)該處理器執(zhí)行該存儲(chǔ)器所存儲(chǔ)的計(jì)算機(jī)程序代碼時(shí),使得該終端執(zhí)行第一方面中的任一種實(shí)現(xiàn)方式中的方法,或者,使得該終端執(zhí)行第三方面中的任一種實(shí)現(xiàn)方式中的方法。
54、當(dāng)該通信裝置是第一終端內(nèi)的芯片時(shí),該處理單元可以是芯片內(nèi)部的邏輯處理單元,該輸入單元可以是輸入接口、管腳或電路等,該顯示單元可以是芯片內(nèi)部的圖形處理單元;該芯片還可以包括存儲(chǔ)器,該存儲(chǔ)器可以是該芯片內(nèi)的存儲(chǔ)器(例如,寄存器、緩存等),也可以是位于該芯片外部的存儲(chǔ)器(例如,只讀存儲(chǔ)器、隨機(jī)存取存儲(chǔ)器等);該存儲(chǔ)器用于存儲(chǔ)計(jì)算機(jī)程序代碼,當(dāng)該處理器執(zhí)行該存儲(chǔ)器所存儲(chǔ)的計(jì)算機(jī)程序代碼時(shí),使得該芯片執(zhí)行第一方面的任一種方法,或者,使得該芯片執(zhí)行第三方面中的任一種實(shí)現(xiàn)方式中的方法。
55、第五方面,提供了一種網(wǎng)絡(luò)設(shè)備,包括用于執(zhí)行第二方面或第二方面中的任意一種方法,包括相應(yīng)的功能模塊,分別用于實(shí)現(xiàn)以上方法中的步驟。功能可以通過硬件實(shí)現(xiàn),也可以通過硬件執(zhí)行相應(yīng)的軟件實(shí)現(xiàn)。硬件或軟件包括一個(gè)或多個(gè)與上述功能相對(duì)應(yīng)的模塊。
56、在一種可能的實(shí)施方式中,網(wǎng)絡(luò)設(shè)備的結(jié)構(gòu)中包括處理單元和收發(fā)單元,這些單元可以執(zhí)行上述方法示例中相應(yīng)功能,具體參見方法示例中的詳細(xì)描述,此處不做贅述。
57、第六方面,提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)存儲(chǔ)有計(jì)算機(jī)程序代碼,當(dāng)所述計(jì)算機(jī)程序代碼被用于通話連接的裝置運(yùn)行時(shí),使得該轉(zhuǎn)置執(zhí)行第一方面中的任一種實(shí)現(xiàn)方式中的方法。
58、第七方面,提供了一種計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)程序產(chǎn)品包括:計(jì)算機(jī)程序代碼,當(dāng)所述計(jì)算機(jī)程序代碼在計(jì)算機(jī)上運(yùn)行時(shí),使得計(jì)算機(jī)執(zhí)行第一方面或第一方面的任意一種可能的實(shí)現(xiàn)方式中的方法,或者使得計(jì)算機(jī)執(zhí)行第二方面或第二方面的任意一種可能的實(shí)現(xiàn)方式中的方法,或者使得計(jì)算機(jī)執(zhí)行第三方面或第三方面中的任意一種可能的實(shí)現(xiàn)方式中的方法。
59、第八方面,本技術(shù)實(shí)施例提供了一種芯片系統(tǒng),該芯片系統(tǒng)包括一個(gè)或多個(gè)處理器,用于從存儲(chǔ)器中調(diào)用并運(yùn)行存儲(chǔ)器中存儲(chǔ)的指令,使得上述各個(gè)方面或各個(gè)方面的任一種可能實(shí)現(xiàn)方式中的方法被執(zhí)行。該芯片系統(tǒng)可以由芯片構(gòu)成,也可以包含芯片和其他分立器件。
60、其中,該芯片系統(tǒng)可以包括用于發(fā)送信息或數(shù)據(jù)的輸入電路或者接口,以及用于接收信息或數(shù)據(jù)的輸出電路或者接口。
61、第九方面,提供了一種通信系統(tǒng),包括前述的第一終端、第二終端以及網(wǎng)絡(luò)設(shè)備。其中,第一終端可用于執(zhí)行上述第一方面或第一方面中的任意一種方法;所述網(wǎng)絡(luò)設(shè)備用于執(zhí)行上述第二方面或第二方面中的任意一種方法。或者,第一終端用于執(zhí)行上述第三方面或第三方面中的任意一種方法。
62、可選地,通信系統(tǒng)還包括其他網(wǎng)元。比如,彩鈴服務(wù)器(比如cat-as)、s-cscf、主叫接入網(wǎng)設(shè)備、被叫接入網(wǎng)設(shè)備等等。