关键类整理 ---> ConferenceClient、ConferenceClientObserver.

一、ConferenceClient

ConferenceClient是一个应用程序在视频会议通信中用来交流的异步类。

该类实现了

ConferenceClientObserver :会议室客户端观察者 (接口)

ConferenceStreamAction : 会议室流表现形式(枚举)

RoomState :会议室的状态(枚举)

公共成员方法总结:

  ConferenceClient (ConferenceClientConfiguration configuration)
  这个构造函数执行的是会议的初始化工作
 
void  addObserver (ConferenceClientObserver observer)
  给会议客户端添加一个观察者
 
void  removeObserver (ConferenceClientObserver observer)
  移除会议客户端的观察者
 
void  join (final String token, final ActionCallback< User > callback)
  连接到特定的房间,并加入会议。
 
void  join (final String token, final ConnectionOptions options, final ActionCallback< User > callback)
  连接到特定的房间,并加入会议(附加连接时的属性配置)
 
synchronized void  publish (final Publishable stream, final PublishOptions option, final ActionCallback< Void > callback)
   发布当前的流(一般是本地流,附加发布时的属性配置)到当前的房间
 
synchronized void  publish (final Publishable stream, final ActionCallback< Void > callback)
  发布当前的流(一般是本地流)到当前的房间
 
void  addExternalOutput (final String serverUrl, final ActionCallback< ExternalOutputAck > callback)
  将会议室中的媒体流指向指定的目标
 
void  addExternalOutput (final String serverUrl, final ExternalOutputOptions options, final ActionCallback< ExternalOutputAck > callback)
  将会议室中的媒体流指向指定的目标
 
void  removeExternalOutput (final String serverUrl, final ActionCallback< Void > callback)
  停止将会议室中的媒体流指向指定的目标
 
void  updateExternalOutput (final String serverUrl, final ActionCallback< ExternalOutputAck > callback)
  更新会议室中的媒体流指向指定的目标
 
void  updateExternalOutput (final String serverUrl, final ExternalOutputOptions options, final ActionCallback< ExternalOutputAck > callback)
  更新会议室中的媒体流指向指定的目标
 
synchronized void  unpublish (final Publishable stream, final ActionCallback< Void > callback)
  撤销发布当前房间的流
 
synchronized void  subscribe (RemoteStream stream, SubscribeOptions option, ActionCallback< RemoteStream > callback)
  订阅当前房间的流
 
synchronized void  subscribe (final RemoteStream stream, final ActionCallback< RemoteStream > callback)
  订阅当前房间的流
 
synchronized void  unsubscribe (final RemoteStream stream, final ActionCallback< Void > callback)
  取消订阅当前房间的流。如果之前没有订阅,则会直接返回。
 
void  startRecorder (final ActionCallback< RecordAck > callback)
  开始在视频会议服务器上记录流。
 
void  startRecorder (final RecordOptions opt, final ActionCallback< RecordAck > callback)
  开始在视频会议服务器上记录视频流
 
void  stopRecorder (final RecordOptions opt, final ActionCallback< RecordAck > callback)
  停止在视频会议服务器上记录视频流Stop stream recorder on MCU server. More...
 
void  leave (ActionCallback< Void > callback)
  离开当前会议
 
void  getConnectionStats (Stream stream, ActionCallback< ConnectionStats > callback)
  获取统计数据从当前的指定流的链接
 
void  send (String message, ActionCallback< Void > callback)
  发送一个消息到当前的房间
 
void  send (String message, String receiver, final ActionCallback< Void > callback)
  发送一个消息到指定的接受者
 
void  pauseVideo (Publishable stream, final ActionCallback< Void > callback)
  暂停已发布视频流轨道的播放
 
void  pauseVideo (RemoteStream stream, final ActionCallback< Void > callback)
  暂停订阅视频流轨道的播放
 
void  playVideo (Publishable stream, final ActionCallback< Void > callback)
  将之前暂停的发布的视频轨道流播放
 
void  playVideo (RemoteStream stream, final ActionCallback< Void > callback)
  将之前暂停的订阅的视频轨道流播放
 
void  pauseAudio (Publishable stream, final ActionCallback< Void > callback)
  暂停发布流的音轨流的播放
 
void  pauseAudio (RemoteStream stream, final ActionCallback< Void > callback)
  暂停订阅流的音轨流的播放
 
void  playAudio (Publishable stream, final ActionCallback< Void > callback)
  播放之前暂停的发布流的音轨流
 
void  playAudio (RemoteStream stream, final ActionCallback< Void > callback)
  播放之前暂停的订阅流的音轨流
 
List< User >  getUsers ()
  获取已经加入该房间的用户们
 
List<RemoteStream getRemoteStreams ()
  获取之前已经在该房间发布的远端流
 
void  getRegion (RemoteStream stream, final ActionCallback< String > callback)
  获取远端流的区域ID
 
void  setRegion (RemoteStream stream, String region, final ActionCallback< Void > callback)
  设置远端流的区域ID
 
void 

onMessage (boolean local, String id, String message)

二、ConferenceClientObserver(接口)

公共成员方法:

void  onServerDisconnected ()
  当会议服务器连接断开的时候触发. 
 
void  onStreamAdded (RemoteStream remoteStream)
  当一个远端流被添加的时候触发.
 
void  onStreamRemoved (RemoteStream remoteStream)
  当远端流被移除的时候被触发.
 
void  onUserJoined (User user)
  当一个客户端加入这个房间的时候被触发.
 
void  onUserLeft (User user)
  当一个客户端离开这个房间的时候被触发.
 
void  onMessageReceived (String sender, String message, boolean broadcast)
  当接受到其他人发送的一个消息.
 
void  onRecorderAdded (String recorderId)
  当会议聊天服务器添加一个记录器的时候被触发.
 
void  onRecorderRemoved (String recorderId)
  当会议聊天服务器移除一个记录器的时候被触发.
 
void  onRecorderContinued (String recorderId)
  当会议聊天服务器继续一个记录器的时候被触发.

WebRTC 学习之 Intel® Collaboration Suite for WebRTC 关键类整理的更多相关文章

  1. WebRTC学习之 Intel® Collaboration Suite for WebRTC源码流程解读

    年后回来,因为新项目的需求,开始了解WebRTC相关的知识.目前接触的是Intel® Collaboration Suite for WebRTC.刚开始看SDK发现很多概念是我目前不知道的,于是恶补 ...

  2. WebRTC 学习之 WebRTC 简介

    本文使用的WebRTC相关API都是基于Intel® Collaboration Suite for WebRTC的. 相关文档链接:https://software.intel.com/sites/ ...

  3. [转]webrtc学习: 部署stun和turn服务器

    [转]webrtc学习: 部署stun和turn服务器 http://www.cnblogs.com/lingdhox/p/4209659.html webrtc的P2P穿透部分是由libjingle ...

  4. WebRTC学习笔记_Demo收集

    1.     WebRTC学习 1.1   WebRTC现状 本人最早接触WebRTC是在2011年底,那时Google已经在Android源代码中增加了webrtc源代码,放在/external/w ...

  5. WebRTC学习之九:摄像头的捕捉和显示

    较新的WebRTC源代码中已经没有了与VoiceEngine结构相应的VidoeEngine了,取而代之的是MeidaEngine.MediaEngine包括了MediaEngineInterface ...

  6. WebRTC学习

    1.     WebRTC学习 1.1   WebRTC现状 本人最早接触WebRTC是在2011年底,那时Google已经在Android源码中加入了webrtc源码,放在/external/web ...

  7. WebRTC学习与DEMO资源一览

    一. WebRTC学习 1.1   WebRTC现状 本人最早接触WebRTC是在2011年底,那时Google已经在Android源码中加入了webrtc源码,放在/external/webrtc/ ...

  8. webrtc 学习资源 http://www.cnblogs.com/lingyunhu/p/3578218.html

    Realtime/Working WebRTC Experiments It is a repository of uniquely experimented WebRTC demos; writte ...

  9. 【转】MyBatis学习总结(四)——解决字段名与实体类属性名不相同的冲突

    [转]MyBatis学习总结(四)——解决字段名与实体类属性名不相同的冲突 在平时的开发中,我们表中的字段名和表对应实体类的属性名称不一定都是完全相同的,下面来演示一下这种情况下的如何解决字段名与实体 ...

随机推荐

  1. JavaScript: For , For/in , For/of

    For: define: The for statement can customize how many times you want to execute code Grammar: for (c ...

  2. python re模块与正则表达式

    首先要先继承re模块: import re re.findall() 方法 # 返回值为列表 \w 表示一个字符,为数字,字母,下滑线之一, \W匹配任意非数字,字母,下划线 print(re.fin ...

  3. Web Worker模拟抢票

    web worker工作原理图: 抢票系统思维导图: 思路:五个人(5个div窗口模拟)同时进行抢票,有百分之十的几率可以抢到票,抢到票后对应的窗口(即随机生成的数大于等于0小于9的情况)会编程天蓝色 ...

  4. VS2017安装步骤详解

    原文地址:https://www.ithome.com/html/win10/297093.htm 微软最近发布了正式版Visual Studio 2017并公开了其下载方式,不过由于VS2017采用 ...

  5. 解题(GeLeiMa -生成格雷码)

    题目描述 在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同, 则称这种编码为格雷码(Gray Code),请编写一个函数,使用递归的方法生成N位的格雷码. 给定一个整数n,请返回n位的格雷码 ...

  6. 单点登录(SSO)解决方案之 CAS 入门案例

    单点登录: 单点登录(Single Sign On),简称为 SSO,是目前比较流行的企业业务整合的解决方案之一.SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统. ...

  7. 微信H5授权登录,公众平台,开放平台

    首先,特别不喜欢做微信开发,各种设置,各种文档,各种坑. 最近做一个H5网页,微信扫码打开,需要使用微信登录,获取用户的基本信息,自动保存,自动登录. 1.先去微信公众平台https://mp.wei ...

  8. Django model进阶

    Django-model进阶   QuerySet 可切片 使用Python 的切片语法来限制查询集记录的数目 .它等同于SQL 的LIMIT 和OFFSET 子句. >>> Ent ...

  9. 百度地图sdk sha1秘钥获取有种想吐的赶脚

    撸代码坐的腰算背疼还只是弄一个不是项目里边需要的升级版本的so 日 需要sha1 指纹秘钥,还有项目包, 才能用百度地图sdk 这个找sha1  获取废了20分钟, 显示全盘找keytool.exe ...

  10. 老毛子 Padavan 路由器固件开启教育网 IPv6 并实现IPv6转发

    老毛子 Padavan 路由器固件开启教育网 IPv6 并实现IPv6转发 文章目录[隐藏] 一.开启opt环境 二.开启 WAN 端 IPv6 三.安装并运行 6relayd 四.开机自动安装并配置 ...