專利名稱::在電路交換呼叫和視頻呼叫之間轉(zhuǎn)換的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明的實施例涉及計算機(jī)網(wǎng)絡(luò)領(lǐng)域,特別是在電路交換呼叫(circuitswitchedcall)和視頻呼叫之間的轉(zhuǎn)換。
背景技術(shù):
:許多提供在線通信會話(例如即時通信、視頻會議等)的實現(xiàn)方式需要計算設(shè)備的用戶安裝軟件和/或注冊該服務(wù)。因此,作為用戶與另一個用戶建立在線通信會話的前提,兩個用戶必須都注冊和/或安裝相同的軟件。許多實現(xiàn)方式還保持存在(presence)(例如好友列表),其允許用戶來確定其他用戶的狀態(tài)(例如在線、離線、離開等)。大的公共網(wǎng)絡(luò),例如因特網(wǎng),頻繁地具有到較小私有網(wǎng)絡(luò)的連接,例如到由公司、因特網(wǎng)服務(wù)提供商、或甚至單獨的一戶維護(hù)的私有網(wǎng)絡(luò)。由于他們的特性,公共網(wǎng)絡(luò)必須具有普遍同意的網(wǎng)絡(luò)地址(即公共地址)的分配。由于多種原因,私有網(wǎng)絡(luò)的維護(hù)者通常選擇使用用于私有網(wǎng)絡(luò)的私有網(wǎng)絡(luò)地址,這些地址不是普遍同意的分配情況中的部分。因此,為了來自私有網(wǎng)絡(luò)的網(wǎng)絡(luò)業(yè)務(wù)能夠穿越公共網(wǎng)絡(luò),需要一些形式的私有/公共網(wǎng)絡(luò)地址轉(zhuǎn)換(“NAT,,)。執(zhí)行NAT操作的設(shè)備改變私有網(wǎng)絡(luò)發(fā)出的數(shù)據(jù)分組以符合公共網(wǎng)絡(luò)的尋址機(jī)制。特別地,網(wǎng)絡(luò)地址轉(zhuǎn)換器用它自己的公共地址和分配的端口號代替分組的源私有地址和端口號。網(wǎng)絡(luò)地址轉(zhuǎn)換器還改變?yōu)樗接芯W(wǎng)絡(luò)上的計算機(jī)接收的數(shù)據(jù)分組,用預(yù)期接收者的正確的私有地址和端口號代替目的公共地址和端口號。如同此處使用的,在上下文合適之處,術(shù)語“地址”應(yīng)當(dāng)被理解為包括地址和端口號,正如本領(lǐng)域普通技術(shù)人員理解的那樣。在當(dāng)今網(wǎng)絡(luò)計算中,NAT已經(jīng)變得越來越普遍。NAT的一個優(yōu)點是它減緩了公共網(wǎng)絡(luò)地址空間的耗盡。例如,用在因特網(wǎng)上的TCP/IP地址包括四個字符串,每個有三個數(shù)字,從而提供了有限的地址空間。另外,該地址空間的某些部分為特定的用途或用戶保留,進(jìn)一步消耗了可用地址的實際數(shù)目。然而,如果使用NAT,私有網(wǎng)絡(luò)或子網(wǎng)可使用任意數(shù)目的地址,并且仍然向外界呈現(xiàn)僅僅單個的、標(biāo)準(zhǔn)化的公共地址。這使得可用地址的數(shù)目幾乎是無限的,因為每個私有網(wǎng)絡(luò)理論上可以使用完全相同的私有地址。NAT提供的另一個優(yōu)點是更高的安全性,其源于這樣的事實公共網(wǎng)絡(luò)上的那些計算機(jī)不能確定私有網(wǎng)絡(luò)上計算機(jī)實際的(即私有的)網(wǎng)絡(luò)地址。這是因為網(wǎng)絡(luò)地址轉(zhuǎn)換器只在公共網(wǎng)絡(luò)上提供公共地址。另外,這個公共地址可能對應(yīng)于私有網(wǎng)絡(luò)上任何數(shù)目的計算機(jī)。不同的NAT類型使用不同安全級別。例如,使用“完全錐形(cone)NAT”,一旦內(nèi)部地址(iAddr:iPort)被映射到外部地址(eAddrePort),則任何外部主機(jī)可以通過發(fā)送分組到eAddrePort來向iAddriPort發(fā)送分組。使用“受限制的錐形NAT”,只有當(dāng)iAddr:iPort之前已經(jīng)向hAddr發(fā)送了分組時,具有地址hAddr的外部主機(jī)才可通過向eAddr:eP0rt發(fā)送分組來向iAddr:iP0rt發(fā)送分組。外部主機(jī)的端口是無關(guān)的。使用“端口受限制的錐形NAT”,只有當(dāng)iAddriPort之前向hAddr:hPort發(fā)送了分組時,具有地址/端口hAddr:hPort的外部主機(jī)才可以通過向eAddr:ePort發(fā)送分組來向iAddr:iPort發(fā)送分組。最后,使用對稱NAT,從同一iAddriPort到特定目的IP地址和端口的每個請求被映射到唯一的eAddrePort。如果同一內(nèi)部主機(jī)向不同的目的地發(fā)送分組,將使用不同的外部地址和端口映射。只有從內(nèi)部主機(jī)接收分組的外部主機(jī)可以向該內(nèi)部主機(jī)返回分組。點對點(Peer-to-Peer,P2P)計算指由計算節(jié)點組成的分布式網(wǎng)絡(luò)構(gòu)架,這些計算節(jié)點使它們的一部分資源對于其他網(wǎng)絡(luò)參與者是直接可用的。P2P網(wǎng)絡(luò)中的對等節(jié)點(peer)建立彼此之間的直接通信信道,并且同時作為客戶端和服務(wù)器,不同于服務(wù)器提供資源而客戶端消耗資源的傳統(tǒng)客戶端-服務(wù)器模型。以上描述的NAT操作為P2P連接提出了許多問題。例如,如果兩個對等節(jié)點中的一個或兩個位于上述的一個或多個NAT類型之后,則在這兩個對等節(jié)點之間建立直接連接變得越來越難。這個問題被這樣的事實惡化客戶端設(shè)備,例如AppleiPodTouch,AppleiPhone,Appleipad以及各種其他設(shè)備(例如,RIMBlackberry設(shè)備,PaimPre設(shè)備等)通常會在具有不同NAT實現(xiàn)方式的網(wǎng)絡(luò)間頻繁移動。例如,AppleiPhone能夠在Wi-Fi網(wǎng)絡(luò)(例如802.llb,g,n網(wǎng)絡(luò))、3G網(wǎng)絡(luò)(例如,通用移動電信系統(tǒng)(UMTS)網(wǎng)絡(luò),高速上行分組接入(HSUPA)網(wǎng)絡(luò)等)和藍(lán)牙網(wǎng)絡(luò)(稱為個人區(qū)域網(wǎng)絡(luò)(PAN))上通信。未來的客戶端設(shè)備將能夠在另外的通信信道上通信,例如,列舉一些,WiMAX、高級國際移動電信(IMTAdvanced),以及高級長期演進(jìn)(LTEAdvanced)等。免提單元(例如頭戴式耳機(jī)、車載套件)通常用于為免提服務(wù)而與計算設(shè)備對等連接。例如,包括蜂窩電話功能的計算設(shè)備包括與免提單元對等連接的能力是很常見的,以作為該免提單元與該計算設(shè)備之間在聽覺上的中繼。
發(fā)明內(nèi)容描述了一種用于在只有音頻的電路交換呼叫和視頻呼叫之間轉(zhuǎn)換的方法和裝置??蛻舳嗽O(shè)備當(dāng)前通過已建立的只有音頻的電路交換呼叫而連接到一個或多個其他客戶端設(shè)備,它從用戶接收輸入,以從只有音頻的電路交換呼叫轉(zhuǎn)換到視頻呼叫。視頻呼叫邀請消息被發(fā)送到所述其他客戶端設(shè)備。接收了視頻呼叫邀請消息的客戶端設(shè)備處的用戶可以選擇接受還是拒絕該消息。如果視頻呼叫邀請被接受,則視頻呼叫接受消息被發(fā)送到起始客戶端設(shè)備。在接受視頻呼叫邀請之后,參與電路交換呼叫的客戶端設(shè)備建立點對點(P2P)連接。在P2P連接建立后,客戶端設(shè)備開始通過P2P連接來發(fā)送和接收視頻。在每個客戶端設(shè)備已經(jīng)接收到至少一幀之后,客戶端設(shè)備從只有音頻的電路交換呼叫轉(zhuǎn)換到視頻呼叫,包括顯示正在接收的視頻以及將音頻的路由(route)從電路交換呼叫改變到視頻呼叫。在轉(zhuǎn)換到視頻呼叫之后,上述只有音頻的電路交換呼叫被丟棄(drop)。本發(fā)明可通過參考下面的用于說明本發(fā)明實施例的描述和附圖得以最好的理解。圖中圖1是說明根據(jù)一個實施例為在線通信會話注冊客戶端設(shè)備的數(shù)據(jù)流程圖;圖2是更詳細(xì)地說明根據(jù)一個實施例的圖1的客戶端設(shè)備的框圖;圖3是更詳細(xì)地說明根據(jù)一個實施例的圖1的注冊服務(wù)器的框圖;圖4是說明根據(jù)一個實施例為在線通信會話注冊客戶端設(shè)備的示例性操作的流程圖;圖5說明根據(jù)一個實施例的示例性注冊數(shù)據(jù)存儲器;圖6說明一個實施例的整體網(wǎng)絡(luò)拓?fù)洌粓D7是說明根據(jù)一個實施例的客戶端設(shè)備之間的在線通信會話建立的數(shù)據(jù)流程圖;圖8是說明了根據(jù)一個實施例的示例性中繼服務(wù)的框圖;圖9說明了根據(jù)一個實施例的API構(gòu)架的一個實施例。圖10說明了根據(jù)一個實施例的示例性注冊數(shù)據(jù)存儲器;圖11說明了根據(jù)一個實施例的示例性NAT兼容表;圖12說明了根據(jù)一些實施例的示例性客戶端設(shè)備和用于在電路交換呼叫和視頻呼叫之間轉(zhuǎn)換的圖形用戶界面;圖13說明了根據(jù)一個實施例圖12中的客戶端設(shè)備顯示視頻預(yù)覽;圖14說明了根據(jù)一個實施例的示例性客戶端設(shè)備和用于接受或拒絕視頻呼叫邀請的圖形用戶界面;圖15和16說明根據(jù)一個實施例轉(zhuǎn)換到視頻呼叫之后的客戶端設(shè)備;圖17和18是根據(jù)一個實施例說明在只有音頻的電路交換呼叫和視頻呼叫之間轉(zhuǎn)換的示例性操作的流程圖;圖19是說明根據(jù)一個實施例的在接收到視頻呼叫拒絕消息的客戶端設(shè)備上執(zhí)行的示例性操作的流程圖;圖20是根據(jù)一個實施例說明從視頻呼叫轉(zhuǎn)換到電路交換呼叫的客戶端設(shè)備上執(zhí)行的示例性操作的流程圖;圖21說明了根據(jù)一個實施例的整體網(wǎng)絡(luò)拓?fù)?,用于為使用電子郵件地址作為在線通信會話端點標(biāo)識符的在線通信會話而注冊客戶端設(shè)備;圖22A-B是說明根據(jù)一個實施例用于注冊電子郵件地址作為在線通信會話端點標(biāo)識符的示例性操作的流程圖23是說明根據(jù)一個實施例為用戶提供初始化信息以注冊電子郵件地址來作為在線通信會話端點標(biāo)識符的示例性操作的流程圖;圖M說明根據(jù)一個實施例驗證電子郵件地址的示例性操作;圖25是說明根據(jù)一個實施例當(dāng)電子郵件地址已被驗證時在注冊服務(wù)上執(zhí)行的示例性操作的流程圖;圖沈是說明根據(jù)一個實施例當(dāng)用戶具有多個與同一在線通信會話端點標(biāo)識符關(guān)聯(lián)的客戶端設(shè)備時管理邀請的示例性操作的數(shù)據(jù)流程圖;圖27是根據(jù)一個實施例說明當(dāng)直接P2P連接是可行的時候被執(zhí)行的示例性操作的數(shù)據(jù)流程圖;圖觀是說明根據(jù)一個實施例當(dāng)直接P2P連接是不可行的時候被執(zhí)行的示例性操作的數(shù)據(jù)流程圖;圖四是說明根據(jù)一個實施例當(dāng)在線通信會話結(jié)束時被執(zhí)行的示例性操作的數(shù)據(jù)流程圖;圖30是說明根據(jù)一個實施例將在線通信會話從一個客戶端設(shè)備轉(zhuǎn)移到另一個客戶端設(shè)備時執(zhí)行的示例性操作的流程圖;圖31是根據(jù)一個實施例說明發(fā)起和建立與多個用戶的在線通信會話的示例性操作的流程圖;圖32是根據(jù)一個實施例說明與免提單元連接的客戶端計算設(shè)備的框圖;圖33說明根據(jù)一個實施例客戶端計算設(shè)備接收視頻呼叫的邀請、促使免提設(shè)備響鈴、接收來自免提設(shè)備的應(yīng)答指示、建立視頻呼叫和將音頻路由到免提設(shè)備;圖34說明根據(jù)一個實施例客戶端計算設(shè)備發(fā)起視頻呼叫,并且通過免提設(shè)備路由已建立的視頻呼叫的音頻;圖35說明根據(jù)一個實施例客戶端計算設(shè)備響應(yīng)于從免提設(shè)備接收呼叫請求而發(fā)起視頻呼叫;圖36說明根據(jù)一個實施例客戶端設(shè)備將已建立的視頻呼叫的音頻路由到免提設(shè)備;圖37說明根據(jù)一個實施例客戶端計算設(shè)備響應(yīng)于從免提設(shè)備接收結(jié)束呼叫請求而終止視頻呼叫;圖38是說明可用在一些實施例中的示例性計算機(jī)系統(tǒng)的框圖;圖39是說明可用在一些實施例中的示例性的數(shù)據(jù)處理系統(tǒng)的框圖。具體實施例方式在下文中,提出了許多特定的細(xì)節(jié)。然而,可以理解的是,本發(fā)明的實施例可在不存在這些特定細(xì)節(jié)的情況下實施。在其他實例中,已知的電路、結(jié)構(gòu)和技術(shù)沒有做出詳細(xì)顯示,以免模糊對本文的理解。本領(lǐng)域的普通技術(shù)人員,根據(jù)包括的描述,將能夠?qū)嵤┖线m的功能性,而不需要過分的實驗。說明書中提及的“一個實施例”、“實施例”、“示例實施例”等表示所描述的實施例可包括特定的特征、結(jié)構(gòu)或特性,但是可能不一定每個實施例都包括該特定的特征、結(jié)構(gòu)或特性。而且,這樣的短語不一定要指同一實施例。另外,當(dāng)結(jié)合一個實施例描述了特定的特征、結(jié)構(gòu)或特性時,應(yīng)當(dāng)認(rèn)為,不論是否明確地記載過,在其他實施例中結(jié)合這樣的特征、結(jié)構(gòu)或特性是在本領(lǐng)域技術(shù)人員的知識范圍內(nèi)。在下面的說明書和權(quán)利要求書中,術(shù)語“耦合”和“連接”以及它們的派生詞將被使用。應(yīng)當(dāng)理解,這些術(shù)語不是用作彼此的同義詞?!榜詈稀庇糜诒硎緝蓚€或更多個要素彼此之間協(xié)作或交互,它們彼此之間可能是也可能不是直接實體接觸或電接觸?!斑B接”用于指示互相耦合的兩個或更多要素之間建立了通信。在線通信會話的自動灃冊描述了一種為在線通信會話(例如P2P視頻會議、P2P即時消息等)自動注冊客戶端計算設(shè)備(“客戶端設(shè)備”)(例如工作站、膝上型電腦、掌上型電腦、移動電話、智能電話、多媒體電話、書寫板(tablet)、便攜式媒體播放器、GPS單元、游戲系統(tǒng)等)的方法和裝置。在一個實施例中,基于計算設(shè)備處的事件(例如計算設(shè)備上電),客戶端設(shè)備自動開始用于在線通信會話的注冊過程。該自動注冊過程包括客戶端設(shè)備發(fā)送具有標(biāo)識令牌(例如它的推送令牌(pushtoken))和客戶端設(shè)備標(biāo)識符的SMS(短消息服務(wù))消息至SMS中轉(zhuǎn)設(shè)備(例如SMS網(wǎng)關(guān)或SMS聚合器)。該標(biāo)識令牌為在線通信會話消息(例如邀請請求和接受請求消息)唯一地標(biāo)識客戶端設(shè)備,并且,在一個實施例中,它是推送令牌,其可以包括下述信息該信息允許推送通知服務(wù),以定位該客戶端設(shè)備。推送通知服務(wù)實施例中的標(biāo)識令牌同樣還用作建立信任的一種方式,信任是指特定的通知是合法的。在其他實施例中,客戶端設(shè)備至唯一的令牌的任何注冊或映射可用于將標(biāo)識令牌與客戶端設(shè)備相關(guān)聯(lián),并提供將客戶端身份與唯一地標(biāo)識的令牌相關(guān)聯(lián)的可信方法。設(shè)備標(biāo)識符唯一地標(biāo)識客戶端設(shè)備,并且典型地基于一個或更多個硬件標(biāo)識符(例如設(shè)備的序列號、SIM(用戶身份模塊)卡的ICC-ID(集成電路卡ID)等)。SMS中轉(zhuǎn)設(shè)備確定客戶端設(shè)備的電話號碼(例如通過檢查SMS消息的頭部),并且向注冊服務(wù)器發(fā)送帶有標(biāo)識令牌、設(shè)備標(biāo)識符和電話號碼的IP(因特網(wǎng)協(xié)議)消息。注冊服務(wù)器根據(jù)標(biāo)識令牌、設(shè)備標(biāo)識符和電話號碼生成簽名,并將這些發(fā)送給SMS中轉(zhuǎn)設(shè)備以傳送到客戶端設(shè)備。SMS中轉(zhuǎn)設(shè)備向客戶端設(shè)備發(fā)送包括簽名和電話號碼的SMS消息??蛻舳嗽O(shè)備隨后發(fā)送帶有簽名、設(shè)備標(biāo)識符、標(biāo)識令牌和電話號碼的IP消息至注冊服務(wù)器。注冊服務(wù)器驗證來自客戶端設(shè)備的信息,并在在線通信會話注冊數(shù)據(jù)存儲器中存儲標(biāo)識令牌和電話號碼之間的關(guān)聯(lián)。關(guān)聯(lián)成一對的標(biāo)識令牌和電話號碼一起唯一地標(biāo)識在線通信會話網(wǎng)絡(luò)中的設(shè)備。在客戶端設(shè)備注冊后,客戶端設(shè)備處的用戶可以發(fā)起和/或接受在線通信會話(例如視頻聊天/會議會話、即時消息會話等)的邀請。在一個實施例中,客戶端設(shè)備的電話號碼被用作在線通信會話的在線通信會話端點標(biāo)識符。例如,客戶端設(shè)備處的用戶可以邀請(一個或多個)其他客戶端設(shè)備處的(一個或多個)其他用戶使用他們的(一個或多個)電話號碼參與在線通信會話。在一些實施例中,客戶端設(shè)備并非本來就知道它自己的電話號碼。圖1是說明根據(jù)一個實施例為在線通信會話注冊客戶端設(shè)備的數(shù)據(jù)流程圖。圖1包括客戶端設(shè)備110、SMS網(wǎng)絡(luò)120、注冊服務(wù)器140和IP消息數(shù)據(jù)存儲器150??蛻舳嗽O(shè)備110(例如工作站、膝上型電腦、掌上型電腦、計算電話、智能電話、多媒體電話、書寫板、便攜式媒體播放器、GPS單元、游戲系統(tǒng)等)包括標(biāo)識令牌115(在一個實施例中其可以是推送令牌)。標(biāo)識令牌115唯一地標(biāo)識客戶端設(shè)備110以接收邀請請求和邀請接受(或拒絕)消息,此后將會更加詳細(xì)地描述。設(shè)備標(biāo)識符117唯一地標(biāo)識客戶端設(shè)備,并且通?;谝粋€或多個硬件標(biāo)識符(例如設(shè)備的序列號、SIM(用戶身份模塊)卡的ICC_ID(集成電路卡ID)等)??蛻舳嗽O(shè)備110包括發(fā)送和接收SMS消息的能力以及連接和發(fā)送/接收IP消息的能力。在為在線通信會話注冊之后,客戶端設(shè)備110可以邀請和/或接受用于在線通信會話的邀請。客戶端設(shè)備110在在線通信會話中由在線通信會話端點標(biāo)識符來標(biāo)識。雖然在一個實施例中在線通信會話端點標(biāo)識符是客戶端設(shè)備110的電話號碼,但在其他實施例中在線通信會話端點標(biāo)識符是其他的標(biāo)識符(例如用戶名(例如AppleID)、電子郵件地址、郵箱地址、MAC地址或其他標(biāo)識符)。SMS網(wǎng)絡(luò)120包括運營商SMSC(短消息服務(wù)中心)125和SMS中轉(zhuǎn)設(shè)備130(例如SMS網(wǎng)關(guān)或SMS聚合器)。運營商SMSC125針對不同的計算運營商而不同,并且接收和傳送SMS消息。例如,運營商SMSC125將客戶端設(shè)備110發(fā)來的SMS消息傳送給SMS中轉(zhuǎn)設(shè)備130,并且將SMS中轉(zhuǎn)設(shè)備130發(fā)來的SMS消息傳送給客戶端設(shè)備110。SMS中轉(zhuǎn)設(shè)備130將移動網(wǎng)絡(luò)和IP網(wǎng)絡(luò)分離。注冊服務(wù)器140注冊用于在線通信會話的客戶端設(shè)備,例如客戶端設(shè)備110。注冊用于在線通信會話的客戶端設(shè)備包括將設(shè)備的標(biāo)識令牌與設(shè)備的電話號碼(或其他在線通信會話端點標(biāo)識符)關(guān)聯(lián)。標(biāo)識令牌和在線通信會話端點標(biāo)識符之間的這些關(guān)聯(lián)被存儲在在線通信會話注冊數(shù)據(jù)存儲器150中?;诳蛻舳嗽O(shè)備110處發(fā)生的事件(例如客戶端設(shè)備上電、在線通信會話應(yīng)用(例如P2P視頻會議應(yīng)用、P2P即時消息應(yīng)用等)啟動等),客戶端設(shè)備110開始用于在線通信會話的注冊過程。在一個實施例中,注冊過程自動開始(無需用戶交互);而在其他實施例中,在用戶選擇了為在線通信會話而注冊客戶端設(shè)備之后,注冊過程開始。在客戶端設(shè)備110的電話號碼被用作在線通信會話端點標(biāo)識符、因而在注冊數(shù)據(jù)存儲器150中與客戶端設(shè)備110的標(biāo)識令牌115關(guān)聯(lián)的實施例中,客戶端設(shè)備110的電話號碼必須被確定。因為客戶端設(shè)備110并不是本來就知道它自己的電話號碼,所以在一些實施例中,通過客戶端設(shè)備110發(fā)送SMS消息來確定客戶端設(shè)備110的電話號碼。例如,在操作1,客戶端設(shè)備110通過運營商SMSC125發(fā)送帶有它的標(biāo)識令牌115和設(shè)備標(biāo)識符117的SMS消息至SMS中轉(zhuǎn)設(shè)備130。在一些實施例中,SMS消息被發(fā)送到下述電話號碼該號碼可以是為在線通信會話注冊而專門建立的標(biāo)準(zhǔn)長度號碼或者短號碼(一種通常比完整的電話號碼短很多的電話號碼)。SMS消息所發(fā)往的電話號碼被存儲在客戶端設(shè)備中(即運營商包(carrierbundle)中)。運營商SMSC125接收SMS消息,并將它傳送給SMS中轉(zhuǎn)設(shè)備130。在操作2,SMS中轉(zhuǎn)設(shè)備130確定客戶端設(shè)備的電話號碼。例如,SMS中轉(zhuǎn)設(shè)備130檢查SMS消息的頭部來確定客戶端設(shè)備110的電話號碼。在確定電話號碼后,SMS中轉(zhuǎn)設(shè)備130向注冊服務(wù)器140發(fā)送帶有客戶端設(shè)備110的電話號碼、標(biāo)識令牌115和設(shè)備標(biāo)識符117的IP消息。有時,這被稱為注冊請求消息。注冊服務(wù)器140從SMS中轉(zhuǎn)設(shè)備接收包括客戶端設(shè)備110的電話號碼、標(biāo)識令牌115和設(shè)備標(biāo)識符117的IP消息,并創(chuàng)建一個簽名。該簽名可以基于客戶端設(shè)備110的電話號碼、標(biāo)識令牌115和/或設(shè)備標(biāo)識符117,且被用于驗證目的(此后將詳細(xì)描述)。在一些實施例中,在生成簽名時,隨機(jī)數(shù)同樣被使用,以處理多個客戶端設(shè)備具有相同的電話號碼的情況。在操作5,注冊服務(wù)器140向SMS中轉(zhuǎn)設(shè)備130發(fā)回簽名、電話號碼、設(shè)備標(biāo)識符和令牌(例如在IP消息中)。有時,這被稱為注冊響應(yīng)消息。SMS中轉(zhuǎn)設(shè)備130從注冊服務(wù)器140接收簽名、電話號碼、設(shè)備標(biāo)識符和令牌,并生成具有用于客戶端設(shè)備110的簽名和電話號碼的SMS消息。在操作6,SMS中轉(zhuǎn)設(shè)備130向客戶端設(shè)備110發(fā)送帶有簽名和電話號碼的SMS消息(通過運營商SMSC125)??蛻舳嗽O(shè)備110接收和處理存儲有其電話號碼的SMS消息。在操作7,客戶端設(shè)備Iio向注冊服務(wù)器140發(fā)送IP消息,該消息帶有它的標(biāo)識令牌115、設(shè)備標(biāo)識符117、它的電話號碼和注冊服務(wù)器生成的簽名。有時,這被稱為注冊驗證請求消息。通過使用該簽名,注冊服務(wù)器140驗證客戶端設(shè)備110發(fā)送的數(shù)據(jù)。例如,注冊服務(wù)器140比較客戶端設(shè)備110發(fā)送的簽名和在操作4過程中生成的簽名。如果它們匹配,則數(shù)據(jù)是有效的。假設(shè)數(shù)據(jù)是有效的,則注冊服務(wù)器140在在線通信會話注冊數(shù)據(jù)存儲器150中存儲標(biāo)識令牌115與客戶端設(shè)備110的電話號碼的關(guān)聯(lián)關(guān)系。在可選實施例中,不是通過SMS消息的傳輸確定客戶端設(shè)備110的電話號碼,而是設(shè)備的用戶被提示輸入客戶端設(shè)備110的電話號碼。在這些實施例中,客戶端設(shè)備110直接將客戶端設(shè)備110的電話號碼(用戶輸入的)和它的標(biāo)識令牌115發(fā)送給注冊服務(wù)器140,注冊服務(wù)器140會將它們在在線通信會話注冊數(shù)據(jù)存儲器150中關(guān)聯(lián)起來。圖5說明了根據(jù)一個實施例的示例性注冊數(shù)據(jù)存儲器150。如圖5所示,每條在線通信會話標(biāo)識符記錄510包括標(biāo)識令牌字段520和電話號碼字段525。在一些情況下,單個電話號碼可能與多個標(biāo)識令牌相關(guān)聯(lián)。例如,不同的客戶端設(shè)備可能具有相同的電話號碼。在這些情況下,這些不同的客戶端設(shè)備將具有不同的標(biāo)識令牌。因此,當(dāng)在線通信會話邀請被發(fā)給一個與多個標(biāo)識令牌相關(guān)聯(lián)的電話號碼時,邀請將被發(fā)往與標(biāo)識令牌關(guān)聯(lián)的每個設(shè)備。圖2是根據(jù)一個實施例更詳細(xì)說明客戶端設(shè)備110的框圖。圖2將參考圖4的示例性實施例得以描述,圖4是說明為在線通信會話注冊客戶端設(shè)備的示例性操作的流程圖。然而,應(yīng)當(dāng)理解,圖4的操作可以由其他實施例執(zhí)行,而不僅是參考圖2所討論的那些實施例,并且,參考圖2討論的實施例可以執(zhí)行不同于參考圖4所討論的實施例的操作。如圖2所示,客戶端設(shè)備110包括客戶端在線通信會話注冊模塊(“客戶端注冊模塊,,)210、(一個或多個)運營商包215、推送令牌115、設(shè)備標(biāo)識符117、SMS模塊220和客戶端在線通信會話注冊數(shù)據(jù)存儲器(“客戶端注冊數(shù)據(jù)存儲器”)230??蛻舳俗阅K210控制客戶端設(shè)備110對在線通信會話的注冊。該(一個或多個)運營商包215包括專用于運營商的設(shè)置參數(shù),該設(shè)置參數(shù)包括用于注冊的SMS中轉(zhuǎn)設(shè)備的電話號碼(例如SMS中轉(zhuǎn)設(shè)備130的號碼),還包括其他設(shè)置參數(shù)(例如接入點名稱(APN)設(shè)置參數(shù)、多媒體消息服務(wù)(MMQ設(shè)置參數(shù)等)。SMS模塊220發(fā)送和接收SMS消息??蛻舳俗詳?shù)據(jù)存儲器230存儲與在線通信會話注冊有關(guān)的數(shù)據(jù)(例如曾確定的客戶端設(shè)備110的電話號碼)。參照圖4,在塊410,客戶端注冊模塊210檢測或接收觸發(fā)在線通信會話注冊的事件。這種事件的例子包括客戶端設(shè)備Iio上電、用戶打開在線通信應(yīng)用(例如P2P視頻會議應(yīng)用、P2P即時消息應(yīng)用等),等等。在一些實施例中,注冊過程在客戶端設(shè)備410每次上電時執(zhí)行;而在其他實施例中,注冊過程在客戶端設(shè)備110第一次上電時執(zhí)行。流程從塊410前進(jìn)到塊415。在塊415,客戶端注冊模塊210確定對于客戶端設(shè)備110是否存在有效的標(biāo)識令牌。如果不存在標(biāo)識令牌,或者標(biāo)識令牌已經(jīng)過期,那么流程移動到執(zhí)行可選動作的塊425。例如,在使用推送令牌的實施例中,客戶端設(shè)備110可以通過請求推送通知服務(wù)(通常在客戶端設(shè)備110的遠(yuǎn)程)生成的推送令牌來發(fā)起令牌生成程序。推送通知服務(wù)生成專用于客戶端設(shè)備110的推送令牌,并將它返回給客戶端設(shè)備110。如果存在有效標(biāo)識令牌,那么流程前進(jìn)到塊420,其中客戶端注冊模塊210訪問標(biāo)識令牌115。流程從塊420移動到塊428。在塊428,客戶端注冊模塊210訪問設(shè)備標(biāo)識符117。流程隨后前進(jìn)到塊430,其中客戶端注冊模塊210確定注冊過程中使用的SMS中轉(zhuǎn)設(shè)備的電話號碼。例如,客戶端注冊模塊210訪問(一個或多個)運營商包215以確定SMS中轉(zhuǎn)設(shè)備的電話號碼。該電話號碼可以是短號碼或者可以是標(biāo)準(zhǔn)長度的號碼。在這個例子中,用在注冊過程中的SMS中轉(zhuǎn)設(shè)備是SMS中轉(zhuǎn)設(shè)備130。流程從塊430前進(jìn)到塊435。在塊435,包含際識令牌115和設(shè)備標(biāo)識符117的SMS消息被發(fā)送到所確定的號碼(SMS中轉(zhuǎn)設(shè)備130)。例如,客戶端注冊模塊210請求SMS模塊220將帶有標(biāo)識令牌115和設(shè)備標(biāo)識符117的SMS消息發(fā)送給確定的號碼。SMS模塊220將帶有標(biāo)識令牌的SMS消息發(fā)送給所確定的號碼。流程從435前進(jìn)到塊440。SMS消息將由運營商SMSC125接收,運營商SMSC125將其傳送給SMS中轉(zhuǎn)設(shè)備130。在塊440,SMS中轉(zhuǎn)設(shè)備130基于所收到的SMS消息確定客戶端設(shè)備110的電話號碼。例如,SMS中轉(zhuǎn)設(shè)備檢查SMS消息的頭部,該頭部會包括發(fā)送者(在這個實例中發(fā)送端是客戶端設(shè)備110)的電話號碼。流程隨后前進(jìn)到塊445,其中SMS中轉(zhuǎn)設(shè)備130將客戶端設(shè)備110的電話號碼、標(biāo)識令牌115和設(shè)備標(biāo)識符117發(fā)送給注冊服務(wù)器140(例如在安全的IP消息中)。流程從塊445前進(jìn)到塊450。圖3是說明根據(jù)一個實施例詳細(xì)描述的注冊服務(wù)器140的框圖。圖3將參考圖4的示例實施例而描述。然而,應(yīng)當(dāng)理解,圖4的操作可以由參考圖3所討論的實施例之外的其他實施例執(zhí)行,而參考圖3所討論的實施例可以執(zhí)行不同于參考圖4所討論的那些操作。如圖3所示,注冊服務(wù)器140包括服務(wù)器在線通信會話注冊模塊305,該模塊包括SMS中轉(zhuǎn)接口310、簽名生成器315、客戶端設(shè)備接口325、驗證模塊330、驗證數(shù)據(jù)存儲器335和關(guān)聯(lián)模塊340。SMS中轉(zhuǎn)接口310接收和發(fā)送消息至SMS中轉(zhuǎn)設(shè)備130。例如,SMS中轉(zhuǎn)接口310接收來自SMS中轉(zhuǎn)接口310的電話號碼、標(biāo)識令牌和設(shè)備標(biāo)識符元組(tuple),并且向SMS中轉(zhuǎn)接口310發(fā)送電話號碼、標(biāo)識令牌、設(shè)備標(biāo)識符和簽名元組(有時稱作“驗證元組”)??蛻舳嗽O(shè)備接口325接收并可以發(fā)送消息至客戶端設(shè)備。例如,客戶端設(shè)備接口325接收來自客戶端設(shè)備的驗證元組。返回圖4,在塊450,簽名生成器310生成用于從SMS中轉(zhuǎn)設(shè)備130接收到的電話號碼、標(biāo)識令牌和設(shè)備標(biāo)識符元組的簽名。該簽名將被用于在注冊數(shù)據(jù)存儲器150中存儲之前,對電話號碼與標(biāo)識令牌的配對進(jìn)行驗證。在一些實施例中,該簽名基于電話號碼、標(biāo)識令牌和/或設(shè)備標(biāo)識符(例如密碼化的哈希被用于電話號碼、標(biāo)識令牌和/或設(shè)備標(biāo)識符,或其某些部分,以生成簽名)。在一些實施例中,該簽名還基于隨機(jī)數(shù),以處理多個客戶端設(shè)備具有相同的電話號碼的情況。簽名生成器310存儲該簽名并可選地將電話號碼、標(biāo)識令牌和/或設(shè)備標(biāo)識符存儲在驗證數(shù)據(jù)存儲器325中。流程隨后進(jìn)行到塊455,SMS中轉(zhuǎn)接口310向SMS中轉(zhuǎn)設(shè)備130發(fā)送簽名、電話號碼、設(shè)備標(biāo)識符和標(biāo)識令牌。流程隨后從塊455前進(jìn)到塊460。SMS中轉(zhuǎn)設(shè)備130接收來自注冊服務(wù)器140的簽名、電話號碼和標(biāo)識令牌。在塊460,SMS中轉(zhuǎn)設(shè)備向客戶端設(shè)備110發(fā)送帶有簽名和電話號碼的SMS消息(通過運營商SMSC125)。流程下一步前進(jìn)到塊465。在塊465,SMS模塊220接收帶有簽名和電話號碼的SMS消息,并且將簽名和電話號碼存儲在客戶端注冊數(shù)據(jù)存儲器230中。流程隨后前進(jìn)到塊470,其中客戶端注冊模塊210將帶有電話號碼、標(biāo)識令牌115、設(shè)備標(biāo)識符117和簽名的IP消息發(fā)送至注冊服務(wù)器。流程隨后前進(jìn)到塊475??蛻舳嗽O(shè)備接口325接收來自客戶端設(shè)備的電話號碼、標(biāo)識令牌、設(shè)備標(biāo)識符和簽名。該信息被傳送到驗證模塊330,在塊475該模塊確定數(shù)據(jù)是否有效。例如,與生成簽名時應(yīng)用的哈希函數(shù)相同的哈希函數(shù)被用在從客戶端設(shè)備接收的電話號碼、標(biāo)識令牌、和/或設(shè)備標(biāo)識符上,并且驗證模塊330將結(jié)果與先前生成的簽名(存儲在驗證數(shù)據(jù)存儲器335中)比較。如果簽名匹配,那么數(shù)據(jù)是有效的,并且流程前進(jìn)到塊480。在塊480,注冊服務(wù)器140的關(guān)聯(lián)模塊330在注冊數(shù)據(jù)存儲器150中存儲客戶端設(shè)備的電話號碼與客戶端設(shè)備的標(biāo)識令牌的關(guān)聯(lián)關(guān)系。在一些實施例中,注冊服務(wù)器140可將注冊狀態(tài)消息發(fā)送給客戶端設(shè)備110,提醒客戶端設(shè)備110注冊是否成功。在客戶端設(shè)備注冊之后,客戶端設(shè)備處的用戶可以發(fā)起和/或接受在線通信會話(例如視頻聊天/會議會話、即時消息會話等)的邀請。例如,客戶端設(shè)備處的用戶可以邀請其他(一個或多個)客戶端設(shè)備處的(一個或多個)其他用戶使用他們的(一個或多個)電話號碼參與在線通信會話。在一些實施例中,客戶端設(shè)備并非本來就知道它自己的電話號碼。盡管實施例已經(jīng)描述了注冊期間SMS消息的使用,但在其他實施例中,其他類型的文本消息也可以被使用(例如MMS(多媒體消息服務(wù)))。為在線通信會話注冊電子郵件地址盡管圖1的描述涉及注冊電話號碼來作為在線通信會話端點標(biāo)識符,然而在其他實施例中,電子郵件地址可以用作在線通信會話端點標(biāo)識符。圖21說明了使用電子郵件地址作為在線通信會話端點標(biāo)識符的在線通信會話注冊客戶端設(shè)備的整體網(wǎng)絡(luò)拓?fù)???蛻舳嗽O(shè)備2110A-N使用注冊服務(wù)2130來為在線通信會話注冊。例如,在一個實施例中,客戶端設(shè)備2110A的用戶使用在線通信會話客戶端2115來注冊電子郵件地址,以用作網(wǎng)絡(luò)2180(例如因特網(wǎng))上的在線通信的在線通信會話標(biāo)識符。圖22A-B是根據(jù)一個實施例說明注冊電子郵件地址作為在線通信會話端點標(biāo)識符的示例性操作的流程圖。圖22A-B將參考圖21所示的示例性實施例進(jìn)行描述。然而,應(yīng)當(dāng)理解,圖22A-B的操作可以由除了參考圖21討論的實施例外的其他實施例來執(zhí)行,而且參考圖21討論的實施例可以執(zhí)行不同于參考圖22A-B討論的實施例的操作。在操作2210,注冊服務(wù)2130接收來自客戶端設(shè)備2110A的認(rèn)證請求。例如,參考圖23,該圖描述了用戶提供初始化信息的示例性操作,在操作2310,在線通信會話應(yīng)用2115在客戶端設(shè)備2110A上啟動。流程隨后前進(jìn)到操作2315,客戶端設(shè)備2110A接收用戶輸入的用戶ID和密碼,以及注冊作為(一個或多個)在線通信會話端點標(biāo)識符的一個或多個電子郵件地址。流程隨后移動到操作2320,客戶端設(shè)備2110A將用戶ID和密碼發(fā)送至注冊服務(wù)2130。盡管客戶端設(shè)備2110A注冊電子郵件地址來作為在線通信會話端點標(biāo)識符,并且可能不包括電話功能,但是它可以使用電話號碼,而不是電子郵件地址來發(fā)送在線通信會話邀請。除了接收用戶ID、密碼和一個或更多個電子郵件地址來注冊,在一些實施例中,用戶還可以提供關(guān)于他們當(dāng)前處于哪個國家和/或地區(qū)的信息,以便如果用戶向不包括國家代碼和/或區(qū)域代碼的電話號碼發(fā)起在線通信會話時,可以使用對應(yīng)的國家代碼和/或區(qū)域代碼。例如,在美國,本地電話呼叫可以通過使用7個數(shù)字來進(jìn)行(因此不需要國家代碼和區(qū)域代碼)?;A(chǔ)的電話系統(tǒng)自動地確定國家和區(qū)域代碼,并完成該呼叫。然而,在客戶端設(shè)備2110A不包括電話功能的情況下,當(dāng)使用不包括國家代碼和/或區(qū)域代碼的電話號碼邀請用戶參與在線通信會話時,客戶端設(shè)備2110A不能依賴于基礎(chǔ)的電話系統(tǒng)來自動地包括國家代碼和/或區(qū)域代碼。在操作2320,客戶端設(shè)備2110A接收來自用戶有關(guān)他們位于哪個國家和/或地區(qū)的輸入(例如區(qū)域代碼、州、省、城市等)。流程隨后前進(jìn)到操作2320,其中如果用戶向不包括國家代碼和/或區(qū)域代碼的電話號碼發(fā)起在線通信會話,客戶端設(shè)備2320將對應(yīng)的國家和/或地區(qū)電話代碼與使用的在線通信會話應(yīng)用2115關(guān)聯(lián)起來。例如,如果用戶指示他們位于美國,并且該用戶使用不包括國家代碼的10位電話號碼邀請一個用戶進(jìn)行在線通信會話,客戶端設(shè)備2110A自動地將美國的國家代碼加入到電話號碼中。返回到圖22A,在收到來自客戶端設(shè)備2110A的認(rèn)證請求之后,使用所提供的用戶名和密碼執(zhí)行認(rèn)證過程。在一個實施例中,注冊服務(wù)2130執(zhí)行認(rèn)證過程,而在另一實施例中,用戶目錄服務(wù)2160執(zhí)行認(rèn)證過程。用戶目錄服務(wù)2160是提供用戶計費、認(rèn)證和其他服務(wù)的集中服務(wù)。用戶目錄服務(wù)2160管理用戶記錄2165。在一個實施例中,每個認(rèn)證的用戶與包括多種信息(例如,一個或多個用戶ID、密碼、郵件地址、電話號碼、姓名、生日、國家、與用戶相關(guān)聯(lián)的電子郵件列表(其還可以顯示郵件地址是否是有效的)等)的用戶記錄關(guān)聯(lián)。如果認(rèn)證成功,隨后流程前進(jìn)到操作2216。如果認(rèn)證失敗,那么流程前進(jìn)到操作2214,并且執(zhí)行可選動作(例如注冊服務(wù)2130向客戶端設(shè)備2110A發(fā)送指示用戶名和/或密碼不正確的錯誤消息)。在操作2216,注冊服務(wù)2130生成和/或訪問與用戶ID相關(guān)聯(lián)的在線通信會話簡檔。例如,注冊服務(wù)2130可包括管理在線通信會話簡檔記錄2150的在線通信會話帳戶服務(wù)器2140。在一個實施例中,每個正在注冊或已經(jīng)注冊在線通信會話的用戶具有一個對應(yīng)的在線通信會話簡檔記錄。每個在線通信會話簡檔記錄可包括一個或更多個包括有效狀態(tài)的電子郵件地址組成的組,該有效狀態(tài)是與簡檔關(guān)聯(lián)的。每個在線通信會話簡檔記錄還可包括一個或多個推送令牌,這些推送令牌分別對應(yīng)于一個或更多個注冊在線通信會話的客戶端設(shè)備。每個簡檔記錄還可包括用于驗證來自客戶端設(shè)備的某些通信的簡檔憑證。每個簡檔記錄還可以指示哪些客戶端設(shè)備(由推送令牌指示)已經(jīng)注冊或正試圖使用電子郵件地址注冊。流程從操作2216前進(jìn)到操作2218,注冊服務(wù)2130向客戶端設(shè)備2110A發(fā)送認(rèn)證答復(fù),該答復(fù)包括簡檔ID(例如標(biāo)識了與所提供的用戶ID相關(guān)聯(lián)的簡檔的字符串)和簡檔憑證(credential)。認(rèn)證答復(fù)還可以指示認(rèn)證是成功的。流程隨后前進(jìn)到操作2220,注冊服務(wù)2130從客戶端設(shè)備2110A接收電子郵件驗證請求,該電子郵件驗證請求包括一個或多個要驗證的電子郵件地址、簡檔ID、簡檔憑證和客戶端設(shè)備2110A的推送令牌。電子郵件驗證請求消息還可以包括客戶端設(shè)備2110A的設(shè)備ID。然后,在操作2222,注冊服務(wù)2130確定簡檔ID的簡檔憑證是否是有效的。如果不是,流程隨后前進(jìn)到操作22M,并且采取可選的動作(例如注冊服務(wù)2130向客戶端設(shè)備2110A發(fā)送錯誤消息)。如果簡檔憑證是有效的,那么流程前進(jìn)到操作2223。在操作2223,注冊服務(wù)2130將推送令牌和簡檔關(guān)聯(lián)起來。例如,在線通信會話帳戶服務(wù)器2140將推送令牌存儲在用戶的簡檔記錄中。流程隨后前進(jìn)到操作2226,注冊服務(wù)2130確定電子郵件地址是否有效。有效的電子郵件地址是這樣的電子郵件地址該地址已被驗證為屬于下述用戶請求該用戶請求正在請求將其注冊為在線通信會話端點標(biāo)識符。在線通信會話帳戶服務(wù)器2140訪問用戶的簡檔記錄2150以確定電子郵件地址是否有效。如果簡檔記錄顯示電子郵件地址不是有效的,在一些實施例中,注冊服務(wù)2130向用戶目錄服務(wù)2160發(fā)送電子郵件驗證請求以確定用戶的用戶記錄2165是否顯示電子郵件地址是有效的。如果電子郵件地址不是有效的,那么流程前進(jìn)到操作2227,并且注冊服務(wù)2130促使驗證電子郵件消息發(fā)送給包括鏈接的電子郵件地址,,當(dāng)其被選擇時(或當(dāng)其被輸入到因特網(wǎng)瀏覽器時)該鏈接使得該電子郵件地址被驗證。例如,選擇鏈接引起電子郵件地址驗證消息被發(fā)送,該電子郵件地址驗證消息包括用于驗證電子郵件地址的電子郵件地址和驗證令牌。注冊服務(wù)2130還可以向客戶端設(shè)備發(fā)送電子郵件需要驗證消息,指示電子郵件不是有效的(因此需要被驗證),還可以指示驗證電子郵件消息被發(fā)送到有關(guān)的電子郵件地址。流程隨后前進(jìn)到操作M10,將參考圖M來描述。然而,如果電子郵件地址是有效的,那么流程前進(jìn)到操作22觀。在操作22,注冊服務(wù)2130向客戶端設(shè)備22發(fā)送指示電子郵件地址是有效的電子郵件驗證成功消息。流程隨后前進(jìn)到操作2230,注冊服務(wù)2130從客戶端設(shè)備22接收包括電子郵件地址、簡檔ID和簡檔憑證的激活電子郵件請求。在操作2232,注冊服務(wù)2130隨后確定對于簡檔ID,簡檔憑證是否是有效的。如果不是,則流程前進(jìn)到操作22M,執(zhí)行可選動作(例如,注冊服務(wù)2130向客戶端設(shè)備2110A發(fā)送錯誤消息)。如果它們的簡檔憑證是有效的,那么流程前進(jìn)到操作2240。在操作2240,注冊服務(wù)2130生成或訪問電子郵件地址的電子郵件憑證。例如,在一個實施例中,在線通信會話帳戶服務(wù)器2140將用戶的各有效的電子郵件地址的電子郵件憑證存儲在那個用戶的簡檔記錄2150中。流程隨后前進(jìn)到操作2242,注冊服務(wù)2130向客戶端設(shè)備2110A發(fā)送包括電子郵件地址和電子郵件憑證的激活成功消息。流程從操作2242前進(jìn)到操作2244,注冊服務(wù)2130接收注冊請求消息,其包括電子郵件地址、電子郵件憑證、簡檔ID、簡檔憑證、客戶端設(shè)備2110A的推送令牌,以及客戶端設(shè)備21IOA的設(shè)備ID。在一個實施例中,在在線通信會話注冊服務(wù)器2145處接收該請求消息。在線通信會話注冊服務(wù)器管理在線通信會話注冊數(shù)據(jù)存儲器2155。在線通信會話注冊數(shù)據(jù)存儲器2155將推送令牌(可選地,還將設(shè)備ID)與下述簡檔關(guān)聯(lián)該簡檔具有作為(一個或多個)在線通信會話端點標(biāo)識符的、由一個或更多個電子郵件地址構(gòu)成的組。從而,在線通信會話注冊數(shù)據(jù)存儲器2155中的每項記錄表示具有特定推送令牌的特定設(shè)備正在使用在線通信會話簡檔,該簡檔具有可用于邀請設(shè)備處的用戶參與在線通信會話的一個或更多個電子郵件地址。流程從操作2244前進(jìn)到操作2246。在操作2246,注冊服務(wù)2130(例如在線通信會話注冊服務(wù)器2145)確定簡檔憑證是否有效。如果它們不是有效的,那么流程前進(jìn)到操作2250,并且執(zhí)行可選動作(例如,注冊服務(wù)2130向客戶端設(shè)備2110A發(fā)送錯誤消息)。如果它們是有效的,則流程前進(jìn)到操作2248,注冊服務(wù)2130(例如在線通信會話注冊服務(wù)器214確定電子郵件地址憑證是否有效。如果不是,則流程前進(jìn)到操作2250。如果是有效的,那么流程前進(jìn)到操作2252。在操作2252,注冊服務(wù)2130(例如在線通信會話注冊服務(wù)器214將客戶端設(shè)備2110A與它的具有電子郵件地址的簡檔的推送令牌關(guān)聯(lián),并且在注冊數(shù)據(jù)存儲器2155中存儲該關(guān)聯(lián)。流程隨后前進(jìn)到操作22M,注冊服務(wù)2130生成在線通信會話帳戶標(biāo)識符和在線通信會話憑證,并在操作2256將它們發(fā)送至客戶端設(shè)備2110A。在不同的實施例中,有不同的方法來驗證電子郵件地址。參考圖M,該圖是說明驗證電子郵件地址的示例性操作的流程圖,在操作M10,客戶端設(shè)備2110A確定它是否包括一個電子郵件客戶端,該電子郵件客戶端包括試圖注冊、但還未收到肯定的驗證電子郵件消息的電子郵件帳戶。如果它不包括這樣的電子郵件客戶端,那么流程前進(jìn)到操作對40。否則,流程前進(jìn)到操作對15。在操作2415,對電子郵件帳戶自動地周期性地檢查驗證電子郵件消息(例如在操作2227發(fā)送的驗證電子郵件消息)。在一個實施例中,在線通信會話應(yīng)用2115周期性地請求電子郵件客戶端2120去檢查驗證電子郵件消息(電子郵件客戶端2120可輪詢(poll)電子郵件服務(wù)器2170以檢查該驗證電子郵件消息)。該驗證電子郵件消息由一個或更多個標(biāo)準(zhǔn)組成的組標(biāo)識,該標(biāo)準(zhǔn)包括“From:”字段、“To:”字段以及用于驗證電子郵件地址的驗證令牌(驗證令牌對于每個要驗證的電子郵件地址可以是唯一的)。驗證令牌可位于驗證電子郵件消息的頭部或體部。如果驗證電子郵件消息被接收,那么流程從操作M20前進(jìn)到操作M25,否則,前進(jìn)到操作M35。在操作M25,驗證電子郵件消息被返回給在線通信會話申請2115,它解析該消息以定位驗證令牌。在定位驗證令牌后,在線通信會話應(yīng)用2115向注冊服務(wù)2130發(fā)送包括驗證令牌、電子郵件地址、簡檔ID和簡檔憑證的電子郵件地址驗證消息。因此在這個實施例中,電子郵件地址被自動驗證,不需要用戶點擊鏈接或以其他方式驗證該郵件地址。在一個實施例中,在收到消息并確定簡檔憑證有效之后,注冊服務(wù)2130向設(shè)備發(fā)生一個電子郵件有效推送消息(通過推送通知服務(wù)640),來指示電子郵件地址已被成功驗證。從而,流程從操作M25前進(jìn)到操作M30,客戶端設(shè)備2110A等待接收電子郵件地址有效推送消息。如果驗證電子郵件消息未被接收到,那么流程前進(jìn)到操作對35,客戶端設(shè)備確定用于指示正被注冊的電子郵件地址已經(jīng)被驗證的電子郵件有效推送消息是否已被收到。如果收到這樣的消息,那么流程前進(jìn)到操作對45,否則,流程返回到操作M15。在操作M40(客戶端設(shè)備2110A不包括包含正被注冊的電子郵件地址帳戶的電子郵件客戶端),客戶端設(shè)備2110A等待接收指示正要注冊的電子郵件地址已得到驗證的電子郵件有效推送消息。如果收到這樣的消息,那么流程前進(jìn)到操作M45,否則,流程保持在操作M40。在操作M45,客戶端設(shè)備2110A顯示電子郵件地址已被驗證并且詢問用戶用那個電子郵件地址來繼續(xù)注冊過程。如果客戶端設(shè)備2110A接收到指示繼續(xù)注冊過程的輸入,那么流程前進(jìn)到操作M55,客戶端設(shè)備2110A向注冊服務(wù)器發(fā)送包括電子郵件地址、簡檔ID和簡檔憑證的主動電子郵件請求。隨后執(zhí)行在圖22的操作2230開始描述的操作。如果客戶端設(shè)備2110A接收到指示用戶不想繼續(xù)注冊過程的輸入,那么流程從操作M50前進(jìn)到操作M60,退出該過程。圖25是說明根據(jù)一個實施例當(dāng)電子郵件地址已被驗證時在注冊服務(wù)上執(zhí)行的示例性操作的流程圖。在操作2510,注冊服務(wù)2130接收電子郵件地址有效狀態(tài)消息,其指示與在線通信會話簡檔關(guān)聯(lián)的電子郵件地址已被驗證。該電子郵件地址有效狀態(tài)消息可作為操作M25的結(jié)果被接收到,或者可以是以其他方式驗證電子郵件地址的結(jié)果(例如,用戶點擊驗證電子郵件消息中的驗證鏈接導(dǎo)致電子郵件地址得到驗證,該消息在不同于在試圖注冊電子郵件地址以用于在線通信會話的設(shè)備的設(shè)備上發(fā)出)被接收到。流程隨后前進(jìn)到操作2515,注冊服務(wù)2130更新簡檔記錄2150中電子郵件地址的驗證狀態(tài)。流程隨后前進(jìn)到操作2515,注冊服務(wù)2130確定是否存在與在線通信會話簡檔關(guān)聯(lián)的客戶端設(shè)備,其中這些客戶端設(shè)備已經(jīng)請求驗證還未收到電子郵件地址有效消息的電子郵件地址。例如,注冊服務(wù)2130訪問簡檔記錄2150中的在線通信會話簡檔以確定哪些客戶端設(shè)備(例如由唯一推送令牌標(biāo)識)已經(jīng)請求驗證電子郵件地址以及哪些還沒有收到那個電子郵件地址的電子郵件地址驗證消息。對于每個這樣的客戶端設(shè)備,注冊服務(wù)向那個客戶端設(shè)備發(fā)送包括簡檔ID、簡檔憑證和已經(jīng)在操作2525驗證的電子郵件地址的電子郵件有效推送消息。該電子郵件有效推送消息還可以包括狀態(tài)更新以指示電子郵件地址已被驗證。如果沒有設(shè)備請求驗證未收到電子郵件地址有效消息的電子郵件地址,那么流程前進(jìn)到操作2530,并且退出該過程。津立在線通信會話如圖6所示,一個實施例中實現(xiàn)的整體網(wǎng)絡(luò)拓?fù)淇梢园ǘ鄠€客戶端設(shè)備A-N,分別是670A-N,它們彼此互相通信,并且通過網(wǎng)絡(luò)660與一個或多個服務(wù)610、620、630、640和650通信。盡管圖示的是單個網(wǎng)絡(luò)云,但網(wǎng)絡(luò)660也可以包括多種不同的組件,包括公共網(wǎng)絡(luò)(例如因特網(wǎng))和私有網(wǎng)絡(luò),所述私有網(wǎng)絡(luò)例如局域Wi-Fi網(wǎng)絡(luò)(例如802.Iln家庭無線網(wǎng)絡(luò)或無線熱點)、局域以太網(wǎng)、蜂窩數(shù)據(jù)網(wǎng)(例如3G、4G、Edge等),以及WiMAX網(wǎng)絡(luò)等??蛻舳嗽O(shè)備670A-N可通過不同的網(wǎng)絡(luò)鏈路連接到網(wǎng)絡(luò)660。例如,客戶端設(shè)備670A可以連接到由網(wǎng)絡(luò)鏈路675A表示的家庭Wi-Fi網(wǎng)絡(luò),而客戶端設(shè)備670N可以通過網(wǎng)絡(luò)鏈路675N連接到3G網(wǎng)絡(luò)(例如,通用移動電信系統(tǒng)(UMTS)、高速上行分組接入(“HSUPA”等)。與客戶端設(shè)備670A-N連接的網(wǎng)絡(luò)鏈路675A-N中的每個可以通過網(wǎng)關(guān)和/或NAT(網(wǎng)絡(luò)地址轉(zhuǎn)換)設(shè)備(圖6中未示出)耦合到公共網(wǎng)絡(luò)(例如因特網(wǎng)),從而實現(xiàn)各個客戶端設(shè)備670A-N通過公共網(wǎng)絡(luò)的通信。然而,如果兩個客戶端設(shè)備是在同一個局域或私有網(wǎng)絡(luò)(例如同一個Wi-Fi網(wǎng)絡(luò)),那么,這兩個設(shè)備可以直接通過那個局域/私有網(wǎng)絡(luò)通信,繞開公共網(wǎng)絡(luò)。需要注意,當(dāng)然,本發(fā)明的基本原理不限于網(wǎng)絡(luò)類型或網(wǎng)絡(luò)拓?fù)涞娜魏翁囟ńM合??蛻舳嗽O(shè)備670A-N中每個可以與連接數(shù)據(jù)交換(connectiondataexchange,⑶X)服務(wù)610、邀請服務(wù)620、注冊服務(wù)630、推送通知服務(wù)640和中繼服務(wù)650通信。在一個實施例中,服務(wù)610-650可以作為在例如服務(wù)器的一個或更多個物理計算設(shè)備上執(zhí)行的軟件來實現(xiàn)。在一個實施例中,CDX服務(wù)610用作在兩個或更多客戶端設(shè)備之間建立在線通信會話所需要的連接數(shù)據(jù)的中央交換點。特別地,響應(yīng)于客戶端設(shè)備請求實現(xiàn)外部服務(wù)和客戶端通過每個客戶端設(shè)備的NAT通信(即通過NAT“穿孔”(punchahole)以到達(dá)該設(shè)備),⑶X服務(wù)610的一個實施例生成NAT穿越數(shù)據(jù)(有時被稱作“打孔機(jī)(HolePunch),,數(shù)據(jù))。例如,在一個實施例中,CDX服務(wù)檢測與客戶端設(shè)備通信所需要的外部IP地址和端口,并將該信息提供給客戶端設(shè)備。在一個實施例中,CDX服務(wù)還接收和處理邀請服務(wù)620生成的客戶端設(shè)備列表,并且有效地和安全地將連接數(shù)據(jù)分配給列表中包括的各個客戶端設(shè)備(如下文詳細(xì)描述的)。客戶端設(shè)備670A-N的用戶使用邀請服務(wù)620來邀請用戶參加到合作的在線通信會話(例如P2P視頻會議、P2P即時消息聊天/會議等)。例如,客戶端設(shè)備670A的用戶,通過向包含其他各個用戶的在線通信會話端點標(biāo)識符的邀請服務(wù)620發(fā)送邀請請求,來請求與具有一個或更多個不同客戶端設(shè)備的一個或更多個用戶的在線通信會話。該在線通信會話端點標(biāo)識符在不同實施例中可以是不同的(例如電話號碼、用戶名(例如AppleID)、電子郵件地址、郵件地址、MAC地址或其他標(biāo)識符)。邀請服務(wù)620讀取邀請請求中的(一個或多個)在線通信會話端點標(biāo)識符,并且執(zhí)行在注冊數(shù)據(jù)存儲器655中的查找以定位與在線通信會話端點標(biāo)識符關(guān)聯(lián)的(一個或多個)客戶端設(shè)備。客戶端設(shè)備670A-N使用注冊服務(wù)630來為在線通信會話注冊。例如,在一個實施例中,當(dāng)各個客戶端設(shè)備670A-N均被上電并且在網(wǎng)絡(luò)上激活時,它促使它的標(biāo)識令牌(例如它的推送令牌)與在線通信會話端點標(biāo)識符相關(guān)聯(lián)。該關(guān)聯(lián)被保存在注冊數(shù)據(jù)存儲器655中。在一個實施例中,客戶端設(shè)備670A-N使用圖4描述的注冊服務(wù)630,為參加在線通信會話服務(wù)而注冊,而在其他實施例中,注冊過程不同地發(fā)生(例如,通過提供它們的推送令牌和它們的通信會話端點標(biāo)識符兩者)。推送通知服務(wù)640使用客戶端設(shè)備670A-N的推送令牌來向客戶端設(shè)備670A-N發(fā)送推送通知。在一個實施例中,推送通知用于發(fā)送在線通信會話的邀請。當(dāng)客戶端設(shè)備的NAT類型不兼容或者客戶端設(shè)備之間的P2P連接建立失敗時,中繼服務(wù)650建立客戶端設(shè)備之間的在線通信會話連接。在一個實施例中,通過使用相對輕量級網(wǎng)絡(luò)協(xié)議,例如用戶數(shù)據(jù)報協(xié)議(“UDP”)套接字,建立客戶端設(shè)備和CDX服務(wù)610之間的通信。本領(lǐng)域技術(shù)人員已知的是,UDP套接字連接不需要握手對話來保證分組可靠性、排序或數(shù)據(jù)完整性,而且,因此不需要消耗像TCP套接字連接那么多的分組處理開銷。結(jié)果,UDP的輕量級、無狀態(tài)的性質(zhì)對于答復(fù)來自大量客戶端的小查詢的服務(wù)器是很有用的。另外,不像TCP,UDP與分組廣播(其中分組被發(fā)送到局域網(wǎng)上的所有設(shè)備)和多播(其中分組被發(fā)送到局域網(wǎng)上的設(shè)備的子集)兼容。如下文描述的,盡管UDP可以使用,可以通過使用會話密鑰加密NAT穿越數(shù)據(jù)來維持CDX服務(wù)610上的安全。與CDX服務(wù)610使用的低開銷、輕量級網(wǎng)絡(luò)協(xié)議相反,在一個實施例中,客戶端設(shè)備670A-N和邀請服務(wù)620、注冊服務(wù)630、推送通知服務(wù)640、和/或中繼服務(wù)650之間的通信使用固有的安全的網(wǎng)絡(luò)協(xié)議來建立,例如超文本傳輸協(xié)議安全(HTTPS),其依賴于安全套接層(SSL)或傳輸層安全(TLQ連接。有關(guān)這些協(xié)議的細(xì)節(jié)已被本領(lǐng)域技術(shù)人員所熟知。圖7是說明根據(jù)一個實施例在客戶端設(shè)備之間建立在線通信會話的數(shù)據(jù)流程圖。在圖7的例子中,客戶端設(shè)備A710處的用戶邀請客戶端設(shè)備B720處的用戶進(jìn)行在線通信會話(例如P2P視頻會議、P2P即時消息系統(tǒng)等)。在這個例子中,客戶端設(shè)備A710有時被稱作發(fā)起端客戶端設(shè)備,客戶端設(shè)備B720的用戶有時被稱作預(yù)期接收者,而客戶端設(shè)備B720有時被稱作預(yù)期接收客戶端設(shè)備。在一些實施例中,在線通信會話邀請是盲目的邀請,并不需要在線。例如,客戶端設(shè)備A710處的用戶并不知道客戶端設(shè)備B720處的用戶當(dāng)前是否在線或者可以參與在線通信會話。雖然涉及圖6和7所表述的實施例是特定于使用推送令牌和推送通知的,其他實施例并未被限制。例如,在其他實施例中,任何客戶端到唯一令牌的注冊或映射都可以用于關(guān)聯(lián)標(biāo)識令牌和客戶端設(shè)備以及提供關(guān)聯(lián)客戶端設(shè)備身份和唯一標(biāo)識的令牌的可信任的方法。在操作1,客戶端設(shè)備A710向連接數(shù)據(jù)交換610請求它的連接數(shù)據(jù)。該連接數(shù)據(jù)包括客戶端設(shè)備間互相交換以建立在線通信會話(例如P2P會話)的信息。連接數(shù)據(jù)包括客戶端設(shè)備的IP地址(例如公共IP地址)、請求的端口號、以及其他信息(例如優(yōu)先權(quán)信息等)。連接數(shù)據(jù)交換610確定客戶端設(shè)備A710的連接數(shù)據(jù)(例如公共/私有IP地址和端口、客戶端設(shè)備A的NAT設(shè)備的NAT類型)。在操作2,連接數(shù)據(jù)交換610將連接數(shù)據(jù)返回給客戶端設(shè)備A710。在操作3,客戶端設(shè)備A710向邀請服務(wù)620發(fā)送在線通信會話邀請請求以邀請客戶端設(shè)備B720進(jìn)行在線通信會話(例如P2P視頻會議、P2P即時消息會話等)。在一個實施例中,該邀請包括客戶端設(shè)備A710的連接數(shù)據(jù),其可包括用于客戶端設(shè)備A710的公共/私有IP地址和端口和客戶端設(shè)備A的NAT設(shè)備的NAT類型,以及與客戶端設(shè)備B720處的用戶關(guān)聯(lián)的在線通信會話端點標(biāo)識符(例如客戶端設(shè)備B720的電話號碼、用戶的用戶名(例如AppleID)、電子郵件地址、郵件地址、MAC地址等)。在線通信會話邀請請求可以采用HTTPS請求的形式,并且可以包括預(yù)先指定的證書授權(quán)機(jī)構(gòu)簽發(fā)的客戶端證書。在操作4,邀請服務(wù)620確定操作3的請求中包括的與在線通信會話端點標(biāo)識符關(guān)聯(lián)的推送令牌。例如,邀請服務(wù)620訪問注冊數(shù)據(jù)存儲器655以確定與在線通信會話端點標(biāo)識符關(guān)聯(lián)的(一個或多個)推送令牌。如圖7所示,推送令牌725被分配給客戶端設(shè)備B720,并且從而與它的在線通信會話端點標(biāo)識符關(guān)聯(lián)。圖10示出了根據(jù)一個實施例的示例性注冊數(shù)據(jù)存儲器655。如圖10所示,每項在線通信會話標(biāo)識符記錄1010包括推送令牌字段1015和在線通信會話標(biāo)識符字段1020。如圖10所示,同一個在線通信會話標(biāo)識符可與多個推送令牌關(guān)聯(lián)。在這樣的情況下,多個邀請將被發(fā)送(例如每個推送令牌一個)。邀請服務(wù)620向推送通知服務(wù)640發(fā)送推送請求消息。在操作5,推送通知服務(wù)640以推送通知消息的形式向客戶端設(shè)備B720發(fā)送在線通信會話邀請請求。該請求包括連接數(shù)據(jù)、在線通信會話端點標(biāo)識符以及客戶端設(shè)備A710的推送令牌(推送令牌71。邀請請求還可包括專用于在線通信會話的信息,以向客戶端設(shè)備B720的用戶提供關(guān)于邀請的信息(例如,發(fā)送邀請的人的名稱(例如用戶名、真名、電話號碼或它們的一些組合),邀請的目的(例如P2P視頻會議、P2P即時消息會話等)等)。在線通信會話邀請請求如果被打開并正常的運行,它將被接收和顯示在客戶端設(shè)備B720上。邀請請求包括用戶用于接受或拒絕邀請的機(jī)制(例如接受按鈕和拒絕按鈕)。如果邀請請求被拒絕,客戶端設(shè)備A710處的用戶可接收到一個通知。假設(shè)在客戶端B720處的用戶接受了邀請請求,在操作6客戶端設(shè)備B720從連接數(shù)據(jù)交換610處請求它的連接數(shù)據(jù)。連接數(shù)據(jù)交換610確定客戶端設(shè)備B720的連接數(shù)據(jù)(例如公共/私用IP地址和端口,客戶端設(shè)備B的NAT設(shè)備的NAT類型),并且在操作7,將連接數(shù)據(jù)返回給客戶端設(shè)備B720。在操作8,客戶端設(shè)備B720隨后向邀請服務(wù)620發(fā)送接受消息。該接受消息包括客戶端設(shè)備B720的連接數(shù)據(jù),并且包括客戶端設(shè)備A710的推送令牌。該接受消息還可以包括關(guān)于下述內(nèi)容的指示即,關(guān)于該消息是否是來自客戶端設(shè)備A710和客戶端設(shè)備B720之間的先前失敗的直接P2P連接嘗試的答復(fù)。該接受消息可以采用HTTPS消息的形式。在一些實施例中,邀請服務(wù)620確定客戶端設(shè)備A710和客戶端設(shè)備B720之間的P2P連接是否是可行的。在操作9,邀請服務(wù)620確定客戶端設(shè)備A和B之間的直接P2P連接是否是可行的。例如,在一個實施例中,如果從客戶端設(shè)備B620接收的接受消息指示它是來自先前失敗的直接連接嘗試(或者特定數(shù)目的先前失敗的直接連接嘗試)的答復(fù),那么邀請服務(wù)620可以推斷出直接P2P連接是不可行的。為了確定可行性,邀請服務(wù)620可以比較客戶端設(shè)備A和B的NAT類型數(shù)據(jù)以確定客戶端設(shè)備A和B的NAT設(shè)備是否支持直接P2P連接。在一個實施例中,上面描述的接受消息不包括先前失敗嘗試的指示。然而,在失敗的直接連接嘗試之后,客戶端設(shè)備710-720中的任何一個都可以發(fā)送特殊的“中繼邀請”請求(例如取代圖7操作3的邀請請求),其指示需要中繼連接。作為響應(yīng),邀請服務(wù)可以自動地調(diào)用此處描述的中繼操作(下文描述)。已知NAT類型的某些組合對于建立P2P連接是不兼容的。例如,完全錐形NAT可以和除了關(guān)閉的/裝有防火墻的NAT之外的任何其他NAT類型一起使用來建立直接P2P連接。相反,對稱NAT只能與完全錐形NAT—起使用來建立直接P2P連接。聯(lián)合各種NAT類型的可行性在一個實施例中在圖11所示的NAT兼容性表格1110中提出,其中列代表一個客戶端設(shè)備(例如客戶端設(shè)備A710)的NAT類型,而行代表其他客戶端設(shè)備(例如客戶端設(shè)備B720)的NAT類型。單元中的“1.0”表示在相關(guān)聯(lián)的列和行中的NAT類型是兼容的,而“0.0”表示NAT類型是不兼容的。如果邀請服務(wù)620確定直接P2P連接是可行的,那么邀請服務(wù)620將推送請求發(fā)送到推送通知服務(wù)640以發(fā)送邀請請求的接受。因此,在操作10B,推送通知服務(wù)640以推送通知的形式發(fā)送在線通信會話接受消息至客戶端設(shè)備A710。該接受消息包括連接數(shù)據(jù)、在線通信會話端點標(biāo)識符和客戶端設(shè)備B720的推送令牌。該接受消息將被顯示在客戶端設(shè)備A710上。由于客戶端設(shè)備A和B具有彼此的連接數(shù)據(jù),客戶端設(shè)備A和B具有足夠的信息來建立直接P2P連接。因此,在操作11A,客戶端設(shè)備A和B使用交換的連接數(shù)據(jù)建立直接的P2P連接。直接P2P連接可以通過已知的機(jī)制建立(例如使用因特網(wǎng)連接建立(ICE)或者其他已知的P2P連接機(jī)制)。然而,如果邀請服務(wù)620確定直接P2P連接是不可行的,那么它將在操作IOB發(fā)送中繼查詢請求至中繼服務(wù)650來確定客戶端設(shè)備A和B的一個或更多個中繼主機(jī)以用于連接。中繼查找請求可包括客戶端設(shè)備A和B的網(wǎng)絡(luò)信息(例如NAT穿越/連接數(shù)據(jù)和/或NAT類型數(shù)據(jù)),其被中繼服務(wù)650使用來為兩個客戶端設(shè)備選擇合適的中繼主機(jī)。如圖8所示,在一個實施例中,中繼服務(wù)650包括中繼查找模塊805、多個中繼主機(jī)815A-B、以及包含有關(guān)各個中繼主機(jī)815A-B的網(wǎng)絡(luò)信息的中繼主機(jī)數(shù)據(jù)庫810。雖然圖8示出了兩個中繼主機(jī),但應(yīng)當(dāng)理解,在一些實施例中可以有更多或更少的中繼主機(jī)。邀請服務(wù)620向中繼查找模塊805發(fā)送中繼查找請求,中繼查找模塊805使用客戶端設(shè)備A和B的網(wǎng)絡(luò)信息查詢中繼主機(jī)數(shù)據(jù)庫810。一旦接收到數(shù)據(jù)庫結(jié)果,中繼查找模塊805在操作IlB向邀請服務(wù)620提供標(biāo)識所選擇的中繼主機(jī)815A-B的響應(yīng)。在一個實施例中,中繼查找響應(yīng)包括中繼服務(wù)650生成的中繼令牌,以及已選擇的客戶端設(shè)備A和B用于中繼連接時所使用的中繼主機(jī)815A-B的網(wǎng)絡(luò)地址(IP地址/端口)。在一個實施例中,中繼令牌與中繼會話關(guān)聯(lián),并且被中繼主機(jī)815A-B使用以在連接到中繼服務(wù)650時認(rèn)證客戶端設(shè)備A和B。該令牌可以采用多種形式,包括,例如,唯一的ID中繼會話ID代碼、數(shù)字證書和/或與中繼會話關(guān)聯(lián)的唯一的加密密鑰。邀請服務(wù)620向客戶端設(shè)備A和B發(fā)送中繼響應(yīng)來指示中繼連接將被創(chuàng)建。在一個實施例中,至客戶端設(shè)備B的中繼響應(yīng)可包括中繼令牌和中繼主機(jī)815B的網(wǎng)絡(luò)信息。在一個實施例中,至客戶端設(shè)備B的響應(yīng)可以直接發(fā)送(繞過推送通知服務(wù)640),因為它是響應(yīng)于客戶端設(shè)備B的邀請接受消息而被發(fā)送的。邀請服務(wù)620還向客戶端設(shè)備A發(fā)送中繼響應(yīng),其可包括中繼令牌和中繼主機(jī)A815A的網(wǎng)絡(luò)信息。在這個實例中,該響應(yīng)是通過推送通知服務(wù)640推送到客戶端設(shè)備A的。在操作12B,客戶端設(shè)備A710使用中繼主機(jī)815A的網(wǎng)絡(luò)信息來建立與中繼服務(wù)650的連接。類似的,在操作13B,客戶端設(shè)備B720使用中繼主機(jī)815B的網(wǎng)絡(luò)信息來建立與中繼服務(wù)650的連接。在每個這樣的處理中,客戶端設(shè)備A和B的任何NAT防火墻上被打開了新的孔,用于客戶端設(shè)備A和B的NAT穿越/連接數(shù)據(jù)可由中繼服務(wù)650確定,并分別返回給客戶端設(shè)備A和B(例如通過檢查設(shè)備的公共IP/端口)。在一個實施例中,中繼服務(wù)650和客戶端設(shè)備A和B實施通過Relay方式穿越NATCTraversalUsingRelayNAT,TURN)協(xié)議,正如本領(lǐng)域技術(shù)人員理解的,該協(xié)議允許NAT或防火墻后的元件接收來自TCP或UDP連接的數(shù)據(jù)。在操作14B,客戶端設(shè)備A710向邀請服務(wù)620發(fā)送中繼更新,中繼更新被轉(zhuǎn)發(fā)到推送通知服務(wù),又在操作17B被推送到客戶端設(shè)備B720。類似的,在操作15B,客戶端設(shè)備B720向邀請服務(wù)620發(fā)送中繼更新,其被轉(zhuǎn)發(fā)到推送通知服務(wù)620,并在操作16B被推送到客戶端設(shè)備A610。由客戶端設(shè)備A710發(fā)送的中繼更新可以包括會話令牌、每個設(shè)備的在線通信會話端點標(biāo)識符和由中繼服務(wù)650確定的NAT穿越/連接數(shù)據(jù)。在操作18B和19B,客戶端設(shè)備A和B分別通過中繼服務(wù)650建立在線通信會話連接。在一個實施例中,中繼連接可在客戶端設(shè)備A710將客戶端設(shè)備B720的NAT穿越/連接數(shù)據(jù)發(fā)送給中繼服務(wù)650時建立,反之亦然,從而允許中繼服務(wù)確定到每個對等節(jié)點的中繼主機(jī)815A-B的正確路徑。使用上面描述的技術(shù),邀請服務(wù)620可以被實現(xiàn)為無狀態(tài)服務(wù),其內(nèi)在是可升級的和能復(fù)原的,即使在具有大量客戶端設(shè)備的大型系統(tǒng)中。例如,因為推送通知服務(wù)640本來能夠定位和推送內(nèi)容至注冊的客戶端設(shè)備,所以邀請服務(wù)620不需要跟蹤每個設(shè)備的當(dāng)前位置。另外,因為設(shè)備可以發(fā)送帶有請求和響應(yīng)的NAT穿越/連接數(shù)據(jù),所以邀請服務(wù)620從來不需要維護(hù)任何預(yù)連接狀態(tài)信息,從而減少了存儲空間和邀請服務(wù)的處理需求。這樣的實現(xiàn)在大型系統(tǒng)中尤其有用。盡管圖7描述了客戶端設(shè)備處的用戶邀請單個用戶進(jìn)行在線通信會話,實施例并不限于此。例如,在一些實施例中,客戶端設(shè)備處的用戶可以邀請多個用戶參與一個在線通信會話。例如,用戶可以向邀請服務(wù)發(fā)送帶有多個在線通信會話端點標(biāo)識符的單一邀請請求消息,來邀請不同客戶端設(shè)備處的多個用戶來參與到一個在線通信會話中。在一些情況下,用戶可以擁有與同一在線通信會話端點標(biāo)識符關(guān)聯(lián)的多個客戶端設(shè)備。圖沈是一個數(shù)據(jù)流程圖,說明當(dāng)用戶具有與同一在線通信會話端點標(biāo)識符關(guān)聯(lián)的多個客戶端設(shè)備時管理邀請的示例性操作。在操作沈32,客戶端設(shè)備A(由用戶A操作0610發(fā)送一個請求,向連接數(shù)據(jù)交換610請求它的連接數(shù)據(jù)。在操作沈34,連接數(shù)據(jù)交換610返回客戶端設(shè)備A的連接數(shù)據(jù)。客戶端設(shè)備隨后向邀請服務(wù)620發(fā)送攜帶用戶IDB的在線通信會話邀請請求,以邀請用戶B進(jìn)行在線通信會話(例如P2P視頻會議、P2P即時消息會話、視頻呼叫等)。邀請請求包括A的連接數(shù)據(jù)。在操作沈38,邀請服務(wù)基于邀請請求消息中包含的B的ID執(zhí)行目錄查找。在這個例子中,目錄查找操作返回客戶端設(shè)備Bl的推送令牌和客戶端設(shè)備B2的推送令牌。因此,客戶端設(shè)備Bl與B2和B的ID關(guān)聯(lián)。隨后在操作沈40,邀請服務(wù)620將推送請求消息發(fā)送給推送通知服務(wù)640,以將邀請請求消息推送給客戶端設(shè)備Bl2615和客戶端設(shè)備B22620。在操作沈42,推送通知服務(wù)640采用推送通知消息的形式,發(fā)送在線通信會話邀請請求至客戶端設(shè)備BU615以及在操作沈44發(fā)送至客戶端設(shè)備B2沈20。每個邀請請求消息包括客戶端設(shè)備A2610的連接數(shù)據(jù)、用戶A使用的在線通信會話端點標(biāo)識符以及客戶端設(shè)備A2610的推送令牌。邀請請求還可以包括專用于在線通信會話的信息(例如發(fā)送邀請的人的名稱(例如用戶名、真名、電話號碼或它們的一些組合)、邀請的目的(例如P2P視頻會議、P2P即時消息會話等)等)。從而,在線通信會話邀請請求被發(fā)送到與原始邀請請求中包含的在線通信會話端點標(biāo)識符關(guān)聯(lián)的各個設(shè)備。在一個實施例中,邀請服務(wù)620向邀請客戶端設(shè)備發(fā)送狀態(tài)信息以指示邀請發(fā)往哪個/哪些客戶端設(shè)備。從而,在操作沈46,邀請服務(wù)620向客戶端設(shè)備A沈10發(fā)送邀請狀態(tài)更新,其指示在線通信會話邀請請求已發(fā)給客戶端設(shè)備BU615和客戶端設(shè)備B22620。在一個實施例中,客戶端設(shè)備A2610跟蹤接受邀請的客戶端設(shè)備,并且保持向其他客戶端設(shè)備通知在線通信會話的狀態(tài)。在一個實施例中,客戶端設(shè)備Bl沈15和客戶端設(shè)備B2沈20將顯示邀請請求,如果它們上電并且能夠接收邀請請求的話。在圖沈所示的例子中,客戶端設(shè)備Bl沈15處的用戶將正在接受邀請。因此,在操作沈48,客戶端設(shè)備Bl沈15向連接數(shù)據(jù)交換610請求它的連接數(shù)據(jù)。連接數(shù)據(jù)交換610確定客戶端設(shè)備BU615的連接數(shù)據(jù),并在操作沈50將其返回給客戶端設(shè)備Bl2615。在操作沈52,客戶端設(shè)備Bl2615隨后向邀請服務(wù)620發(fā)送接受消息。該接受消息包括客戶端設(shè)備Bl沈15的連接數(shù)據(jù)和客戶端設(shè)備A2610的推送令牌。該接受消息還可以包含指示,該指示有關(guān)它是不是來自客戶端設(shè)備A^UO和客戶端設(shè)備Bl2615之間先前失敗的直接P2P連接嘗試的答復(fù)。另外,接受消息還可以包括A和B的在線通信會話端點標(biāo)識符和客戶端設(shè)備B2615的推送令牌。在一些實施例中,在接收到在線通信會話的接受消息之后,邀請服務(wù)620確定直接P2P連接是否可行。因此,在操作沈討,邀請服務(wù)620執(zhí)行直接P2P兼容性險查來確定客戶端設(shè)備A^lO和客戶端設(shè)備BU615之間的直接P2P連接是否可行,按照先前描述過的方式。如果客戶端設(shè)備兼容直接P2P連接,那么執(zhí)行參考圖27描述的操作(從操作2710開始)。如果客戶端設(shè)備不兼容直接P2P連接,那么執(zhí)行參考圖觀描述的操作(從操作觀10開始)。參考圖27,其說明了直接P2P連接可行時執(zhí)行的操作,在操作2710,邀請服務(wù)620向推送通知服務(wù)640發(fā)送推送請求以發(fā)送客戶端設(shè)備Bl沈15對邀請的接受。在操作2712,推送通知服務(wù)640以推送通知的形式向客戶端設(shè)備A2610發(fā)送在線通信會話接受消息。這個接受消息包括客戶端設(shè)備Bl2615的連接數(shù)據(jù)和推送令牌,以及用戶B所使用的在線通信會話端點標(biāo)識符。在一個實施例中,有時,在接收到指示客戶端設(shè)備Bl2615已經(jīng)接受邀請的接受消息之后,客戶端設(shè)備A2610將通知客戶端設(shè)備B2沈20客戶端設(shè)備A2620已經(jīng)接受了邀請。因此,在操作2714,客戶端設(shè)備A2610向邀請服務(wù)發(fā)送邀請更新請求,其包括用戶B的在線通信會話端點標(biāo)識符,并且指示客戶端設(shè)備Bl沈15已經(jīng)接受了邀請。邀請更新請求還可以向邀請服務(wù)620指示或指出哪個與用戶B的在線通信會話端點標(biāo)識符關(guān)聯(lián)的客戶端設(shè)備應(yīng)該接收邀請更新消息(在這個例子中,客戶端設(shè)備B2沈20應(yīng)當(dāng)接收邀請更新消邀請服務(wù)620根據(jù)用戶B的在線通信會話端點標(biāo)識符執(zhí)行目錄查找2716來確定客戶端設(shè)備B2沈20的推送令牌。在確定推送令牌之后,邀請服務(wù)在操作2718向推送通知服務(wù)640發(fā)送推送請求以將邀請更新消息推送到客戶端設(shè)備B2^20。在操作2720,推送通知服務(wù)640以推送通知消息的形式將邀請更新消息發(fā)送給客戶端設(shè)備B2沈20。該邀請更新消息顯示客戶端設(shè)備Bl沈15已經(jīng)接受了在線通信會話邀請。客戶端設(shè)備B2沈20可以顯示該邀請更新消息,并且可以維護(hù)客戶端設(shè)備A2610和客戶端設(shè)備Bl沈15之間的在線通信會話的狀態(tài)(例如,在線通信會話的持續(xù)時間等)。如同將參考圖30更加詳細(xì)描述的,在一個實施例中,客戶端設(shè)備B2沈20可以發(fā)送一個轉(zhuǎn)移請求,促使在線通信會話從客戶端設(shè)備Bl沈15轉(zhuǎn)移到客戶端設(shè)備B2沈20。有時,在操作2712收到邀請接受消息之后,在操作2722客戶端設(shè)備A2610和客戶端設(shè)備Bl沈15使用交換的連接數(shù)據(jù)建立直接P2P連接。該直接P2P連接可以通過已知的機(jī)制(例如,使用因特網(wǎng)連接建立(ICE)或其他已知的P2P連接機(jī)制)建立。應(yīng)當(dāng)理解,操作2722可以在操作2714-2720之前或期間執(zhí)行。盡管圖沈描述了僅有單個客戶端設(shè)備接受邀請消息的例子,在一些情況下,多個客戶端設(shè)備可以接受直接給單個用戶的在線通信會話的邀請。例如,在一些情況下,客戶端設(shè)備Bl沈15和客戶端設(shè)備B2沈20可以接受邀請。在一個實施例中,客戶端設(shè)備A2610與第一個從其接收到接受消息的客戶端設(shè)備建立在線通信會話??蛻舳嗽O(shè)備A2610可以使取消消息被發(fā)送到(一個或多個)其他客戶端設(shè)備(例如,取消消息可以發(fā)送給邀請服務(wù),隨后通過推送通知服務(wù)推送給所述(一個或多個)其他客戶端設(shè)備)。返回去參考圖沈的操作,如果在客戶端設(shè)備A2610和客戶端設(shè)備BU615之間的直接P2P連接是不可行的,那么將執(zhí)行圖28描述的操作。圖28是說明當(dāng)直接P2P連接不可行時所執(zhí)行的示例性操作的數(shù)據(jù)流程圖。在操作觀10,邀請服務(wù)620向中繼服務(wù)650發(fā)送中繼查找請求觀10以確定由客戶端設(shè)備A2610和客戶端設(shè)備B2615使用的中繼主機(jī)。該中繼查找請求可以包括中繼服務(wù)650用來為客戶端設(shè)備選擇合適的中繼主機(jī)的客戶端設(shè)備的網(wǎng)絡(luò)信息(例如NAT穿越/連接數(shù)據(jù)和/或NAT類型數(shù)據(jù))。如圖8所示,中繼服務(wù)650的一個實施例包括多個中繼主機(jī)815A-B和包含有關(guān)各個中繼主機(jī)的網(wǎng)絡(luò)信息的中繼主機(jī)數(shù)據(jù)庫810。例如,邀請服務(wù)620向中繼服務(wù)650發(fā)送中繼查找請求,中繼服務(wù)650使用客戶端設(shè)備的網(wǎng)絡(luò)信息查詢中繼主機(jī)數(shù)據(jù)庫810。一旦接收到數(shù)據(jù)庫查找結(jié)果,中繼服務(wù)650在操作1201提供標(biāo)識所選的中繼主機(jī)815A-B的中繼查找響應(yīng)。在一個實施例中,中繼查找響應(yīng)包含中繼服務(wù)650生成的中繼令牌和將由客戶端設(shè)備用于中繼連接的中繼主機(jī)815A-B的網(wǎng)絡(luò)地址(IP地址/端口)。在一個實施例中,中繼令牌與中繼會話關(guān)聯(lián),并且由中繼主機(jī)815A-B使用以在連接到中繼服務(wù)650時認(rèn)證客戶端設(shè)備A2610和客戶端設(shè)備Bl2615。該令牌可以使用各種形式,這些形式包括(例如)唯一的ID中繼會話ID代碼、數(shù)字證書和/或唯一的與中繼會話關(guān)聯(lián)的加密密鑰。邀請服務(wù)620隨后在操作觀14向客戶端設(shè)備Bl2615發(fā)送中繼響應(yīng),其中包含中繼連接將被建立的指示。在一個實施例中,中繼響應(yīng)可以包括中繼令牌和為客戶端設(shè)備Bl2615所選的中繼主機(jī)的網(wǎng)絡(luò)信息。在一個實施例中,中繼響應(yīng)可以直接發(fā)送給客戶端設(shè)備Bl2615(繞過推送通知服務(wù)640)。邀請服務(wù)620還可以在操作觀16向客戶端設(shè)備A2610發(fā)送中繼響應(yīng),其中包括中繼令牌以及為客戶端設(shè)備A2610選擇的中繼主機(jī)的網(wǎng)絡(luò)信息。在一些實施例中,中繼響應(yīng)通過推送通知服務(wù)640被推送到移動設(shè)備A。在操作觀18,客戶端設(shè)備A2610隨后將邀請更新請求發(fā)送給邀請服務(wù)620,該邀請更新請求包括用戶B的在線通信會話端點標(biāo)識符并且指出客戶端設(shè)備BU615已經(jīng)接受了邀請。該邀請更新請求還可以向邀請服務(wù)620指示或指出與用戶B的在線通信會話端點標(biāo)識符關(guān)聯(lián)的哪個客戶端設(shè)備應(yīng)當(dāng)接收邀請更新消息(在這個例子中,客戶端設(shè)備B22620應(yīng)當(dāng)接收邀請更新消息)。邀請服務(wù)620根據(jù)用戶B的在線通信會話端點標(biāo)識符執(zhí)行目錄查找觀20來確定客戶端設(shè)備B2沈20的推送令牌。在確定推送令牌之后,邀請服務(wù)在操作觀22向推送通知服務(wù)640發(fā)送推送請求以將邀請更新消息推送到客戶端設(shè)備B2^20。在操作觀對,推送通知服務(wù)640以推送通知消息的形式將邀請更新消息發(fā)送給客戶端設(shè)備B2沈20。該邀請更新消息顯示客戶端設(shè)備Bl沈15已經(jīng)接受了在線通信會話邀請。客戶端設(shè)備B2沈20可以顯示該邀請更新消息,并且可以維護(hù)客戶端設(shè)備A^lO和客戶端設(shè)備Bl2615之間的在線通信會話的狀態(tài)(例如,在線通信會話的持續(xù)時間等)。在一個實施例中,客戶端設(shè)備B22620可以發(fā)送一個轉(zhuǎn)移請求,促使在線通信會話從客戶端設(shè)備Bl2615轉(zhuǎn)移到客戶端設(shè)備B22620。在操作觀沈,客戶端設(shè)備A2610使用為它選擇的中繼主機(jī)的網(wǎng)絡(luò)信息來建立與中繼服務(wù)650的連接。類似的,在操作觀觀,客戶端設(shè)備Bl沈20使用為它選擇的中繼主機(jī)的網(wǎng)絡(luò)信息來建立與中繼服務(wù)650的連接。在每個這樣的操作中,在客戶端設(shè)備的任何NAT防火墻上打開了新的孔,而用于客戶端設(shè)備的NAT穿越/連接數(shù)據(jù)可由中繼服務(wù)650確定,并分別返回給它們(例如通過檢查客戶端設(shè)備的公共IP/端口)。在一個實施例中,中繼服務(wù)650和客戶端設(shè)備A^lO和客戶端設(shè)備Bl2615實施通過Relay方式穿越NAT(TraversalUsingRelayNAT,TURN)協(xié)議,正如本領(lǐng)域技術(shù)人員理解的,該協(xié)議允許NAT或防火墻后的元件接收來自TCP或UDP連接的數(shù)據(jù)。在操作觀30,客戶端設(shè)備A2610向邀請服務(wù)620發(fā)送中繼更新,中繼更新在操作2832被轉(zhuǎn)發(fā)到推送通知服務(wù),又在操作觀34被推送到客戶端設(shè)備BU615。類似的,在操作2836,客戶端設(shè)備Bl2615向邀請服務(wù)620發(fā)送中繼更新,中繼更新在操作觀38被轉(zhuǎn)發(fā)到推送通知服務(wù)640,并在操作觀40被推送到客戶端設(shè)備A2610。由客戶端設(shè)備A^lO發(fā)送的中繼更新消息可以包括中繼令牌、每個在線通信會話端點標(biāo)識符和由中繼服務(wù)650在操作觀沈和觀觀確定的NAT穿越/連接數(shù)據(jù)。在一個實施例中,在客戶端設(shè)備的NAT信息中一個或更多個改變時,執(zhí)行中繼更新操作。最后,在操作觀42和觀44,客戶端設(shè)備A2610和客戶端設(shè)備Bl沈20分別通過中繼服務(wù)650建立一個P2P連接。在一個實施例中,中繼連接可以響應(yīng)于客戶端設(shè)備A^lO將客戶端設(shè)備Bl2615的NAT穿越/連接數(shù)據(jù)發(fā)送給中繼服務(wù)650而建立,反之亦然,從而允許中繼服務(wù)650能夠確定到每個對等節(jié)點的中繼主機(jī)的正確路徑。圖四是說明根據(jù)一個實施例當(dāng)在線通信會話結(jié)束時執(zhí)行的示例性操作的數(shù)據(jù)流程圖。在操作四10,客戶端設(shè)備A2610和客戶端設(shè)備Bl沈15之間的在線通信會話已經(jīng)結(jié)束。例如,客戶端設(shè)備A2610和客戶端設(shè)備Bl沈15中的任何一個終止了在線通信會話(或者在線通信會話以別的方式終止了)。在線通信會話可能是通過直接P2P連接或通過中繼。有時,在在線通信會話結(jié)束之后,在操作四12,客戶端設(shè)備A2610向邀請服務(wù)620發(fā)送在線通信會話更新請求。在線通信會話更新被發(fā)送以通知不再是在線通信會話一部分的客戶端設(shè)備B2沈20在線通信會話的結(jié)束。在線通信會話更新請求可以包括用戶B的在線通信會話標(biāo)識符,并且可以向邀請服務(wù)620指示或指出與用戶B關(guān)聯(lián)的哪個客戶端設(shè)備(例如客戶端設(shè)備B22620)將接收更新。邀請服務(wù)620根據(jù)用戶B的在線通信會話端點標(biāo)識符執(zhí)行目錄查找操作四14來確定客戶端設(shè)備B2沈20的推送令牌。在確定推送令牌之后,邀請服務(wù)在操作四16向推送通知服務(wù)640發(fā)送推送請求以將更新消息推送到客戶端設(shè)備B22620。在操作2720,推送通知服務(wù)640以推送通知消息的形式將在線通信會話更新消息發(fā)送給客戶端設(shè)備B22620。該在線通信會話更新消息顯示客戶端設(shè)備A2910和客戶端設(shè)備Bl沈15之間的在線通信會話已經(jīng)結(jié)束。圖30是說明根據(jù)一個實施例將在線通信會話從一個客戶端設(shè)備轉(zhuǎn)移到另一個客戶端設(shè)備所執(zhí)行的示例性操作的流程圖。在圖30所示的例子中,假設(shè)客戶端設(shè)備Bl2615和B2沈20中的每個均已收到加入客戶端設(shè)備A2610發(fā)起的在線通信會話的邀請(他們共享邀請中使用的在線通信會話端點標(biāo)識符),并且客戶端設(shè)備Bl2615已經(jīng)接受并且建立了與客戶端設(shè)備A2610的在線通信會話(如圖沈和27或觀所述)。另外,客戶端設(shè)備B22620已經(jīng)接收到邀請更新,其指出客戶端設(shè)備Bl2615已經(jīng)接受了邀請。在圖30示出的例子中,在線通信會話將從客戶端設(shè)備Bl沈15轉(zhuǎn)移到客戶端設(shè)備B22620。例如,客戶端設(shè)備B2^520處的用戶已經(jīng)指出它想接替客戶端設(shè)備A2610和客戶端設(shè)備Bl2620之間的在線通信會話。在一個實施例中,在線通信會話申請2115顯示了客戶端設(shè)備A2610和客戶端設(shè)備Bl沈15之間的在線通信會話的狀態(tài),其允許客戶端設(shè)備B2沈20處的用戶發(fā)出轉(zhuǎn)移在線通信會話請求(例如,通過點擊或按壓客戶端設(shè)備Bl沈15的在線通信會話應(yīng)用2115上可用的鏈接或虛擬按鈕)。在操作3010,客戶端設(shè)備B2沈20從連接數(shù)據(jù)交換610處請求它的連接數(shù)據(jù),并且在操作3012接收所請求的連接數(shù)據(jù)(如果它還不知道它的連接數(shù)據(jù))??蛻舳嗽O(shè)備B2沈20隨后在操作3014向邀請服務(wù)620發(fā)送轉(zhuǎn)移請求消息,該轉(zhuǎn)移請求消息包括客戶端設(shè)備A2610的推送令牌和客戶端設(shè)備B2沈20的連接數(shù)據(jù)。轉(zhuǎn)移請求消息還可以包括A和/或B的在線通信會話端點標(biāo)識符和/或客戶端設(shè)備A2610的推送令牌。邀請服務(wù)620隨后在操作3016向推送通知服務(wù)640發(fā)送推送請求,以促使推送通知服務(wù)640以推送通知的形式向客戶端設(shè)備A2610發(fā)送轉(zhuǎn)移消息。邀請服務(wù)620還在操作3018執(zhí)行直接P2P兼容檢查以確定客戶端設(shè)備A2610和客戶端設(shè)備B22620之間的直接P2P連接是否可行。對于該例子,直接通信是可行的,然而,應(yīng)當(dāng)理解,在線通信會話轉(zhuǎn)移也可以發(fā)生在中繼的情況下。在操作3020,推送通知服務(wù)將轉(zhuǎn)移請求消息發(fā)送給客戶端設(shè)備A2610。該轉(zhuǎn)移請求消息可包括B的在線通信會話端點標(biāo)識符和客戶端設(shè)備B2沈20的連接數(shù)據(jù)。該轉(zhuǎn)移請求消息還指出哪個設(shè)備(即客戶端設(shè)備B22620)在請求在線通信會話轉(zhuǎn)移(例如通過設(shè)備ID和/或客戶端設(shè)備B2沈20的推送令牌)。該轉(zhuǎn)移請求消息可促使客戶端設(shè)備A2610的在線通信會話應(yīng)用2115顯示轉(zhuǎn)移請求,并且可允許用戶接受或拒絕轉(zhuǎn)移請求。假設(shè)轉(zhuǎn)移請求被接受,客戶端設(shè)備A2610在操作3022使用交換的連接數(shù)據(jù)建立與客戶端設(shè)備B2620的直接P2P連接。應(yīng)當(dāng)理解,在這個點客戶端設(shè)備A2610和客戶端設(shè)備Bl沈15之間的在線通信會話是激活的。客戶端設(shè)備A2610隨后向客戶端設(shè)備Bl2615發(fā)送在線通信會話更新,指示在線通信會話將轉(zhuǎn)移到客戶端設(shè)備B22620。在一個實施例中,這個更新消息在客戶端設(shè)備之間的現(xiàn)有的在線通信會話上傳送??蛻舳嗽O(shè)備A2610隨后在操作30切換到與客戶端設(shè)備B22620的在線通信會話,并且在操作30拆掉與客戶端設(shè)備Bl2615的在線通信會話。盡管已經(jīng)描述了有關(guān)邀請單個用戶參與在線通信會話(可能與也可能不與多個客戶端設(shè)備關(guān)聯(lián))的實施例,在一些實施例中多個用戶可被邀請到在線通信會話。圖31是說明發(fā)起和建立與多個用戶的在線通信會話的示例性操作的流程圖。在操作3132,客戶端設(shè)備3110向連接數(shù)據(jù)交換610請求它的連接數(shù)據(jù);在操作3134,返回請求的連接數(shù)據(jù)。在操作3136,客戶端設(shè)備A3110向邀請服務(wù)620發(fā)送邀請請求,該邀請請求包括客戶端設(shè)備A3110的連接數(shù)據(jù)、與用戶B關(guān)聯(lián)的在線通信會話端點標(biāo)識符、以及與用戶C關(guān)聯(lián)的在線通信會話端點標(biāo)識符。因此,客戶端設(shè)備A3110處的用戶要邀請多個用戶參與在線通信會話。邀請服務(wù)620執(zhí)行目錄查找操作3138以確定與用戶B的在線通信會話端點標(biāo)識符和用戶C的在線通信會話端點標(biāo)識符關(guān)聯(lián)的推送令牌。在這個例子中以及為了簡單起見,目錄查找返回與用戶B的在線通信會話端點標(biāo)識符關(guān)聯(lián)的客戶端設(shè)備B3115和與用戶C的在線通信會話端點標(biāo)識符管理的客戶設(shè)備C3120的結(jié)果。邀請服務(wù)620隨后向推送通知服務(wù)640發(fā)送推送請求3140來請求推送通知服務(wù)640以推送消息的形式向客戶端設(shè)備B和C發(fā)送邀請。推送通知服務(wù)640隨后在操作3142向客戶端設(shè)備B3115發(fā)送邀請請求,并且在操作3144向客戶端設(shè)備C3120發(fā)送邀請請求。每個邀請請求消息包括客戶端設(shè)備A3110的連接數(shù)據(jù)、用戶A使用的在線通信會話端點標(biāo)識符以及客戶端設(shè)備A3110的推送令牌。在一個實施例中,邀請服務(wù)620向邀請客戶端設(shè)備發(fā)送狀態(tài)消息以指示邀請是發(fā)往哪個/哪些客戶端設(shè)備的。因此,在操作3146,邀請服務(wù)620向客戶端設(shè)備A3110發(fā)送邀請狀態(tài)更新,指示在線通信會話邀請請求已發(fā)送給客戶端設(shè)備B3115和客戶端設(shè)備C3120。在一個實施例中,客戶端設(shè)備B3115和客戶端設(shè)備C3120將顯示邀請請求,如果它們上電并且能夠接收邀請請求的話。在圖31示出的例子中,各個邀請將被接受。因此在操作3148客戶端設(shè)備B3115從連接數(shù)據(jù)交換610請求它的連接數(shù)據(jù)。連接數(shù)據(jù)交換610確定客戶端設(shè)備B3115的連接數(shù)據(jù),并且在操作3150將它返回給客戶端設(shè)備B3115。類似的,在操作3152客戶端設(shè)備C3120從連接數(shù)據(jù)交換610請求它的連接數(shù)據(jù)。連接數(shù)據(jù)交換610確定客戶端設(shè)備C3120的連接數(shù)據(jù),并且在操作31M將它返回給客戶端設(shè)備C3120。在操作3156,客戶端設(shè)備B3115隨后將接受消息發(fā)送給邀請服務(wù)620,在操作3158,客戶端設(shè)備C3120向邀請服務(wù)620發(fā)送接受消息。邀請服務(wù)620隨后執(zhí)行直接P2P兼容性檢查3160以確定在客戶端設(shè)備A3110和客戶端設(shè)備B3115之間,以及在客戶端設(shè)備A3110和客戶端設(shè)備C3120之間的直接P2P連接是否可行。對于這個例子,客戶端設(shè)備之間的直接P2P連接是可行的。因此,使用交換的連接數(shù)據(jù),在操作3162,客戶端設(shè)備A3110和客戶端設(shè)備B3115建立用于在線通信會話的直接P2P連接,以及在操作3164客戶端設(shè)備A3110和客戶端設(shè)備B3120建立用于在線通信會話的直接P2P連接。在這個例子中,客戶端設(shè)備A3110本質(zhì)上作為在線通信會話的主機(jī)。因此,客戶端設(shè)備B3115和客戶端設(shè)備C3120之間要發(fā)送的數(shù)據(jù)被客戶端設(shè)備A3110中繼。在其他實施例中,各方之間的整網(wǎng)連接都被建立。在這樣一個實施例中,另一個P2P連接將建立在客戶端設(shè)備B3115和客戶端設(shè)備C3120之間。盡管此處描述的實施例描述了為在線通信會話注冊客戶端設(shè)備的機(jī)制,在一些實施例中,注冊140可以實現(xiàn)一個API來允許不同的應(yīng)用來注冊在線通信會話端點標(biāo)識符和推送令牌。一個實施例中實現(xiàn)的API是由軟件組件實現(xiàn)的接口(下文中的“API實現(xiàn)軟件組件”),允許不同的軟件組件(下文中的“API調(diào)用軟件組件”)來訪問和使用一個或更多個函數(shù)、方法、程序、數(shù)據(jù)結(jié)構(gòu)和/或其他由API調(diào)用軟件組件提供的服務(wù)。例如,API允許API調(diào)用軟件組件的開發(fā)者(可能是第三方開發(fā)者)通過杠桿作用影響API實現(xiàn)軟件組件提供的特定的特征??赡艽嬖谝粋€API調(diào)用軟件組件或者可能存在多于一個這樣的軟件組件。API可以是計算機(jī)系統(tǒng)或者程序庫提供的源程序代碼接口,以為了支持對來自軟件應(yīng)用的服務(wù)的請求。API可以根據(jù)編程語言規(guī)定,在應(yīng)用構(gòu)建時,它是可解釋的或可編譯的,而不是數(shù)據(jù)如何存儲在存儲器中的外在低水平描述。API定義了當(dāng)訪問和使用API實現(xiàn)軟件組件的特定特征時,API調(diào)用軟件組件所使用的語言和參數(shù)。例如,API調(diào)用軟件組件通過API揭露的一個或更多個API調(diào)用(有時被稱作函數(shù)或方法調(diào)用)訪問API實現(xiàn)軟件組件的特定特征。響應(yīng)于來自API調(diào)用軟件組件的API調(diào)用,API實現(xiàn)軟件組件可以通過API返回一個值。雖然API定義了API調(diào)用的語法和結(jié)果(例如如何激活A(yù)PI調(diào)用和API調(diào)用做什么),API通常并不揭示API調(diào)用是如何完成API調(diào)用指定的函數(shù)的。各種函數(shù)調(diào)用或消息被通過調(diào)用軟件(API調(diào)用軟件組件)和API實現(xiàn)軟件組件之間的一個或更多個應(yīng)用程序接口轉(zhuǎn)移。轉(zhuǎn)移函數(shù)調(diào)用或消息可以包括發(fā)布、發(fā)起、激活、調(diào)用、接收、返回或響應(yīng)函數(shù)調(diào)用或消息。因此,API調(diào)用軟件組件可以轉(zhuǎn)移呼叫,而且API實現(xiàn)軟件組件可以轉(zhuǎn)移呼叫。例如,API實現(xiàn)軟件組件和API調(diào)用軟件組件可以是操作系統(tǒng)、庫、設(shè)備驅(qū)動器、API、應(yīng)用程序或其他軟件模塊(應(yīng)當(dāng)理解,API實現(xiàn)軟件組件和API調(diào)用軟件組件可以是彼此相同或者不同類型的軟件模塊)。API調(diào)用軟件組件可以是本地軟件組件(即和API實現(xiàn)軟件組件在同一個數(shù)據(jù)處理系統(tǒng)上)或者是遠(yuǎn)程軟件組件(在和API實現(xiàn)軟件組件不同的數(shù)據(jù)處理系統(tǒng)上),它在網(wǎng)絡(luò)上通過API與API實現(xiàn)軟件組件通信。應(yīng)當(dāng)理解,API實現(xiàn)軟件組件還可以作為一個API調(diào)用軟件組件(即它可以對不同的API實現(xiàn)軟件組件揭示的API執(zhí)行API調(diào)用),以及通過實現(xiàn)暴露于不同的API調(diào)用軟件組件的API,API調(diào)用軟件組件還可以作為一個API實現(xiàn)軟件組件。API可以允許多個API調(diào)用軟件組件以不同的編程語言撰寫以與API實現(xiàn)軟件組件通信(因此API可以包括用于翻譯API實現(xiàn)軟件組件和API調(diào)用軟件組件之間的調(diào)用和返回的特征);然而,API可以以特定的編程語言實現(xiàn)。圖9說明了API構(gòu)架的一個實施例,其包括實現(xiàn)API920的API實現(xiàn)軟件組件910(例如操作系統(tǒng)、庫、設(shè)備驅(qū)動器、API、應(yīng)用程序或其他軟件模塊)。API920指定一個或更多個的函數(shù)、方法、類、對象、協(xié)議、數(shù)據(jù)結(jié)構(gòu)、格式和/或API調(diào)用軟件組件930可以使用的API實現(xiàn)軟件組件的特征。API920可以指定至少一個調(diào)用協(xié)定,其指定API實現(xiàn)軟件組件中的函數(shù)如何接收來自API調(diào)用軟件組件的參數(shù)以及函數(shù)如何向API調(diào)用軟件組件返回結(jié)果。API調(diào)用軟件組件930(例如操作系統(tǒng)、庫、設(shè)備驅(qū)動器、API、應(yīng)用程序或其他軟件模塊)通過API920執(zhí)行API調(diào)用以訪問和使用由API920指定的、API實現(xiàn)軟件組件910的特征。API實現(xiàn)軟件組件910響應(yīng)于API調(diào)用,可以通過API920向API調(diào)用軟件組件930返回一個值。應(yīng)當(dāng)意識到,API實現(xiàn)軟件組件910還可以包括其他的函數(shù)、方法、類、數(shù)據(jù)結(jié)構(gòu)和/或通過API920指定的并且不能用于API調(diào)用軟件組件930的特征。應(yīng)當(dāng)理解,API調(diào)用軟件組件930可以和API實現(xiàn)軟件組件910在同一系統(tǒng)上或者也可能位于遠(yuǎn)程并且通過網(wǎng)絡(luò)使用API920訪問API實現(xiàn)軟件組件910。盡管圖9說明了與API920交互的單個API調(diào)用軟件組件930,應(yīng)當(dāng)理解,其他的API調(diào)用軟件組件也可以使用API920,這些組件可以是用與API調(diào)用軟件組件930不同的語言(或相同的語言)寫的。API實現(xiàn)軟件組件910、API920以及API調(diào)用軟件組件930可以存儲在機(jī)器可讀介質(zhì)中,該介質(zhì)包括了任何用于以機(jī)器(例如計算機(jī)或其他數(shù)據(jù)處理系統(tǒng))可讀的形式存儲的機(jī)制。例如,機(jī)器可讀介質(zhì)包括磁盤、光盤、隨機(jī)存取存儲器、只讀存儲器、閃存設(shè)備等。在電路交換呼叫和視頻呼叫之間轉(zhuǎn)換在一些實施例中,客戶端設(shè)備可以從已建立的只有音頻的電路交換呼叫轉(zhuǎn)換到視頻呼叫,而不顯著地中斷各方之間的通信。例如,已建立的只有音頻的電路交換呼叫的一方選擇轉(zhuǎn)換到視頻呼叫(其包括視頻幀和音頻),這將引起視頻呼叫邀請消息(一種形式的在線通信會話邀請消息)被發(fā)送到該呼叫的其他(一個或多個)參與者。如果所述其他(一個或多個)參與者接受視頻呼叫邀請,則將在參與者的客戶端設(shè)備之間建立P2P連接。當(dāng)P2P連接正在協(xié)商時,參與者能夠通過只有音頻的電路交換呼叫來通信。在P2P連接已經(jīng)建立并且各方之間進(jìn)行視頻通信后,客戶端設(shè)備轉(zhuǎn)換到視頻呼叫。只有音頻的電路交換呼叫隨后被丟棄,參與者能夠通過視頻呼叫通信。圖12說明了根據(jù)一些實施例的示例性客戶端設(shè)備1210和用于在電路交換呼叫與視頻呼叫之間轉(zhuǎn)換的圖形用戶界面??蛻舳嗽O(shè)備1210包括揚聲器1255(在喇叭揚聲器模式期間使用)、前向照相機(jī)1260(捕捉用于視頻呼叫的視頻)、麥克風(fēng)1沈5(捕捉聲音)、受話器/揚聲器1270(通常在呼叫期間用戶將客戶端設(shè)備1210拿到耳邊時使用)、以及顯示屏1275(在一些實施例中是觸摸屏)??蛻舳嗽O(shè)備1210還可以包括雙耳式耳機(jī)/頭戴式耳機(jī)插孔、接近傳感器、周圍光線傳感器、(一個或多個)加速計和其他組件。應(yīng)當(dāng)理解,客戶端設(shè)備1210的構(gòu)架是示例性的,包括更多或更少的不同構(gòu)架的也可以用在實施例中。如圖12所示,圖形用戶界面1205當(dāng)前正顯示在顯示屏1275上。客戶端設(shè)備1210的用戶當(dāng)前正參與只有音頻的電話呼叫(與電話號碼008)555-1234)。圖形用戶界面1205在呼叫期間包括幾個不同的選項提供給用戶。例如,客戶端設(shè)備1210響應(yīng)于接收用戶輸入(例如在合適的圖標(biāo)上敲擊或其他預(yù)定義的手勢)執(zhí)行以下操作當(dāng)輸入被施加到結(jié)束呼叫圖標(biāo)1250時結(jié)束呼叫;響應(yīng)于輸入被施加到靜音圖標(biāo)1220,將音頻呼叫靜音;響應(yīng)于輸入被施加到鍵盤圖標(biāo)1225,顯示數(shù)字鍵盤(例如,給呼叫增加額外的電話號碼);響應(yīng)于輸入被施加到揚聲器圖標(biāo)1230(將音頻輸出切換到揚聲器125而將呼叫放置于喇叭揚聲器;響應(yīng)于輸入被施加到增加呼叫圖標(biāo)1235,增加呼叫;響應(yīng)于輸入被施加到保持圖標(biāo)1M0,將呼叫置于保持(hold);響應(yīng)于輸入被施加到聯(lián)系人圖標(biāo)1245,顯示用戶的聯(lián)系人列表;以及響應(yīng)于輸入被應(yīng)用到視頻呼叫圖標(biāo)1215,轉(zhuǎn)換到視頻呼叫。圖17-18是說明根據(jù)一個實施例將只有音頻的電路交換呼叫轉(zhuǎn)換到視頻呼叫的示例性操作的流程圖。圖17-18將參考圖12、13和14的示例性實施例而得以描述。然而,應(yīng)當(dāng)理解,圖17-18的操作可以由本發(fā)明除了參考圖12、13和14討論的實施例外的實施例來執(zhí)行,而參考圖12、13和14討論的實施例可以執(zhí)行不同于參考圖17-18所討論的操作。如圖17所示,客戶端設(shè)備1210和1410通過只有音頻的電路交換呼叫1710連接(客戶端設(shè)備1210的用戶或者是客戶端設(shè)備1410的用戶發(fā)起了呼叫)。因此,客戶端設(shè)備1210和1410的用戶可以通過已建立的電路交換音頻呼叫通信。在塊1712,客戶端設(shè)備1210接收轉(zhuǎn)換到視頻呼叫的輸入。例如,用戶通過在視頻呼叫圖標(biāo)1215上敲擊或執(zhí)行其他定義的姿勢選擇了轉(zhuǎn)換到視頻呼叫。流程隨后前進(jìn)到塊1714,其中客戶端設(shè)備1210使視頻呼叫邀請消息(一種形式的在線通信會話邀請請求消息)被發(fā)送到客戶端設(shè)備1410(由客戶端設(shè)備1410的電話號碼標(biāo)識)。在一些實施例中,使用圖6和7中描述的構(gòu)架發(fā)送在線通信會話邀請請求消息。流程隨后前進(jìn)到塊1716。在塊1716,客戶端設(shè)備1210確定音頻是否當(dāng)前正通過喇叭揚聲器(即揚聲器1255)或通過雙耳式耳機(jī)/頭戴式耳機(jī)插孔而被路由。如果是,那么流程前進(jìn)到塊1720。如果不是,則流程前進(jìn)到塊1718,客戶端設(shè)備1210通過客戶端設(shè)備1210的喇叭揚聲器(例如揚聲器125對音頻進(jìn)行路由,并且流程前進(jìn)到塊1720。在塊1720,客戶端設(shè)備1210顯示前向照相機(jī)1260當(dāng)前捕捉的視頻預(yù)覽,以允許客戶端設(shè)備1210的用戶為視頻電話做準(zhǔn)備(例如為視頻電話合適地放置客戶端設(shè)備1210)。圖13說明了顯示視頻預(yù)覽1310的客戶端設(shè)備1210,該視頻預(yù)覽顯示了前向照相機(jī)1260當(dāng)前捕捉的視頻。盡管未顯示在圖13中,但在一些實施例中,取消按鈕也顯示在⑶I1305上,以允許用戶取消視頻呼叫邀請。流程從塊1720前進(jìn)到塊1722。在塊1726,客戶端設(shè)備1410接收到視頻呼叫邀請消息,該消息邀請客戶端設(shè)備1410的用戶進(jìn)行視頻呼叫。流程隨后從塊17前進(jìn)到塊17觀。在一些實施例中,客戶端設(shè)備1410具有類似于客戶端設(shè)備1210的構(gòu)架。例如,如圖14所示,客戶端設(shè)備1410包括揚聲器1455(在喇叭揚聲器模式使用)、前向照相機(jī)1460(為視頻呼叫捕捉視頻)、麥克風(fēng)1465(捕捉聲音)、受話器/揚聲器1470(通常在呼叫期間用戶將客戶端設(shè)備1210拿到耳邊時使用)、以及顯示屏1475(在一些實施例中是觸摸屏)??蛻舳嗽O(shè)備1410還可以包括雙耳式耳機(jī)/頭戴式耳機(jī)插孔、接近傳感器、周圍光線傳感器、(一個或多個)加速計和其他組件。應(yīng)當(dāng)理解,客戶端設(shè)備1410的構(gòu)架是示例性的,包括更多或更少的不同構(gòu)架也可以用在實施例中。在塊1728,客戶端設(shè)備1410播放一個或更多個指示消息接收的音頻音調(diào),以向用戶提醒該消息。音頻音調(diào)在不同實施例中可以是不同的(例如音頻音調(diào)可以和客戶端設(shè)備1410上使用的呼叫等待音類似(盡管它們不是來自與客戶端設(shè)備1410關(guān)聯(lián)的運營商),音頻音調(diào)可以是唯一的和專用于視頻呼叫的,等)。在一些實施例中,如果客戶端設(shè)備1410不在用戶耳朵附近(例如由客戶端設(shè)備1410的接近傳感器指示)和/或如果該呼叫目前在喇叭揚聲器模式,則客戶端設(shè)備1410不播放表明收到視頻呼叫邀請消息的音頻音調(diào)。流程從塊1728前進(jìn)到塊1730。在塊1730,客戶端設(shè)備1410顯示視頻呼叫邀請消息,并且可選地顯示前向照相機(jī)1460當(dāng)前正在捕捉的視頻預(yù)覽,以允許客戶端設(shè)備1410的用戶為視頻呼叫做準(zhǔn)備,流程前進(jìn)到塊1732。圖14說明了顯示視頻呼叫邀請1440的GUI1405。如圖14所示,視頻呼叫邀請1440包括接受按鈕1432、拒絕按鈕1434和視頻預(yù)覽1430(其顯示了前向照相機(jī)1460當(dāng)前捕捉的內(nèi)容)。盡管圖1410顯示了視頻呼叫邀請1440包括視頻預(yù)覽1430(也就是說,視頻預(yù)覽1430包含在視頻呼叫邀請1440內(nèi)),但在其他實施例中,視頻預(yù)覽1430位于視頻呼叫邀請1440之外和/或與視頻呼叫邀請1440重疊??蛻舳嗽O(shè)備1410的用戶可以選擇接受按鈕1432來接受視頻呼叫邀請(例如,通過敲擊或執(zhí)行其他預(yù)定義的手勢以在接受按鈕1432上輸入),并且可以選擇拒絕按鈕1434來拒絕視頻呼叫邀請(例如,通過敲擊或執(zhí)行其他預(yù)定義的手勢在拒絕按鈕1434上輸入)。在塊1732,客戶端設(shè)備1410確定是否已收到接受視頻呼叫的輸入(例如用戶是否已經(jīng)通過選擇接受按鈕1432接受了視頻呼叫邀請)。如果客戶端設(shè)備1410接收到接受視頻呼叫的輸入,那么流程前進(jìn)到塊1734,否則,流程前進(jìn)到塊1736。在塊1734,客戶端設(shè)備1410使視頻呼叫接受消息被發(fā)送到客戶端設(shè)備1210。在一些實施例中,接受消息使用圖6和7的構(gòu)架發(fā)送到客戶端設(shè)備1210。流程隨后前進(jìn)到塊1810。在塊1736,確定是否收到拒絕視頻呼叫請求的輸入(例如,用戶是否通過選擇拒絕按鈕1434拒絕了視頻呼叫邀請)。如果客戶端設(shè)備1410接收到拒絕視頻呼叫邀請的輸入,那么流程前進(jìn)到塊1738,否則,流程前進(jìn)到塊1732。在塊1738,客戶端設(shè)備1410使視頻呼叫拒絕消息被發(fā)送到客戶端設(shè)備1210。客戶端設(shè)備1410還可以清除視頻呼叫邀請1440并且停止顯示視頻預(yù)覽1430。在一些實施例中,使用圖6和7描述的構(gòu)架將視頻呼叫拒絕消息發(fā)送到客戶端設(shè)備1210。在塊1722,客戶端設(shè)備1210確定它是否已經(jīng)從客戶端設(shè)備1410收到了視頻呼叫接受消息。如果是,那么流程前進(jìn)到塊1816,否則,流程前進(jìn)到塊1724,客戶端設(shè)備1210確定它是否已經(jīng)收到了來自客戶端設(shè)備1410的視頻呼叫拒絕消息。如果是,那么流程前進(jìn)到塊1910,否則流程返回到塊1722。參考圖18,在塊1810(客戶端設(shè)備1410處的用戶已經(jīng)接受了視頻呼叫邀請),客戶端設(shè)備1410確定目前音頻是否正在通過客戶端設(shè)備1410的喇叭揚聲器(例如揚聲器1470)或者頭戴式耳機(jī)而路由。如果不是,流程前進(jìn)到塊1812,音頻的路由從揚聲器1455切換到喇叭揚聲器(例如揚聲器1470),并且流程前進(jìn)到塊1814。如果音頻已被通過喇叭揚聲器或頭戴式耳機(jī)而路由,那么流程前進(jìn)到塊1814。在塊1814,客戶端設(shè)備1410顯示前向照相機(jī)1460當(dāng)前正在捕捉的視頻預(yù)覽。只有在由于塊1730中操作而導(dǎo)致視頻預(yù)覽當(dāng)前沒有被顯示時,塊1814的操作才執(zhí)行。流程隨后從塊1814前進(jìn)到塊1820。在塊1818和1820,客戶端設(shè)備1210和1410建立互相之間的P2P連接。該P2P連接可通過已知的機(jī)制(例如使用因特網(wǎng)連接建立(ICE)或其他已知的P2P連接機(jī)制)建立。假設(shè)P2P連接已成功建立,流程從塊1818和1820分別前進(jìn)到塊1822和1824,客戶端設(shè)備1210和1410開始通過P2P連接互相發(fā)送視頻(來自前向視頻照相機(jī)1260和1460的視頻)。在一些實施例中,視頻包括視頻幀和對應(yīng)的音頻(由客戶端設(shè)備1210和1410各自的麥克風(fēng)1265和1465捕捉)兩者,而在其他實施例中,視頻和音頻是通過P2P連接來進(jìn)行通信的分離的流。流程從塊1822和1824分別前進(jìn)到塊1826和18280在塊1826和1828,客戶端設(shè)備1210和1410分別確定它們是否已經(jīng)從它們的對等節(jié)點收到了一個或更多個視頻幀。如果已經(jīng)收到,那么流程從塊1擬6和1擬8分別前進(jìn)到塊1830和1832。如果沒有收到,那么流程保留在塊1擬6和18,直到收到一個或更多個視頻幀。在一些實施例中,客戶端設(shè)備1210和1410等待一定時間以接收來自對方的視頻幀,而如果它們在那段時間內(nèi)沒有交換視頻幀,將采取替代性的動作。例如,在一些實施例中,視頻呼叫被取消,并且視頻呼叫無法建立的消息顯示在客戶端設(shè)備1210和1410的屏幕上。視頻呼叫建立失敗可能由于多種原因,包括帶寬對于視頻呼叫是不足的、視頻幀無法發(fā)送或接收等。盡管在一些實施例中,客戶端設(shè)備在繼續(xù)之前等待一個視頻幀,但在其他實施例中,客戶端設(shè)備在繼續(xù)之前等待給定時間間隔內(nèi)接收若干幀(例如視頻幀的流)。在塊1830和1832,客戶端設(shè)備1210和1410分別轉(zhuǎn)換到視頻呼叫。轉(zhuǎn)換到視頻呼叫包括顯示正在接收的視頻,以及將音頻的路由從電路交換音頻呼叫改變到視頻呼叫。在一些實施例中,視頻預(yù)覽(例如視頻預(yù)覽1310)移動到屏幕的角部(并且尺寸收縮),而正在從對等節(jié)點接收的視頻被展現(xiàn)。因此,應(yīng)當(dāng)理解,直到音頻的路由已經(jīng)從電路交換音頻呼叫改變到視頻呼叫之前,參與者仍在通過電路交換音頻呼叫通信(即,電路交換音頻呼叫在視頻呼叫協(xié)商時保持建立)。在轉(zhuǎn)換到視頻呼叫之后,電路交換音頻呼叫可以丟棄。從而,流程從塊1830和1832分別移動到塊1834和1836,在那里電路交換音頻呼叫被丟棄。圖15和16分別說明了已經(jīng)轉(zhuǎn)換到視頻呼叫的客戶端設(shè)備1210和1410。如圖15所示,客戶端設(shè)備1210顯示視頻1510,它是客戶端設(shè)備1410的前向照相機(jī)1460正在捕捉的視頻。客戶端設(shè)備1210還顯示視頻1515,是由前向照相機(jī)1260正捕捉的視頻。⑶I1505還包括結(jié)束視頻按鈕1520、以及結(jié)束視頻和呼叫按鈕1625。結(jié)束視頻按鈕1520允許用戶僅僅結(jié)束視頻呼叫并返回到音頻呼叫。結(jié)束視頻和呼叫按鈕15允許用戶完全結(jié)束視頻呼叫(例如,結(jié)束與客戶端設(shè)備1410處的用戶的通話)。如圖16所示,客戶端設(shè)備1410顯示視頻1610,是客戶端設(shè)備1210的前向照相機(jī)1260正在捕捉的視頻。客戶端設(shè)備1410還顯示視頻1615,是前向照相機(jī)1460捕捉的視頻。⑶I1605還包括結(jié)束視頻按鈕1620和結(jié)束視頻和呼叫按鈕1625。圖19是說明根據(jù)一個實施例在收到視頻呼叫拒絕消息的客戶端設(shè)備上執(zhí)行的示例性操作的流程圖。在塊1910,客戶端設(shè)備1210收到視頻呼叫拒絕消息(客戶端設(shè)備1410處的用戶已經(jīng)拒絕了視頻呼叫邀請)。流程從塊1910前進(jìn)到塊1912,客戶端設(shè)備1210顯示視頻呼叫拒絕消息,并且可選地播放一個或更多個指示視頻呼叫拒絕消息的接收的音頻音調(diào)。流程隨后前進(jìn)到塊1914,其中客戶端設(shè)備1210停止顯示它自己的視頻預(yù)覽。如果在操作1718音頻輸出在之前被改變到喇叭揚聲器,客戶端設(shè)備1210還可以提示用戶返回到原始音頻輸出(例如通過揚聲器1270)。圖20是說明根據(jù)一個實施例客戶端設(shè)備從視頻呼叫轉(zhuǎn)換到電路交換呼叫時執(zhí)行的示例性操作的流程圖。視頻呼叫2010建立在客戶端設(shè)備1210和1410之間(視頻呼叫可以根據(jù)參考圖17和18描述的機(jī)制建立,或者可以在無需從電路交換音頻呼叫轉(zhuǎn)換的情況下建立)。在塊1712,客戶端設(shè)備1210接收轉(zhuǎn)換到只有音頻的電路交換呼叫的輸入。例如,參考圖15,客戶端設(shè)備1210的用戶已經(jīng)選擇了結(jié)束視頻按鈕1520(例如在結(jié)束視頻按鈕1520上通過敲擊或執(zhí)行其他預(yù)定義的手勢)??蛻舳嗽O(shè)備1210隨后向客戶端設(shè)備1410發(fā)送一個消息,指示轉(zhuǎn)換到只有音頻的電路交換呼叫2014。客戶端設(shè)備1210隨后向客戶端設(shè)備1410發(fā)起電路交換音頻呼叫請求(例如客戶端設(shè)備1210自動地呼叫客戶端設(shè)備1410的號碼)。在一些實施例中,這是在后臺執(zhí)行的,并且無需用戶交互。該呼叫通過多個運營商網(wǎng)絡(luò)基礎(chǔ)設(shè)施的網(wǎng)元(例如基站、移動交換中心等)而被路由??蛻舳嗽O(shè)備1410接收和應(yīng)答電路交換呼叫2020。在一個實施例中,客戶端設(shè)備1410顯示來電呼叫請求,并且可以播放指示來電呼叫請求的音頻音調(diào)(例如呼叫等待音調(diào)或其他音調(diào)),并且要求用戶的干涉來應(yīng)答呼叫。在另一個實施例中,客戶端設(shè)備1410自動應(yīng)答呼叫,無需用戶干涉(并且可以播放或者也可以不播放指示來電呼叫請求的音頻音調(diào))。在呼叫被應(yīng)答后,在客戶端設(shè)備1210和1410之間建立Q030)只有音頻的電路交換呼叫。在只有音頻的電路交換呼叫成功建立后,客戶端設(shè)備1210和1410分別轉(zhuǎn)換到只有音頻的呼叫2032和2034。例如,轉(zhuǎn)換到只有音頻的呼叫將音頻的路由從視頻呼叫改變?yōu)殡娐方粨Q呼叫,停止顯示收到的視頻,以及停止發(fā)送視頻??蛻舳嗽O(shè)備還可以停止顯示視頻預(yù)覽。從而,應(yīng)當(dāng)理解,當(dāng)只有音頻的電路交換呼叫在協(xié)商時,客戶端設(shè)備1210和1410處的用戶可以通過視頻呼叫通信(也就是,在只有音頻的電路交換呼叫正在協(xié)商時,保持視頻呼叫建立)。在成功轉(zhuǎn)換到只有音頻的電路交換呼叫之后,客戶端設(shè)備1210和1410結(jié)束P2P連接0040)。客戶端設(shè)備1210和1410處的用戶隨后可以通過只有音頻的電路交換呼叫通信。盡管本發(fā)明的實施例是關(guān)于具有兩個參與者的視頻呼叫而描述的,實施例并不限于此,因為視頻呼叫中可能存在更多參與者。在這樣的實施例中,客戶端設(shè)備可以顯示視頻聊天中來自各個不同參與者的多個視頻流。盡管本發(fā)明的實施例是關(guān)于具有兩個參與者,每個參與者發(fā)送視頻的實施例而得以描述的,但是實施例并不限于此。例如,在一些實施例中,僅僅只有單方發(fā)送視頻至其他(一個或多個)參與者,并且所述其他(一個或多個)參與者可以僅僅發(fā)送音頻。在一些實施例中,每個參與者可以在視頻呼叫期間的任何點確定是否中止發(fā)送視頻。在一些實施例中,在呼叫期間發(fā)送的視頻的質(zhì)量根據(jù)網(wǎng)絡(luò)情況而動態(tài)調(diào)整。例如,在網(wǎng)絡(luò)擁塞期間,可以降低視頻的比特率。類似的,在網(wǎng)絡(luò)相對不太擁塞期間,可以增加視頻的比特率。在一些實施例中,如果網(wǎng)絡(luò)情況阻止視頻發(fā)送,則參與方客戶端設(shè)備自動地轉(zhuǎn)換到只有音頻的電路交換呼叫。因此,如果帶寬降落到低于一定水平,參與方客戶端設(shè)備可以自動地轉(zhuǎn)換到只有音頻的電路交換呼叫(或者可以提示用戶轉(zhuǎn)換到只有音頻的電路交換呼叫)。IP視頒寸·在一些實施例中,客戶端設(shè)備包括支持與免提設(shè)備(例如頭戴式耳機(jī)、車載設(shè)備)通過WPAN(無線個人局域網(wǎng))(例如藍(lán)牙、ZigBee等)交互的功能性,包括支持管理與免提單元的IP視頻呼叫。圖32的框示了根據(jù)一個實施例,客戶端設(shè)備與免提單元進(jìn)行接口以管理IP視頻呼叫??蛻舳嗽O(shè)備3210包括發(fā)起視頻呼叫的能力(例如邀請一個或更多個接收者到在線通信會話中,該會話是視頻呼叫)以及接受視頻呼叫的能力。在一些實施例中,客戶端設(shè)備3210還包括蜂窩電話組件以作出和接收蜂窩電話呼叫和/或通過蜂窩連接訪問因特網(wǎng)或其他網(wǎng)絡(luò)。如圖32所述,客戶端設(shè)備3210包括IP視頻呼叫管理器3250、電話管理器3沈0、音頻管理器3275、免提管理器3270。在一些實施例中,客戶端設(shè)備3210還包括蜂窩呼叫管理器3255。IP視頻呼叫管理器3250管理P2P視頻呼叫應(yīng)用,包括通過如前所述的IP視頻呼叫服務(wù)3230建立IP網(wǎng)絡(luò)3235上的IPP2P視頻呼叫。在一個實施例中,IP視頻呼叫服務(wù)3230包括一個或更多個邀請服務(wù)620、推送通知服務(wù)640、注冊服務(wù)630和/或注冊服務(wù)2130、以及中繼服務(wù)650。蜂窩呼叫管理器3255管理蜂窩組件以使用蜂窩音頻呼叫服務(wù)3240在蜂窩網(wǎng)絡(luò)3245中進(jìn)行和接收只有音頻的蜂窩電話呼叫。IP視頻呼叫管理器3250和蜂窩呼叫管理器3255與電話管理器3260耦合。電話管理器3260管理IP視頻呼叫管理器3250和蜂窩呼叫管理器3255的電話操作,包括跟蹤呼叫歷史(視頻呼叫的和只有音頻的蜂窩呼叫的)和其他與呼叫相關(guān)的信息。電話管理器3260還與免提管理器3270連接,以通過外部免提設(shè)備代表IP視頻呼叫管理器3250和蜂窩呼叫管理器3255為IP視頻呼叫和蜂窩呼叫提供免提服務(wù)。在一個實施例中,在IP視頻呼叫管理器3250、蜂窩呼叫管理器3255和電話管理器3260之間使用共同的消息格式,以為完全不同的協(xié)議和呼叫類型(IP視頻呼叫和只有音頻的蜂窩呼叫)提供免提服務(wù)支持。因此,電話管理器3260為免提服務(wù)提供了類似的支持,而不管免提服務(wù)是用于IP視頻呼叫的還是用于只有音頻的蜂窩呼叫的。這還避免了免提管理器3270需要理解免提服務(wù)是用于IP視頻呼叫還是用于只有音頻的蜂窩呼叫,以使得可被免提設(shè)備理解的標(biāo)準(zhǔn)命令可用于為IP視頻呼叫以及只有音頻的蜂窩呼叫提供免提服務(wù)。在一個實施例中,電話管理器3260還在IP視頻呼叫管理器3250和蜂窩呼叫管理器3255之間作出裁決。例如,電話管理器3260可以促使IP視頻呼叫置于保持,以切換到已經(jīng)建立的只有音頻的蜂窩呼叫,和/或促使只有音頻的蜂窩呼叫置于保持,以切換到IP視頻呼叫。免提管理器3270為免提處理提供支持。在一個實施例中,免提管理器3270為連接到例如藍(lán)牙頭戴式耳機(jī)或藍(lán)牙車載設(shè)備的藍(lán)牙兼容免提設(shè)備實施藍(lán)牙協(xié)議堆棧。在一個特定實施例中,免提管理器3270實施藍(lán)牙頭戴式耳機(jī)簡檔(例如2008年12月18日的頭戴式耳機(jī)簡檔(HeadsetProfile,HSP)1.2規(guī)范中定義的)和/或藍(lán)牙免提簡檔(例如在2005年11月25日的免提簡檔1.5(Hands-FreeProfiIe,HFP1.5)規(guī)范中定義的)。免提管理器3270允許免提單元3220作為WPAN3225中IP視頻呼叫和只有音頻的蜂窩呼叫的聽覺中繼,而且允許其執(zhí)行其他免提服務(wù)。例如,在IP視頻呼叫的情況下,呼叫的音頻部分可以通過免提單元3220路由,而不是客戶端設(shè)備3210的揚聲器路由,而呼叫的視頻部分保持由客戶端設(shè)備3210顯示(或者由附帶的顯示器顯示)。免提設(shè)備3220還包括麥克風(fēng)以捕捉音頻信息,其隨后被發(fā)送到客戶端計算設(shè)備3210。因此,用戶可以使用免提設(shè)備3220在IP視頻呼叫和/或只有音頻的蜂窩呼叫期間講話或收聽音頻。免提管理器3270還響應(yīng)于從免提設(shè)備3220接受輸入,支持其他的免提服務(wù),包括執(zhí)行以下用于IP視頻呼叫和/或只有音頻的蜂窩呼叫的一個或更多個允許用戶應(yīng)答呼叫、結(jié)束呼叫、將呼叫置于保持、靜音呼叫、增加或降低呼叫的音量、將音頻傳送到客戶端設(shè)備、將音頻傳送到免提單元、進(jìn)行呼叫、以及重?fù)苌洗魏艚?。從而,用戶可以使用免提單?220來應(yīng)答IP視頻呼叫、結(jié)束IP視頻呼叫,將IP視頻呼叫置于保持和/或靜音、增加或降低IP視頻呼叫的音量、傳送IP視頻呼叫的音頻以輸出到客戶端設(shè)備3210的揚聲器、將來自客戶端設(shè)備3210的音頻傳送到免提單元3220、進(jìn)行IP視頻呼叫、以及重?fù)苌弦淮蜪P視頻呼叫。IP視頻呼叫管理器3250、蜂窩呼叫管理器3255以及免提管理器3270還耦合到音頻管理器3275。音頻管理器3275通過不同的源來路由IP視頻呼叫和只有音頻的蜂窩呼叫的音頻。例如,音頻管理器3275可促使音頻通過適合喇叭揚聲器模式的客戶端設(shè)備3210的揚聲器輸出、通過用戶在呼叫期間將客戶端設(shè)備3210拿近耳朵時使用的客戶端設(shè)備3210的揚聲器輸出、通過插入到客戶端設(shè)備3210的頭戴式耳機(jī)或雙耳式耳機(jī)的頭戴式耳機(jī)/雙耳式耳機(jī)插孔輸出、以及通過對等的免提單元(例如免提單元3220)輸出。圖33示出了根據(jù)一個實施例客戶端設(shè)備3210接收視頻呼叫的邀請,促使免提設(shè)備響鈴、接收來自免提設(shè)備的應(yīng)答指示、建立視頻呼叫以及將音頻路由到免提設(shè)備。圖33將參考圖32的示例性實施例而描述。然而,應(yīng)當(dāng)理解,圖33的操作可以由不同于參考圖32討論的實施例來執(zhí)行,而且參考圖32討論的實施例可以執(zhí)行不同于參考圖33討論的操作。在操作3310,IP視頻呼叫管理器3250從另一個客戶端設(shè)備接收邀請客戶端設(shè)備3210的用戶參加IP視頻呼叫的IP視頻呼叫邀請。該IP視頻呼叫邀請可以采用之前描述的邀請的形式。IP視頻呼叫管理器3250處理邀請請求,包括在操作3315促使邀請被顯示。例如,邀請請求可以以圖14顯示的示例性視頻呼叫邀請1410相似的方式顯示。另外,IP視頻呼叫管理器3250生成并發(fā)送呼叫對象3320至電話管理器3260。呼叫對象3320包括有關(guān)呼叫的一組參數(shù)。例如,呼叫對象參數(shù)包括一個或更多個呼叫狀態(tài)(例如連接)、和呼叫參與者標(biāo)識符(例如電話號碼、電子郵件地址、或其他在線通信會話端點標(biāo)識符)、開始時間、是呼出還是來電呼叫的指示、以及內(nèi)部用來標(biāo)識呼叫的呼叫標(biāo)識符。在一個實施例中,呼叫對象3320是通用的呼叫對象,當(dāng)參數(shù)是基于來自IP視頻呼叫邀請的信息時,它是以IP視頻呼叫邀請請求和呼入的只有音頻的蜂窩呼叫共用的格式。因此,當(dāng)接收到呼入的只有音頻的蜂窩呼叫時,蜂窩呼叫管理器3255生成具有相同格式的呼入呼叫對象。從而,從電話管理器3260的角度看,IP視頻呼叫邀請消息和呼入只有音頻的蜂窩呼叫看起來是一樣的。電話管理器3260將信息存儲在呼叫對象3320中,作為呼叫歷史結(jié)構(gòu)的一部分。電話管理器3260還生成并發(fā)送呼入呼叫消息3322至免提管理器3270。在一個實施例中,電話管理器3260僅僅發(fā)送來電呼叫消息3322,如果存在與客戶端設(shè)備3210對等的免提設(shè)備,比如免提設(shè)備3220的話(比如,電話管理器3260首先檢查是否存在與客戶端設(shè)備3210對等的免提設(shè)備)。在其他實施例中,電話管理器3260將來電呼叫消息33220發(fā)送給免提管理器3270,而不管是否存在對等的免提設(shè)備,而且免提設(shè)備3270根據(jù)是否存在對等的免提設(shè)備確定是否是否丟棄/忽視該消息或處理它。對于圖33和后續(xù)的附圖,假設(shè)免提設(shè)備3220與客戶端計算設(shè)備3210對等。在一個實施例中,呼入呼叫管理器3322包括呼叫標(biāo)識符。響應(yīng)于接收到呼入呼叫管理器3320,免提管理器3270促使一系列消息發(fā)送到免提設(shè)備3220,提醒它和用戶有來電呼叫。如圖33所示,在通過建立的音頻連接3325發(fā)送響鈴音調(diào)消息3330之前,免提管理器先建立和免提設(shè)備3220之間的音頻連接3325(例如同步面向連接(SCO)鏈路)。該響鈴音調(diào)消息由客戶端設(shè)備3210選擇,并且可以由客戶端設(shè)備3210的用戶定制。在一個實施例中,IP視頻呼叫的響鈴音調(diào)消息不同于只有音頻的蜂窩呼叫的響鈴音調(diào)。在另一個實施例中,直到呼叫被應(yīng)答才建立音頻連接。在這樣的實施例中,響鈴提醒消息被發(fā)送到免提設(shè)備3220,免提設(shè)備3220隨后在本地確定是否播放響鈴音調(diào)以向用戶提醒來電呼叫(響鈴提醒消息還可以在發(fā)送響鈴音調(diào)消息3330之前發(fā)送)。在這樣的實施例中,響鈴提醒消息可以多次發(fā)送給免提設(shè)備3220,直到呼叫被應(yīng)答或終止。有時在收到響鈴提醒消息和/或響鈴消息3330后,免提設(shè)備3220發(fā)送指示用戶已經(jīng)應(yīng)答呼叫的應(yīng)答消息3335。例如,用戶已經(jīng)按下他們的免提設(shè)備3220上的應(yīng)答按鈕,或者已經(jīng)在免提設(shè)備3220上采取行動以應(yīng)答該呼叫。免提管理器3270接收應(yīng)答消息3335,并且發(fā)送應(yīng)答消息3340至電話管理器3260。在一個實施例中,應(yīng)答消息3340包括呼叫標(biāo)識符。盡管未在圖33中示出,免提管理器3270還可以向免提設(shè)備3220發(fā)送確認(rèn)消息,來響應(yīng)于接收到應(yīng)答消息3335。電話管理器3260確定已應(yīng)答的呼叫消息3340屬于呼叫對象3320中顯示的呼叫(例如,通過比較消息3340中包括的呼叫標(biāo)識符和呼叫對象3320中存儲的信息),并且發(fā)送消息3345至IP視頻管理器3250,指示呼叫已被應(yīng)答。響應(yīng)于接收到這個消息,IP視頻呼叫管理器3250在操作3350建立IP視頻呼叫。例如,IP視頻呼叫管理器3250促使IP視頻呼叫接受消息發(fā)送到如前所述的邀請服務(wù),并且建立與發(fā)送邀請的計算設(shè)備之間的P2P連接(直接的或者是通過中繼)。有時,在建立IP視頻呼叫之后,IP視頻呼叫管理器3250向電話管理器3260發(fā)送呼叫對象3355。該呼叫對象3355包括和呼叫對象3320類似的一組參數(shù),除了狀態(tài)已經(jīng)從正連接改變到已連接。在一個實施例中,呼叫對象3355是通用的呼叫對象,具有已建立的IP視頻呼叫和已連接的只有音頻的蜂窩呼叫共用的格式。另外,有時在建立IP視頻呼叫之后,音頻管理器3275通過免提設(shè)備3220路由已建立的IP視頻呼叫的音頻部分。在一個實施例中,IP視頻呼叫管理器3250或電話管理器3260請求音頻管理器3275通過免提設(shè)備路由音頻。音頻管理器3275還可以向免提管理器3270發(fā)送消息3360,來指示音頻路由已經(jīng)改變?yōu)橥ㄟ^免提設(shè)備3220。如果音頻連接還未建立,免提管理器3270將建立和免提設(shè)備3220的音頻連接。假設(shè)存在已建立的音頻連接,視頻呼叫的音頻部分3365被路由至免提設(shè)備3220。因此,視頻呼叫的音頻部分通過免提設(shè)備3220處理,而視頻呼叫的視頻部分顯示在客戶端設(shè)備3210上。圖34顯示了根據(jù)一個實施例客戶端設(shè)備3210發(fā)起視頻呼叫,并且通過免提設(shè)備路由已建立視頻呼叫的音頻。圖34將參考圖32的示例性實施例而得以描述。然而,應(yīng)當(dāng)理解,圖34的操作可以由不同于參考圖32討論的實施例執(zhí)行,而參考圖32討論的實施例可以執(zhí)行不同于參考圖34討論的操作。在操作3410,IP視頻呼叫管理器3250使一個或更多個IP視頻呼叫邀請消息被發(fā)送到其他(一個或多個)客戶端設(shè)備以邀請(一個或多個)用戶進(jìn)行IP視頻呼叫。所述(一個或多個)IP視頻呼叫邀請消息可以采用前面描述的邀請的形式。IP視頻呼叫管理器3250生成并發(fā)生呼叫對象3415至電話管理器3260。類似于呼叫對象3320,呼叫對象3415包括一組有關(guān)呼叫的參數(shù),并且是通用的格式。電話管理器3260在呼叫對象3415中存儲信息作為呼叫歷史結(jié)構(gòu)的一部分。在一個實施例中,電話管理器3260還生成和發(fā)送呼出呼叫消息3420至免提服務(wù)器3270,指示存在一個呼出呼叫。響應(yīng)于這個消息,免提管理器3270建立和免提設(shè)備3220的音頻連接3425(如果定制的帶內(nèi)響鈴音調(diào)被發(fā)送),并且然后向免提設(shè)備3220發(fā)送響鈴音調(diào)消息3430。在其他實施例中,免提管理器3270只向免提設(shè)備3220發(fā)送響鈴音調(diào)提醒消息,來取代建立音頻連接和發(fā)送帶內(nèi)響鈴音調(diào)。有時在發(fā)送IP視頻呼叫邀請之后,IP視頻呼叫管理器3250接收IP視頻呼叫接受消息3435,其可以采用之前描述的視頻呼叫接受消息的形式。在收到這個消息之后,在操作3440建立和接受客戶端設(shè)備的P2PIP視頻呼叫(例如,建立與接受邀請的計算設(shè)備的P2P連接(直接的或通過中繼的))。有時在建立IP視頻呼叫之后,IP視頻呼叫管理器3250向電話管理器3260發(fā)送呼叫對象3445。呼叫對象3445包括和呼叫對象3415類似的一組參數(shù),除了狀態(tài)已經(jīng)從正連接變化到已連接。呼叫對象3445也是通用的格式。另外,有時在建立IP視頻呼叫之后,音頻管理器3275通過免提設(shè)備3220路由已建立的IP視頻呼叫的音頻部分。在一個實施例中,IP視頻呼叫管理器3250或電話管理器3260請求音頻管理器3275通過免提設(shè)備路由音頻。音頻管理器3275還可以向免提管理器3270發(fā)送消息3455,指示音頻路由將改變?yōu)橥ㄟ^免提設(shè)備3220。如果音頻連接還未建立,免提管理器3270將建立和免提設(shè)備3220的音頻連接。假設(shè)存在已建立的音頻連接,視頻呼叫的音頻部分3460被路由到免提設(shè)備3220。因此,視頻呼叫的音頻設(shè)備通過免提設(shè)備3220得以處理,而視頻呼叫的視頻部分顯示在客戶端設(shè)備3210上。圖35顯示了根據(jù)一個實施例,客戶端設(shè)備3210響應(yīng)于從免提設(shè)備3220接收呼叫請求而發(fā)起視頻呼叫。圖35將參考圖32的示例性實施例描述。然而,應(yīng)當(dāng)理解,圖35的存在可以由不同于參考圖32討論的實施例來執(zhí)行,而參考圖32討論的實施例可以執(zhí)行不同于參考圖35所討論的操作。免提管理器3270從免提設(shè)備3220接收呼叫請求3510。呼叫請求3510可以響應(yīng)于用戶選擇被呼的電話號碼或其他在線通信會話端點標(biāo)識符而生成。例如,用戶可以選擇免提設(shè)備3220上的重?fù)馨粹o,請求重?fù)苌弦粋€呼叫。免提管理器3270向電話管理器3260發(fā)送呼叫請求消息3520。電話管理器3260確定呼叫請求消息3520在請求與視頻呼叫關(guān)聯(lián)的標(biāo)識符的呼叫(因此呼叫請求消息應(yīng)當(dāng)發(fā)送到IP視頻呼叫管理器3250)還是和用于只有音頻的蜂窩呼叫的電話號碼關(guān)聯(lián)的標(biāo)識符的呼叫(因此應(yīng)當(dāng)發(fā)送到蜂窩呼叫管理器3255)。例如,如果呼叫請求3520是重?fù)苷埱?,電話管理?260訪問上一個撥出的呼叫以確定將呼叫請求發(fā)送到哪里,該呼叫可能是IP視頻呼叫或者是只有音頻的蜂窩呼叫。如圖35所示,電話管理器將呼叫請求消息3525發(fā)送到IP視頻呼叫管理器3250。呼叫請求消息3525包括請求的視頻呼叫的參與者的標(biāo)識符(例如電話號碼、電子郵件地址、或其他在線通信會話端點標(biāo)識符)。在圖34描述的操作3410,響應(yīng)于接收到呼叫請求消息3525,IP視頻呼叫管理器3250促使IP視頻呼叫邀請消息發(fā)送到指示的參與者。圖35剩下的操作參考圖34描述的操作執(zhí)行。因此,由于用戶在對等免提設(shè)備的動作,客戶端設(shè)備3210支持建立IP視頻呼叫。圖36說明了根據(jù)一個實施例客戶端設(shè)備3210將已建立的視頻呼叫的音頻路由到免提設(shè)備3220。在客戶端設(shè)備3210和一個或更多個其他客戶端設(shè)備之間存在已建立的IP視頻呼叫3610。該呼叫的音頻部分當(dāng)前由客戶端設(shè)備3210的揚聲器輸出,或者通過插在客戶端設(shè)備3210中的雙耳式耳機(jī)輸出。在操作3615,IP視頻呼叫管理器3250接收輸入以將音頻轉(zhuǎn)移到免提設(shè)備3220。例如,客戶端設(shè)備3210的用戶已經(jīng)向IP視頻呼叫應(yīng)用程序提供輸入,以將音頻轉(zhuǎn)移到對等的免提設(shè)備。響應(yīng)于接收到這樣的輸入,IP視頻呼叫管理器3250向音頻管理器3275發(fā)送音頻路由請求3620以通過免提設(shè)備3220路由視頻呼叫的音頻部分。音頻管理器3275可以向免提管理器3270發(fā)送消息3625,指示音頻路由將改變?yōu)橥ㄟ^免提設(shè)備3220。如果音頻連接還未建立,免提管理器3270將建立與免提設(shè)備3220的音頻連接3630。假設(shè)存在已建立的音頻連接,視頻呼叫的音頻部分3635被路由到免提設(shè)備3220。因此,在IP視頻呼叫建立后,客戶端設(shè)備3210允許用戶將音頻轉(zhuǎn)移到免提設(shè)備。盡管圖36說明了響應(yīng)于在客戶端設(shè)備接收到直接輸入,將音頻轉(zhuǎn)移到免提設(shè)備,在其他實施例中,用戶還可以促使音頻通過在免提設(shè)備3220的輸入而轉(zhuǎn)移到免提設(shè)備3220。在這樣的實施例中,免提管理器3270接收來自免提設(shè)備3220的命令以轉(zhuǎn)移音頻。免提管理器3270隨后將請求發(fā)送到音頻管理器3275,音頻管理器3275將隨后重新路由音頻。另外,盡管圖36描述了將音頻轉(zhuǎn)移到免提設(shè)備,在一些實施例中,音頻可以從免提設(shè)備轉(zhuǎn)移到客戶端設(shè)備3210的揚聲器(或雙耳式耳機(jī))。這可以在客戶端設(shè)備3210處和/或免提設(shè)備3220處發(fā)起。在這樣的實施例中,音頻管理器3275接收路由音頻請求(從IP視頻呼叫管理器3250接收或從免提管理器3270接收)以將音頻路由到客戶端設(shè)備3210,并且相應(yīng)地操作。圖37說明了根據(jù)一個實施例,客戶端設(shè)備3210響應(yīng)于從免提設(shè)備3220接收結(jié)束呼叫請求而終止視頻呼叫。響應(yīng)于用戶在免提設(shè)備3220處選擇結(jié)束呼叫(例如選擇免提設(shè)備3220上的結(jié)束按鈕),免提管理器3270從免提設(shè)備3220處接收結(jié)束呼叫消息3710。免提管理器3270將結(jié)束呼叫請求3715發(fā)送到電話管理器3260。在一個實施例中,結(jié)束呼叫請求3715包括呼叫標(biāo)識符來指示結(jié)束哪個呼叫(假如有多個呼叫)。電話管理器3260確定要結(jié)束的呼叫與IP視頻呼叫管理器3250關(guān)聯(lián),并且將結(jié)束呼叫消息3720發(fā)送給IP視頻呼叫管理器3250。響應(yīng)于接收到結(jié)束呼叫消息3720,IP視頻呼叫管理器3250促使IP視頻呼叫終止并且促使客戶端設(shè)備3210斷開P2P連接。因此,客戶端設(shè)備3210支持允許用戶使用對等免提設(shè)備結(jié)束IP視頻呼叫。圖38是說明可用在一些實施例中的示例性計算機(jī)系統(tǒng)的框圖。例如,計算機(jī)系統(tǒng)3800的示例性構(gòu)架可以包括在客戶端設(shè)備110、1210、1410、2110、2610、3210等中或者此處描述的其他計算設(shè)備中。應(yīng)當(dāng)理解,盡管圖38說明了計算機(jī)系統(tǒng)的各種組件,并未意圖代表任何特定的構(gòu)架或互連組件的方式,因為這些細(xì)節(jié)與本發(fā)明并不是密切相關(guān)的。應(yīng)當(dāng)明白,具有更少組件或更多組件的其他計算機(jī)系統(tǒng)也可以被使用。如圖38所示,采用數(shù)據(jù)處理系統(tǒng)形式的計算機(jī)系統(tǒng)3800包括和處理系統(tǒng)3820耦合的(一個或多個)總線3850、電源3825、存儲器3830和非易失性存儲器3840(例如硬盤、閃存、相變存儲器(PCM)等)。(一個或多個)總線3850可以通過本領(lǐng)域公知的各種橋、控制器、和或適配器互相連接。處理系統(tǒng)3820可以從存儲器30和/或非易失性存儲器3840中提取(一個或多個)指令,并且執(zhí)行指令以完成上述的操作。總線3850將上面的組件互連在一起,并且還將那些組件互連到可選的dock3860、顯示器控制器&顯示設(shè)備3870、輸入/輸出設(shè)備3880(例如NIC(網(wǎng)絡(luò)接口卡)、光標(biāo)控制(例如鼠標(biāo)、觸摸屏、觸摸板等)、鍵盤等),以及可選的(一個或多個)無線收發(fā)器3890(例如藍(lán)牙、WiFi、紅外等)。圖39是說明可用在一些實施例中的示例性數(shù)據(jù)處理系統(tǒng)的框圖。例如,數(shù)據(jù)處理系統(tǒng)3900可以是手持式計算機(jī),個人數(shù)字助理(PDA),移動電話,便攜式游戲系統(tǒng),便攜式媒體播放器,書寫板,可包括移動電話、媒體播放器和/或游戲系統(tǒng)的手持式計算設(shè)備。作為另一個例子,數(shù)據(jù)處理系統(tǒng)3900可以是網(wǎng)絡(luò)計算機(jī)或在另一個設(shè)備內(nèi)的嵌入式處理設(shè)備。根據(jù)一個實施例,數(shù)據(jù)處理系統(tǒng)3900的示例性構(gòu)架可以包含在客戶端設(shè)備110、1210、1410、2110、2610、3210等中或者此處描述的其他計算設(shè)備中。數(shù)據(jù)處理系統(tǒng)3900包括處理系統(tǒng)3920,其可以包括一個或更多個微處理器和/或集成電路上的系統(tǒng)。處理系統(tǒng)3920與存儲器3910、電源3925(其包括一個或更多個電池)、音頻輸入/輸出3940、顯示控制器和顯示裝置3960、可選的輸入/輸出端3950、(一個或多個)輸入裝置3970、以及(一個或多個)無線收發(fā)器3930耦合。應(yīng)當(dāng)理解,圖39未示出的另外的組件,在特定實施例中也可以成為數(shù)據(jù)處理系統(tǒng)3900的一部分,而且在特定實施例中,可以使用少于圖39示出的組件。另外,應(yīng)當(dāng)理解,如本領(lǐng)域公知的,圖39中未示出的一個或更多個總線可以用于互連各種組件。存儲器3910還存儲數(shù)據(jù)和/或由數(shù)據(jù)處理系統(tǒng)3900執(zhí)行的程序。音頻輸入/輸出3940還可以包括麥克風(fēng)和/或揚聲器,以例如播放音樂和/或通過揚聲器和麥克風(fēng)提供電話功能。顯示控制器和顯示設(shè)備3960還包括圖形用戶界面(⑶I)。無線(例如RF)收發(fā)器3930(例如WiFi收發(fā)器、紅外收發(fā)器、藍(lán)牙收發(fā)器、無線服務(wù)電話收發(fā)器等)可用于和其他的數(shù)據(jù)處理系統(tǒng)通信。一個或更多個輸入設(shè)備3970允許用戶向系統(tǒng)提供輸入。這些輸入設(shè)備可以是鍵區(qū)、鍵盤、觸摸板、多點觸摸板等??蛇x的其他輸入/輸出3950可以是用于對接(dock)的連接器。圖中示出的技術(shù)可以由通過使用存儲和執(zhí)行在一個或更多個計算設(shè)備(例如客戶端設(shè)備、服務(wù)器等)的代碼和數(shù)據(jù)來實現(xiàn)。這樣的計算設(shè)備使用機(jī)器可讀媒體,例如永久有形的機(jī)器可讀媒體(例如機(jī)器可讀存儲媒體,比如磁盤、光盤、只讀存儲器、閃存設(shè)備)和暫時傳播的信號(例如電、光、聲或其他形式的傳播信號——比如載波、紅外信號、數(shù)字信號等))來存儲和發(fā)送(內(nèi)在地和/或通過網(wǎng)絡(luò)和其他計算設(shè)備一起)代碼(由軟件指令組成)和數(shù)據(jù)。另外,這樣的計算設(shè)備通常包括一個或更多個處理器組,其耦合到一個或更多個其他組件,例如一個或更多個永久有形的機(jī)器可讀媒體(以存儲代碼和/或數(shù)據(jù))、用戶輸入/輸出設(shè)備(例如鍵盤、觸摸屏和/或顯示器)以及網(wǎng)絡(luò)連接(以使用暫時傳播的信號發(fā)送代碼和/或數(shù)據(jù))。處理器組和其他組件的耦合典型地是通過一個或更多個總線和橋(也稱作總線控制器)。因此,給定計算設(shè)備的永久性機(jī)器可讀介質(zhì)通常存儲在那個計算設(shè)備的一個或更多個處理器組上執(zhí)行的指令。實施例的一個或更多個部分可以使用軟件、固件和/或硬件的不同組合實現(xiàn)。盡管這里描述的操作涉及到對于對用作在線通信會話端點標(biāo)識符的電子郵件地址進(jìn)行驗證,自動地驗證電子郵件地址而無需用戶對包括在驗證電子郵件消息里的鏈接進(jìn)行點擊,然而,實施例并不限于此。例如,在一些實施例中,當(dāng)由于其他原因需要驗證電子郵件地址時,執(zhí)行關(guān)于自動驗證電子郵件地址所描述的操作。例如,用戶可能注冊服務(wù),作為注冊過程的一部分,該服務(wù)需要對電子郵件地址屬于該用戶進(jìn)行驗證。用戶向該服務(wù)提供電子郵件地址,并且收到消息(例如通過服務(wù)的網(wǎng)頁顯示),該消息指示電子郵件地址需要驗證而且驗證電子郵件消息已經(jīng)發(fā)往或者將發(fā)往所提供的電子郵件地址(驗證電子郵件消息可以包括、也可以不包括驗證鏈接)。客戶端設(shè)備上的應(yīng)用程序可以對與用于該驗證消息的電子郵件地址對應(yīng)的電子郵件帳戶進(jìn)行自動檢查,并在其被定位時,自動地解析該消息以定位驗證令牌,并且發(fā)送包括電子郵件地址和驗證令牌的電子郵件地址驗證消息至與服務(wù)相關(guān)聯(lián)的電子郵件驗證服務(wù)器以驗證該電子郵件地址。盡管圖中的流程圖顯示了由特定實施例執(zhí)行的操作的特定順序,應(yīng)當(dāng)理解,這樣的順序是示例性的(例如可選的實施例可以不同的順序執(zhí)行操作、組合某些操作、重疊某些操作等)。盡管本發(fā)明是結(jié)合一些實施例描述的,本領(lǐng)域技術(shù)人員將意識到本發(fā)明不限于所描述的實施例,可以在所附權(quán)利要求的精神和范圍內(nèi)通過修改和變更來實施。說明書因而被看作是示例性的,而非限制性的。權(quán)利要求1.一種在客戶端設(shè)備上執(zhí)行的方法,用于在電路交換音頻呼叫和視頻呼叫之間轉(zhuǎn)換,所述客戶端設(shè)備包括前向照相機(jī)來捕捉用于所述視頻呼叫的視頻,該方法包括從所述客戶端設(shè)備的用戶接收輸入,以從已建立的電路交換音頻呼叫轉(zhuǎn)換到視頻呼叫,其中,已建立的電路交換音頻呼叫具有多個參與者,這些參與者包括該客戶端設(shè)備的用戶以及在一個或更多個其他客戶端設(shè)備構(gòu)成的組處的由一個或更多個遠(yuǎn)程參與者構(gòu)成的組;使視頻呼叫邀請消息被發(fā)送到所述遠(yuǎn)程參與者的該組其他客戶端設(shè)備;從該組遠(yuǎn)程參與者的該組其他客戶端設(shè)備接收視頻呼叫接受消息;向該組遠(yuǎn)程參與者的該組其他客戶端設(shè)備發(fā)送由該客戶端設(shè)備的前向照相機(jī)捕捉的視頻;以及響應(yīng)于從該組遠(yuǎn)程參與者的該組其他客戶端設(shè)備中的每一個客戶端設(shè)備接收到至少一個視頻幀,從所述電路交換音頻呼叫轉(zhuǎn)換到所述視頻呼叫。2.權(quán)利要求1的方法,進(jìn)一步包括響應(yīng)于成功轉(zhuǎn)換到視頻呼叫,丟棄電路交換音頻呼叫。3.權(quán)利要求1的方法,進(jìn)一步包括響應(yīng)于確定音頻目前正通過所述客戶端設(shè)備的受話揚聲器路由,將音頻通過所述客戶端設(shè)備的喇叭揚聲器路由;以及顯示由所述客戶端設(shè)備的前向照相機(jī)捕捉的視頻的預(yù)覽。4.權(quán)利要求1的方法,其中,從電路交換音頻呼叫轉(zhuǎn)換到視頻呼叫的步驟包括執(zhí)行以下步驟顯示正在從該組遠(yuǎn)程參與者的該組其他客戶端設(shè)備接收的視頻;以及將音頻路由從所述電路交換音頻呼叫改變到所述視頻呼叫。5.權(quán)利要求1的方法,進(jìn)一步包括建立和該組其他客戶端設(shè)備之間的直接點對點(P2P)連接,其中,所述視頻通過所述P2P連接發(fā)送。6.一種在客戶端設(shè)備上執(zhí)行的方法,用于在電路交換音頻呼叫和視頻呼叫之間轉(zhuǎn)換,所述客戶端設(shè)備包括前向照相機(jī)來捕捉用于所述視頻呼叫的視頻,該方法包括接收視頻呼叫邀請消息,該消息源于所述電路交換音頻呼叫的遠(yuǎn)程參與者的客戶端設(shè)備;接收來自用戶的輸入,以接受所述視頻呼叫邀請;使視頻呼叫邀請接受消息被發(fā)送到所述遠(yuǎn)程參與者的客戶端設(shè)備;將所述前向照相機(jī)捕捉的視頻發(fā)送到所述遠(yuǎn)程參與者的客戶端設(shè)備;以及響應(yīng)于從所述遠(yuǎn)程參與者的客戶端設(shè)備接收到至少一個視頻幀,將所述電路交換音頻呼叫轉(zhuǎn)換到所述視頻呼叫。7.權(quán)利要求6的方法,進(jìn)一步包括響應(yīng)于成功轉(zhuǎn)換到所述視頻呼叫,丟棄所述電路交換音頻呼叫。8.權(quán)利要求6的方法,進(jìn)一步包括響應(yīng)于確定音頻目前正在通過所述客戶端設(shè)備的受話揚聲器路由,將音頻通過所述客戶端設(shè)備的喇叭揚聲器路由,并顯示由所述客戶端設(shè)備的前向照相機(jī)捕捉的視頻的預(yù)覽。9.權(quán)利要求6的方法,其中,從所述電路交換音頻呼叫轉(zhuǎn)換到所述視頻呼叫的步驟包括執(zhí)行以下步驟顯示正在從所述遠(yuǎn)程參與者的客戶端設(shè)備接收的視頻;以及將音頻路由從所述電路交換音頻呼叫改變到所述視頻呼叫。10.權(quán)利要求6的方法,進(jìn)一步包括建立和所述參與者的客戶端設(shè)備之間的直接點對點(P2P)連接,其中,所述視頻通過所述P2P連接發(fā)送。11.一種在電路交換音頻呼叫和視頻呼叫之間轉(zhuǎn)換的客戶端設(shè)備,該客戶端設(shè)備包括前向照相機(jī),捕捉用于所述視頻呼叫的視頻;無線收發(fā)器,與其他客戶端設(shè)備通信;存儲器,存儲程序代碼;處理器,與所述存儲器耦合以處理程序代碼,從而從所述客戶端設(shè)備的用戶接收輸入,以將已建立的電路交換音頻呼叫轉(zhuǎn)換到視頻呼叫,其中,所述已建立的電路交換音頻呼叫具有多個參與者,這些參與者包括該客戶端設(shè)備的用戶以及由一個或更多個其他客戶端設(shè)備構(gòu)成的組處的由一個或更多個遠(yuǎn)程參與者構(gòu)成的組;使視頻呼叫邀請消息被發(fā)送到所述遠(yuǎn)程參與者的該組其他客戶端設(shè)備;從該組遠(yuǎn)程參與者的該組其他客戶端設(shè)備接收視頻呼叫接受消息;向該組遠(yuǎn)程參與者的該組其他客戶端設(shè)備發(fā)送由所述前向照相機(jī)捕捉的視頻;以及響應(yīng)于從該組遠(yuǎn)程參與者的該組其他客戶端設(shè)備中的每一個客戶端設(shè)備接收到至少一個視頻幀,將所述電路交換音頻呼叫轉(zhuǎn)換到所述視頻呼叫。12.權(quán)利要求11的客戶端設(shè)備,其中,所述處理器還響應(yīng)于成功轉(zhuǎn)換到所述視頻呼叫而丟棄所述電路交換音頻呼叫,其中,所述客戶端設(shè)備還包括受話揚聲器,提供輸出音頻信號;喇叭揚聲器,提供輸出音頻信號;其中,所述處理器還響應(yīng)于確定音頻目前正在通過所述受話揚聲器路由,而將音頻通過所述喇叭揚聲器路由。13.權(quán)利要求11的客戶端設(shè)備,其中,所述處理器還顯示由所述客戶端設(shè)備的前向照相機(jī)捕捉的視頻的預(yù)覽。14.權(quán)利要求11的客戶端設(shè)備,其中,所述處理器將電路交換音頻呼叫轉(zhuǎn)換到視頻呼叫包括由所述處理器顯示正在從該組遠(yuǎn)程參與者的該組其他客戶端設(shè)備接收的視頻;以及將音頻路由從所述電路交換音頻呼叫改變到所述視頻呼叫。15.權(quán)利要求11的客戶端設(shè)備,其中,所述處理器還建立和該組其他客戶端設(shè)備之間的直接點對點(P2P)連接,其中,所述視頻通過所述P2P連接發(fā)送。16.一種在電路交換音頻呼叫和視頻呼叫之間轉(zhuǎn)換的客戶端設(shè)備,該客戶端設(shè)備包括前向照相機(jī),捕捉用于視頻呼叫的視頻;無線收發(fā)器,與其他客戶端設(shè)備通信;存儲器,存儲程序代碼;處理器,與所述存儲器耦合以處理程序代碼,從而接收視頻呼叫邀請消息,該消息源于所述電路交換音頻呼叫的遠(yuǎn)程參與者的客戶端設(shè)備;從用戶接收輸入以接受所述視頻呼叫邀請;使視頻呼叫邀請接受消息被發(fā)送到所述遠(yuǎn)程參與者的客戶端設(shè)備;將所述前向照相機(jī)捕捉的視頻發(fā)送到所述遠(yuǎn)程參與者的客戶端設(shè)備;以及響應(yīng)于從所述遠(yuǎn)程參與者的客戶端設(shè)備接收到至少一個視頻幀,將所述電路交換音頻呼叫轉(zhuǎn)換到所述視頻呼叫。17.權(quán)利要求16的客戶端設(shè)備,其中,所述處理器還響應(yīng)于成功轉(zhuǎn)換到所述視頻呼叫,丟棄所述電路交換音頻呼叫。18.權(quán)利要求16的客戶端設(shè)備,還包括受話揚聲器,提供輸出音頻信號;喇叭揚聲器,提供輸出音頻信號;其中所述處理器還響應(yīng)于確定音頻目前正在通過所述受話揚聲器路由,而將音頻通過所述喇叭揚聲器路由。19.權(quán)利要求16的客戶端設(shè)備,其中,所述處理器將所述電路交換音頻呼叫轉(zhuǎn)換到所述視頻呼叫包括由所述處理器顯示正在從所述遠(yuǎn)程參與者的客戶端設(shè)備接收的視頻;以及將音頻路由從所述電路交換音頻呼叫改變到所述視頻呼叫。20.權(quán)利要求16的客戶端設(shè)備,其中,所述處理器進(jìn)一步建立和所述參與者的客戶端設(shè)備之間的直接點對點(P2P)連接,其中,所述視頻通過所述P2P連接發(fā)送。全文摘要本申請涉及在電路交換呼叫和視頻呼叫之間轉(zhuǎn)換??蛻舳嗽O(shè)備當(dāng)前通過已建立的只有音頻的電路呼叫交換連接到一個或更多個其他客戶端設(shè)備,其接收來自用戶的輸入,以將只有音頻的電路交換呼叫轉(zhuǎn)換到視頻呼叫。視頻呼叫邀請消息被發(fā)送到其他客戶端設(shè)備。客戶端設(shè)備接收來自其他客戶端設(shè)備的視頻呼叫接受消息,并且開始向其他客戶端設(shè)備發(fā)送由它的前向照相機(jī)捕捉的視頻。響應(yīng)于接收來自一個或多個其他客戶端設(shè)備中每一個的至少一個視頻幀,客戶端設(shè)備從只有音頻的電路交換呼叫轉(zhuǎn)換到視頻呼叫。在轉(zhuǎn)換到視頻呼叫之后,電路交換呼叫被丟棄。文檔編號H04W80/10GK102215216SQ20101057027公開日2011年10月12日申請日期2010年9月25日優(yōu)先權(quán)日2010年4月7日發(fā)明者大衛(wèi)·馬克勞德,杰里米·布朗,賈斯廷·桑塔馬利亞申請人:蘋果公司