Room

cn.tee3.avd

## 类 Room

- java.lang.Object
- - cn.tee3.avd.Room

-     public class Room
      extends java.lang.Object

  房间接口类 房间接口定义了房间对象创建和释放、房间功能操作。

- - ### 嵌套类概要

    嵌套类
    限定符和类型 | 类和说明
    --- | ---
    `static class` | `Room.ConnectionStatus` 房间网络状态
    `static interface` | `Room.JoinResultListener`
    `static interface` | `Room.Listener` 房间回调接口类 房间回调接口定义了房间对象操作的异步返回，房间通知，房间指示。
    `static class` | `Room.Option` 房间选项
    `static class` | `Room.OutgoingInviteType`
    `static class` | `Room.OutgoingStatus`

  - ### 方法概要

    所有方法 静态方法 实例方法 具体方法
    限定符和类型 | 方法和说明
    --- | ---
    `protected void` | `addModule(Module mod)`
    `protected static void` | `clearRooms()`
    `int` | `close()` 关闭房间
    `java.lang.String` | `createFakeDeviceID(java.lang.String fakeId)` 创建模拟设备Id，在导入音视频时可用
    `static void` | `destoryRoom(Room room)` 释放房间接口
    `protected void` | `dispose()`
    `int` | `enableStats(boolean isEnable)` 当前房间启用或关闭流量统计功能
    `protected Module` | `findModule(Module.Type type)`
    `java.lang.String` | `getAppData(java.lang.String key)` 返回应用层的房间数据
    `java.lang.String` | `getAppRoomId()` 获取房间应用层Id
    `NetworkStats.MediaStats` | `getAudioStats()`
    `protected int` | `getIntOption(Room.Option type)`
    `protected MVideo.LocalCameraSwitch` | `getLocalCameraSwith()`
    `NetworkStats.MediaStats` | `getMediaStats(java.lang.String deviceId)` 获取某路媒体（音频或者视频）的流量统计信息
    `protected Module` | `getModule(Module.Type type)`
    `java.lang.String` | `getOption(Room.Option type)` 获取房间选项
    `java.lang.String` | `getRoomId()` 获取房间Id
    `RoomInfo` | `getRoomInfo()` 获取房间信息
    `java.lang.String` | `getRoomName()` 获取房间名
    `NetworkStats.RoomStats` | `getRoomStats()` 获取房间的流量统计信息
    `RoomInfo.RoomStatus` | `getRoomStatus()` 获取房间状态
    `java.lang.String` | `getRoomTopic()` 获取房间主题
    `protected static boolean` | `hasRooms()` 是否存在房间
    `boolean` | `isWorking()`
    `int` | `join(User user, java.lang.String password, Room.JoinResultListener joinresult)` 当前用户加入房间
    `int` | `join(User user, java.lang.String password, Room.JoinResultListener joinresult, java.lang.String roomToken)`
    `int` | `kickoutUser(int reason, java.lang.String userId)` 房间中踢出用户ro
    `int` | `leave(int reason)` 当前用户离开房间
    `protected long` | `nativegetMAudio()`
    `protected long` | `nativegetMChat()`
    `protected long` | `nativegetMLocalRecord()`
    `protected long` | `nativegetMScreen()`
    `protected long` | `nativegetMSvrLive()`
    `protected long` | `nativegetMUserManager()`
    `protected long` | `nativegetMVideo()`
    `protected long` | `nativegetMWhiteboard()`
    `static Room` | `obtain(java.lang.String aroomId)` 获取或创建房间接口
    `int` | `reJoin()` 重新加入当前房间
    `int` | `sendPrivateData(byte[] data, int len, java.lang.String toId)` 透明通道，发送私有数据
    `int` | `sendPublicData(byte[] data, int len)` 透明通道，发送广播数据
    `int` | `setListener(Room.Listener listener)` 设置房间回调接口
    `int` | `setOption(Room.Option type, java.lang.String svalue)`
    `int` | `updateAppData(java.lang.String key, java.lang.String value)` 修改应用层的房间数据
    `int` | `updateRoomStatus(RoomInfo.RoomStatus status)` 更新房间状态

    - ### 从类继承的方法 java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### 方法详细资料

    - #### getLocalCameraSwith

          protected MVideo.LocalCameraSwitch getLocalCameraSwith()

    - #### obtain

          public static Room obtain(java.lang.String aroomId)

      获取或创建房间接口
      返回:
        返回房间接口指针。

    - #### clearRooms

          protected static void clearRooms()

    - #### destoryRoom

          public static void destoryRoom(Room room)

      释放房间接口

    - #### hasRooms

          protected static boolean hasRooms()

      是否存在房间
      返回:

    - #### setListener

          public int setListener(Room.Listener listener)

      设置房间回调接口
      返回:
        返回错误代码。
      另请参阅:
        `Room.Listener`

    - #### join

          public int join(User user,
                          java.lang.String password,
                          Room.JoinResultListener joinresult)

      当前用户加入房间
      返回:
        返回错误代码。

    - #### join

          public int join(User user,
                          java.lang.String password,
                          Room.JoinResultListener joinresult,
                          java.lang.String roomToken)

    - #### leave

          public int leave(int reason)

      当前用户离开房间
      返回:
        返回错误代码。

    - #### close

          public int close()

      关闭房间
      返回:
        返回错误代码。

    - #### reJoin

          public int reJoin()

      重新加入当前房间
      返回:
        返回错误代码。

    - #### kickoutUser

          public int kickoutUser(int reason,
                                 java.lang.String userId)

      房间中踢出用户ro
      返回:
        返回错误代码。

    - #### isWorking

          public boolean isWorking()

    - #### updateRoomStatus

          public int updateRoomStatus(RoomInfo.RoomStatus status)

      更新房间状态
      返回:
        返回错误代码。

    - #### getRoomStatus

          public RoomInfo.RoomStatus getRoomStatus()

      获取房间状态
      返回:
        返回房间状态。

    - #### getRoomId

          public java.lang.String getRoomId()

      获取房间Id
      返回:
        返回房间Id。

    - #### getAppRoomId

          public java.lang.String getAppRoomId()

      获取房间应用层Id
      返回:
        返回房间应用层Id。

    - #### getRoomName

          public java.lang.String getRoomName()

      获取房间名
      返回:
        返回房间名。

    - #### getRoomTopic

          public java.lang.String getRoomTopic()

      获取房间主题
      返回:
        返回房间主题。

    - #### getRoomInfo

          public RoomInfo getRoomInfo()

      获取房间信息
      返回:
        返回房间信息。

    - #### sendPublicData

          public int sendPublicData(byte[] data,
                                    int len)

      透明通道，发送广播数据
      返回:
        返回错误代码。

    - #### sendPrivateData

          public int sendPrivateData(byte[] data,
                                     int len,
                                     java.lang.String toId)

      透明通道，发送私有数据
      返回:
        返回错误代码。

    - #### getAppData

          public java.lang.String getAppData(java.lang.String key)

      返回应用层的房间数据
      返回:
        返回应用层的相应关键字的房间数据。

    - #### updateAppData

          public int updateAppData(java.lang.String key,
                                   java.lang.String value)

      修改应用层的房间数据
      返回:
        返回错误代码。

    - #### enableStats

          public int enableStats(boolean isEnable)

      当前房间启用或关闭流量统计功能
      返回:
        返回错误代码： AVD_OK 成功

    - #### getRoomStats

          public NetworkStats.RoomStats getRoomStats()

      获取房间的流量统计信息
      返回:
        返回房间流量统计信息。

    - #### getMediaStats

          public NetworkStats.MediaStats getMediaStats(java.lang.String deviceId)

      获取某路媒体（音频或者视频）的流量统计信息
      返回:
        返回媒体统计信息。

    - #### getAudioStats

          public NetworkStats.MediaStats getAudioStats()

    - #### setOption

          public int setOption(Room.Option type,
                               java.lang.String svalue)

    - #### getOption

          public java.lang.String getOption(Room.Option type)

      获取房间选项
      返回:
        返回房间选项值。

    - #### getIntOption

          protected int getIntOption(Room.Option type)

    - #### createFakeDeviceID

          public java.lang.String createFakeDeviceID(java.lang.String fakeId)

      创建模拟设备Id，在导入音视频时可用
      返回:
        模拟设备Id。

    - #### nativegetMChat

          protected long nativegetMChat()

    - #### nativegetMAudio

          protected long nativegetMAudio()

    - #### nativegetMUserManager

          protected long nativegetMUserManager()

    - #### nativegetMVideo

          protected long nativegetMVideo()

    - #### nativegetMScreen

          protected long nativegetMScreen()

    - #### nativegetMLocalRecord

          protected long nativegetMLocalRecord()

    - #### nativegetMSvrLive

          protected long nativegetMSvrLive()

    - #### nativegetMWhiteboard

          protected long nativegetMWhiteboard()

    - #### getModule

          protected Module getModule(Module.Type type)

    - #### addModule

          protected void addModule(Module mod)

    - #### findModule

          protected Module findModule(Module.Type type)

    - #### dispose

          protected void dispose()