欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于WebRTC技術(shù)即時(shí)消息的通信方法與流程

文檔序號(hào):12692880閱讀:511來(lái)源:國(guó)知局
一種基于WebRTC技術(shù)即時(shí)消息的通信方法與流程

本發(fā)明涉及計(jì)算機(jī)通信領(lǐng)域,更具體地說(shuō),涉及基于WebRTC的DataChannel技術(shù)實(shí)現(xiàn)即時(shí)消息IM的方法及系統(tǒng)。



背景技術(shù):

WebRTC(Web Real-Time Communication,實(shí)時(shí)通信),是一個(gè)基于瀏覽器的實(shí)時(shí)多媒體通信技術(shù)。該項(xiàng)技術(shù)旨在使 Web 瀏覽器具備實(shí)時(shí)通信能力,同時(shí),通過(guò)將這些能力封裝并以 JavaScript API 的方式開(kāi)放給 Web 應(yīng)用開(kāi)發(fā)人員,使得 Web 應(yīng)用開(kāi)發(fā)人員能夠通過(guò) HTML 標(biāo)簽和 JavaScript API 快速地開(kāi)發(fā)出基于 Web 瀏覽器的實(shí)時(shí)音視頻應(yīng)用,而無(wú)需賴任何第三方插件。本文提及的能夠進(jìn)行WebRTC通信的終端稱為WebRTC終端。這樣WebRTC技術(shù)使得支持WebRTC功能的瀏覽器之間可以進(jìn)行直接的Web通信,從而改變了終端瀏覽器與服務(wù)器原有的Client/Server工作模式,可以讓W(xué)eb進(jìn)行端對(duì)端通信,是對(duì)Web技術(shù)的一大創(chuàng)新。WebRTC終端采用流控制傳輸協(xié)議SCTP(Stream Control Transmission Protocol)作為數(shù)據(jù)的傳輸協(xié)議,該協(xié)議可以對(duì)傳輸數(shù)據(jù)進(jìn)行流量控制和擁塞控制。

該項(xiàng)技術(shù)將 Web 瀏覽器打造成一個(gè)適用于在所有用戶設(shè)備,比如移動(dòng)智能終端和個(gè)人電腦等之間,進(jìn)行實(shí)時(shí)的音視頻和數(shù)據(jù)通信的通用平臺(tái)。在本本發(fā)明的說(shuō)明中,我們僅關(guān)注數(shù)據(jù)通信部分。

IP多媒體子系統(tǒng)(IP Multimedia Subsystem,IMS)是一種基于IP網(wǎng)絡(luò)支持多媒體業(yè)務(wù)的網(wǎng)絡(luò)架構(gòu),采用SIP會(huì)話初始協(xié)議(Session Initiation Protocol)進(jìn)行端到端的呼叫控制,符合SIP協(xié)議的終端稱為SIP終端。SIP終端可以通過(guò)SIP Message方法進(jìn)行即時(shí)消息傳遞。

在VoIP系統(tǒng)中,已經(jīng)部署了很多SIP終端,而新增加的WebRTC終端與SIP終端間可以進(jìn)行語(yǔ)音和視頻通信,對(duì)于即時(shí)消息的傳遞無(wú)法實(shí)現(xiàn)。它們之間需要一個(gè)中轉(zhuǎn)服務(wù)器來(lái)實(shí)現(xiàn)兩個(gè)網(wǎng)絡(luò)的數(shù)據(jù)承載協(xié)議和數(shù)據(jù)的加密/解密等的轉(zhuǎn)換,從而實(shí)現(xiàn)WebRTC終端和SIP終端即時(shí)消息的互通。

兩個(gè)WebRTC終端間的即時(shí)消息的傳遞,需要借助一個(gè)信令服務(wù)器來(lái)完成的。信令服務(wù)器為兩個(gè)WebRTC之間的DataChannel的建立提供了一個(gè)橋梁,通過(guò)該信令服務(wù)器,雙方交互SDP信息,最終,使得兩個(gè)WebRTC終端建立端對(duì)端的DataChannel連接,通過(guò)該DataChannel通道,它們就可以相互發(fā)送可靠的、加密的即時(shí)消息。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明的目的在于實(shí)現(xiàn)一種基于WebRTC技術(shù)即時(shí)消息的通信方法,可以集信令服務(wù)器與中轉(zhuǎn)服務(wù)器為一體的服務(wù)端,為WebRTC終端與SIP終端發(fā)送即時(shí)消息提供了一種方法及系統(tǒng)。

為了實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明的技術(shù)方案如下:

一種基于WebRTC技術(shù)即時(shí)消息的通信方法,可以實(shí)現(xiàn)WebRTC終端和SIP終端之間的即時(shí)消息通信,該通信方法主要包括以下步驟: WebRTC終端進(jìn)行ICE收集地址,并將攜帶ICE候選地址的offer SDP發(fā)送給服務(wù)器;服務(wù)器解析SDP,當(dāng)發(fā)現(xiàn)被請(qǐng)求方為SIP終端時(shí),服務(wù)器啟動(dòng)中轉(zhuǎn)服務(wù)功能,產(chǎn)生攜帶ICE候選地址的answer SDP回應(yīng)WebRTC終端的請(qǐng)求,并產(chǎn)生新的offer SDP給SIP終端; WebRTC終端與服務(wù)器建立DataChannel通道的連接; WebRTC終端通過(guò)SIP Session機(jī)制向SIP終端發(fā)送即時(shí)消息。

優(yōu)選的,上述通信方法還包括:WebRTC終端與所述服務(wù)器間,需要進(jìn)行ICE校驗(yàn),來(lái)驗(yàn)證ip、port的連通性。

優(yōu)選的,上述通信方法中,服務(wù)器會(huì)將SCTP加密的消息解密后,通過(guò)SIP Session機(jī)制將所述即時(shí)消息發(fā)送給SIP終端。

優(yōu)選的,上述通信方法還包括:WebRTC終端與SIP終端均注冊(cè)到服務(wù)器。

優(yōu)選的,在實(shí)現(xiàn)通信方法過(guò)程中,SIP終端只需要注冊(cè)到服務(wù)器即可,可工作在不接通電話狀態(tài),也可工作在接通電話狀態(tài)。

優(yōu)選的,上述通信方法中,,服務(wù)器會(huì)將未加密的SIP消息加密后,再通過(guò)DataChannel發(fā)送給WebRTC終端。

優(yōu)選的,上述通信方法還包括:SIP終端與服務(wù)器建立語(yǔ)音連接通路。

優(yōu)選的,上述通信方法還包括:在服務(wù)器內(nèi)部將SIP終端的RTP數(shù)據(jù)包解析處理,再通過(guò)語(yǔ)音識(shí)別模塊將SIP終端的語(yǔ)音轉(zhuǎn)化為文字信息,最后通過(guò)DataChannel通道將即時(shí)的文字信息發(fā)送到WebRTC終端。

優(yōu)選的,上述通信方法還包括:WebRTC終端將文字信息通過(guò)SCTP協(xié)議發(fā)送給服務(wù)器,服務(wù)器對(duì)SCTP加密的消息進(jìn)行解密。

優(yōu)選的,上述通信方法還包括:服務(wù)器通過(guò)語(yǔ)音識(shí)別模塊將文字信息轉(zhuǎn)化為語(yǔ)音數(shù)據(jù),再通過(guò)所述語(yǔ)音連接通路發(fā)送給所述SIP終端。

此外,本發(fā)明還提供一種基于WebRTC技術(shù)即時(shí)消息的通信方法,可以實(shí)現(xiàn)SIP終端作為請(qǐng)求方向WebRTC終端建立通信,其特征在于,所述通信方法主要包括以下步驟:

所述SIP終端向所述WebRTC終端撥打電話,所述SIP終端首先發(fā)送請(qǐng)求信令給服務(wù)器;所述服務(wù)器會(huì)將收集ICE地址,并重新填充攜帶所述ICE候選地址的offer SDP發(fā)送給所述WebRTC終端;所述WebRTC終端收到offer后,產(chǎn)生攜帶ICE候選地址的answer SDP回應(yīng)所述服務(wù)器;在所述服務(wù)器與所述WebRTC終端間建立DataChannel通道,在所述SIP終端與服務(wù)器間建立普通的SIP session;所述服務(wù)器內(nèi)部將所述SIP終端的RTP數(shù)據(jù)包解析處理,再通過(guò)語(yǔ)音識(shí)別模塊將所述SIP終端的語(yǔ)音轉(zhuǎn)化為文字信息,最后通過(guò)所述DataChannel通道將即時(shí)的文字信息發(fā)送到所述WebRTC終端;所述服務(wù)器通過(guò)語(yǔ)音識(shí)別模塊將文字信息轉(zhuǎn)化為語(yǔ)音數(shù)據(jù),再通過(guò)所述語(yǔ)音連接通路發(fā)送給所述SIP終端。

本發(fā)明一種基于WebRTC技術(shù)即時(shí)消息的通信方法,可以為正在進(jìn)行的語(yǔ)音會(huì)話、視頻會(huì)話或會(huì)議提供即時(shí)消息的功能,給音視頻通信增加即時(shí)消息的數(shù)據(jù)通信功能,也可以創(chuàng)建獨(dú)立的DataChannel通道,無(wú)需音頻或者視頻通信,大大拓展了現(xiàn)有應(yīng)用模式,極大豐富了用戶多樣化的選擇。

附圖說(shuō)明

圖1為本發(fā)明具體實(shí)施例一示意圖;

圖2為本發(fā)明具體實(shí)施例一的信令交互示意圖;

圖3為本發(fā)明具體實(shí)施例二示意圖;

圖4為本發(fā)明具體實(shí)施例二的信令交互示意圖;

圖5為本發(fā)明具體實(shí)施例三示意圖;

圖6為本發(fā)明具體實(shí)施例中信令/中轉(zhuǎn)服務(wù)器內(nèi)部結(jié)構(gòu)圖。

具體實(shí)施方式

本發(fā)明的基本原理:基于WebRTC的DataChannel技術(shù)實(shí)現(xiàn)即時(shí)消息IM通信的方法及系統(tǒng),在兩個(gè)WebRTC終端間通過(guò)信令服務(wù)器建立端對(duì)端的DataChannel連接。而在WebRTC終端與SIP終端之間,通過(guò)中轉(zhuǎn)服務(wù)器將即時(shí)消息加密或者解密,然后SCTP與SIP協(xié)議間轉(zhuǎn)換實(shí)現(xiàn)兩個(gè)不同終端間的即時(shí)消息技術(shù)。本發(fā)明方案可為WebRTC終端間提供即時(shí)消息的功能,也可為WebRTC終端與SIP終端提供中轉(zhuǎn)即時(shí)消息的功能。

為了更清楚地說(shuō)明本發(fā)明實(shí)例的技術(shù)方案,下面將結(jié)合示例圖對(duì)本發(fā)明的實(shí)施進(jìn)行詳細(xì)的介紹,下面的描述僅僅是本發(fā)明的一些實(shí)施例。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些實(shí)施例獲得本發(fā)明的其他實(shí)施方式。

具體實(shí)施例一是本發(fā)明具體實(shí)施例中兩個(gè)WebRTC終端間的DataChannel連接的實(shí)施方案。圖1為本發(fā)明具體實(shí)施例一示意圖。圖2為本發(fā)明具體實(shí)施例一的信令交互示意圖。參考圖1和圖2,我們可知,其中文中提及的信令服務(wù)器在這里也是我們的UCM,該UCM僅僅為WebRTC終端的分機(jī)提供信令通道的功能,不會(huì)參與到即時(shí)消息的傳遞的環(huán)節(jié)。

兩個(gè)WebRTC終端均注冊(cè)到信令服務(wù)器中,其中,一個(gè)WebRTC終端可以向另一個(gè)WebRTC終端請(qǐng)求DataChannel連接。

首先,請(qǐng)求方會(huì)調(diào)用WebRTC模塊的PeerConnection接口,創(chuàng)建出peerconnection對(duì)象,接著調(diào)用該對(duì)象的createDataChannel方法創(chuàng)建一個(gè)DataChannel。

然后,請(qǐng)求方WebRTC終端開(kāi)始收集ICE候選地址,當(dāng)系統(tǒng)中部署了stun server時(shí),會(huì)向stun server發(fā)送binding請(qǐng)求,獲取WebRTC終端的公網(wǎng)地址。當(dāng)完成了ICE地址收集后,會(huì)將攜帶著ICE候選地址的offer SDP發(fā)送給信令/中轉(zhuǎn)服務(wù)器,接著服務(wù)器會(huì)將該SDP透?jìng)鹘o被請(qǐng)求方WebRTC終端。

被請(qǐng)求方WebRTC終端會(huì)產(chǎn)生攜帶著ICE候選地址的answer SDP,發(fā)送給信令/中轉(zhuǎn)服務(wù)器,接著服務(wù)器會(huì)將該SDP透?jìng)鹘o請(qǐng)求方WebRTC終端。

當(dāng)請(qǐng)求方WebRTC終端收到answer SDP后,會(huì)跟被請(qǐng)求方進(jìn)行ICE校驗(yàn),來(lái)驗(yàn)證SDP協(xié)商的UDP端口是否可用,如果可以使用,則會(huì)在兩個(gè)WebRTC終端間建立DataChannel通道。

最后,任意一方WebRTC終端可以給另一方發(fā)送即時(shí)消息。

在本發(fā)明具體實(shí)施例中提及的信令/中轉(zhuǎn)服務(wù)器均特指的是UCM,它既做信令服務(wù)器,也做中轉(zhuǎn)服務(wù)器。它做信令服務(wù)器時(shí),對(duì)WebRTC和SIP終端發(fā)來(lái)的信令進(jìn)行解析,并做相應(yīng)的動(dòng)作;它做中轉(zhuǎn)服務(wù)器時(shí),承擔(dān)音視頻和消息的網(wǎng)關(guān)服務(wù)功能,對(duì)WebRTC終端和SIP終端的消息進(jìn)行加密、解密等工作。

具體實(shí)施例二是本發(fā)明具體實(shí)施例中WebRTC終端向SIP終端請(qǐng)求即時(shí)消息功能的實(shí)施方案。圖3為本發(fā)明具體實(shí)施例二示意圖。圖4為本發(fā)明具體實(shí)施例二的信令交互示意圖。參考圖3和圖4,可知此時(shí)方案主要包括以下一些實(shí)現(xiàn)操作:

WebRTC終端與SIP終端均注冊(cè)到信令/中轉(zhuǎn)服務(wù)器。

WebRTC終端完成ICE收集地址后,將攜帶ICE候選地址的offer SDP發(fā)送給信令/中轉(zhuǎn)服務(wù)器,由其解析SDP,發(fā)現(xiàn)被請(qǐng)求方為SIP終端。

此時(shí),信令/中轉(zhuǎn)服務(wù)器需要中轉(zhuǎn)服務(wù)器的功能,產(chǎn)生攜帶ICE候選地址的answer SDP回應(yīng)請(qǐng)求WebRTC終端;并產(chǎn)生新的offer SDP發(fā)送給SIP終端;

在WebRTC終端與信令/中轉(zhuǎn)服務(wù)器間,需要進(jìn)行ICE校驗(yàn),來(lái)驗(yàn)證IP、PORT的連通性。

完成ICE校驗(yàn)后,在WebRTC終端與信令/中轉(zhuǎn)服務(wù)器間建立了DataChannel通道的連接。

在SIP終端與信令/中轉(zhuǎn)服務(wù)器間,就是普通的SIP Session。

當(dāng)WebRTC終端向SIP終端發(fā)送即時(shí)消息時(shí),信令/中轉(zhuǎn)服務(wù)器會(huì)將SCTP加密的消息解密后,通過(guò)SIP Session機(jī)制發(fā)送給SIP終端。此時(shí)的SIP終端只需要注冊(cè)到信令/中轉(zhuǎn)服務(wù)器即可,可工作在不接通電話狀態(tài),也可工作在接通電話狀態(tài)。SIP Session的消息機(jī)制中, SIP終端可以在語(yǔ)音連接通路時(shí),通過(guò)SIP Session的消息機(jī)制與UCM傳輸文字信息;也可以在未打通語(yǔ)音電話時(shí),通過(guò)SIP Session的消息機(jī)制與UCM互傳文字信息

當(dāng)SIP終端向WebRTC終端發(fā)送即時(shí)消息時(shí),信令/中轉(zhuǎn)服務(wù)器會(huì)將未加密的SIP消息加密后,再通過(guò)DataChannel發(fā)送給WebRTC終端。

在WebRTC終端與SIP終端的即時(shí)消息功能中,需要信令/中轉(zhuǎn)服務(wù)器對(duì)數(shù)據(jù)承載協(xié)議和加密類型等進(jìn)行轉(zhuǎn)換。

同理,SIP終端也是可以向WebRTC終端請(qǐng)求即時(shí)消息功能的實(shí)施。

具體實(shí)施例三是本發(fā)明具體實(shí)施例中SIP終端與WebRTC終端實(shí)現(xiàn)語(yǔ)音與消息交互的實(shí)施方案。圖5為本發(fā)明具體實(shí)施例三示意圖。此時(shí)方案主要包括以下一些步驟來(lái)實(shí)現(xiàn)操作:

WebRTC終端與SIP終端均注冊(cè)到信令/中轉(zhuǎn)服務(wù)器。

該方案的注冊(cè)與ICE候選地址收集流程與具體實(shí)施例二相同,同時(shí)在完成ICE校驗(yàn)后,在WebRTC終端與信令/中轉(zhuǎn)服務(wù)器間建立了DataChannel通道連接。

在SIP終端與信令/中轉(zhuǎn)服務(wù)器間,就是普遍的SIP會(huì)話。

而與具體實(shí)施例二不同的是,具體實(shí)施例三這邊的SIP終端必須打通與信令/中轉(zhuǎn)服務(wù)器的語(yǔ)音通話,也就是說(shuō)要建立audio RTP語(yǔ)音連接通路。在信令/中轉(zhuǎn)服務(wù)器內(nèi)部將SIP終端的RTP數(shù)據(jù)包解析處理,再通過(guò)語(yǔ)音識(shí)別模塊將SIP終端的語(yǔ)音轉(zhuǎn)化為文字信息,最后通過(guò)DataChannel模塊通道將即時(shí)的文字信息發(fā)送到WebRTC終端。圖6為本發(fā)明具體實(shí)施例中信令/中轉(zhuǎn)服務(wù)器內(nèi)部結(jié)構(gòu)圖。如圖所示,在本發(fā)明具體實(shí)施例三中,信令/中轉(zhuǎn)服務(wù)器內(nèi)部包括:信令處理模塊、加密/解密模塊、橋接模塊、語(yǔ)音識(shí)別模塊、WebRTC DataChannle模塊、SIP模塊,其中語(yǔ)音識(shí)別模塊用于實(shí)現(xiàn)上述語(yǔ)音轉(zhuǎn)化文字功能。

而在WebRTC終端可以將文字信息通過(guò)SCTP協(xié)議發(fā)送給信令/中轉(zhuǎn)服務(wù)器,在信令/中轉(zhuǎn)服務(wù)器這邊先對(duì)SCTP加密的消息進(jìn)行解密,再通過(guò)語(yǔ)音識(shí)別模塊將文字信息轉(zhuǎn)化為語(yǔ)音數(shù)據(jù),通過(guò)audio RTP發(fā)送給SIP終端。

這樣,就可以實(shí)現(xiàn)SIP終端與WebRTC終端的消息與語(yǔ)音的實(shí)時(shí)交互。

以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。

當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
潮安县| 淳安县| 镇宁| 宿迁市| 五家渠市| 黄龙县| 汉沽区| 灵璧县| 自贡市| 日土县| 乡城县| 抚远县| 睢宁县| 潞城市| 辽宁省| 克什克腾旗| 双峰县| 新安县| 东兴市| 临漳县| 闸北区| 海伦市| 绍兴市| 唐海县| 通渭县| 嫩江县| 鄂伦春自治旗| 江油市| 根河市| 商南县| 晋城| 疏附县| 三江| 泽普县| 赣州市| 江阴市| 开封县| 马关县| 青川县| 渝中区| 怀仁县|