是用作瀏覽器308的查找。這 個信息被瀏覽器308或CEJavaScript庫188自身用來與WebRTC網(wǎng)關212建立連接(步驟 532)。
[0104] 當CE 136確定瀏覽器308已經(jīng)由WebRTC網(wǎng)關212連接到它時,方法繼續(xù)由CE 136 將瀏覽器308作為在企業(yè)通信設備上通信的企業(yè)用戶呈現(xiàn)給企業(yè)網(wǎng)絡304(步驟536)。換 言之,CE 136以使得網(wǎng)絡304不知曉瀏覽器308在經(jīng)由WebRTC通信的方式將瀏覽器308 及其用戶呈現(xiàn)給企業(yè)網(wǎng)絡304。網(wǎng)絡304而是被允許利用原生協(xié)議(例如,SIP、H. 323,等 等)并且操作瀏覽器308的用戶被視為就好像他/她在使用使能了 SIP或H. 323的通信設 備一樣。類似地,CE 136內的應用152將瀏覽器308視為端點,并且不考慮在瀏覽器308與 WebRTC網(wǎng)關212之間采用的協(xié)議。
[0105] 圖6描繪了從CE 136來看的通信方法。當CE 136接收到來自web應用184的發(fā)起 或"發(fā)出"呼叫的請求時(步驟604),該方法開始。然后,CE 136和/或通信服務器128檢 查從瀏覽器308接收的呼叫請求或信令以確定主叫和/或被叫方的通信偏好(步驟608)。 在一些實施例中,該分析可基于先前經(jīng)由瀏覽器308向CE 136注冊的用戶來執(zhí)行(例如, 分析向CE 136注冊瀏覽器308的用戶的呼叫偏好)。
[0106] 基于步驟608的分析,選擇一個或多個企業(yè)應用152來并入到通信會話中(步驟 612)。CE 136能夠在內部和/或經(jīng)由企業(yè)網(wǎng)絡304調用這種應用152,就好像呼叫是由電 話發(fā)起的那樣(步驟616)。從而,應用152可以是為SIP和/或H. 323開發(fā)的,但仍可被用 在WebRTC呼叫中。
[0107] CE 136還可調用應用媒體服務器156來將WebRTC流轉換成SIP/H. 323兼容的 RTP(步驟620)。然而,應當注意,應用媒體服務器156對于原生操作模式中的簡單呼叫不 是必要的,雖然其仍可用于諸如播放通告之類的特征。如果應用媒體服務器156被調用,則 當其被調用時,CE 136通過對任何額外的應用定序并經(jīng)由應用媒體服務器156建立媒體路 徑來完成呼叫構造(步驟624)。此時,在瀏覽器308 (或者具體而言是使用瀏覽器308的客 戶端112)與另一設備之間建立了通信會話,該另一設備可以是另一瀏覽器308或通信設備 160。
[0108] 現(xiàn)在參考圖7-9,將根據(jù)本公開的至少一些實施例來描述CE 136在原生模式中操 作的能力的額外細節(jié)。具體而言,圖7描繪了與圖2和3類似的體系結構,其中協(xié)議適配器 212、216都是WebRTC網(wǎng)關704、708。WebRTC網(wǎng)關704、708用于促進瀏覽器到瀏覽器通信會 話。通信會話中涉及的瀏覽器可以是內部瀏覽器168、外部瀏覽器116或者其組合。在一 些實施例中,因為通信會話僅涉及瀏覽器308,所以CE 136被使能在原生操作模式中操作。 換言之,CE 136不必利用SEA來向企業(yè)通信網(wǎng)絡呈現(xiàn)瀏覽器。通信會話的處理和應用定序 而是可以完全在CE 136的邊界內發(fā)生。換言之,協(xié)議無關特征調用器220可以僅經(jīng)由呼叫 /媒體API 208來調用原生應用152。
[0109] 圖8描繪了與圖4類似的體系結構。同樣,CE 136促進了瀏覽器704、708之間的 瀏覽器到瀏覽器通信會話,瀏覽器704、708可與圖7中描繪和描述的瀏覽器308相似或相 同。當在這個原生模式中操作時,CE 136能夠繞過端點適配器420并且所有應用定序和處 理都在CE136內部發(fā)生。從而,當CE 136在原生模式中操作時,只有內部應用152被以協(xié) 議無關方式調用。在這個操作模式中不要求會話管理器436和到企業(yè)網(wǎng)絡304的連接。
[0110] 現(xiàn)在參考圖9,將根據(jù)本公開的實施例來描述在CE 136處調用原生或非原生操作 模式的方法。在瀏覽器308向CE 136注冊之后,當在CE 136處接收到發(fā)出呼叫請求時(步 驟904),該方法開始。CE 136隨后分析呼叫請求并確定呼叫請求是由瀏覽器308作出的還 是針對瀏覽器308和/或呼叫請求是否來自或針對傳統(tǒng)電話(例如,SIP使能的或H. 323使 能的電話)(步驟908)。如果CE 136確定呼叫將要包括兩個瀏覽器308 (例如,呼叫將不涉 及諸如SIP或H. 323之類的傳統(tǒng)通信協(xié)議),則CE 136開始在原生操作模式中操作(步驟 912)。當在原生操作模式中時,CE 136使用其原生接口(例如,協(xié)議無關特征調用器220、 呼叫/媒體API 208和/或特征調用器428)來以協(xié)議無關方式訪問內部應用152 (步驟 916)。
[0111] 返回參考步驟908,如果呼叫不涉及WebRTC,則CE 136將調用傳統(tǒng)操作模式(步 驟920)并且如同普通呼叫那樣訪問企業(yè)應用152 (步驟924)。
[0112] 在步驟916或924之后,方法繼續(xù)由CE 136可選地調用應用媒體服務器156(步驟 928)并且完成呼叫構造以便在參與者的通信端點之間建立媒體路徑,這些通信端點可以是 基于瀏覽器的、是電話或者是其組合(步驟932)。如上所述,應用152中的一個或多個可 能夠經(jīng)由應用媒體服務器156訪問通信會話的媒體,但這是一個并非一定要遵循的可選步 驟。
[0113] 在以上描述中,為了說明,按特定順序描述了方法。應當明白,在替換實施例中,可 按與所描述的順序不同的順序來執(zhí)行方法。還應當明白,以上描述的方法可由硬件組件執(zhí) 行或者可實現(xiàn)為機器可執(zhí)行指令的序列,這些機器可執(zhí)行指令的序列可用于使得諸如通用 或專用處理器(GPU或CPU)或以指令編程的邏輯電路之類的機器執(zhí)行這些方法(FPGA)。這 些機器可執(zhí)行指令可被存儲在一個或多個機器可讀介質上,例如CD-ROM或其他類型的光 盤、軟盤、ROM、RAM、EPROM、EEPR0M、磁卡或光卡、閃存或者其他類型的適用于存儲電子指令 的機器可讀介質?;蛘撸椒捎捎布蛙浖慕M合來執(zhí)行。
[0114] 在描述中給出了具體細節(jié)以提供對實施例的透徹理解。然而,本領域普通技術人 員將會理解,沒有這些具體細節(jié)也可實現(xiàn)實施例。例如,可以用框圖來示出電路以免以不必 要的細節(jié)模糊實施例。在其他情況下,可以在沒有不必要的細節(jié)的情況下示出公知的電路、 過程、算法、結構和技術以避免模糊實施例。
[0115] 另外,要注意,實施例被描述為過程,該過程被描繪為流程圖、數(shù)據(jù)流圖、結構圖或 框圖。雖然流程圖可將操作描述為順序的過程,但許多操作可并行或同時執(zhí)行。此外,可以 重安排操作的順序。過程在其操作完成時終止,但可具有圖中未包括的額外步驟。過程可 對應于方法、函數(shù)、流程、子例程、子程序等等。當過程對應于函數(shù)時,其終止對應于該函數(shù) 返回到作出調用的函數(shù)或主函數(shù)。
[0116] 另外,實施例可由硬件、軟件、固件、中間件、微代碼、硬件描述語言或者其任何組 合來實現(xiàn)。當以軟件、固件、中間件或微代碼來實現(xiàn)時,執(zhí)行必要任務的程序代碼或代碼片 段可被存儲在諸如存儲介質之類的機器可讀介質中。(一個或多個)處理器可執(zhí)行必要的 任務。代碼片段可表示流程、函數(shù)、子程序、程序、例程、子例程、模塊、軟件包、類或者指令、 數(shù)據(jù)結構或程序語句的任何組合。代碼片段可通過傳遞和/或接收信息、數(shù)據(jù)、參量、參數(shù) 或存儲器內容來耦合到另一代碼片段或硬件電路。信息、參量、參數(shù)、數(shù)據(jù)等等可經(jīng)由任何 適當?shù)氖侄蝸韨鬟f、轉發(fā)或傳送,包括存儲器共享、消息傳遞、令牌傳遞、網(wǎng)絡傳送,等等。
[0117] 雖然本文已詳細描述了本公開的說明性實施例,但要理解,發(fā)明構思可以另由各 種方式來實現(xiàn)和使用,并且所附權利要求希望被解釋為包括這種變化,除非受到現(xiàn)有技術 所限。
【主權項】
1. 一種方法,包括: 在瀏覽器與一個或多個應用之間提供協(xié)議無關通信接口;以及 使得所述瀏覽器能夠利用基于web的通信協(xié)議來進行通信會話并且在所述通信會話 期間能夠訪問所述一個或多個應用,而不將所述一個或多個應用暴露給所述基于web的通 協(xié)議。
2. 如權利要求1所述的方法,還包括: 確定是在原生模式還是傳統(tǒng)模式中操作支持所述協(xié)議無關通信接口的協(xié)作環(huán)境。
3. 如權利要求2所述的方法,還包括: 調用所述協(xié)作環(huán)境來在所述原生模式中操作;以及 響應于調用所述協(xié)作環(huán)境來在所述原生模式中操作,將一個或多個應用定序到所述通 信會話中,其中定序的一個或多個應用被包含在所述協(xié)作環(huán)境內。
4. 如權利要求2所述的方法,還包括: 調用所述協(xié)作環(huán)境來在所述傳統(tǒng)模式中操作;以及 響應于調用所述協(xié)作環(huán)境來在所述傳統(tǒng)模式中操作,使得企業(yè)通信網(wǎng)絡將一個或多個 應用定序到所述通信會話中,其中定序的一個或多個應用中的至少一些在所述協(xié)作環(huán)境的 外部并且以除了所述基于web的通信協(xié)議以外的協(xié)議原生操作。
5. 如權利要求2所述的方法,其中,所述一個或多個應用被包含在所述協(xié)作環(huán)境內并 且是協(xié)議無關的。
6. 如權利要求2所述的方法,其中,由所述協(xié)作環(huán)境內包含的協(xié)議無關特征調用器確 定應用序列,并且其中,所述協(xié)議無關特征調用器被配置為經(jīng)由協(xié)議無關呼叫/媒體應用 編程接口(API)來調用所述一個或多個應用。
7. 如權利要求2所述的方法,其中,所述確定是取決于檢測到在所述通信會話中涉及 的端點的類型來逐個呼叫地進行的。
8. 如權利要求1所述的方法,其中,所述基于web的通信協(xié)議包括Web實時通信WebRTC 協(xié)議,其中所述一個或多個應用未被配置為支持所述基于web的通信協(xié)議,并且其中,所述 一個或多個應用向所述瀏覽器提供包括從以下選擇的一個或多個豐富統(tǒng)一通信操作的通 信特征:呼叫轉移、呼叫前轉、會議、加入呼叫、記錄呼叫以及阻止呼叫。
9. 一種通信網(wǎng)絡,包括: 協(xié)作環(huán)境,其包括: 一個或多個應用;以及 瀏覽器與所述一個或多個應用之間的協(xié)議無關通信接口,被配置為使得瀏覽器能夠利 用基于web的通信協(xié)議來進行通信會話并且在所述通信會話期間能夠訪問所述一個或多 個應用,而不將所述一個或多個應用暴露給所述基于web的通信協(xié)議。
10. 如權利要求9所述的網(wǎng)絡,其中,由所述協(xié)作環(huán)境內包含的協(xié)議無關特征調用器確 定應用序列,并且其中,所述協(xié)議無關特征調用器被配置為經(jīng)由協(xié)議無關呼叫/媒體應用 編程接口 API來調用所述一個或多個應用,并且其中,所述協(xié)作環(huán)境還包括協(xié)作總線并且 其中所述基于web的通信協(xié)議包括Web實時通信WebRTC協(xié)議。
【專利摘要】本發(fā)明涉及使能用于不同通信協(xié)議的通信特征的應用編程接口。描述了用于使得能夠以企業(yè)通信特征來增強瀏覽器到電話和瀏覽器到瀏覽器通信的系統(tǒng)和方法。具體而言,公開了具有將瀏覽器與企業(yè)通信網(wǎng)絡相接口的能力的協(xié)作環(huán)境。協(xié)作環(huán)境經(jīng)由媒體服務器和/或web套接字被暴露給瀏覽器并且被使得能夠經(jīng)由特制的庫與瀏覽器通信。
【IPC分類】H04L29-06, H04L29-08
【公開號】CN104580137
【申請?zhí)枴緾N201410543491
【發(fā)明人】J·M·艾在爾
【申請人】阿瓦亞公司
【公開日】2015年4月29日
【申請日】2014年10月15日
【公告號】US20140280987, US20140280995