一種基于Web RTC多方通話建立的方法、設備和系統(tǒng)的制作方法
【技術領域】
[0001] 本發(fā)明涉及通信領域,尤其涉及一種基于WebRTC多方通話建立的方法、設備和系 統(tǒng)。
【背景技術】
[0002] 當前由雙方通話變更為多方通話的方法主要通過終端混音模式和會場混音模式 實現(xiàn),其中前者主要應用與參與人數(shù)較少的例如雙方通話變更為H方通話的場景,而后者 則應用于較多人數(shù)參與的場景。
[0003] 終端混音模式的實現(xiàn)是在業(yè)務方A與用戶B處于通話保持狀態(tài),同時與用戶C正 在通話時,通過用戶A的終端設備分別將A與B、A與C的媒體流進行混音,接著將混音后的 媒體流再分別發(fā)送至用戶B和用戶C,使得用戶B和用戶C能夠接收到A與C、A與B的圖 像和聲音,從而間接實現(xiàn)H方通話的效果。
[0004] 會場混音模式的實現(xiàn)是有業(yè)務方A與用戶B處于通話保持狀態(tài),同時與用戶C正 在通話時,業(yè)務方A首先通過會場服務器(MediaResourceServer,MRS)申請多方會議的 會場資源,接著將A與B、A與C的通話分別通過會話重協(xié)商,分別轉(zhuǎn)移到與會場服務器建立 的媒體通道中,最終通過與會場服務器的連接,實現(xiàn)多方通話的效果。
[0005] 雖然上述的終端混音模式和會場混音模式均能實現(xiàn)有雙方通話變更為多方通話 的要求,但是前者需要能夠進行本地混音的終端設備的支持,并且如果進行的多方通話中 包含視頻時,會對混音設備的性能有很高的要求;后者的實現(xiàn)更是需要MRS的支持,否則 無法實現(xiàn),進一步的,通過會場混音模式實現(xiàn)多方通話每一次都需要申請會場資源,步驟繁 瑣,當由多方通話恢復成雙方通話時,申請的會場資源也不能及時釋放,導致資源浪費。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明的實施例提供一種基于WebRTC多方通話建立的方法、設備和系統(tǒng),能夠降 低由于進行本地混音造成的對設備性能較高的要求,還可W無需聯(lián)系會場服務器進行繁瑣 的會場資源申請,進一步節(jié)省當多方通話恢復成雙方通話時造成的會場資源的浪費,最終 減少了多方通話的建立步驟,提高了通信資源的使用效率。
[0007] 為達到上述目的,本發(fā)明的實施例采用如下技術方案:
[0008] 第一方面,提供一種基于WebRTC多方通話建立的方法,所述方法包括:
[0009] 接收正在通話的第一用戶發(fā)送的多方通話建立請求,所述請求包括第一擴展消 息,所述第一擴展消息中有待與所述第一用戶建立多方通話的第二用戶的信息;
[0010] 判斷所述第一用戶建立所述多方通話的權(quán)限;
[0011] 當所述第一用戶具有建立所述多方通話的權(quán)限時,向所述第一用戶發(fā)送確認建立 所述多方通話的第二擴展消息,并向與所述第一用戶正在通話的第H用戶發(fā)送第H擴展消 息,所述第H擴展消息中包括參加所述多方通話成員的列表信息;
[0012] 向所述第二用戶發(fā)送加入所述多方通話的請求,所述請求中包括參加所述多方通 話成員的列表信息;
[0013] 接收所述第二用戶發(fā)送的確認加入的信息;
[0014] 分別在所述第一用戶與所述第二用戶間、所述第H用戶與所述第二用戶間建立用 于多方通話的媒體通道;
[0015] 通過已經(jīng)建立的所述用于多方通話的媒體通道,進行所述多方通話。
[0016] 在第一種可能的實現(xiàn)方式中,結(jié)合第一方面,所述多方通話至少包括音頻流和視 頻流的傳輸。
[0017] 在第二種可能的實現(xiàn)方式中,結(jié)合第一方面,所述方法還包括:
[0018] 當所述多方通話基于會話發(fā)起協(xié)議(SessionInitiationProtocol,SIP)時,所 述第一擴展消息、所述第二擴展消息、所述第H擴展消息為基于所述SIP的擴展消息。
[0019] 在第H種可能的實現(xiàn)方式中,結(jié)合第一方面,所述第二用戶為至少一個用戶終端。
[0020] 第二方面,提供一種基于WebRTC多方通話建立的方法,所述方法包括:
[0021] 向應用服務器發(fā)送多方通話建立請求,所述請求包括第一擴展消息,所述第一擴 展消息中待建立多方通話的第二用戶的消息;
[0022] 接收所述應用服務器發(fā)送的確認建立多方通話的第二擴展消息;
[0023] 建立與所述第二用戶的用于多方通話的媒體通道;
[0024] 通過所述媒體通道進行多方通話。
[0025] 在第一種可能的實現(xiàn)方式中,結(jié)合第二方面,所述建立與所述第二用戶的用于多 方通話的媒體通道包括:
[0026]向所述第二用戶發(fā)送建立所述媒體通道的邀請信息;
[0027]接收所述第二用戶發(fā)送的回復邀請的信息,建立與所述第二用戶的媒體通道。
[0028] 在第二種可能的實現(xiàn)方式中,結(jié)合第二方面,所述方法包括:
[0029] 獲取本地的媒體流,保存所述本地的媒體流;
[0030] 將所述本地的媒體流通過與所述第二用戶間的媒體通道發(fā)送至所述第二用戶,從 與所述第二用戶間的媒體通道接收所述第二用戶的媒體流。
[0031] 在第H種可能的實現(xiàn)方式中,結(jié)合第二方面,所述方法還包括:
[0032] 將所述本地的媒體流通過與第H用戶間的媒體通道發(fā)送至所述第H用戶,從與所 述第H用戶間的媒體通道接收所述第H用戶的媒體流。
[0033] 第H方面,提供一種基于WebRTC多方通話的設備,所述設備包括:
[0034] 第一接收單元,用于接收正在通話的第一用戶發(fā)送的多方通話建立請求,所述請 求包括第一擴展消息,所述第一擴展消息中有待與所述第一用戶建立多方通話的第二用戶 的信息;
[00巧]權(quán)限判斷單元,用于判斷所述第一用戶建立所述多方通話的權(quán)限;
[0036] 第一消息發(fā)送單元,用于當所述第一用戶具有建立所述多方通話的權(quán)限時,向所 述第一用戶發(fā)送確認建立所述多方通話的第二擴展消息,并向與所述第一用戶正在通話 的第H用戶發(fā)送第H擴展消息,所述第H擴展消息中包括參加所述多方通話成員的列表信 息;
[0037] 第一請求發(fā)送單元,用于向所述第二用戶發(fā)送加入所述多方通話的請求,所述請 求中包括參加所述多方通話成員的列表信息,并接收所述第二用戶發(fā)送的確認加入的信 息;
[0038] 第一通道建立單元,用于分別在所述第一用戶與所述第二用戶間、所述第H用戶 與所述第二用戶間建立用于多方通話的媒體通道;
[0039] 第一多方通話單元,用于通過已經(jīng)建立的所述用于多方通話的媒體通道,進行所 述多方通話。
[0040] 在第一種可能的實現(xiàn)方式中,結(jié)合第H方面,所述多方通話至少包括音頻流和視 頻流的傳輸。
[0041] 在第二種可能的實現(xiàn)方式中,結(jié)合第H方面,在所述設備中,當所述多方通話基于 會話發(fā)起協(xié)議(SessionInitiationProtocol,SIP)時,所述第一擴展消息、所述第二擴展 消息、所述第H擴展消息為基于所述SIP的擴展消息。
[0042] 在第H種可能的實現(xiàn)方式中,結(jié)合第H方面,所述第二用戶為至少一個用戶終端。
[0043] 第四方面,提供一種基于WebRTC多方通話建立的系統(tǒng),所述設備至少包括:
[0044] 如第一方面所示的會議應用服務器,或如第H方面所述的會議應用服務器;
[0045] 如第二方面所示的第一用戶。
[0046] 本發(fā)明實施例提供一種基于WebRTC多方通話建立的方法、設備和系統(tǒng),通過第 一用戶向會議應用服務器發(fā)送建立多方通話的請求,會議應用服務器判斷第一用戶是否有 建立多方通話的權(quán)限,在確定第一用戶具有建立多方通話的請求后,向待參加多方通話的 用戶發(fā)送加入多方會議的請求并附帶有該多方通話的成員列表信息,W便于其他用戶對是 否加入多方通話進行判斷,待其他用戶向會議應用服務器發(fā)送加入多方會議的信息后,令 第一用戶向其他用戶發(fā)送建立媒體通道的邀請,并在其他用戶回復接收建立媒體通道的信 息,從而成功建立第一用戶與其他用戶的媒體通道。最終通過建立的媒體通道,并結(jié)合媒體 流復用W及瀏覽器內(nèi)音視頻標簽的技術,從而實現(xiàn)多方通話;能夠降低由于進行本地混音 造成的對設備性能較高的要求,還可W無需聯(lián)系會場服務器進行繁瑣的會場資源申請,進 一步節(jié)省當多方通話恢復成雙方通話時造成的會場資源的浪費,最終減少了多方通話的建 立步驟,