終端與被叫終端之間的媒體通道需要通過該WEBRTC媒體網(wǎng)關(guān)設備和該頂S媒體網(wǎng)關(guān)設備,其中,該WEBRTC媒體網(wǎng)關(guān)設備用于將SRTP轉(zhuǎn)換為RTP,該MS媒體網(wǎng)關(guān)設備用于將RTP轉(zhuǎn)換為SRTP。該主叫終端與該被叫終端之間的信令傳輸需要經(jīng)過該頂S信令網(wǎng)關(guān)設備,其中,該MS信令網(wǎng)關(guān)設備用于將標準的SIP信令轉(zhuǎn)換為WEBRTC信令。
[0095]結(jié)合圖2,在本發(fā)明實施例中,該第一 WEBRTC信令網(wǎng)關(guān)設備在預先確定被叫終端為WEBRTC終端時,將會話請求消息通過該第二 WEBRTC信令網(wǎng)關(guān)設備發(fā)送至該被叫終端,無需修改該會話請求消息中的SDP,不用經(jīng)過MS信令網(wǎng)關(guān)設備。該被叫終端接收到該會話請求消息后,根據(jù)未經(jīng)修改的SDP向該主叫終端發(fā)送會話響應消息,則該主叫終端根據(jù)該會話響應消息建立與該被叫終端之間端對端的媒體通道,即該媒體通道不經(jīng)過媒體網(wǎng)關(guān)設備,避免了現(xiàn)有技術(shù)中媒體網(wǎng)關(guān)設備(包括WEBRTC媒體網(wǎng)關(guān)設備和MS媒體網(wǎng)關(guān)設備)對數(shù)據(jù)格式的轉(zhuǎn)換。
[0096]另外,若在步驟S102中該第一 WEBRTC信令網(wǎng)關(guān)設備沒有在該WEBRTC服務器中獲取到該被叫終端的接入方式,或者在步驟S103中,該第一 WEBRTC信令網(wǎng)關(guān)設備在根據(jù)該接入方式確定該被叫終端不是WEBRTC終端,則按照現(xiàn)有技術(shù)的流程,該第一 WEBRTC信令網(wǎng)關(guān)設備需要向第一 WEBRTC媒體網(wǎng)關(guān)設備申請媒體資源,并在轉(zhuǎn)發(fā)會話請求消息時,修改該會話請求消息中的SDP描述,最終通過MS媒體網(wǎng)關(guān)設備分別建立該主叫終端與該被叫終端之間的媒體通道。
[0097]采用上述方法,在主叫終端建立與該被叫終端之間的媒體通道之前,可以預先確定該被叫終端是否為WEBRTC終端,并在確定該被叫終端為WEBRTC終端時,建立該主叫終端與該被叫終端之間端到端的媒體通道,則該主叫終端與該被叫終端之間的數(shù)據(jù)傳輸無需通過媒體網(wǎng)關(guān)設備進行數(shù)據(jù)格式的轉(zhuǎn)換和ICE流程的終結(jié),減少了兩個WEBRTC終端之間傳輸數(shù)據(jù)的路徑,同時減少了網(wǎng)絡延時,減輕了媒體網(wǎng)關(guān)設備的負載。
[0098]本發(fā)明實施例提供一種通道建立的方法,如圖3所示,該方法包括:
[0099]S301、WEBRTC服務器在第一 WEBRTC信令網(wǎng)關(guān)設備接收到主叫終端發(fā)送的會話請求消息后,接收該第一 WEBRTC信令網(wǎng)關(guān)設備發(fā)送的包括被叫終端標識的查詢請求消息。
[0100]其中,該主叫終端為WEBRTC終端。
[0101]可選地,在該第一 WEBRTC信令網(wǎng)關(guān)設備接收該主叫終端發(fā)送的會話請求消息之前,該主叫終端通過用戶名和密碼登錄該WEBRTC服務器,該WEBRTC服務器驗證用戶名和密碼,并在認證通過后,向該主叫終端返回接入碼和WEBRTC信令網(wǎng)關(guān)設備的IP地址。其中,該WEBRTC服務器可以通過負載均衡和就近原則向該主叫終端分配WEBRTC信令網(wǎng)關(guān)設備,該WEBRTC服務器返回的WEBRTC信令網(wǎng)關(guān)設備的IP地址可能是一個,也可能是一個列表,由該主叫終端根據(jù)本地策略選擇接入的WEBRTC信令網(wǎng)關(guān)設備,該主叫終端確定接入的WEBRTC信令網(wǎng)關(guān)設備即為第一 WEBRTC信令網(wǎng)關(guān)設備。
[0102]進一步地,該主叫終端向該第一 WEBRTC信令網(wǎng)關(guān)設備發(fā)送MS注冊請求消息,其中,該注冊請求消息攜帶該接入碼,則該第一 WEBRTC信令網(wǎng)關(guān)設備在接收到該注冊請求消息后,通過所述接入碼到WEBRTC服務器中進行驗證,以確定該主叫終端已經(jīng)通過該WEBRTC服務器的身份驗證。
[0103]具體地,該第一 WEBRTC信令網(wǎng)關(guān)設備向該WEBRTC服務器發(fā)送攜帶該接入碼的驗證消息,以便該WEBRTC服務器確定該接入碼是否為該WEBRTC服務器分配至該主叫終端的,若是,則確定該主叫終端的身份驗證成功,則該WEBRTC服務器存儲該主叫終端標識、該第一 WEBRTC信令網(wǎng)關(guān)設備的網(wǎng)關(guān)標識和該主叫終端接入該第一 WEBRTC信令網(wǎng)關(guān)設備的WEB接入方式三者之間的對應關(guān)系,并向該第一 WEBRTC信令網(wǎng)關(guān)設備發(fā)送該主叫終端的MPU和該主叫終端的MPI,則該第一 WEBRTC信令網(wǎng)關(guān)設備根據(jù)該MPU和該MPI將該MS注冊請求消息發(fā)送至MS信令網(wǎng)關(guān)設備,該MS信令網(wǎng)關(guān)設備返回MS注冊響應消息至該主叫終端,完成該王叫終端在IMS網(wǎng)絡中的注冊。
[0104]需要說明的是,該WEBRTC服務器可以通過對應關(guān)系表存儲該主叫終端標識、該第一 WEBRTC信令網(wǎng)關(guān)設備的網(wǎng)關(guān)標識和該主叫終端接入該第一 WEBRTC信令網(wǎng)關(guān)設備的WEB接入方式三者之間的對應關(guān)系,其中,該對應關(guān)系表可以包括該主叫終端標識與該第一WEBRTC信令網(wǎng)關(guān)設備的網(wǎng)關(guān)標識的對應關(guān)系表,以及該主叫終端標識與該主叫終端接入該第一 WEBRTC信令網(wǎng)關(guān)設備的WEB接入方式的對應關(guān)系表。對于該WEBRTC服務器具體的存儲方式本發(fā)明不作限定。
[0105]S302、該WEBRTC服務器根據(jù)該被叫終端標識確定該被叫終端接入WEBRTC信令網(wǎng)關(guān)設備的接入方式和該被叫終端接入的WEBRTC信令網(wǎng)關(guān)設備的網(wǎng)關(guān)標識。
[0106]其中,該接入方式包括通過WEB接入。
[0107]需要說明的是,如步驟S301中的具體描述,該WEBRTC服務器在該主叫終端接入該第一 WEBRTC信令網(wǎng)關(guān)設備后,會存儲該主叫終端標識、該第一 WEBRTC信令網(wǎng)關(guān)設備的網(wǎng)關(guān)標識和該主叫終端接入該第一 WEBRTC信令網(wǎng)關(guān)設備的WEB接入方式三者之間的對應關(guān)系,相同的,該被叫終端在接入WEBRTC信令網(wǎng)關(guān)設備后,對應該被叫終端的WEBRTC服務器存儲該被叫終端標識、該被叫終端接入的WEBRTC信令網(wǎng)關(guān)設備的網(wǎng)關(guān)標識和該被叫終端接入WEBRTC信令網(wǎng)關(guān)設備的接入方式三者之間的對應關(guān)系。
[0108]可選地,該WEBRTC服務器根據(jù)該被叫終端標識查詢自身存儲的對應關(guān)系,確定該被叫終端接入WEBRTC信令網(wǎng)關(guān)設備的接入方式和該被叫終端接入的WEBRTC信令網(wǎng)關(guān)設備的網(wǎng)關(guān)標識,該對應關(guān)系包括該被叫終端標識、該被叫終端接入的WEBRTC信令網(wǎng)關(guān)設備的網(wǎng)關(guān)標識和該被叫終端接入WEBRTC信令網(wǎng)關(guān)設備的接入方式三者之間的對應關(guān)系。
[0109]具體地,若該被叫終端接入的WEBRTC服務器為該WEBRTC服務器,即該主叫終端與該被叫終端接入同一個WEBRTC服務器,則該WEBRTC服務器在該被叫終端接入WEBRTC信令網(wǎng)關(guān)設備后,也會存儲該被叫終端標識、該被叫終端接入的WEBRTC信令網(wǎng)關(guān)設備的網(wǎng)關(guān)標識和該被叫終端接入WEBRTC信令網(wǎng)關(guān)設備的接入方式三者之間的對應關(guān)系,則該WEBRTC服務器在接收到該查詢請求消息后,可以根據(jù)該被叫終端標識從自身存儲的對應關(guān)系中確定該被叫終端接入WEBRTC信令網(wǎng)關(guān)設備的接入方式和該被叫終端接入的WEBRTC信令網(wǎng)關(guān)設備的網(wǎng)關(guān)標識。
[0110]若該主叫終端與該被叫終端連接不同的WEBRTC服務器,由于同一個運營商網(wǎng)絡內(nèi)的WEBRTC服務器之間可以進行數(shù)據(jù)同步,因此,該WEBRTC服務器在該接收該第一WEBRTC信令網(wǎng)關(guān)設備發(fā)送的查詢請求消息之前,接收其他WEBRTC服務器(即被叫終端連接的WEBRTC服務器)發(fā)送的該被叫終端標識、該被叫終端接入的WEBRTC信令網(wǎng)關(guān)設備的網(wǎng)關(guān)標識和該被叫終端接入WEBRTC信令網(wǎng)關(guān)設備的接入方式三者之間的對應關(guān)系,這樣,該WEBRTC服務器在接收到該查詢請求消息后,同樣可以根據(jù)該被叫終端標識從自身存儲的對應關(guān)系中確定該被叫終端接入WEBRTC信令網(wǎng)關(guān)設備的接入方式和該被叫終端接入的WEBRTC信令網(wǎng)關(guān)設備的網(wǎng)關(guān)標識。
[0111]可選的,同一個運營商網(wǎng)絡內(nèi)的WEBRTC服務器之間可以進行數(shù)據(jù)查詢,則該WEBRTC服務器在接收到該查詢請求消息后,可以根據(jù)該被叫終端標識在其他WEBRTC服務器中查詢該被叫終端接入的WEBRTC信令網(wǎng)關(guān)設備的網(wǎng)關(guān)標識和該被叫終端接入WEBRTC信令網(wǎng)關(guān)設備的接入方式。
[0112]可選的,主叫終端和被叫終端連接的WEBRTC服務器也可能屬于不同的運營商。如果主叫終端和被叫終端連接的WEBRTC服務器屬于不同運營商,那么不同運營商WEBRTC服務器間也可以進行數(shù)據(jù)同步或數(shù)據(jù)查詢。因此,該WEBRTC服務器同樣可以根據(jù)該被叫終端標識從該被叫終端連接的WEBRTC服務器中確定該被叫終端接入WEBRTC信令網(wǎng)關(guān)設備的接入方式和該被叫終端接入的WEBRTC信令網(wǎng)關(guān)設備的網(wǎng)關(guān)標識。其中,不同運營商WEBRTC信令網(wǎng)關(guān)設備之間可以通過互連邊界網(wǎng)關(guān)功能IBGF進行互通。
[0113]另外,在該被叫終端設備與對應的WEBRTC信令網(wǎng)關(guān)設備斷開連接后,該WEBRTC服務器接收該被叫終端對應的WEBRTC信令網(wǎng)關(guān)設備發(fā)送的更新請求消息,并根據(jù)該更新請求消息更改該被叫終端接入WEBRTC信令網(wǎng)關(guān)設備的接入方式。
[0114]S303、該WEBRTC服務器向該第一 WEBRTC信令網(wǎng)關(guān)設備發(fā)送該被叫終端接入WEBRTC信令網(wǎng)關(guān)設備的接入方式和該被叫終端接入的WEBRTC信令網(wǎng)關(guān)設備的網(wǎng)關(guān)標識,以便該第一信令設備根據(jù)該接入方式確定該被叫終端為WEBRTC終端,通過該網(wǎng)關(guān)標識對應的WEBRTC信令網(wǎng)關(guān)設備將該會話請求消息發(fā)送至該被叫終端,并將接收到的會話響應消息發(fā)送至該主叫終端,以使該主叫終端根據(jù)該會話響應消息建立與該被叫終端之間端到端的媒體通道。
[0115]由于信令協(xié)議的不同,WEBRTC終端和SIP終端接入WEBRTC信令網(wǎng)關(guān)設備的方式也不同,WEBRTC終端接入WEBRTC信令網(wǎng)關(guān)設備的接入方式為WEB接入方式,SIP終端接入WEBRTC信令網(wǎng)關(guān)設備的接入方式為SIP接入方式,因此,通過該被叫終端接入WEBRTC信令網(wǎng)關(guān)設備的接入方式,該第一 WEBRTC信令網(wǎng)關(guān)設備能夠確定該被叫終端的終端類型。
[0116]需要說明的是,現(xiàn)有技術(shù)中,經(jīng)過對會話請求消息的修改,該被叫終端接收到的會話請求消息包括媒體網(wǎng)關(guān)設備的媒體候選地址信息,由媒體網(wǎng)關(guān)設備分別建立與主叫終端和被叫終端之間的媒體通道。本發(fā)明實施中該第一 WEBRTC信令網(wǎng)關(guān)設備在確定被叫終端為WEBRTC終端時,可以不用經(jīng)過現(xiàn)有技術(shù)中WEBRTC信令網(wǎng)關(guān)設備向WEBRTC媒體網(wǎng)關(guān)設備申請媒體資源的步驟,在向該被叫終端轉(zhuǎn)發(fā)會話請求消息時,也不用修改該會話請求消息中的SDP描述,因此,該主叫終端根據(jù)雙方終端的媒體候選地址信息建立不經(jīng)過媒體網(wǎng)關(guān)設備的媒體通道。
[0117]采用上述方法,在主叫終端建立與該被叫終端之間的媒體通道之前,可以預先確定該被叫終端是否為WEBRTC終端,并在確定該被叫終端為WEBRTC終端時,建立該主叫終端與該被叫終端之間不經(jīng)過媒體網(wǎng)關(guān)設備的媒體通道,則該主叫終端與該被叫終端之間的數(shù)據(jù)傳輸無需通過媒體網(wǎng)關(guān)設備進行數(shù)據(jù)格式的轉(zhuǎn)換和ICE流程的終結(jié),減少了兩個WEBRTC終端之間傳輸數(shù)據(jù)的路徑,同時減少了網(wǎng)絡延時,并減輕了媒體網(wǎng)關(guān)設備的負載。
[0118]為了使本領(lǐng)域技術(shù)人員能夠更清楚地理解本發(fā)明實施例提供的技術(shù)方案,下面通過具體的實施例,對本發(fā)明實施例提供的另一種數(shù)據(jù)傳輸?shù)姆椒ㄟM行詳細說明,如圖4所示,該方法是以主叫終端和被叫終端均為WEBRTC終端進行說明的,包括:
[0119]S401、主叫終端登錄WEBRTC服務器,并從該WEBRTC服務器中下載WEBRTC相關(guān)代碼邏輯。
[0120]具體地,該主叫終端通過用戶名和密碼登錄WEBRTC服務器,該WEBRTC服務器驗證用戶名和密碼,并在驗證通過后,從該WEBRTC服務器中下載WEBRTC相關(guān)代碼邏輯,例如JS(Javascript腳本),以便該主叫終端執(zhí)行JS邏輯發(fā)起到WEBRTC信令網(wǎng)關(guān)設備的注冊和會話請求消息。
[0121 ] S402、該WEBRTC服務器向該主叫終端返回接入碼和第一 WEBRTC信令網(wǎng)關(guān)設備的IP地址。
[0122]該WEBRTC服務器可以通過負載均衡和就近原則向該主叫終端分配WEBRTC信令網(wǎng)關(guān)設備,該WEBRTC服務器返回的WEBRTC信令網(wǎng)關(guān)設備的IP地址可能是一個,也可能是一個列表,由該主叫終端根據(jù)本地策略選擇接入的WEBRTC信令網(wǎng)關(guān)設備,該主叫終端確定接入的WEBRTC信令網(wǎng)關(guān)設備即為第一 WEBRTC信令網(wǎng)關(guān)設備。
[0123]S403、該主叫終端根據(jù)該第一 WEBRTC信令網(wǎng)關(guān)設備的IP地址向該第一 WEBRTC信令網(wǎng)關(guān)設備發(fā)送注冊請求消息。
[0124]其中,所述注冊請求消息攜帶該接入碼。
[0125]S404、該第一 WEBRTC信令網(wǎng)關(guān)設備向該WEBRTC服務器發(fā)送驗證消息。
[0126]其中,該驗證消息攜帶該接入碼。
[0127]S405、該WEBRTC服務器在確定該接入碼為該WEBRTC服務器分配至該主叫終端的接入碼時,存儲該主叫終端標識、該第一 WEBRTC信令網(wǎng)關(guān)設備的網(wǎng)關(guān)標識和該主叫終端接入該第一 WEBRTC信令網(wǎng)關(guān)設備的接入方式三者之間的對應關(guān)系。
[0128]S406、該WEBRTC服務器向該第一 WEBRTC信令網(wǎng)關(guān)設備發(fā)送該主叫終端的MPU和該主叫終端的頂PI。
[0129]S407、該第一 WEBRTC信令網(wǎng)關(guān)設備根據(jù)該MPU和該MPI將該注冊請求消息發(fā)送至MS信令網(wǎng)關(guān)設備。
[0130]S408、該MS信令網(wǎng)關(guān)設備向該第一 WEBRTC信令網(wǎng)關(guān)設備發(fā)送注冊響應消息。
[0131]S409、該第一 WEBRTC信令網(wǎng)關(guān)設備向該主叫終端發(fā)送該注冊響應消息。
[0132]需要說明的是,步驟S401至步驟S409為主叫終端注冊MS網(wǎng)絡的過程,該主叫終端通過該MS網(wǎng)絡建立與被叫終端之間的媒體通道執(zhí)行步驟S410至步驟S419。
[0133]S410、該主叫終端向該第一 WEBRTC信令網(wǎng)關(guān)設備發(fā)送會話請求消息。
[0134]其中,該會話請求消息包括被叫終端標識。
[0135]S411、該第一 WEBRTC信令網(wǎng)關(guān)設備向該WEBRT