title: 快速入门

你可以通过一个简单的 示例 来快速了解 WilddogVideoCall SDK 的用法。

环境准备

  • 由于浏览器安全策略的限制,所以必须使用https(本地开发环境例外)

1. 创建应用

1.1 创建野狗应用

在控制面板中创建野狗应用。

video_quickstart_create

1.2 配置应用

  • 身份认证 标签页中,选择 登录方式 标签,开启 匿名登录 功能(或者选择其他登录方式,例如:QQ登录邮箱登录 等);

video_quickstart_openanonymous

  • 实时视频通话 标签页中,点击 开启视频通话 按钮。

video_quickstart_openVideo

2. 安装 SDK

2.1 安装 WilddogVideoCall SDK

WilddogVideoCall 有直接引用和 npm 安装两种方式可供选择。直接引用时任选以下两种方式之一:

通过标签引用

  1. <script src="https://cdn.wilddog.com/sdk/js/2.0.0/wilddog-video-call.js"></script>

通过 npm 方式引用

  1. npm install wilddog-video-base --save
  2. npm install wilddog-video-call --save

用法:

  1. // 准备工作
  2. var wilddogVideo = require('wilddog-video-base').wilddogVideo;
  3. var callFactory = require('wilddog-video-call');
  4. wilddogVideo.regService('call', callFactory);
  5. // To do

2.2 安装 WilddogAuth SDK

Token(身份认证令牌)是用户在 WilddogVideoCall SDK 中的唯一身份标识,用于识别用户身份并控制访问权限。 WilddogVideoCall SDK 使用 Auth SDK 获取合法的 TOKEN。

使用标签引用 Wilddog Auth SDK

  1. <script src="https://cdn.wilddog.com/sdk/js/2.5.6/wilddog-auth.js"></script>

3. 初始化 SDK

3.1 初始化WilddogAuth SDK

  1. //初始化 Wilddog Auth
  2. var config = {
  3. authDomain: "<videoAppId>.wilddog.com"
  4. };
  5. wilddog.initializeApp(config);

3.2 初始化WilddogVideoCall SDK

使用 WilddogAuth SDK 进行身份认证,身份认证成功后,在使用 WilddogVideoCall SDK前,必须对wilddogVideoCall进行初始化。

  1. // 初始化 WilddogVideoCall 之前,要先经过身份认证。这里采用匿名登录的方式。推荐使用其他登录方式。
  2. wilddog.auth().signInAnonymously()
  3. .then(function(user){
  4. //认证成功后,初始化 WilddogVideoCall
  5. wilddogVideo.initialize({'appId':<videoAppId>,'token':user.getToken()})
  6. //获取 `WilddogVideoCall` 实例
  7. videoInstance = wilddogVideo.call();
  8. }).catch(function (error) {
  9. // Handle Errors here.
  10. console.log(error);
  11. });

提示:

videoAppId 为应用实时视频通话标签页中的 VideoAppID 字段值,为 wd 开头的随机字符串,例如:wd1234567890abcdef。

4. 配置一对一视频通话

初始化 WilddogVideoCall SDK 后,通过 wilddogVideo.call() 获取 WilddogVideoCall 对象,设置监听用于监听通话请求:

  1. //监听收到的邀请
  2. videoInstance.on('called',function(conversation) {
  3. //通过回调函数获取到Conversation对象
  4. console.log(conversation);
  5. })
  6. videoInstance.on('token_error',function() {
  7. console.log('token不合法或过期');
  8. })

5. 开始一对一视频通话

使用 WilddogAuth 登录成功后,用户会获得唯一的 uid,在 WilddogVideoCall SDK 中,使用 uid 作为用户的身份标识。

5.1 邀请一对一视频通话

使用 call() 来发起一对一视频通话请求

  1. mConversation = videoInstance.call(remoteUid,localStream,{'data':'userData'});

5.2 接受一对一视频通话

被邀请的用户通过 videoInstance.on('called',callback) 事件收到 Conversation 实例,使用 accept() 方法接收一对一视频通话:

  1. videoInstance.on('called',function(conversation){
  2. mConversation = conversation;
  3. mConversation.accept(localStream).then(function(conversation) {
  4. //被叫方获取到的Conversation对象,接受邀请成功,加入一对一视频通话
  5. });
  6. })

5.3 播放媒体流

一对一视频通话链接成功后,通话双方会通过 mConversation.on('stream_received',callback) 事件收到 RemoteStream 实例,使用 attach() 方法将远端媒体流放入 video 标签中播放:

  1. mConversation.on('stream_received',function(remoteStream) {
  2. //将远端流放入video标签中
  3. remoteStream.attach(remoteEl);
  4. })

6. 更多应用