Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND DEVICE FOR TRANSFERRING WEB REAL-TIME COMMUNICATION SESSION
Document Type and Number:
WIPO Patent Application WO/2014/075250
Kind Code:
A1
Abstract:
Provided are a method and device for transferring a web real-time communication (WebRTC) session. The method for transferring a WebRTC session comprises: receiving a first identification for identifying a session to be transferred; the session to be transferred being an established WebRTC session between a source terminal and a remote terminal; according to the first identification, sending a first request message used for requesting page information corresponding to the session to be transferred to a WebRTC server; and according to identification information about the remote terminal in the page information sent by the WebRTC server, establishing a call connection used for bearing the session to be transferred with the remote terminal, so as to achieve that the session to be transferred is transferred to between a destination terminal and the remote terminal from between the source terminal and the remote terminal. By means of the embodiments of the present invention, a WebRTC session between a source terminal and a remote terminal can be transferred to between a destination terminal and the remote terminal, thereby achieving the transfer of the WebRTC session between the terminals.

Inventors:
GAO WENMEI (CN)
FAN SHUNAN (CN)
LV XIAOQIANG (CN)
WANG YAHUI (CN)
JING HAO (CN)
Application Number:
PCT/CN2012/084622
Publication Date:
May 22, 2014
Filing Date:
November 15, 2012
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
HUAWEI DEVICE CO LTD (CN)
International Classes:
H04L12/70; H04W4/60
Foreign References:
CN101120556A2008-02-06
CN102572365A2012-07-11
CN102696224A2012-09-26
Other References:
See also references of EP 2787696A4
Download PDF:
Claims:
权利要求

1、 一种网页实时通信 WebRTC通话转移方法, 其特征在于, 包括: 接收用于标识待转移通话的第一标识; 所述待转移通话为源终端与远 端终端之间已建立的 WebRTC通话;

根据所述第一标识, 向 WebRTC服务器发送用于请求所述待转移通话 对应的页面信息的第一请求消息;

根据所述 WebRTC服务器发送的所述页面信息中的所述远端终端的标 识信息, 与所述远端终端建立用于承载所述待转移通话的呼叫连接, 以实 现所述待转移通话从所述源终端与所述远端终端之间转移至目的终端与所 述远端终端之间。

2、根据权利要求 1所述的方法,其特征在于,在所述根据所述 WebRTC 服务器发送的所述页面信息中的所述远端终端的标识信息, 与所述远端终 端建立用于承载所述待转移通话的呼叫连接之前还包括:

接收浏览器服务器发送的第一令牌; 所述第一令牌为所述浏览器服务 器为所述目的终端分配的用于标识所述目的终端的令牌;

向所述 WebRTC 服务器发送所述第一令牌的验证信息, 以使所述 WebRTC服务器对所述第一令牌的验证信息进行验证;

接收所述 WebRTC服务器在对所述第一令牌的验证信息验证通过后发 送的所述待转移通话对应的页面信息。

3、根据权利要求 1或 2所述的方法,其特征在于,所述根据所述 WebRTC 服务器发送的所述页面信息中的所述远端终端的标识信息, 与所述远端终 端建立用于承载所述待转移通话的呼叫连接, 包括:

根据所述 WebRTC服务器发送的所述页面信息中的所述远端终端的标 识信息, 通过所述 WebRTC服务器向所述远端终端发送呼叫请求消息; 通过所述 WebRTC服务器接收所述远端终端根据所述呼叫请求返回的 响应消息, 建立与所述远端终端的用于承载所述待转移通话的呼叫连接。 4、 根据权利要求 1-3任一所述的方法, 其特征在于, 所述接收用于标 识待转移通话的第一标识, 具体包括:

接收浏览器服务器在接收到所述源终端发送的用于启动所述待转移通 话进行转移的指示后, 发送的用于标识所述待转移通话的第一标识;

所述源终端和所述目的终端登录的浏览器账户相同, 以使所述源终端 通过所述浏览器服务器获知所述目的终端为可选的、 待转移的终端, 所述 源终端发送的用于启动所述待转移通话进行转移的指示中包括: 指示所述 目的终端为待转移的终端的指示信息。

5、 一种网页实时通信 WebRTC通话转移方法, 其特征在于, 包括: 接收目的终端根据第一标识发送的用于请求待转移通话对应的页面信 息的第一请求消息; 所述第一标识用于标识所述待转移通话, 所述待转移 通话为源终端与远端终端之间已建立的 WebRTC通话;

向目的终端发送所述待转移通话对应的页面信息, 以使所述目的终端 根据所述页面信息中的所述远端终端的标识信息, 与所述远端终端建立用 于承载所述待转移通话的呼叫连接, 以实现所述待转移通话从所述源终端 与所述远端终端之间转移至目的终端与所述远端终端之间。

6、 根据权利要求 5所述的方法, 其特征在于, 还包括:

在所述向目的终端发送所述待转移通话对应的页面信息之前, 接收所 述目的终端发送的第一令牌的验证信息; 所述第一令牌为浏览器服务器为 所述目的终端分配的用于标识所述目的终端的令牌;

根据所述源终端发送的第二令牌, 对所述目的终端发送的所述第一令 牌的验证信息进行验证; 所述第二令牌为所述源终端从所述浏览器服务器 获取的、 所述浏览器服务器为所述目的终端分配的用于标识所述目的终端 的令牌;

所述向目的终端发送所述待转移通话对应的页面信息具体包括: 若对 所述第一令牌的验证信息进行验证得到所述第一令牌与所述第二令牌相 同, 则向所述目的终端发送所述待转移通话对应的页面信息。

7、 根据权利要求 5或 6所述的方法, 其特征在于, 所述接收目的终端 根据第一标识发送的用于请求待转移通话对应的页面信息的第一请求消息 之前, 还包括:

接收所述源终端发送的生成所述第一标识的生成请求;

将根据所述生成请求生成的所述第一标识发送给所述源终端, 以使所 述源终端将所述第一标识发送给浏览器服务器, 以使所述浏览器服务器将 所述第一标识发送给所述目的终端。

8、 根据权利要求 5-7任一所述的方法, 其特征在于, 所述向目的终端 发送所述待转移通话对应的页面信息之后还包括:

接收所述目的终端发送的用于呼叫所述远端终端的呼叫请求消息; 将所述呼叫请求消息发送给所述远端终端;

接收所述远端终端根据所述呼叫请求返回的响应消息;

将所述响应消息发送给所述目的终端, 以使所述目的终端建立与所述 远端终端的呼叫连接。

9、 根据权利要求 8所述的方法, 其特征在于, 还包括:

在所述远端终端与所述目的终端建立呼叫连接之后, WebRTC 服务器 或所述远端终端释放所述远端终端与所述源终端之间的呼叫连接。

10、根据权利要求 5-7任一所述的方法, 其特征在于, 所述向目的终端 发送所述待转移通话对应的页面信息之后还包括:

接收所述目的终端发送的用于呼叫所述远端终端的呼叫请求消息; 所 述呼叫请求消息中包括与所述目的终端对应的第一会话标识;

将所述呼叫请求消息中的所述第一会话标识变更为与所述源终端对应 的第二会话标识;

将变更后的所述呼叫请求消息发送给所述远端终端;

接收所述远端终端根据变更后的所述呼叫请求返回的响应消息; 所述 响应消息中包括所述第二会话标识;

将所述响应消息中的所述第二会话标识变更为所述第一会话标识; 将变更后的所述响应消息发送给所述目的终端, 以使所述目的终端建 立与所述远端终端的呼叫连接;

在所述目的终端与所述远端终端建立呼叫连接之后, 向所述源终端发 送用于指示所述源终端释放所述待转移通话的释放指示消息。

11、 一种网页实时通信 WebRTC通话转移装置, 其特征在于, 包括: 标识接收模块, 用于接收用于标识待转移通话的第一标识; 所述待转 移通话为源终端与远端终端之间已建立的 WebRTC通话;

页面请求模块, 用于根据所述标识接收模块接收的所述第一标识, 向 WebRTC 服务器发送用于请求所述待转移通话对应的页面信息的第一请求 消息;

呼叫连接模块, 用于根据所述 WebRTC服务器发送的所述页面信息中 的所述远端终端的标识信息, 与所述远端终端建立用于承载所述待转移通 话的呼叫连接, 以实现所述待转移通话从所述源终端与所述远端终端之间 转移至目的终端与所述远端终端之间; 所述页面信息为所述 WebRTC服务 器根据所述页面请求模块发送的所述第一请求消息发送的。

12、 根据权利要求 11所述的装置, 其特征在于, 还包括:

第一令牌接收模块, 用于在所述呼叫连接模块根据所述 WebRTC服务 器发送的所述页面信息中的所述远端终端的标识信息, 与所述远端终端建 立用于承载所述待转移通话的呼叫连接之前, 接收浏览器服务器发送的第 一令牌; 所述第一令牌为所述浏览器服务器为所述目的终端分配的用于标 识所述目的终端的令牌;

验证发送模块, 用于在所述呼叫连接模块根据所述 WebRTC服务器发 送的所述页面信息中的所述远端终端的标识信息, 与所述远端终端建立用 于承载所述待转移通话的呼叫连接之前, 向所述 WebRTC服务器发送所述 第一令牌接收模块接收的所述第一令牌的验证信息, 以使所述 WebRTC服 务器对所述第一令牌的验证信息进行验证;

页面接收模块, 用于在所述呼叫连接模块根据所述 WebRTC服务器发 送的所述页面信息中的所述远端终端的标识信息, 与所述远端终端建立用 于承载所述待转移通话的呼叫连接之前, 接收所述 WebRTC服务器在对所 述第一令牌的验证信息验证通过后发送的所述待转移通话对应的页面信 息。

13、 根据权利要求 11或 12所述的装置, 其特征在于, 所述呼叫连接 模块包括:

呼叫请求单元, 用于根据所述 WebRTC服务器发送的所述页面信息中 的所述远端终端的标识信息, 通过所述 WebRTC服务器向所述远端终端发 送呼叫请求消息; 所述页面信息为所述 WebRTC服务器根据所述页面请求 模块发送的所述第一请求消息发送的;

连接建立单元, 用于通过所述 WebRTC服务器接收所述远端终端根据 所述呼叫请求返回的响应消息, 建立与所述远端终端的用于承载所述待转 移通话的呼叫连接。

14、根据权利要求 11-13任一所述的装置, 其特征在于, 所述标识接收 模块, 具体用于接收浏览器服务器在接收到所述源终端发送的用于启动所 述待转移通话进行转移的指示后, 发送的用于标识所述待转移通话的第一 标识;

所述源终端和所述目的终端登录的浏览器账户相同, 以使所述源终端 通过所述浏览器服务器获知所述目的终端为可选的、 待转移的终端, 所述 源终端发送的用于启动所述待转移通话进行转移的指示中包括: 指示所述 目的终端为待转移的终端的指示信息。

15、 一种网页实时通信 WebRTC通话转移装置, 其特征在于, 包括: 页面请求接收模块, 用于接收目的终端根据第一标识发送的用于请求 待转移通话对应的页面信息的第一请求消息; 所述第一标识用于标识所述 待转移通话, 所述待转移通话为源终端与远端终端之间已建立的 WebRTC 通话;

页面发送模块, 用于根据所述页面请求接收模块接收的所述第一请求 消息向目的终端发送所述待转移通话对应的页面信息, 以使所述目的终端 根据所述页面信息中的所述远端终端的标识信息, 与所述远端终端建立用 于承载所述待转移通话的呼叫连接, 以实现所述待转移通话从所述源终端 与所述远端终端之间转移至目的终端与所述远端终端之间。

16、 根据权利要求 15所述的装置, 其特征在于, 还包括: 验证信息接 收模块和验证执行模块;

验证信息接收模块, 用于在所述向目的终端发送所述待转移通话对应 的页面信息之前, 接收所述目的终端发送的第一令牌的验证信息; 所述第 一令牌为浏览器服务器为所述目的终端分配的用于标识所述目的终端的令 牌;

验证执行模块, 用于根据所述源终端发送的第二令牌, 对所述验证信 息接收模块接收的所述第一令牌的验证信息进行验证; 所述第二令牌为所 述源终端从所述浏览器服务器获取的、 所述浏览器服务器为所述目的终端 分配的用于标识所述目的终端的令牌;

所述页面发送模块, 具体用于若所述验证执行模块对所述第一令牌的 验证信息进行验证得到所述第一令牌与所述第二令牌相同, 则向所述目的 终端发送所述待转移通话对应的页面信息。

17、 根据权利要求 15或 16所述的装置, 其特征在于, 还包括: 标识请求接收模块, 用于在所述页面请求接收模块接收目的终端根据 第一标识发送的用于请求待转移通话对应的页面信息的第一请求消息之 前, 接收所述源终端发送的生成所述第一标识的生成请求;

标识发送模块, 用于将根据所述标识请求接收模块接收的所述生成请 求生成的所述第一标识发送给所述源终端, 以使所述源终端将所述第一标 识发送给浏览器服务器, 以使所述浏览器服务器将所述第一标识发送给所 述目的终端。

18、 根据权利要求 15-17任一所述的装置, 其特征在于, 还包括: 第一呼叫请求处理模块, 用于在所述页面发送模块向目的终端发送所 述第一标识对应的页面信息之后, 接收所述目的终端发送的用于呼叫所述 远端终端的呼叫请求消息, 将所述呼叫请求消息发送给所述远端终端, 接 收所述远端终端根据所述呼叫请求返回的响应消息, 将所述响应消息发送 给所述目的终端, 以使所述目的终端建立与所述远端终端的呼叫连接。

19、 根据权利要求 15-17任一所述的装置, 其特征在于, 还包括: 第二 呼叫请求处理模块和释放指示模块;

所述第二呼叫请求处理模块, 包括: 第一接收单元、 第一变更单元、 第一发送单元、 第二接收单元、 第二变更单元和第二发送单元;

所述第一接收单元, 用于在所述页面发送模块向目的终端发送所述待 转移通话对应的页面信息之后, 接收所述目的终端发送的用于呼叫所述远 端终端的呼叫请求消息; 所述呼叫请求消息中包括与所述目的终端对应的 第一会话标识;

所述第一变更单元, 用于将所述第一接收单元接收的呼叫请求消息中 的所述第一会话标识变更为与所述源终端对应的第二会话标识;

所述第一发送单元, 用于将所述第一变更单元变更后的所述呼叫请求 消息发送给所述远端终端;

所述第二接收单元, 用于接收所述远端终端根据变更后的所述呼叫请 求返回的响应消息; 所述响应消息中包括所述第二会话标识;

所述第二变更单元, 用于将所述响应消息中的所述第二会话标识变更 为所述第一会话标识;

所述第二发送单元, 用于将变更后的所述响应消息发送给所述目的终 端, 以使所述目的终端建立与所述远端终端的呼叫连接;

所述释放指示模块, 用于在所述目的终端与所述远端终端建立呼叫连 接之后, 向所述源终端发送用于指示所述源终端释放所述待转移通话的释 放指示消息。

Description:
网页实时通信通话转移方法及装置

技术领域 本发明实施例涉及电子通信领域, 尤其是一种网页实时通信 WebRTC 通话转移方法及装置。 背景技术

WebRTC (Web real-time communication, 网页实时通信)是一项在浏览 器内部进行实时视频和音频通信的技术, 可以实现浏览器与浏览器之间或 者浏览器与传统通信终端之间的音视频通话功 能。 例如通过支持 WebRTC 功能的两个不同浏览器, 可以进行视频会议。 WebRTC 技术规范由 IETF ( internet engineering task force,互联网工禾呈任务组)禾口 W3C( world wide web consortium, 万维网联盟) 共同制定。 但是现有的 WebRTC 技术不支持 WebRTC通话转移的功能, 即用户无法将一个终端 (例如个人电脑或手机) 上正在进行的 WebRTC通话无缝转移 (即通话不中断) 到另一个终端 (例 如手机或个人电脑) 上。

有些浏览器可以实现网页、 图片、 小说、 视频、 文本、 电话号码等内 容在同一用户的两个终端间的无缝转移。例如 天天浏览器的"云穿越"功能可 以实现网页、 图片、 小说、 视频、 文本、 电话号码等内容在 PC (个人电脑) 和手机间的瞬间"穿越"; 以转移网页为例, 具体可以为: 在 PC端和手机端 都登陆同一个天天云账户, 需要转移的网页信息先被发送到云账户中, 然 后再被推送(push)到另一个终端上, 另一终端接收到云账户发送的网页信 息后, 自动打开该网页, 由此实现无缝转移。

而现有浏览器的无缝转移功能无法支持一个正 在进行的 WebRTC通话 在同一用户的两个终端间转移, 由此 WebRTC通话在终端间转移目前无法 实现。 发明内容

本发明实施例一方面提供了一种网页实时通信 WebRTC 通话转移方 法, 另一方面提供了一种网页实时通信 WebRTC通话转移装置, 可以实现 WebRTC通话在终端间转移。

根据第一方面, 一种 WebRTC通话转移方法, 包括:

接收用于标识待转移通话的第一标识; 所述待转移通话为源终端与远 端终端之间已建立的 WebRTC通话;

根据所述第一标识, 向 WebRTC服务器发送用于请求所述待转移通话 对应的页面信息的第一请求消息;

根据所述 WebRTC服务器发送的所述页面信息中的所述远端 终端的标 识信息, 与所述远端终端建立用于承载所述待转移通话 的呼叫连接, 以实 现所述待转移通话从所述源终端与所述远端终 端之间转移至目的终端与所 述远端终端之间。

在第一方面的第一种可能的实现方式中, 在所述根据所述 WebRTC服 务器发送的所述页面信息中的所述远端终端的 标识信息, 与所述远端终端 建立用于承载所述待转移通话的呼叫连接之前 还包括:

接收浏览器服务器发送的第一令牌; 所述第一令牌为所述浏览器服务 器为所述目的终端分配的用于标识所述目的终 端的令牌;

向所述 WebRTC 服务器发送所述第一令牌的验证信息, 以使所述 WebRTC服务器对所述第一令牌的验证信息进行验 证;

接收所述 WebRTC服务器在对所述第一令牌的验证信息验证 通过后发 送的所述待转移通话对应的页面信息。

结合第一方面或第一方面的第一种可能的实现 方式, 在第二种可能的 实现方式中, 所述根据所述 WebRTC服务器发送的所述页面信息中的所述 远端终端的标识信息, 与所述远端终端建立用于承载所述待转移通话 的呼 叫连接, 包括: 根据所述 WebRTC服务器发送的所述页面信息中的所述远端 终端的标 识信息, 通过所述 WebRTC服务器向所述远端终端发送呼叫请求消息 ; 通过所述 WebRTC服务器接收所述远端终端根据所述呼叫请 求返回的 响应消息, 建立与所述远端终端的用于承载所述待转移通 话的呼叫连接。

结合第一方面或第一方面的第一种可能的实现 方式或第一方面的第二 种可能的实现方式, 在第三种可能的实现方式中, 所述接收用于标识待转 移通话的第一标识, 具体包括:

接收浏览器服务器在接收到所述源终端发送的 用于启动所述待转移通 话进行转移的指示后, 发送的用于标识所述待转移通话的第一标识;

所述源终端和所述目的终端登录的浏览器账户 相同, 以使所述源终端 通过所述浏览器服务器获知所述目的终端为可 选的、 待转移的终端, 所述 源终端发送的用于启动所述待转移通话进行转 移的指示中包括: 指示所述 目的终端为待转移的终端的指示信息。

根据第二方面, 一种 WebRTC通话转移方法, 包括:

接收目的终端根据第一标识发送的用于请求待 转移通话对应的页面信 息的第一请求消息; 所述第一标识用于标识所述待转移通话, 所述待转移 通话为源终端与远端终端之间已建立的 WebRTC通话;

向目的终端发送所述待转移通话对应的页面信 息, 以使所述目的终端 根据所述页面信息中的所述远端终端的标识信 息, 与所述远端终端建立用 于承载所述待转移通话的呼叫连接, 以实现所述待转移通话从所述源终端 与所述远端终端之间转移至目的终端与所述远 端终端之间。

在第二方面的第一种可能的实现方式中, 该方法还包括:

在所述向目的终端发送所述待转移通话对应的 页面信息之前, 接收所 述目的终端发送的第一令牌的验证信息; 所述第一令牌为浏览器服务器为 所述目的终端分配的用于标识所述目的终端的 令牌;

根据所述源终端发送的第二令牌, 对所述目的终端发送的所述第一令 牌的验证信息进行验证; 所述第二令牌为所述源终端从所述浏览器服务 器 获取的、 所述浏览器服务器为所述目的终端分配的用于 标识所述目的终端 的令牌;

所述向目的终端发送所述待转移通话对应的页 面信息具体包括: 若对 所述第一令牌的验证信息进行验证得到所述第 一令牌与所述第二令牌相 同, 则向所述目的终端发送所述待转移通话对应的 页面信息。

结合第二方面或第二方面的第一种可能的实现 方式, 在第二种可能的 实现方式中, 所述接收目的终端根据第一标识发送的用于请 求待转移通话 对应的页面信息的第一请求消息之前, 还包括:

接收所述源终端发送的生成所述第一标识的生 成请求;

将根据所述生成请求生成的所述第一标识发送 给所述源终端, 以使所 述源终端将所述第一标识发送给浏览器服务器 , 以使所述浏览器服务器将 所述第一标识发送给所述目的终端。

结合第二方面或第二方面的第一种可能的实现 方式或第二方面的第二 种可能的实现方式, 在第三种可能的实现方式中, 所述向目的终端发送所 述待转移通话对应的页面信息之后还包括:

接收所述目的终端发送的用于呼叫所述远端终 端的呼叫请求消息; 将所述呼叫请求消息发送给所述远端终端;

接收所述远端终端根据所述呼叫请求返回的响 应消息;

将所述响应消息发送给所述目的终端, 以使所述目的终端建立与所述 远端终端的呼叫连接。

结合第二方面的第三种可能的实现方式, 在第四种可能的实现方式中, 该方法还包括:

在所述远端终端与所述目的终端建立呼叫连接 之后, WebRTC 服务器 或所述远端终端释放所述远端终端与所述源终 端之间的呼叫连接。

结合第二方面或第二方面的第一种可能的实现 方式或第二方面的第二 种可能的实现方式, 在第五种可能的实现方式中, 所述向目的终端发送所 述待转移通话对应的页面信息之后还包括:

接收所述目的终端发送的用于呼叫所述远端终 端的呼叫请求消息; 所 述呼叫请求消息中包括与所述目的终端对应的 第一会话标识;

将所述呼叫请求消息中的所述第一会话标识变 更为与所述源终端对应 的第二会话标识;

将变更后的所述呼叫请求消息发送给所述远端 终端;

接收所述远端终端根据变更后的所述呼叫请求 返回的响应消息; 所述 响应消息中包括所述第二会话标识;

将所述响应消息中的所述第二会话标识变更为 所述第一会话标识; 将变更后的所述响应消息发送给所述目的终端 , 以使所述目的终端建 立与所述远端终端的呼叫连接;

在所述目的终端与所述远端终端建立呼叫连接 之后, 向所述源终端发 送用于指示所述源终端释放所述待转移通话的 释放指示消息。

根据第三方面, 一种 WebRTC通话转移装置, 包括:

标识接收模块, 用于接收用于标识待转移通话的第一标识; 所述待转 移通话为源终端与远端终端之间已建立的 WebRTC通话;

页面请求模块, 用于根据所述标识接收模块接收的所述第一标 识, 向

WebRTC 服务器发送用于请求所述待转移通话对应的页 面信息的第一请求 消息;

呼叫连接模块, 用于根据所述 WebRTC服务器发送的所述页面信息中 的所述远端终端的标识信息, 与所述远端终端建立用于承载所述待转移通 话的呼叫连接, 以实现所述待转移通话从所述源终端与所述远 端终端之间 转移至目的终端与所述远端终端之间; 所述页面信息为所述 WebRTC服务 器根据所述页面请求模块发送的所述第一请求 消息发送的。

在第三方面的第一种可能的实现方式中, 该装置还包括: 第一令牌接收模块, 用于在所述呼叫连接模块根据所述 WebRTC服务 器发送的所述页面信息中的所述远端终端的标 识信息, 与所述远端终端建 立用于承载所述待转移通话的呼叫连接之前, 接收浏览器服务器发送的第 一令牌; 所述第一令牌为所述浏览器服务器为所述目的 终端分配的用于标 识所述目的终端的令牌;

验证发送模块, 用于在所述呼叫连接模块根据所述 WebRTC服务器发 送的所述页面信息中的所述远端终端的标识信 息, 与所述远端终端建立用 于承载所述待转移通话的呼叫连接之前, 向所述 WebRTC服务器发送所述 第一令牌接收模块接收的所述第一令牌的验证 信息, 以使所述 WebRTC服 务器对所述第一令牌的验证信息进行验证;

页面接收模块, 用于在所述呼叫连接模块根据所述 WebRTC服务器发 送的所述页面信息中的所述远端终端的标识信 息, 与所述远端终端建立用 于承载所述待转移通话的呼叫连接之前, 接收所述 WebRTC服务器在对所 述第一令牌的验证信息验证通过后发送的所述 待转移通话对应的页面信 息。

结合第三方面或第三方面的第一种可能的实现 方式, 在第二种可能的 实现方式中, 所述呼叫连接模块包括:

呼叫请求单元, 用于根据所述 WebRTC服务器发送的所述页面信息中 的所述远端终端的标识信息, 通过所述 WebRTC服务器向所述远端终端发 送呼叫请求消息; 所述页面信息为所述 WebRTC服务器根据所述页面请求 模块发送的所述第一请求消息发送的;

连接建立单元, 用于通过所述 WebRTC服务器接收所述远端终端根据 所述呼叫请求返回的响应消息, 建立与所述远端终端的用于承载所述待转 移通话的呼叫连接。

结合第三方面或第三方面的第一种可能的实现 方式或第三方面的第二 种可能的实现方式, 在第三种可能的实现方式中, 所述标识接收模块, 具 体用于接收浏览器服务器在接收到所述源终端 发送的用于启动所述待转移 通话进行转移的指示后, 发送的用于标识所述待转移通话的第一标识; 所述源终端和所述目的终端登录的浏览器账户 相同, 以使所述源终端 通过所述浏览器服务器获知所述目的终端为可 选的、 待转移的终端, 所述 源终端发送的用于启动所述待转移通话进行转 移的指示中包括: 指示所述 目的终端为待转移的终端的指示信息。

根据第四方面, 一种 WebRTC通话转移装置, 包括:

页面请求接收模块, 用于接收目的终端根据第一标识发送的用于请 求 待转移通话对应的页面信息的第一请求消息; 所述第一标识用于标识所述 待转移通话, 所述待转移通话为源终端与远端终端之间已建 立的 WebRTC 通话;

页面发送模块, 用于根据所述页面请求接收模块接收的所述第 一请求 消息向目的终端发送所述待转移通话对应的页 面信息, 以使所述目的终端 根据所述页面信息中的所述远端终端的标识信 息, 与所述远端终端建立用 于承载所述待转移通话的呼叫连接, 以实现所述待转移通话从所述源终端 与所述远端终端之间转移至目的终端与所述远 端终端之间。

在第四方面的第一种可能的实现方式中, 该装置还包括: 验证信息接 收模块和验证执行模块;

验证信息接收模块, 用于在所述向目的终端发送所述待转移通话对 应 的页面信息之前, 接收所述目的终端发送的第一令牌的验证信息 ; 所述第 一令牌为浏览器服务器为所述目的终端分配的 用于标识所述目的终端的令 牌;

验证执行模块, 用于根据所述源终端发送的第二令牌, 对所述验证信 息接收模块接收的所述第一令牌的验证信息进 行验证; 所述第二令牌为所 述源终端从所述浏览器服务器获取的、 所述浏览器服务器为所述目的终端 分配的用于标识所述目的终端的令牌; 所述页面发送模块, 具体用于若所述验证执行模块对所述第一令牌 的 验证信息进行验证得到所述第一令牌与所述第 二令牌相同, 则向所述目的 终端发送所述待转移通话对应的页面信息。

结合第四方面或第四方面的第一种可能的实现 方式, 在第二种可能的 实现方式中, 该装置还包括:

标识请求接收模块, 用于在所述页面请求接收模块接收目的终端根 据 第一标识发送的用于请求待转移通话对应的页 面信息的第一请求消息之 前, 接收所述源终端发送的生成所述第一标识的生 成请求;

标识发送模块, 用于将根据所述标识请求接收模块接收的所述 生成请 求生成的所述第一标识发送给所述源终端, 以使所述源终端将所述第一标 识发送给浏览器服务器, 以使所述浏览器服务器将所述第一标识发送给 所 述目的终端。

结合第四方面或第四方面的第一种可能的实现 方式或第四方面的第二 种可能的实现方式, 在第三种可能的实现方式中, 该装置还包括:

第一呼叫请求处理模块, 用于在所述页面发送模块向目的终端发送所 述第一标识对应的页面信息之后, 接收所述目的终端发送的用于呼叫所述 远端终端的呼叫请求消息, 将所述呼叫请求消息发送给所述远端终端, 接 收所述远端终端根据所述呼叫请求返回的响应 消息, 将所述响应消息发送 给所述目的终端, 以使所述目的终端建立与所述远端终端的呼叫 连接。

结合第四方面或第四方面的第一种可能的实现 方式或第四方面的第二 种可能的实现方式, 在第四种可能的实现方式中, 该装置还包括: 第二呼 叫请求处理模块和释放指示模块;

所述第二呼叫请求处理模块, 包括: 第一接收单元、 第一变更单元、 第一发送单元、 第二接收单元、 第二变更单元和第二发送单元;

所述第一接收单元, 用于在所述页面发送模块向目的终端发送所述 待 转移通话对应的页面信息之后, 接收所述目的终端发送的用于呼叫所述远 端终端的呼叫请求消息; 所述呼叫请求消息中包括与所述目的终端对应 的 第一会话标识;

所述第一变更单元, 用于将所述第一接收单元接收的呼叫请求消息 中 的所述第一会话标识变更为与所述源终端对应 的第二会话标识;

所述第一发送单元, 用于将所述第一变更单元变更后的所述呼叫请 求 消息发送给所述远端终端;

所述第二接收单元, 用于接收所述远端终端根据变更后的所述呼叫 请 求返回的响应消息; 所述响应消息中包括所述第二会话标识;

所述第二变更单元, 用于将所述响应消息中的所述第二会话标识变 更 为所述第一会话标识;

所述第二发送单元, 用于将变更后的所述响应消息发送给所述目的 终 端, 以使所述目的终端建立与所述远端终端的呼叫 连接;

所述释放指示模块, 用于在所述目的终端与所述远端终端建立呼叫 连 接之后, 向所述源终端发送用于指示所述源终端释放所 述待转移通话的释 放指示消息。

本发明实施例中, 目的终端在获取待转移通话的标识后, 可以根据该 标识从 WebRTC服务器获取该待转移通话对应的页面信息 , 再根据该页面 信息中的远端终端的标识信息与远端终端建立 呼叫连接, 使得源终端与远 端终端之间的 WebRTC通话可以转移到源终端与远端终端之间, 从而实现 了 WebRTC通话在终端间的转移。 附图说明

为了更清楚地说明本发明实施例中的技术方案 , 下面将对实施例中所 需要使用的附图作简单地介绍, 显而易见地, 下面描述中的附图仅仅是本 发明的一些实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动 性的前提下, 还可以根据这些附图获得其他的附图。 图 1为本发明实施例的一种 WebRTC通话转移方法流程图;

图 2为本发明实施例的另一种 WebRTC通话转移方法流程图; 图 3为本发明实施例的另一种 WebRTC通话转移方法流程图; 图 4为本发明实施例的另一种 WebRTC通话转移方法流程图; 图 5为本发明各实施例提供的 WebRTC通话转移方法应用的网络架构 图;

图 6为本发明实施例的一种 WebRTC通话转移方法的信令交互图; 图 7为本发明实施例的另一种 WebRTC通话转移方法的信令交互图; 图 8为本发明实施例的 WebRTC通话转移装置的硬件示意图; 图 9为本发明实施例提供的一种 WebRTC通话转移装置的结构示意图; 图 10为本发明实施例提供的另一种 WebRTC通话转移装置的结构示意 图;

图 11为本发明实施例提供的另一种 WebRTC通话转移装置的结构示意 图;

图 12为本发明实施例提供的另一种 WebRTC通话转移装置的结构示意 图。 具体实 式

下面将结合本发明实施例中的附图, 对本发明实施例中的技术方案进 行清楚、 完整地描述, 显然, 所描述的实施例仅仅是本发明一部分实施例, 而不是全部的实施例。 基于本发明中的实施例, 本领域普通技术人员在没 有作出创造性劳动前提下所获得的所有其他实 施例, 都属于本发明保护的 范围。

当本发明实施例提及 "第一"、 "第二"等序数词时, 除非根据上下文其确 实表达顺序之意, 应当理解为仅仅是起区分之用。

图 1为本发明实施例的一种 WebRTC通话转移方法流程图, 如图 1所 示, 该方法包括:

歩骤 101、接收用于标识待转移通话的第一标识; 该待转移通话为源终 端与远端终端之间已建立的 WebRTC通话。

本发明各实施例中, 源终端、 目的终端和远端终端为支持 WebRTC技 术的终端; 即用户可以通过源终端、 目的终端或远端终端登录浏览器, 进 行 WebRTC相关业务。

本发明实施例的应用场景可以为: 源终端登录用户 A的浏览器账户, 源终端与远端终端通过 WebRTC 技术进行视频或音频通话; 其中, 通过 WebRTC技术进行的视频或音频通话即为本发明实 施例所述的 WebRTC通 话; 通过本发明实施例提供的 WebRTC通话转移方法, 在不中断通话的情 况下, 可以将上述源终端与远端终端之间正在进行通 话转移为目的终端与 远端终端之间的通话, 也就是说, 用户 A可以从通过源终端与远端终端的 用户进行通话转移到通过目的终端与远端终端 的用户进行通话。

本发明实施例提供的方法为目的终端执行的方 法。 其中, 目的终端和 源终端都登录了同一账户的浏览器账户。

在歩骤 101 中, 目的终端可以接收到浏览器服务器或其他服务 器发送 的第一标识。 其中该第一标识为用于标识待转移通话的标识 , 该待转移通 话为源终端与远端终端之间的 WebRTC通话。 该第一标识可以为 WebRTC 服务器根据源终端的请求而生成, WebRTC 服务器在生成该第一标识后, 可以通过源终端将该第一标识发送给浏览器服 务器或其他服务器, 进而使 得浏览器服务器或其他服务器将该第一标识发 送给目的终端。

歩骤 102、 根据第一标识, 向网页实时通信服务器(以下简称 WebRTC 服务器) 发送用于请求待转移通话对应的页面信息的第 一请求消息。

目的终端接收到第一标识后, 向 WebRTC服务器请求该第一标识对应 的页面信息, 即向 WebRTC服务器请求待转移通话对应的页面信息, 该页 面信息为当前正在进行的待转移通话的页面资 源, 该页面资源例如可以包 括: 统一资源定位符 (uniform/universal resource locator, 简称为 URL)、 通 话双方的用户 ID (user-id)、 超文本标记语言 ( hypertext markup language , 简称为 HTML) 文件、 javascript文件或图片等资源。

歩骤 103、根据 WebRTC服务器发送的页面信息中的远端终端的标 识信 息, 与远端终端建立用于承载待转移通话的呼叫连 接, 以实现待转移通话 从源终端与远端终端之间转移至目的终端与远 端终端之间。

目的终端在获取到 WebRTC服务器发送的与待转移通话对应的页面信 息后, 可以根据该页面信息中的远端终端的标识信息 呼叫远端终端, 并与 远端终端建立呼叫连接, 该呼叫连接用于承载该待转移通话。 在该呼叫连 接建立成功, 且源终端与远端终端的连接被释放之后, 就实现了 WebRTC 通话的转移。

本发明实施例, 目的终端在获取待转移通话的标识后, 可以根据该标 识从 WebRTC服务器获取该待转移通话对应的页面信息 , 再根据该页面信 息中的远端终端的标识信息与远端终端建立呼 叫连接, 使得源终端与远端 终端之间的 WebRTC通话可以转移到源终端与远端终端之间, 从而实现了 WebRTC通话在终端间的转移。 图 2为本发明实施例的另一种 WebRTC通话转移方法流程图, 在图 1 所示实施例的基础上, 如图 2所示, 该方法可以包括:

歩骤 201、接收浏览器服务器发送的第一令牌。第一 令牌为浏览器服务 器为目的终端分配的用于标识目的终端的令牌 。

本发明实施例的应用场景参见图 1 所示的实施例, 本发明实施例提供 的方法为目的终端执行的方法。

目的终端接收浏览器服务器发送的、 浏览器服务器为目的终端分配的 第一令牌。 该一令牌用于标识该目的终端。 在目的终端登录浏览器的账号 时, 该浏览器对应的浏览器服务器就可以为目的终 端分配一用于标识身份 的令牌; 其中, 浏览器服务器可以为登录浏览器的每一个终端 都分配一令 牌。

歩骤 202、接收浏览器服务器在接收到源终端发送的 用于启动待转移通 话进行转移的指示后, 发送的用于标识待转移通话的第一标识。

在浏览器服务器接收到源终端发送的用于启动 待转移通话进行转移的 指示后, 目的终端接收浏览器根据该指示发送的用于标 识该待转移通话的 第一标识。 图 1所示实施例中的歩骤 101具体可以为歩骤 202。

在源终端与远端终端进行 WebRTC通话过程中, 在该通话待转移到目 的终端与远端终端之间时, 源终端可以向浏览器服务器发送指示, 指示该 浏览器服务器向目的终端发送用于标识当前待 转移通话的第一标识。

源终端和目的终端登录的浏览器账户相同, 由此源终端可以通过浏览 器服务器获知目的终端为可选的、 待转移的终端, 当源终端选择目的终端 为待转移终端之后, 源终端可以将选择的结果告知浏览器服务器, 具体可 以通过以下方式告知浏览器服务器: 源终端向浏览器服务器发送用于启动 待转移通话进行转移的指示, 该指示中可以包括: 指示目的终端为待转移 的终端的指示信息。

在另一种实施方式中, 源终端和目的终端也可以登录不同的浏览器账 户。 浏览器服务器可以通过源终端和目的终端的绑 定关系, 或者通过源终 端和目的终端分别登录的浏览器账户的绑定关 系, 将可选的、 待转移的终 端告知给源终端。

需要说明的是, 本发明实施例并不限定歩骤 201和歩骤 202的先后顺 序, 即歩骤 201可以发生在歩骤 202之前, 也可以发生在歩骤 202之后。

歩骤 203、根据第一标识, 向 WebRTC服务器发送用于请求待转移通话 对应的页面信息的第一请求消息。

该歩骤参见图 1所示实施例中歩骤 102中的描述。

歩骤 204、 向 WebRTC服务器发送第一令牌的验证信息, 以使 WebRTC 服务器对第一令牌的验证信息进行验证。

WebRTC服务器需要对目的终端的身份进行验证, 以验证目的终端是否 为源终端指定的待转移的终端。 由此, 在歩骤 204 中, 目的终端将第一令 牌的验证信息发送给 WebRTC服务器, 由 WebRTC服务器对该目的终端进 行验证。 该第一令牌的验证信息为唯一标识第一令牌的 信息, 该验证信息 例如可以为: 第一令牌的哈希值或者第一令牌加密后的密文 信息。

歩骤 205、接收 WebRTC服务器在对第一令牌的验证信息验证通过 后发 送的待转移通话对应的页面信息。

在 WebRTC服务器对目的终端验证通过后, 目的终端收到 WebRTC服 务器发送的待转移通话对应的页面信息。

歩骤 206、根据 WebRTC服务器发送的页面信息中的远端终端的标 识信 息, 通过 WebRTC服务器向远端终端发送呼叫请求消息。

目的终端根据接收到的待转移通话对应的页面 信息中的远端终端的标 识信息, 向 WebRTC服务器发送对远端终端的呼叫请求消息, WebRTC服 务器将处理后的呼叫请求消息发送给远端终端 或者直接将该呼叫请求消息 转发给远端终端。

歩骤 207、通过 WebRTC服务器接收远端终端根据呼叫请求返回的 响应 消息, 建立与远端终端的用于承载待转移通话的呼叫 连接。

目的终端接收 WebRTC服务器转发的、 远端终端返回的响应消息, 建 立与远端终端的呼叫连接, 该呼叫连接用于承载所述待转移通话。

本发明实施例, 目的终端可以从浏览器服务器获取待转移通话 的标识, 并根据该标识从 WebRTC服务器获取该待转移通话对应的页面信息 , 再根 据该页面信息中的远端终端的标识信息与远端 终端建立呼叫连接, 使得源 终端与远端终端之间的 WebRTC通话在不中断的情况下可以转移到源终端 与远端终端之间, 从而实现了 WebRTC通话在终端间的无缝转移; 并且还 通过 WebRTC服务器对目的终端的验证过程, 增加了通话转移过程的安全 性, 以保证通话能转移到指定的目的终端。 图 3为本发明实施例的另一种 WebRTC通话转移方法流程图, 如图 3 所示, 该方法包括:

歩骤 301、接收目的终端根据第一标识发送的用于请 求待转移通话对应 的页面信息的第一请求消息。

本发明实施例的应用场景参见图 1 所示实施例中的描述。 本发明实施 例提供的方法为 WebRTC服务器执行的方法。 其中, 目的终端和源终端都 登录了同一账户的浏览器账户。

在歩骤 301中, WebRTC服务器接收目的终端根据第一标识发送的 第一 请求消息, 第一请求消息用于请求待转移通话对应的页面 信息。 其中, 第 一标识用于标识待转移通话, 待转移通话为源终端与远端终端之间的 WebRTC通话。

歩骤 302、 向目的终端发送待转移通话对应的页面信息, 以使目的终端 根据页面信息中的远端终端的标识信息, 与远端终端建立用于承载待转移 通话的呼叫连接, 以实现待转移通话从源终端与远端终端之间转 移至目的 终端与远端终端之间。

WebRTC服务器接收到目的终端发送的第一请求消 息后,向目的终端发 送待转移通话当前对应的页面信息, 目的终端根据该页面信息中的远端终 端的标识信息可以与远端终端建立呼叫连接, 该呼叫连接用于承载待转移 通话。

本发明实施例, WebRTC服务器根据目的终端的请求,将待转移通 话对 应的页面信息发送给目的终端, 使得目的终端根据该页面信息中的远端终 端的标识信息与远端终端建立呼叫连接, 使得源终端与远端终端之间的 WebRTC通话可以转移到源终端与远端终端之间, 从而实现了 WebRTC通 话在终端间的无缝转移。 图 4为本发明实施例的另一种 WebRTC通话转移方法流程图, 在图 3 所示实施例的基础上, 如图 4所示, 该方法包括:

歩骤 401、 接收源终端发送的生成第一标识的生成请求。

本发明实施例的应用场景参见图 1 所示的实施例, 本发明实施例提供 的方法为 WebRTC服务器执行的方法。

在源终端与远端终端进行 WebRTC通话的过程中, 在该 WebRTC通话 待转移到目的终端与远端终端时, 源终端请求 WebRTC服务器生成该待转 移 WebRTC通话的第一标识。 WebRTC服务器接收到源终端发送的、 用于 生成第一标识的生成请求。

歩骤 402、将根据生成请求生成的第一标识发送给源 终端, 以使源终端 将第一标识发送给浏览器服务器, 以使浏览器服务器将第一标识发送给目 的终端。

WebRTC服务器根据生成请求生成用于标识该待转 移 WebRTC通话的 第一标识后, 将该第一标识发送给源终端; 源终端可以将该第一标识发送 给浏览器服务器, 使得浏览器服务器可以将该第一标识发送给目 的终端。

歩骤 403、接收目的终端发送的第一令牌的验证信息 和目的终端根据第 一标识发送的用于请求待转移通话对应的页面 信息的第一请求消息。

WebRTC 服务器接收到目的终端发送的第一令牌的验证 信息和第一请 求消息。 第一令牌为浏览器服务器为目的终端分配的用 于标识目的终端的 令牌, 目的终端在向 WebRTC服务器请求待转移通话对应的页面信息时 , 还向 WebRTC服务器发送第一令牌的验证信息, 以使 WebRTC服务器能够 对目的终端进行验证。

歩骤 404、接收源终端发送的、 由源终端从浏览器服务器获取的目的终 端的第二令牌。

在浏览器服务器为目的终端分配令牌之后, 根据源终端的请求, 浏览 器服务器将标识目的终端的令牌发送给源终端 ; 然后 WebRTC服务器接收 到源终端发送的目的终端的令牌; 为了与上述第一令牌相区别, 此处用第 二令牌来表示。 SP, 第二令牌为源终端从浏览器服务器获取的、 浏览器服 务器为目的终端分配的用于标识目的终端的令 牌。

其中, 本发明实施例并不限定歩骤 403和歩骤 404的先后顺序。

歩骤 405、根据源终端发送的第二令牌, 对目的终端发送的第一令牌的 验证信息进行验证。

WebRTC服务器根据第二令牌,对第一令牌的验证 信息进行验证。具体 的验证过程为: WebRTC服务器验证第一令牌和第二令牌是否相同 。 例如: 当第一令牌的验证信息为第一令牌的哈希值时 , WebRTC 服务器计算第二 令牌的哈希值, 然后比较第一令牌的哈希值进行比较, 如果相同, 则第一 令牌与第二令牌相同, 否则, 第一令牌与第二令牌不相同。

需要说明的是, 本发明实施例中的第一令牌和第二令牌均为浏 览器服 务器生成的用于标识目的终端的令牌, 其区别是: 第一令牌为浏览器服务 器发送给目的终端的令牌, 第二令牌为浏览器服务器发送给源终端的用于 标识目的终端的令牌。 若目的终端为源终端在通话转移时指定的目的 终端, 则第一令牌与第二令牌相同, 否则, 第一令牌与第二令牌不同; 当第一令 牌与第二令牌不同时, 说明当前的目的终端不是源终端指定的, 此时

WebRTC 服务器对目的终端验证失败, 则无法将通话转移到该目的终端, 从而保证了通话转移的安全性。

歩骤 406、若对第一令牌的验证信息进行验证得到第 一令牌与第二令牌 相同, 则向目的终端发送待转移通话对应的页面信息 。

WebRTC服务器在对目的终端验证通过后,根据目 的终端的请求向目的 终端发送待转移通话对应的页面信息。

歩骤 407、将目的终端发送的呼叫请求消息转发给远 端终端, 并将远端 终端发送的响应消息转发给目的终端, 具体可以包括: 歩骤 407a、 WebRTC服务器接收目的终端发送的用于呼叫远端 终端的 呼叫请求消息;

在目的终端获取到待转移通话对应的页面信息 后, 目的终端可以根据 该页面信息中的远端终端的标识信息发送用于 呼叫远端终端的呼叫请求消 息;

歩骤 407b、 WebRTC服务器将该呼叫请求消息发送给远端终端 ; 歩骤 407c、 WebRTC服务器接收远端终端根据该呼叫请求返回 的响应 消息;

歩骤 407d、 WebRTC服务器将该响应消息发送给目的终端, 以使目的 终端建立与远端终端的呼叫连接。

歩骤 408、 在远端终端与目的终端建立呼叫连接之后, WebRTC服务器 或远端终端释放远端终端与源终端之间的呼叫 连接。

在呼叫连接建立以后, WebRTC服务器可以指示源终端释放与远端终端 的连接, 或者远端终端可以释放与源终端之间的连接, 在源终端与远端终 端的连接释放之后, 完成 WebRTC通话的转移。

上述歩骤 407中, WebRTC服务器直接转发目的终端或远端终端发送 的 请求或响应, 该实施方式要求远端终端支持上述歩骤 408 的操作, 即远端 终端在于目的终端建立连接后, 可以释放与源终端之间的连接。 而在另一 种实施方式中, WebRTC 服务器可以对目的终端或远端终端发送的请求 或 响应进行处理后再发送给对方, 具体可以为以下歩骤 407', 从而使得远端 终端无需支持上述歩骤 408的操作。 §Ρ, 上述歩骤 407和歩骤 408可以由 以下歩骤 407'代替。 歩骤 407'具体可以包括以下歩骤:

歩骤 407'a、 WebRTC服务器接收目的终端发送的用于呼叫远端 终端的 呼叫请求消息; 该呼叫请求消息中包括与目的终端对应的第一 会话标识; 歩骤 407'b、 WebRTC服务器将该呼叫请求消息中的第一会话标 识变更 为与源终端对应的第二会话标识; WebRTC服务器将第一会话标识变更为第二会话标 识,以使远端终端认 为该呼叫请求消息为源终端发送的更新消息;

歩骤 407'c、WebRTC服务器将变更后的呼叫请求消息发 给远端终端; 歩骤 407'd、 WebRTC服务器接收远端终端根据变更后的呼叫请 求返回 的响应消息; 响应消息中包括第二会话标识;

歩骤 407'e、 WebRTC服务器将响应消息中的第二会话标识变更 为第一 会话标识;

WebRTC服务器将第二会话标识变更为第一会话标 识,以使目的终端识 别该响应消息;

歩骤 407'f、 WebRTC服务器将变更后的响应消息发送给目的终 端, 以 使目的终端建立与远端终端的呼叫连接;

歩骤 407'g、 WebRTC服务器在目的终端与远端终端建立呼叫连 接之后, 向源终端发送用于指示源终端释放待转移通话 的释放指示消息。

本发明实施例, WebRTC服务器根据目的终端的请求,将待转移通 话对 应的页面信息发送给目的终端, 使得目的终端根据该页面信息中的远端终 端的标识信息与远端终端建立呼叫连接, 使得源终端与远端终端之间的

WebRTC 通话在不中断的情况下可以转移到源终端与远 端终端之间, 从而 实现了 WebRTC通话在终端间的无缝转移; 并且 WebRTC服务器还可以对 目的终端进行验证, 增加了通话转移过程的安全性, 以保证通话能转移到 指定的目的终端。 图 5为本发明各实施例提供的 WebRTC通话转移方法应用的网络架构 图。如图 5所示, 该网络架构中包括终端 1-A、 终端 2-A、 终端 -B和服务器 端。 终端 1-A与终端 2-A为用户 A的两个终端, 终端 -B为用户 B的终端, 其中, 上述任一终端可以为手机、 平板电脑、 笔记本电脑、 超级移动个人 计算机 ( ultra-mobile personal computer, 简称为 UMPC)、 上网本或掌上电 脑 (personal digital assistant, 简称为 PDA) 等终端设备。 服务器端包括浏 览器服务器和网页实时通信服务器 (以下简称 WebRTC服务器)。

终端 1-A (或终端 2-A) 与终端 -B之间通过经由 WebRTC服务器建立 的信道(例如 websocket信道)进行会话协商, 会话协商成功后, 建立终端 1-A (或终端 2-A)与终端 B之间的媒体流通道(其中使用 RTP/RTCP协议), 用于传输音视频媒体流。 终端包括 WebRTC页面和浏览器, 其中 WebRTC 页面又称为 WebRTC客户端。 具体的, 终端 1-A包括 WebRTC-A页面和浏 览器 -A,终端 2-A包括 WebRTC-a页面和浏览器 -a,终端 -B包括 WebRTC-B 页面和浏览器 -B。

下面具体描述该网络架构下的 WebRTC通话转移方法。

图 6为本发明实施例的一种 WebRTC通话转移方法的信令交互图, 在 图 1-图 4所示实施例的基础上, 如图 6所示, 该方法包括:

歩骤 601、用户 A在 PC-A上登录浏览器账户, 打开 WebRTC页面, 登 录 WebRTC账户, 并建立与用户 B的 WebRTC通话, 即建立 PC- A与终端 -B之间的 WebRTC通话。

本发明各实施例提供的方法, 可以实现一个正在进行中的 WebRTC通 话在同一用户的两个终端之间无缝切换。 同一用户的两个终端可以为手机、 平板电脑、笔记本电脑、 UMPC、上网本或 PDA中的任意一种或两种终端, 这两个终端可以为同类型的, 也可以为不同类型的; 例如同一用户的两个 终端可以为手机 1和手机 2, 或者为手机和 PC(personal computer, 个人电 脑)。 本实施例中同一用户的两个终端以 PC-A与手机 -A为例进行说明, 且 以 WebRTC通话由 PC-A转移到手机 -A为例; 其中 WebRTC通话可以为视 频通话或音频通话。

本发明实施例中的 PC-A相当于上述各实施例中的源终端, 手机 -A相 当于上述各实施例中的目的终端; 终端 -B相当于上述各实施例中的远端终 歩骤 602、 用户 A在手机 -A上登录浏览器账户。

用户 A在 PC-A和手机 -A上登录相同的浏览器账户, 服务器端的浏览 器服务器维护用户 A在 PC-A和手机 -A上登录的信息。

歩骤 603、 浏览器服务器为手机 -A生成一个令牌 -a。

该令牌(token)用于唯一标识手机 -A, 例如可以根据手机 -A的设备 ID 生成相应的令牌。 需要说明的是, 浏览器服务器可以针对每一个登录浏览 器账户的终端都分配相应的令牌。

歩骤 604、 浏览器服务器将令牌 -a返回给手机 -A。

浏览器服务器在为终端生成令牌后, 将该令牌返回给相应的终端。 歩骤 605、 PC-A根据用户 A转移 WebRTC通话的请求,显示用户 A的 终端设备列表, 供用户 A选择待转移的终端, 即供用户 A选择目的终端。

当用户 A希望将当前的 webrtc通话从 PC-A转移到手机 -A时, 用户可 以发起请求, 例如在 PC-A的用户界面上触发相应的操作, 具体例如点击浏 览器上的 "webrtc穿越"按钮。 由此, PC-A可以获取到用户 A发送的用于转 移通话的请求。

在终端登录浏览器账户后, 浏览器服务器可以维护登录该浏览器账户 的终端的信息。 由此, 当用户触发转移请求后, PC-A可以向浏览器服务器 请求当前登录用户 A的浏览器账户的终端设备列表, 然后将该终端设备列 表呈现给用户 A, 使得用户 A可以从该终端列表中选择待转移的终端。 当 手机 -A和 PC-A登录同一个浏览器账户时, PC-A显示的终端设备列表中包 括手机 -A, 用户 A可以选择将 WebRTC通话转移到手机 -A上。

歩骤 606、 浏览器 -A向浏览器服务器请求获取手机 -A的令牌。 其中, 浏览器 -A为 PC-A的浏览器。

用户 A选择将 WebRTC通话转移到手机 -A上之后, 浏览器 -A向浏览 器服务器请求获取手机 -A的令牌。 歩骤 607、 浏览器服务器将令牌 -a发给 浏览器 -A。 歩骤 608、浏览器 -A将令牌 -a发给 WebRTC-A页面,并触发 WebRTC-A 页面执行歩骤 609。

歩骤 609、 WebRTC-A页面向 WebRTC服务器发起请求,请求获取标识 WebRTC通话的唯一身份标识(unique ID) , 并在请求中携带了手机 -A的令 牌 -a, 将令牌 -a发送给 WebRTC服务器。

其中, 该唯一身份标识相当于上述各实施例中的第一 标识, 例如可以 为通用资源标识符(Uniform Resource Identifier, 简称为 URI), 以下以 URI 为例进行说明。

歩骤 610、 WebRTC服务器生成该 WebRTC通话的唯一身份标识,例如 歩骤 611、 WebRTC服务器将生成的 URI返回给 WebRTC-A页面。 歩骤 612、 WebRTC-A页面将获取的 URI发送给浏览器 -A。

需要说明的是: 上述的歩骤 608~612中, 浏览器与 WebRTC页面进行 交互, 再由 WebRTC页面与 WebRTC 服务器交互, 从而获取 URI。 在另一 实施方案中, 上述歩骤 608~612也可以替换为只由浏览器与 WebRTC服务 器进行交互, 而不经过 WebRTC页面。 这样, 歩骤 608~612就替换为: 浏 览器 -A向 WebRTC服务器发送请求, 请求获取标识 WebRTC通话的 URI, 并在请求中携带了令牌 -a; WebRTC服务器生成该 WebRTC通话的 URI,然 后将生成的 URI返回给浏览器 -A。

歩骤 613、 浏览器 -A发起对 URI的转移进程, 将 WebRTC通话的 URI 发送给浏览器服务器。

歩骤 614、 浏览器服务器将该 URI发送给手机 -A的浏览器 -a。

本发明实施例中的浏览器服务器具有推送功能 , 在浏览器 -A 发起对 URI 的转移进程后, 浏览器服务器可以使用推送 (push) 服务器将该 URI 推送给浏览器 -a。

歩骤 615、浏览器 -a向 WebRTC服务器发送 URI和令牌 -a的验证信息, 该验证信息例如为哈希值 (Hash-2)。

浏览器 -a向 WebRTC服务器请求该 URI对应的页面, 并在请求消息中 携带令牌 -a的验证信息。 其中, 令牌 -a的验证信息例如可以为令牌 -a的哈 希值。

歩骤 616、 WebRTC服务器对手机 -A发送的令牌 -a的哈希值 (Hash-2) 进行验证, 若验证通过, 则认为手机 -A为合法设备, 执行歩骤 617, 若验 证不通过, 则结束。

具体验证的过程可以为: WebRTC服务器计算歩骤 609中 WebRTC-A 页面发送的令牌 -a的哈希值 (hash),得到 Hash-1,然后对比 Hash-2与 Hash-1 是否相同, 若相同, 则验证通过。 其中, WebRTC服务器计算 Hash-1的歩 骤可以在歩骤 609之后, 且歩骤 616之前。计算 Hash-2与 Hash-1时, 需使 用相同的哈希算法。

歩骤 617、 WebRTC服务器向手机 -A返回 URI对应的页面资源。

该页面资源相当于上述实施例中的页面信息。 具体的, 该页面资源中 例如可以携带自动向终端 -B发起呼叫的 Javascript代码。

歩骤 618、 浏览器 -a根据所接收的页面资源进行 WebRTC页面呈现, 并执行页面资源中的 javascript脚本, 用于触发歩骤 619。

歩骤 619、 WebRTC-a页面通过 WebRTC服务器向终端 -B发起会话建立 呼叫请求。

呈现出的 WebRTC页面根据页面内部的代码(例如 Javascript代码) 自 动发起到终端 -B的呼叫请求,其中该页面内部的代码中包含 端 -B的标识, 呼叫请求消息中可以携带手机 -A 的会话描述协议请求 (session description protocol offer, SDP Offer )。

歩骤 620、 终端 -B 返回会话建立响应, 响应消息中携带了会话描述协 议答复 (SDP answer)。

歩骤 621、 手机 -A与终端 -B之间的呼叫连接建立成功, 该呼叫连接承 载待转移的 WebRTC通话, 即建立了手机 -A与终端 -B之间的 WebRTC通 话。

歩骤 622、 终端 -B释放之前的一个通话, 即释放与 PC-A之间的通话。 释放成功后, 手机 -A 与终端 -B 之间可以进行 WebRTC 通话, 即实现了 WebRTC通话的转移。

在歩骤 621之后, 终端 -B的 WebRTC页面同时维持着两个 WebRTC通 话 (一个与 PC-A, 另一个与手机 -A)。 因此需要对终端 -B的 WebRTC页面 做增强, 使其能够识别该场景, 并自动释放之前的一个通话(即与 PC-A之 间的通话)。

本发明实施例, WebRTC服务器对一个正在进行中的 WebRTC通话动 态生成一个唯一标识, 并通过浏览器服务器将该唯一标识推送到手机 -A, 手机 -A上的 WebRTC页面可以根据该唯一标识对应的页面资源 自动发起向 终端 -B的呼叫, 实现了 WebRTC通话在用户的不同终端之间无缝切换, 并 省去了用户在手机 -A上进行 WebRTC账户登录的过程,从而方便用户使用; 并且可以通过为手机 -A分配令牌来实现 WebRTC服务器对手机 -A的合法性 验证。 图 7为本发明实施例的另一种 WebRTC通话转移方法的信令交互图, 在图 1-图 4所示实施例的基础上, 如图 7所示, 该方法与图 6所示实施例 的方法的区别仅在于歩骤 719-歩骤 723, 其中歩骤 701-歩骤 718与图 6所 示实施例中的歩骤 601-歩骤 618相同。 下面具体介绍与图 6所示实施例不 同的歩骤。 该方法包括:

歩骤 701-歩骤 718: 具体参见图 6所示实施例, 在此不再赘述。

歩骤 719、 WebRTC-a页面向 WebRTC服务器发送用于呼叫终端 -B的会 话建立呼叫请求。

呈现出的 WebRTC页面根据页面内部的代码自动发起到终端 -B的呼叫 请求, 其中该页面内部的代码中包含终端 -B的标识, 呼叫请求消息中可以 携带手机 -A的会话描述协议请求 (SDP Offer)。

歩骤 720、WebRTC服务器接收到手机 -A的 WebRTC-a页面发来的请求 后, 将其中的会话标识 (session-id) 替换为 PC-A与终端 -B的 WebRTC通 话的会话标识, 然后将替换后的请求消息转发给终端 -B。

WebRTC服务器替换会话标识, 可以让终端 -B 以为这是 PC-A发来的 更新请求, 此时终端 -B并不知道手机 -A的存在。

歩骤 721、 终端 -B返回 WebRTC会话的响应消息, 响应消息中携带了 会话描述协议答复 (SDP answer)。

歩骤 722、 WebRTC服务器将终端 -B发来的响应消息进行修改,将其中 的会话标识替换回手机 -A发起的 WebRTC会话标识, 然后发给手机 -A。

歩骤 723、 手机 -A与终端 -B之间的 WebRTC通话建立成功。

歩骤 724、 WebRTC服务器给 PC-A发送释放会话的指示, 以指示 PC-A 释放当前与终端 -B的 WebRTC通话。

本发明实施例具有图 6所示实施例的有益效果, 具体参见图 6所示实 施例中的描述。 并且本发明实施例中, 由于 WebRTC服务器可以对会话标 识进行修改, 所以可以不需要对远端终端 (终端 -B) 进行扩展。 图 8 为本发明实施例的 WebRTC 通话转移装置的硬件示意图。 该 WebRTC通话转移装置可以为终端设备或 WebRTC服务器, 其中终端设备 可以为手机、 平板电脑、 笔记本电脑、 UMPC、 上网本或 PDA等, 本实施 例中终端设备以手机为例进行说明。 本发明实施例提供的手机为上述各实 施例中的目的终端, 本发明实施例提供的手机和 WebRTC服务器用于实施 上述图 1-图 7所示的方法, 为了便于说明, 仅示出了与本发明实施例相关 的部分, 具体技术细节未揭示的, 请参照图 1-图 7所示的各实施例。

如图 8, 手机 810包括处理器 812、 收发模块 813、 存储器 814、 输入 设备 815、显示设备 816; WebRTC服务器 820包括处理器 822、存储器 824、 收发模块 823。

其中,手机 810的处理器 812是手机 810的控制中心, WebRTC服务器 820的处理器 822是 WebRTC服务器的控制中心; 处理器 812、 处理器 822 分别通过运行或执行存储在存储器 814、 存储器 824 内的软件程序和 /或模 块, 以及调用存储在存储器 814、 存储器 824内的数据, 执行手机 810或 WebRTC服务器 820的各种功能和处理数据, 从而对 WebRTC通话进行转 移。

可选的, 处理器 812可包括一个或多个处理单元; 优选的, 处理器 812 可集成应用处理器和调制解调处理器, 其中, 应用处理器主要处理操作系 统、 用户界面和应用程序等, 调制解调处理器主要处理无线通信。 可以理 解的是, 上述调制解调处理器也可以不集成到处理器 812中。

收发模块 813、 收发模块 823可用于收发信息或通话过程中, 信号的接 收和发送, 特别地, 对于手机 810, 将基站的下行信息接收后, 给处理器 812处理;另外,将上行的数据发送给基站。通 常,收发模块可以为射频 (radio frequency, 简称 RF) 电路, 包括但不限于天线、 至少一个放大器、 收发信 机、 耦合器、 LNA (Low Noise Amplifier, 低噪声放大器)、 双工器等。 此 夕卜, 收发模块 813、收发模块 823还可以通过无线通信与网络和其他设备通 信。所述无线通信可以使用任一通信标准或协 议,包括但不限于 GSM(global system of mobile communication , 全球禾多动通讯系统)、 GPRS (general packet radio service, 通用分组无线月艮务)、 CDMA(code division multiple access , 码 分多址)、 WCDMA(wideband code division multiple access, 宽带码分多址)、 LTE(long term evolution,长期演进)、电子由 β件、 SMS(short messaging service , 短消息服务)等。

存储器 814、 存储器 824可用于存储软件程序以及模块, 处理器 812、 处理器 822分别通过运行存储在存储器 814、存储器 824的软件程序以及模 块, 从而执行手机 810或 WebRTC服务器 820的各种功能应用以及数据处 理。 存储器 814、 存储器 824可主要包括存储程序区和存储数据区, 其中, 存储程序区可存储操作系统、 至少一个功能所需的应用程序 (比如声音播 放功能、 图象播放功能等)等; 存储数据区可存储根据手机 810或 WebRTC 服务器 820 的使用所创建的数据 (比如音频数据、 电话本等) 等。 此外, 存储器 814、存储器 824可以包括高速随机存取存储器, 还可以包括非易失 性存储器, 例如至少一个磁盘存储器件、 闪存器件、 或其他易失性固态存 储器件。

输入设备 815可用于接收输入的数字或字符信息, 以及产生与手机 810 的用户设置以及功能控制有关的键信号输入。 具体地, 输入设备 815 可包 括触控面板以及其他输入设备。 触控面板, 也称为触摸屏, 可收集用户在 其上或附近的触摸操作 (比如用户使用手指、 触笔等任何适合的物体或附 件在触控面板上或在触控面板附近的操作), 并根据预先设定的程式驱动相 应的连接装置。 可选的, 触控面板可包括触摸检测装置和触摸控制器两 个 部分。 其中, 触摸检测装置检测用户的触摸方位, 并检测触摸操作带来的 信号, 将信号传送给触摸控制器; 触摸控制器从触摸检测装置上接收触摸 信息, 并将它转换成触点坐标, 再送给处理器, 并能接收处理器发来的命 令并加以执行。 此外, 可以采用电阻式、 电容式、 红外线以及表面声波等 多种类型实现触控面板。 除了触控面板, 输入设备 815 还可以包括其他输 入设备。 具体地, 其他输入设备可以包括但不限于物理键盘、 功能键 (比 如音量控制按键、开关按键等)、轨迹球、 鼠标、操作杆等中的一种或多种。

显示设备 816 可用于显示由用户输入的信息或提供给用户的 信息以及 手机 810的各种菜单。 显示设备 816可包括显示面板, 可选的, 可以采用 LCD(liquid crystal display, 液晶显示器)、 OLED(organic light-emitting diode, 有机发光二极管)等形式来配置显示面板。 进一歩的, 触控面板可覆盖显示 面板, 当触控面板检测到在其上或附近的触摸操作后 , 传送给处理器 812 以确定触摸事件的类型, 随后处理器 812根据触摸事件的类型在显示面板 上提供相应的视觉输出。

在本发明实施例中, 手机 810的处理器 812用于通过收发模块 813接 收浏览器服务器发送的用于标识待转移通话的 第一标识, 并将该第一标识 存储于存储器 814; 然户, 处理器 812 根据所述第一标识, 通过收发模块 813 向 WebRTC服务器发送用于请求所述待转移通话对应 的页面信息的第 一请求消息; 处理器 812再根据所述 WebRTC服务器发送的所述页面信息 中的远端终端的标识信息, 与远端终端建立用于承载所述待转移通话的呼 叫连接, 以实现所述待转移通话从源终端与所述远端终 端之间转移至手机 810与所述远端终端之间。

进一歩的, 手机 810的处理器 812在根据 WebRTC服务器发送的所述 页面信息, 与所述远端终端建立呼叫连接之前, 还用于通过收发模块 813 接收所述浏览器服务器发送的第一令牌, 将该第一令牌存储于存储器 814, 并通过收发模块 813向所述 WebRTC服务器发送所述第一令牌的验证信息, 以使所述 WebRTC服务器对所述第一令牌的验证信息进行验 证; 并且还用 于通过收发模块 813接收所述 WebRTC服务器发送的所述待转移通话对应 的页面信息, 所述待转移通话对应的页面信息为 WebRTC服务器在对所述 第一令牌的验证信息验证通过后发送的。

进一歩的, 处理器 812通过收发模块 813接收浏览器服务器发送的用 于标识待转移通话的第一标识具体可以包括: 在浏览器服务器接收到源终 端发送的用于启动所述待转移通话进行转移的 指示后, 处理器 812通过收 发模块 813接收浏览器服务器发送的用于标识所述待转 移通话的第一标识。 其中, 源终端和目的终端登录的浏览器账户可以相同 , 以使源终端通过浏 览器服务器可以获知目的终端为可选的、 待转移的终端, 源终端发送的用 于启动待转移通话进行转移的指示中包括: 指示目的终端为待转移的终端 的指示信息。 在本发明实施例中, WebRTC服务器 820的处理器 822用于,通过收发 模块 823接收手机 810根据第一标识发送的用于请求所述待转移通 话对应 的页面信息的第一请求消息; 通过收发模块 823向手机 810发送所述待转 移通话对应的页面信息, 以使所述手机 810根据所述页面信息中的远端终 端的标识信息, 与远端终端建立用于承载待转移通话的呼叫连 接, 以实现 所述待转移通话从源终端与所述远端终端之间 转移至手机 810与所述远端 终端之间。

进一歩的, 该处理器 822具体可以用于, 通过收发模块 823接收手机 810发送的第一令牌的验证信息和所述手机 810根据第一标识发送的用于请 求所述待转移通话对应的页面信息的第一请求 消息, 请将该第一令牌的验 证信息存储于存储器 824; 通过收发模块 823接收源终端发送的第二令牌, 并存储于存储器 824中, 根据该第二令牌, 对手机 810发送的所述第一令 牌的验证信息进行验证; 若对所述第一令牌的验证信息进行验证得到所 述 第一令牌与所述第二令牌相同, 则通过收发模块 823向所述手机 810发送 所述待转移通话对应的页面信息。

进一歩的, 该处理器 822在接收手机 810根据第一标识发送的用于请 求所述待转移通话对应的页面信息的第一请求 消息之前, 还可以用于, 接 收源终端发送的生成所述第一标识的生成请求 , 将根据所述生成请求生成 的所述第一标识发送给所述源终端, 以使所述源终端将所述第一标识发送 给浏览器服务器, 以使所述浏览器服务器将所述第一标识发送给 所述手机 810。 图 9为本发明实施例提供的一种 WebRTC通话转移装置的结构示意图, 该 WebRTC通话转移装置可以为终端设备, 如图 9所示, 该 WebRTC通话 转移装置 900包括:

一个或多个处理器 902; 存储器 904; 以及

一个或多个程序, 其中该一个或多个程序存储在存储器 904 中并被配 置为由所述一个或多个处理器 902执行, 所述一个或多个程序包括:

接收用于标识待转移通话的第一标识的指令; 所述待转移通话为源终 端与远端终端之间已建立的 WebRTC通话;

根据所述第一标识, 向网页实时通信服务器发送用于请求所述待转 移 通话对应的页面信息的第一请求消息的指令;

根据所述网页实时通信服务器发送的所述页面 信息中的所述远端终端 的标识信息, 与所述远端终端建立用于承载所述待转移通话 的呼叫连接, 以实现所述待转移通话从所述源终端与所述远 端终端之间转移至目的终端 与所述远端终端之间的指令。

进一歩的, 所述一个或多个程序还可以包括: 在根据所述网页实时通 信服务器发送的所述页面信息中的所述远端终 端的标识信息, 与所述远端 终端建立用于承载所述待转移通话的呼叫连接 之前,

接收浏览器服务器发送的第一令牌的指令; 所述第一令牌为所述浏览 器服务器为所述目的终端分配的用于标识所述 目的终端的令牌;

向所述网页实时通信服务器发送所述第一令牌 的验证信息, 以使所述 网页实时通信服务器对所述第一令牌的验证信 息进行验证的指令;

接收所述网页实时通信服务器在对所述第一令 牌的验证信息验证通过 后发送的所述待转移通话对应的页面信息的指 令。

进一歩的, 根据所述网页实时通信服务器发送的所述页面 信息中的所 述远端终端的标识信息, 与所述远端终端建立用于承载所述待转移通话 的 呼叫连接的指令, 具体可以包括:

根据所述网页实时通信服务器发送的所述页面 信息中的所述远端终端 的标识信息, 通过所述网页实时通信服务器向所述远端终端 发送呼叫请求 消息的指令; 通过所述网页实时通信服务器接收所述远端终 端根据所述呼叫请求返 回的响应消息, 建立与所述远端终端的用于承载所述待转移通 话的呼叫连 接的指令。

进一歩的, 接收用于标识待转移通话的第一标识的指令, 具体包括: 接收浏览器服务器在接收到所述源终端发送的 用于启动所述待转移通 话进行转移的指示后, 发送的用于标识所述待转移通话的第一标识的 指令; 所述源终端和所述目的终端登录的浏览器账户 相同, 以使所述源终端 通过所述浏览器服务器获知所述目的终端为可 选的、 待转移的终端, 所述 源终端发送的用于启动所述待转移通话进行转 移的指示中包括: 指示所述 目的终端为待转移的终端的指示信息。

本发明实施例, 作为目的终端的终端设备可以从浏览器服务器 获取待 转移通话的标识, 并根据该标识从 WebRTC服务器获取该待转移通话对应 的页面信息, 再根据该页面信息与远端终端建立呼叫连接, 使得源终端与 远端终端之间的 WebRTC通话在不中断的情况下可以转移到源终端 与远端 终端之间, 从而实现了 WebRTC 通话在终端间的无缝转移; 并且还通过 WebRTC 服务器对目的终端的验证过程, 增加了通话转移过程的安全性, 以保证通话能转移到指定的目的终端。 图 10为本发明实施例提供的另一种 WebRTC通话转移装置的结构示意 图, 该 WebRTC通话转移装置可以为 WebRTC服务器, 如图 10所示, 该 WebRTC通话转移装置 1000包括:

一个或多个处理器 1002;

存储器 1004; 以及

一个或多个程序, 其中该一个或多个程序存储在存储器 1004中并被配 置为由所述一个或多个处理器 1002执行, 所述一个或多个程序包括:

接收目的终端根据第一标识发送的用于请求待 转移通话对应的页面信 息的第一请求消息的指令; 所述第一标识用于标识所述待转移通话, 所述 待转移通话为源终端与远端终端之间已建立的 WebRTC通话;

向目的终端发送所述待转移通话对应的页面信 息, 以使所述目的终端 根据所述页面信息中的所述远端终端的标识信 息, 与所述远端终端建立用 于承载所述待转移通话的呼叫连接, 以实现所述待转移通话从所述源终端 与所述远端终端之间转移至目的终端与所述远 端终端之间的指令。

进一歩的, 所述一个或多个程序还可以包括:

在所述向目的终端发送所述待转移通话对应的 页面信息之前, 接收所 述目的终端发送的第一令牌的验证信息的指令 ; 所述第一令牌为浏览器服 务器为所述目的终端分配的用于标识所述目的 终端的令牌;

根据所述源终端发送的第二令牌, 对所述目的终端发送的所述第一令 牌的验证信息进行验证的指令; 所述第二令牌为所述源终端从所述浏览器 服务器获取的、 所述浏览器服务器为所述目的终端分配的用于 标识所述目 的终端的令牌。

进一歩的, 所述向目的终端发送所述待转移通话对应的页 面信息的指 令, 具体包括: 若对所述第一令牌的验证信息进行验证得到所 述第一令牌 与所述第二令牌相同, 则向所述目的终端发送所述待转移通话对应的 页面 信息的指令。

进一歩的, 所述一个或多个程序还可以包括: 接收目的终端根据第一 标识发送的用于请求所述待转移通话对应的页 面信息的第一请求消息之 接收所述源终端发送的生成所述第一标识的生 成请求的指令; 将根据所述生成请求生成的所述第一标识发送 给所述源终端, 以使所 述源终端将所述第一标识发送给浏览器服务器 , 以使所述浏览器服务器将 所述第一标识发送给所述目的终端的指令。

进一歩的, 所述一个或多个程序还可以包括: 向目的终端发送所述待 转移通话对应的页面信息之后,

接收所述目的终端发送的用于呼叫所述远端终 端的呼叫请求消息的指 将所述呼叫请求消息发送给所述远端终端的指 令;

接收所述远端终端根据所述呼叫请求返回的响 应消息的指令; 将所述响应消息发送给所述目的终端, 以使所述目的终端建立与所述 远端终端的呼叫连接的指令。

进一歩的, 所述一个或多个程序还可以包括:

在所述远端终端与所述目的终端建立呼叫连接 之后, 释放所述远端终 端与所述源终端之间的呼叫连接的指令。

进一歩的, 所述一个或多个程序还可以包括: 向目的终端发送所述待 转移通话对应的页面信息之后,

接收所述目的终端发送的用于呼叫所述远端终 端的呼叫请求消息的指 令; 所述呼叫请求消息中包括与所述目的终端对应 的第一会话标识;

将所述呼叫请求消息中的所述第一会话标识变 更为与所述源终端对应 的第二会话标识的指令;

将变更后的所述呼叫请求消息发送给所述远端 终端的指令;

接收所述远端终端根据变更后的所述呼叫请求 返回的响应消息的指 令; 所述响应消息中包括所述第二会话标识;

将所述响应消息中的第二会话标识变更为所述 第一会话标识的指令; 将变更后的所述响应消息发送给所述目的终端 , 以使所述目的终端建 立与所述远端终端的呼叫连接的指令;

在所述目的终端与所述远端终端建立呼叫连接 之后, 向所述源终端发 送用于指示所述源终端释放所述待转移通话的 释放指示消息的指令。

本发明实施例, WebRTC服务器根据目的终端的请求,将待转移通 话对 应的页面信息发送给目的终端, 使得目的终端根据该页面信息与远端终端 建立呼叫连接, 使得源终端与远端终端之间的 WebRTC通话在不中断的情 况下可以转移到源终端与远端终端之间, 从而实现了 WebRTC通话在终端 间的无缝转移; 并且 WebRTC服务器还可以对目的终端进行验证, 增加了 通话转移过程的安全性, 以保证通话能转移到指定的目的终端。

图 11为本发明实施例提供的另一种 WebRTC通话转移装置的结构示意 图, 该 WebRTC通话转移装置可以为终端设备, 如图 11所示, 该 WebRTC 通话转移装置 1100包括: 标识接收模块 1101、 页面请求模块 1103和呼叫 连接模块 1105。

标识接收模块 1101, 用于接收用于标识待转移通话的第一标识; 所述 待转移通话为源终端与远端终端之间已建立的 WebRTC通话。

页面请求模块 1103,用于根据标识接收模块 1101接收的所述第一标识, 向 WebRTC服务器发送用于请求所述待转移通话对应 的页面信息的第一请 求消息。

呼叫连接模块 1105, 用于根据所述 WebRTC服务器发送的所述页面信 息中的所述远端终端的标识信息, 与所述远端终端建立用于承载所述待转 移通话的呼叫连接, 以实现所述待转移通话从所述源终端与所述远 端终端 之间转移至目的终端与所述远端终端之间; 所述页面信息为所述 WebRTC 服务器根据页面请求模块 1103发送的所述第一请求消息发送的。

在上述基础上, 在另一实施方式中, WebRTC通话转移装置 1100还可 以包括:第一令牌接收模块 1107、验证发送模块 1109和页面接收模块 1112。

第一令牌接收模块 1107,用于在呼叫连接模块 1105根据所述 WebRTC 服务器发送的所述页面信息中的所述远端终端 的标识信息, 与所述远端终 端建立用于承载所述待转移通话的呼叫连接之 前, 接收浏览器服务器发送 的第一令牌; 所述第一令牌为所述浏览器服务器为所述目的 终端分配的用 于标识所述目的终端的令牌。

验证发送模块 1109,用于在呼叫连接模块 1105根据所述 WebRTC服务 器发送的所述页面信息中的所述远端终端的标 识信息, 与所述远端终端建 立用于承载所述待转移通话的呼叫连接之前, 向所述 WebRTC服务器发送 第一令牌接收模块 1107 接收的所述第一令牌的验证信息, 以使所述 WebRTC服务器对所述第一令牌的验证信息进行验 证。

页面接收模块 1112,用于在呼叫连接模块 1105根据所述 WebRTC服务 器发送的所述页面信息中的所述远端终端的标 识信息, 与所述远端终端建 立用于承载所述待转移通话的呼叫连接之前, 接收所述 WebRTC服务器在 对所述第一令牌的验证信息验证通过后发送的 所述待转移通话对应的页面

I R Ή自、 o

进一歩的, 呼叫连接模块 1105具体可以包括: 呼叫请求单元 1151和 连接建立单元 1153。

呼叫请求单元 1151, 用于根据所述 WebRTC服务器发送的所述页面信 息中的所述远端终端的标识信息, 通过所述 WebRTC服务器向所述远端终 端发送呼叫请求消息; 所述页面信息为所述 WebRTC服务器根据页面请求 模块 1103发送的所述第一请求消息发送的。

连接建立单元 1153, 用于通过所述 WebRTC服务器接收所述远端终端 根据所述呼叫请求返回的响应消息, 建立与所述远端终端的用于承载所述 待转移通话的呼叫连接。

进一歩的, 标识接收模块 1101, 具体用于接收浏览器服务器在接收到 所述源终端发送的用于启动所述待转移通话进 行转移的指示后, 发送的用 于标识所述待转移通话的第一标识。 所述源终端和所述目的终端登录的浏 览器账户相同, 以使所述源终端通过所述浏览器服务器获知所 述目的终端 为可选的、 待转移的终端, 所述源终端发送的用于启动所述待转移通话进 行转移的指示中包括: 指示所述目的终端为待转移的终端的指示信息 。

本发明实施例提供的终端设备相当于上述各方 法实施例中的目的终 端, 本发明实施例中各个模块和单元的工作原理和 工作流程参见上述各方 法实施例。

本发明实施例, 目的终端的标识接收模块可以从浏览器服务器 接收待 转移通话的标识, 页面请求模块可以根据该标识从 WebRTC服务器获取该 待转移通话对应的页面信息, 呼叫连接模块可以根据该页面信息中的远端 终端的标识信息与远端终端建立呼叫连接, 使得源终端与远端终端之间的

WebRTC 通话在不中断的情况下可以转移到源终端与远 端终端之间, 从而 实现了 WebRTC通话在终端间的无缝转移; 并且通过增加第一令牌接收模 块和验证发送模块, 可以使得 WebRTC服务器对目的终端进行验证, 增加 了通话转移过程的安全性, 以保证通话能转移到指定的目的终端。

图 12为本发明实施例提供的另一种 WebRTC通话转移装置的结构示意 图, 该 WebRTC通话转移装置可以为 WebRTC服务器, 如图 12所示, 该 WebRTC通话转移装置 1200包括: 页面请求接收模块 1201和页面发送模 块 1203 ο

页面请求接收模块 1201, 用于接收目的终端根据第一标识发送的用于 请求待转移通话对应的页面信息的第一请求消 息; 所述第一标识用于标识 所述待转移通话, 所述待转移通话为源终端与远端终端之间已建 立的

WebRTC通话。

页面发送模块 1203,用于根据页面请求接收模块 1201接收的所述第一 请求消息向目的终端发送所述待转移通话对应 的页面信息, 以使所述目的 终端根据所述页面信息中的所述远端终端的标 识信息, 与所述远端终端建 立用于承载所述待转移通话的呼叫连接, 以实现所述待转移通话从所述源 终端与所述远端终端之间转移至目的终端与所 述远端终端之间。

在上述基础上, 在另一实施方式中, WebRTC通话转移装置 1200还可 以包括: 验证信息接收模块 1205和验证执行模块 1207。

验证信息接收模块 1205,用于在页面发送模块 1203向目的终端发送所 述待转移通话对应的页面信息之前, 接收所述目的终端发送的第一令牌的 验证信息; 所述第一令牌为浏览器服务器为所述目的终端 分配的用于标识 所述目的终端的令牌。

验证执行模块 1207, 用于根据所述源终端发送的第二令牌, 对所述验 证信息接收模块 1205接收的所述第一令牌的验证信息进行验证 所述第二 令牌为所述源终端从所述浏览器服务器获取的 、 所述浏览器服务器为所述 目的终端分配的用于标识所述目的终端的令牌 。

进一歩的,页面发送模块 1203,具体可以用于若所述验证执行模块 1207 对所述第一令牌的验证信息进行验证得到所述 第一令牌与所述第二令牌相 同, 则向所述目的终端发送所述待转移通话对应的 页面信息。

进一歩的, WebRTC通话转移装置 1200还可以包括: 标识请求接收模 块 1209、 标识发送模块 1212。

标识请求接收模块 1209,用于在页面请求接收模块 1201接收目的终端 根据第一标识发送的用于请求待转移通话对应 的页面信息的第一请求消息 之前, 接收所述源终端发送的生成所述第一标识的生 成请求;

标识发送模块 1212,用于将根据标识请求接收模块 1209接收的所述生 成请求生成的所述第一标识发送给所述源终端 , 以使所述源终端将所述第 一标识发送给浏览器服务器, 以使所述浏览器服务器将所述第一标识发送 给所述目的终端。

进一歩的, WebRTC通话转移装置 1200还可以包括: 第一呼叫请求处 理模块 1214。

第一呼叫请求处理模块 1214,用于在所述页面发送模块 1203向目的终 端发送所述第一标识对应的页面信息之后, 接收所述目的终端发送的用于 呼叫所述远端终端的呼叫请求消息, 将所述呼叫请求消息发送给所述远端 终端, 接收所述远端终端根据所述呼叫请求返回的响 应消息, 将所述响应 消息发送给所述目的终端, 以使所述目的终端建立与所述远端终端的呼叫 连接。 进一歩的, WebRTC通话转移装置 1200还可以包括: 第二呼叫请求处 理模块 1216和释放指示模块 1218。

第二呼叫请求处理模块 1216, 包括: 第一接收单元、 第一变更单元、 第一发送单元、 第二接收单元、 第二变更单元和第二发送单元。

所述第一接收单元, 用于在所述页面发送模块向目的终端发送所述 待 转移通话对应的页面信息之后, 接收所述目的终端发送的用于呼叫所述远 端终端的呼叫请求消息; 所述呼叫请求消息中包括与所述目的终端对应 的 第一会话标识。

所述第一变更单元, 用于将所述第一接收单元接收的呼叫请求消息 中 的所述第一会话标识变更为与所述源终端对应 的第二会话标识。

所述第一发送单元, 用于将所述第一变更单元变更后的所述呼叫请 求 消息发送给所述远端终端。

所述第二接收单元, 用于接收所述远端终端根据变更后的所述呼叫 请 求返回的响应消息; 所述响应消息中包括所述第二会话标识。

所述第二变更单元, 用于将所述响应消息中的所述第二会话标识变 更 为所述第一会话标识。

所述第二发送单元, 用于将变更后的所述响应消息发送给所述目的 终 端, 以使所述目的终端建立与所述远端终端的呼叫 连接。

释放指示模块 1218, 用于在所述目的终端与所述远端终端建立呼叫 连 接之后, 向所述源终端发送用于指示所述源终端释放所 述待转移通话的释 放指示消息。

本发明实施例提供的 WebRTC通话转移装置相当于上述各方法实施例 中的 WebRTC服务器, 本发明实施例中各个模块和单元的工作原理和 工作 流程参见上述各方法实施例。

本发明实施例, WebRTC服务器的页面发送模块根据目的终端的请 求, 将待转移通话对应的页面信息发送给目的终端 , 使得目的终端根据该页面 信息中的远端终端的标识信息与远端终端建立 呼叫连接, 使得源终端与远 端终端之间的 WebRTC通话在不中断的情况下可以转移到源终端 与远端终 端之间,从而实现了 WebRTC通话在终端间的无缝转移;并且通过 WebRTC 服务器的验证信息接收模块和验证执行模块, 还可以对目的终端进行验证, 增加了通话转移过程的安全性, 以保证通话能转移到指定的目的终端。

通过以上的实施方式的描述, 所属领域的技术人员可以清楚地了解到 本发明可以用硬件实现, 或固件实现, 或它们的组合方式来实现。 当使用 软件实现时, 可以将上述功能存储在计算机可读介质中或作 为计算机可读 介质上的一个或多个指令或代码进行传输。 计算机可读介质包括计算机存 储介质和通信介质, 其中通信介质包括便于从一个地方向另一个地 方传送 计算机程序的任何介质。存储介质可以是计算 机能够存取的任何可用介质。 以此为例但不限于: 计算机可读介质可以包括 RAM、 ROM, EEPROM, CD-ROM或其他光盘存储、 磁盘存储介质或者其他磁存储设备、 或者能够 用于携带或存储具有指令或数据结构形式的期 望的程序代码并能够由计算 机存取的任何其他介质。 此外, 任何连接可以适当的成为计算机可读介质。 例如, 如果软件是使用同轴电缆、 光纤光缆、 双绞线、 数字用户线 (DSL) 或者诸如红外线、 无线电和微波之类的无线技术从网站、 服务器或者其他 远程源传输的, 那么同轴电缆、 光纤光缆、 双绞线、 DSL或者诸如红外线、 无线电和微波之类的无线技术包括在所属介质 的定影中。 如本发明所使用 的, 盘 (disk) 和碟 (disc) 包括压缩光碟 (CD)、 激光碟、 光碟、 数字通 用光碟(DVD)、 软盘和蓝光光碟, 其中盘通常磁性的复制数据, 而碟则用 激光来光学的复制数据。 上面的组合也应当包括在计算机可读介质的保 护 范围之内。

总之, 以上所述仅为本发明的较佳实施例而已, 并非用于限定本发明 的保护范围。 凡在本发明的精神和原则之内, 所作的任何修改、 等同替换、 改进等, 均应包含在本发明的保护范围之内。