关键类整理 ---> 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. Fragment的粗浅理解

    Fragment: 1.它是对于Activity界面实现的一种途径,相对于已经绑定的Layout,他更轻便,更灵活,更具有自由度和可设计性. 2.Fragment的功能正如他的正文意思所言,他是一个片 ...

  2. 用ActiveX 创建自己的comboBox 控件(二)

    3.0 添加事件 3.1 添加OnSelChange 事件 当用户选中列表项的时候触发该事件.(不只是选择改变时触发,本次选择和上次相同时也触发): 添加完成后,在ActivexcomboBox.id ...

  3. ==、equals和hashCode小结

    1.== ==是关系操作符,对于基本类型(byte,short,char,int,long,float,double,boolean),比较的是值是否相等:对于对象,比较的是对象的引用(也即栈内存中的 ...

  4. 剑指offer例题——二进制中1的个数

    题目:输入一个整数,输出该二进制表示中1的个数.其中负数用补码表示. 首先明确补码的定义: 原码 反码 补码 将最高位作为符号位(0表示正,1表示负), 其它数字位表达数值本身的绝对值的数字表示方式 ...

  5. SQL Server中使用数据库快照的方式来完成测试环境中数据库的轻量级备份还原操作

    在开发或者测试环境的数据库中,经常会发现有开发或者测试人员误删除表或者数据的情况,对于开发或者测试库,一般都没有安排定时的备份任务去备份数据库,一方面是由于存储资源有限,不太可能给开发或者测试环境准备 ...

  6. linux nginx 基本用法

    nginx -s reload -p <nginx环境目录> -c <指定的配置文件> 其中-p -c 为可选,不写为默认路径和配置 在执行命令之前可通过 nginx -t - ...

  7. Java方法区(Method Area)

    方法区与Java堆一样,是各个线程共享的内存区域,他在与存储已被虚拟机加载的类信息,常量,静态变量,即时编译器编译后的代码等数据,虽然Java虚拟机规范把方法区描述为堆得一个逻辑部分,但是他却有一个别 ...

  8. Pandas分组

    GroupBy技术 分组运算的过程可以用下面的流程图表示出来 import pandas as pd from pandas import Series import numpy as np df = ...

  9. 2019南昌网络赛-M(二分)

    题目链接:https://nanti.jisuanke.com/t/38232 题意:给定字符串s(长度<=1e5),然后N组样例(N<=1e5),每组输入一个字符串t判断t是否为s的字串 ...

  10. TZOJ 2099 Sightseeing tour(网络流判混合图欧拉回路)

    描述 The city executive board in Lund wants to construct a sightseeing tour by bus in Lund, so that to ...