通過基于WebRTC的瀏覽器實現(xiàn)語音通話的方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計算機(jī)網(wǎng)絡(luò)技術(shù)領(lǐng)域,更具體地說,涉及通過基于WebRTC的瀏覽器實現(xiàn)語音通話的方法及系統(tǒng)。
【背景技術(shù)】
[0002]目前,通過瀏覽器網(wǎng)頁實現(xiàn)語音通話,均需使用瀏覽器插件,如圖1所示,為在瀏覽器上安裝ActiveX來實現(xiàn)語音通話,ActiveX集成處理會話發(fā)起協(xié)議和實時傳送協(xié)議傳送的語音封包,但是,使用ActiveX插件安裝的一個前提是必須經(jīng)過用戶的同意及確認(rèn),僅支持基于IE內(nèi)核的瀏覽器,或者還需要其他插件輔助才能支持的瀏覽器,并且在面對復(fù)雜的瀏覽器設(shè)置時往往容易出錯。
[0003]如圖2所示,為一種基于Flash實現(xiàn)的網(wǎng)頁語音通話,由于Flash技術(shù)在瀏覽器兼容性方面的良好表現(xiàn),免去了用戶確認(rèn)安裝的步驟,只需要同步當(dāng)前網(wǎng)頁使用系統(tǒng)麥克風(fēng)和揚聲器設(shè)備即可實現(xiàn)語音通話。但一般都只局限在桌面型電腦上使用,而在移動終端領(lǐng)域通常受制于沒有一款全面支持Flash技術(shù)的瀏覽器而擱淺,無法跨平臺實現(xiàn)語音通話。
【發(fā)明內(nèi)容】
[0004]本發(fā)明要解決的技術(shù)問題在于,針對現(xiàn)有的通過瀏覽器來實現(xiàn)語音通信的上述缺陷,提供通過基于WebRTC的瀏覽器實現(xiàn)語音通話的方法及系統(tǒng)。
[0005]本發(fā)明解決上述問題的技術(shù)方案是提供了一種通過基于WebRTC的瀏覽器實現(xiàn)語音通話的方法,所述方法包括以下步驟:
[000?] S1、主叫端和被叫端分別下載并安裝一瀏覽器,所述瀏覽器支持WebRTC;
[0007]S2、所述主叫端在所述瀏覽器的頁面中輸入所述被叫端的第二用戶信息,并通過交換服務(wù)器建立與所述被叫端的所述瀏覽器之間的信令通道;
[0008]S3、所述主叫端使用所述瀏覽器的WebRTC接口獲取所述主叫端的第一語音信息,并將所述第一語音信息發(fā)送給所述交換服務(wù)器,通過所述交換服務(wù)器的所述信令通道將所述第一語音信息發(fā)送給所述被叫端的所述瀏覽器;
[0009]S4、所述主叫端接收所述交換服務(wù)器返回的所述被叫端通過使用所述瀏覽器的WebRTC接口獲取的所述被叫端的第二語音信息。
[0010]在上述通過基于WebRTC的瀏覽器實現(xiàn)語音通話的方法中,在所述步驟S2中,所述通過交換服務(wù)器建立與所述被叫端的所述瀏覽器之間的信令通道的步驟包括:
[0011]在接收到所述主叫端使用瀏覽器網(wǎng)頁套接字發(fā)送的所述邀請信令時,保存所述主叫端的第一用戶信息;
[0012]根據(jù)所述邀請信令識別所述被叫端的所述第二用戶信息,并對所述被叫端的所述第二用戶信息進(jìn)行注冊驗證以獲得所述被叫端的端點通訊地址端口;
[0013]向所述被叫端的端點通訊地址端口發(fā)起呼叫;
[0014]在接收到所述被叫端根據(jù)所述呼叫使用瀏覽器網(wǎng)頁套接字發(fā)送的被邀請信令時,保存所述被叫端的所述第二用戶信息;
[0015]根據(jù)所述主叫端的所述第一用戶信息和所述被叫端的所述第二用戶信息,建立會話標(biāo)識,關(guān)聯(lián)所述主叫端的瀏覽器與所述被叫端的瀏覽器之間的信令通道。
[0016]在上述通過基于WebRTC的瀏覽器實現(xiàn)語音通話的方法中,在所述步驟S2和所述步驟S3之間包括:
[0017]所述交換服務(wù)器通知所述主叫端信令通道建立結(jié)果以準(zhǔn)備媒體交換,并向所述被叫端發(fā)送所述會話標(biāo)識;
[0018]所述主叫端利用瀏覽器的所述WebRTC發(fā)起媒體交換,通過所述交換服務(wù)器的所述信令通道將所述主叫端的第一用戶信息發(fā)送給所述被叫端的瀏覽器,并在所述被叫端的瀏覽器中顯示,并將所述被叫端的第二用戶信息發(fā)送給所述主叫端的瀏覽器,并在所述主叫端的瀏覽器中顯示。
[0019]在上述通過基于WebRTC的瀏覽器實現(xiàn)語音通話的方法中,所述主叫端和所述被叫端分別為移動終端或計算機(jī)。
[0020]本發(fā)明還提供了一種通過基于WebRTC的瀏覽器實現(xiàn)語音通話的系統(tǒng),所述系統(tǒng)包括主叫端、被叫端以及交換服務(wù)器,其中所述主叫端和所述被叫端分別下載并安裝一瀏覽器,所述瀏覽器支持WebRTC;
[0021]所述主叫端包括依次連接的輸入建立模塊、獲取模塊、發(fā)送模塊以及接收模塊,其中:
[0022]所述輸入建立模塊,用于在所述瀏覽器的頁面中輸入所述被叫端的第二用戶信息,并通過所述交換服務(wù)器建立與所述被叫端的所述瀏覽器之間的信令通道;
[0023]所述獲取模塊,用于使用所述瀏覽器的WebRTC接口獲取所述主叫端的第一語音信息;
[0024]所述發(fā)送模塊,用于將所述第一語音信息發(fā)送給所述交換服務(wù)器,通過所述交換服務(wù)器的所述信令通道將所述第一語音信息發(fā)送給所述被叫端的所述瀏覽器;
[0025]所述接收模塊,用于接收所述交換服務(wù)器返回的所述被叫端通過使用所述瀏覽器的WebRTC接口獲取的所述被叫端的第二語音信息。
[0026]在上述通過基于WebRTC的瀏覽器實現(xiàn)語音通話的系統(tǒng)中,所述交換服務(wù)器包括協(xié)議解析模塊,其中所述協(xié)議解析模塊用于建立所述主叫端的瀏覽器與所述被叫端的瀏覽器之間的信令通道,所述協(xié)議解析模塊包括:
[0027]第一協(xié)議解析單元,用于在接收到所述主叫端使用瀏覽器網(wǎng)頁套接字發(fā)送的所述邀請信令時,保存所述主叫端的第一用戶信息;
[0028]注冊驗證單元,用于根據(jù)所述邀請信令識別所述被叫端的所述第二用戶信息,并對所述被叫端的所述第二用戶信息進(jìn)行注冊驗證以獲得所述被叫端的端點通訊地址端口;
[0029]第二協(xié)議解析單元,用于向所述被叫端的端點通訊地址端口發(fā)起呼叫;
[0030]第三協(xié)議解析單元,在接收到所述被叫端根據(jù)所述呼叫使用瀏覽器網(wǎng)頁套接字發(fā)送的被邀請信令時,保存所述被叫端的所述第二用戶信息;
[0031]關(guān)聯(lián)單元,用于根據(jù)所述主叫端的所述第一用戶信息和所述被叫端的所述第二用戶信息,建立會話標(biāo)識,關(guān)聯(lián)所述主叫端的瀏覽器與所述被叫端的瀏覽器之間的信令通道。
[0032]在上述通過基于WebRTC的瀏覽器實現(xiàn)語音通話的系統(tǒng)中,所述交換服務(wù)器還包括通知模塊,所述通知模塊用于通知所述主叫端信令通道建立結(jié)果以準(zhǔn)備媒體交換,并向所述被叫端發(fā)送所述會話標(biāo)識;
[0033]所述主叫端還包括媒體交換模塊,所述媒體交換模塊用于利用瀏覽器的所述WebRTC發(fā)起媒體交換,通過所述交換服務(wù)器的所述信令通道將所述主叫端的第一用戶信息發(fā)送給所述被叫端的瀏覽器,并在所述被叫端的瀏覽器中顯示,并將所述被叫端的第二用戶信息發(fā)送給所述主叫端的瀏覽器,并在所述主叫端的瀏覽器中顯示。
[0034]在上述通過基于WebRTC的瀏覽器實現(xiàn)語音通話的系統(tǒng)中,所述主叫端和所述被叫端分別為移動終端或計算機(jī)。
[0035]本發(fā)明的通過基于WebRTC的瀏覽器實現(xiàn)語音通話的方法及系統(tǒng)的有益效果有:通過在主叫端和被叫端上下載安裝支持WebRTC的瀏覽器,實現(xiàn)語音通話,無需在瀏覽器上安裝任何插件。同時,由于該支持WebRTC的瀏覽器可安裝在移動終端或計算機(jī)上,可實現(xiàn)跨平臺的通過瀏覽器的語音通話。
【附圖說明】
[0036]圖1是現(xiàn)有技術(shù)中在瀏覽器上安裝ActiveX來實現(xiàn)語音通話的示意圖。
[0037]圖2是現(xiàn)有技術(shù)中基于Flash實現(xiàn)的網(wǎng)頁語音通話的示意圖。
[0038]圖3是本發(fā)明的通過基于WebRTC的瀏覽器實現(xiàn)語音通話的方法實施例的流程圖。
[0039]圖4是圖3中的通過交換服務(wù)器建立與被叫端的瀏覽器之間的信令通道的流程圖。
[0040]圖5是本發(fā)明的通過基于WebRTC的瀏覽器實現(xiàn)語音通話的系統(tǒng)實施例的結(jié)構(gòu)示意圖。
【具體實施方式】
[0041 ]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實施例僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0042]如圖3所示,是本發(fā)明的通過基于WebRTC的瀏覽器實現(xiàn)語音通話的方法實施例的流程圖。該方法包括:
[0043]S1、主叫端和被叫端分別下載并安裝一瀏覽器,該瀏覽器支持WebRTC。
[0044]在本發(fā)明的實施例中,主叫端和被叫端均可以為移動終端,如智能手機(jī)等,也可以為計算機(jī),如臺式電腦,筆記本電腦等。
[0045]S2、主叫端在瀏覽器的頁面中輸入被叫端的第二用戶信息,并通過交換服務(wù)器建立與被叫端的瀏覽器之間的信令通道。
[0046]在本發(fā)明的實施例中,被叫端的用戶信息包括被叫端號碼,如分機(jī)號;瀏覽器的頁面可以包括商品信息等。其中,如圖4所示,通過交換服務(wù)器建立與被叫端的瀏覽器之間的信令通道具體包括:
[0047]S21、在接收到主叫端使用瀏覽器網(wǎng)頁套接字發(fā)送的該邀請信令時,保存主叫端的第一用戶信息;
[0048]S22、根據(jù)該邀請信令識別被叫端的第二用戶信息,并對被叫端的第二用戶信息進(jìn)行注冊驗證以獲得被叫端的端點通訊地址端口;
[0049]S23、向被叫端的端點通訊地址端口發(fā)起呼叫;
[0050]S24、在接收到被叫端根據(jù)該呼叫使用瀏覽器網(wǎng)頁套接字發(fā)送的被邀請信令時,保存被叫端的第二用戶信息;
[0051]S25、根據(jù)主叫端的第一用戶信息和被叫端的第二用戶信息,建立會話標(biāo)識,關(guān)聯(lián)主叫端的瀏覽器與被叫端的瀏覽器之間的信令通道。
[0052]S3、主叫端使用瀏覽器的WebRTC接口獲取第一語音信息,將該第一語音信息發(fā)送給交換服務(wù)器,通過交換服務(wù)器的該信令通道將該第一語音信息發(fā)送給被叫端。
[0053]在本發(fā)明的實施例中,第一語音信息是主叫端通過自身的音頻輸入的語音信息。
[0054]S4、主叫端接收交換服務(wù)器返回的被叫端通過使用瀏覽器的WebRTC接口獲取的被叫端的第二語音信息。
[0055]在本發(fā)明的實施例中,第二語音信息是被叫端通過自身的音頻輸入的語音信息。
[0056]進(jìn)一步地,在本發(fā)明的實施例中,為了使得主叫端與被叫端的用戶信息可視,在上述步驟S2和S3之間包括:
[0057]交換服務(wù)器通知主叫端呼叫建立結(jié)果以準(zhǔn)備媒體交換,并向被叫端發(fā)