关键类整理 ---> 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. gitlab Api接口使用

    官方文档 https://docs.gitlab.com/search/?q=api&idx=gitlab&p=1 示例:获取每个项目下的用户信息 #!/usr/bin/env pyt ...

  2. Delphi TXLSReadWriteII 导出EXCEL

    unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms ...

  3. Kb和KB的区别

  4. 原子性: Interlocked 类

    public class CounterNoLock:CountBase { private int _count; public int Count { get { return _count; } ...

  5. ASP.NET Boilerplate-AbpSession

    /------2016-05-15/------介绍 如果一个应用支持登录,也许需要知道当前登录用户的一些操作,然而ASP.NET 本身对于展现层提供了Session的支持,ABP提供了 IAbpSe ...

  6. java 期末考试复习

      //Scanner这样写? Scanner input = new Scanner(System.in); //不断获得下一个单词 names[i] = toTitleCase(input.nex ...

  7. autoMapper dotnetcore webapi 自动添加映射 abp

    在ef的xxxxApplicationModule的Initialize方法中,已经添加了自动映射的配置,如下图: 写的很明白了,我们只需要写一个类继承Profile就可以了.如下图所示: 这样就可以 ...

  8. MySQL(数据类型和完整约束)

    MySQL数据类型 MySQL支持多种数据类型,主要有数值类型.日期/时间类型和字符串类型. 1.数值数据类型 包括整数类型TINYINT.SMALLINT.MEDIUMINT.INT.BIGINT. ...

  9. 《C#从现象到本质》读书笔记(九)第11章C#的数据结构

    <C#从现象到本质>读书笔记(九)第11章C#的数据结构 C#中的数据结构可以分为两类:非泛型数据结构和泛型数据结构. 通常迭代器接口需要实现的方法有:1)hasNext,是否还有下一个元 ...

  10. 第四次spring会议

    昨天:对TXT的字体颜色和背景进行了代码编写. 出现的问题:在网上找到如何编写代码后,自己打进去了,输出不出来.少打了一个空格在EventArgs e之间. 今天将做之事: 我设置上换肤和透明度等功能 ...