API

API接口由多个模块组成 ,主要模块包括:基础函数注册/反注册回调登录/反注册成员管理队列管理透明通道/呼叫排队邀请房间管理音频管理视频管理屏幕共享影音共享本地录制/本地直播云端录制/互动直播电子白板/文档共享Http文件组件

接口描述

基础函数:

组件 方式 接口 描述
CloudroomVideoSDK 主调 GetCloudroomVideoSDKVer 获取sdk的版本信息
init SDK初始化
uninit SDK反初始化
serverAddr 获取服务器地址
setServerAddr 设置服务器地址
setFileUploadRate 文件上传的流量控制
setFileDownloadRate 文件下载的流量控制

注册/反注册回调:

组件 方式 接口 描述
CloudroomVideoMgr 主调 registerCallBack 房间管理注册监听回调
unregisterCallBack 房间管理反注册监听回调
CloudroomVideoMeeting 主调 registerCallBack 注册视频房间核心管理监听回调
unregisterCallBack 反注册房间管理监听回调
CloudroomQueue 主调 registerCallBack 注册队列管理监听回调
unregisterCallBack 反注册队列管理监听回调
CloudroomHttpFileMgr 主调 registerCallBack 注册Http文件传输管理监听回调
unregisterCallBack 反注册Http文件传输管理监听回调

登录/反注册:

组件 方式 接口 描述
CloudroomVideoMgr 主调 login 密码登录
loginByToken Token登录
getUserAuthErrCode 获取用户认证错误码
getUserAuthErrDesc 获取用户验证错误描述信息
logout 反注册本次登陆
updateToken 更新Token
CloudroomVideoMgrCallback 主调 loginSuccess 登录成功响应
loginFail 登录失败响应
notifyTokenWillExpire Token即将失效
lineOff 通知用户掉线

成员管理:

组件 方式 接口 描述
CloudroomVideoMeeting 主调 getAllMembers 获取房间所有成员的列表
getMemberInfo 获取某个用户的信息
getNickName 获取某个用户的昵称
setNickName 设置某个用户的昵称
isUserInMeeting 判断某个用户是否在房间中

队列管理

组件 方式 接口 描述
CloudroomQueue 主调 initQueue 初始化用户队列功能数据
refreshAllQueueStatus 刷新所有队列状态信息
getAllQueueInfo 获取队列信息
getQueueStatus 获取指定队列状态
getQueuingInfo 获取我的排队信息
getServiceQueues 获取我服务的所有队列
getSessionInfo 获取我的会话信息
startQueuing 客户开始排队
stopQueuing 客户停止排队
startService 开始服务某个队列(可以多次调用,开启对多个队列的服务)
stopService 停止服务某个队列
reqAssignUser 请求分配一个客户
acceptAssignUser 接受系统安排的客户
rejectAssignUser 拒绝系统安排的客户
CloudroomQueueCallback 回调 initQueueDatRslt 队列初始化操作结果
queueStatusChanged 队列状态变化通知
queuingInfoChanged 排队信息变化通知
startQueuingRslt startQueuing 开始排队操作结果
stopQueuingRslt stopQueuing 停止排队操作结果
startServiceRslt startService 开始服务队列操作结果
reqAssignUserRslt 请求分配客户操作结果
autoAssignUser 队列系统自动分配客户
cancelAssignUser 队列系统取消之前自动分配的的客户
responseAssignUserRslt 接受分配的用户

透明通道/呼叫排队

组件 方式 接口 描述
CloudroomVideoMgr 主调 setDNDStatus 设置免打扰状态
getUserStatus 获取企业下指定用户的在线状态(包括呼叫房间状态、免打扰状态)
startUserStatusNotify 开启用户的状态推送
stopUserStatusNotify 关闭用户的状态推送
call 发起呼叫,邀请用户参加视频会话
acceptCall 接受对方发起的视频请求,开始进入视频会话
rejectCall 拒绝对方的视频请求
hangupCall 挂断正在进行的视频呼叫或视频通话
sendCmd 发送小块数据(50K以内)
sendBuffer 发送大块数据
sendFile 发送文件
cancelSend 取消数据发送
setMarkText 添加打点信息
removeMarkText 移除打点信息
getAllMarks 获取所有打点信息
getVideoMarkFile 获取打点文件的绝对文件路径名
CloudroomVideoMeeting 主调 sendMeetingCustomMsg 房间内发送广播消息
CloudroomVideoMgrCallback 回调 setDNDStatusSuccess 客户端设置免打扰状态操作成功响应
setDNDStatusFail 客户端设置免打扰状态操作失败响应
getUserStatusRslt 获取企业内所有用户在线状态响应
startStatusPushRslt 启动用户状态推送响应
stopStatusPushRslt 结束用户状态推送响应
notifyUserStatus 某个用户状态变化通知
callSuccess 呼叫他人操作成功响应
callFail 呼叫他人操作失败响应
acceptCallSuccess 接受他人呼叫操作成功响应
acceptCallFail 接受他人呼叫操作失败响应
rejectCallSuccess 拒绝他人的呼叫成功响应
rejectCallFail 拒绝他人的呼叫失败响应
hangupCallSuccess 挂断呼叫操作成功响应
hangupCallFail 拒绝他人呼叫操作失败响应
notifyCallIn SDK通知自己被呼叫
notifyCallAccepted SDK通知自己视频呼叫被对方接受
notifyCallRejected SDK通知自己呼叫被对方拒绝
notifyCallhangup SDK通知呼叫被挂断
sendCmdRlst 发送数据时,SDK通知发送结果
sendBufferRlst
sendFileRlst
sendProgress 发送数据时,SDK通知发送进度
cancelSendRlst 取消发送结果
notifyCmdData SDK通知收到小块数据
notifyBufferData SDK通知收到大块数据
notifyFileData SDK通知收到文件数据
notifyCancelSend SDK通知取消发送文件数据
CloudroomVideoCallback 回调 sendMeetingCustomMsgRlst 发送房间内用户广播结果
sendMeetingCustomMsgRslt 接收到房间内用户自定义广播

邀请

组件 方式 接口 描述
CloudroomVideoMgr 主调 invite 发送邀请
acceptInvite 接受对方发送的邀请
rejectInvite 拒绝对方发送的邀请
cancelInvite 取消自己发送的邀请
CloudroomVideoMgrCallback 回调 inviteSuccess 发送邀请成功
inviteFail 发送邀请失败
cancelInviteSuccess 取消自己发送的邀请成功
cancelInviteFail 取消自己发送的邀请失败
acceptInviteSuccess 接受对方发送的邀请成功
acceptInviteFail 接受对方发送的邀请失败
rejectInviteSuccess 拒绝对方发送的邀请成功
rejectInviteFail 拒绝对方发送的邀请失败
notifyInviteIn 通知有人邀请
notifyInviteAccepted 通知邀请被对方接受
notifyInviteRejected 通知邀请被对方拒绝
notifyInviteCanceled 通知有邀请被取消

房间管理

组件 方式 接口 描述
CloudroomVideoMgr 主调 createMeeting 创建视频房间
destroyMeeting 销毁视频房间
CloudroomVideoMeeting 主调 enterMeeting 使用房间ID和密码(可为空)进入指定的视频房间
exitMeeting 离开房间
destroyMeeting 结束房间
switchToPage 功能页切换
getCurrentMainPage 获取当前主功能区
getCurrentSubPage 获取当前子页面
CloudroomVideoMgrCallback 回调 createMeetingSuccess 创建房间成功响应
createMeetingFail 创建房间失败响应
destroyMeetingRslt 结束房间响应
CloudroomVideoCallback 回调 enterMeetingRslt 进入房间结果
stopMeetingRslt 通知结束视频房间结果
setNickNameRsp 设置房间成员昵称的结果
notifyNickNameChanged 某用户改变了昵称(改昵称的用户自身不会接收到此通知)
userEnterMeeting 某用户进入了房间
userLeftMeeting 某用户离开了房间
meetingDropped 通知从房间里掉线了,收到该通知后可以调用enterMeeting尝试重新入会
meetingStoped 房间已被结束
netStateChanged 网络变化通知
notifySwitchToPage 通知主功能页切换

音频管理

组件 方式 接口 描述
CloudroomVideoMeeting 主调 setAudioCfg 设置麦克风音频参数
getAudioCfg 获取音频参数
setMicVolumeScaling 设置麦克风音量增益
getMicEnergy 获取用户说话声音大小
openMic 打开用户的麦克风
closeMic 关闭用户的麦克风
getAudioStatus 获取用户的麦状态
getMicVolume 获取麦克风音量大小
setSpeakerVolume 设置本地扬声器音量
getSpeakerVolume 获取本地扬声器音量
setSpeakerMute 设置播放是否静音
getSpeakerMute 获取播放是否静音
setSpeakerOut 设置外放状态
getSpeakerOut 获取外放状态
setAllAudioClose 关闭所有用户的麦克风
CloudroomVideoCallback 主调 audioDevChanged 通知本地音频设备有变化
audioStatusChanged 通知音频状态变化
micEnergyUpdate 通知用户的说话声音强度更新

视频管理

组件 方式 接口 描述
CloudroomVideoMeeting 主调 getAllVideoInfo 获取用户所有的摄像头信息
createCustomVideoDev 创建自定义摄像头
destroyCustomVideoDev 消毁自定义摄像头
inputCustomVideoDat 输入摄像头图像数据
setVideoCfg 设置摄像头参数
getVideoCfg 获取设置的摄像头参数
setLocVideoAttributes 设置某个摄像头私有参数
getWatchableVideos 获取房间内所有可观看的摄像头
openVideo 打开用户的摄像头,以便本地、远端显示视频图像
closeVideo 关闭用户的摄像头
getVideoStatus 获取用户的摄像头状态
getDefaultVideo 获取指定用户的默认摄像头
setDefaultVideo 设置默认的摄像头
getLocalVideoParams 获取指定本地摄像头参数
setLocalVideoParam 设置指定本地摄像头参数
getVideoWallMode 获取视频墙当前分屏模式
setVideoWallMode 设置视频墙分屏模式
setMainVideo 设置当前哪个用户为主视频
getMainVideo 获取当前哪个用户为主视频
CloudroomVideoCallback 回调 openVideoRslt 打开摄像头设备操作结果
videoStatusChanged 视频状态变化
videoDevChanged 通知用户的视频设备有变化
notifyVideoData 通知用户有新的视频数据
defVideoChanged 通知用户的视频默认设备有变化
notifyVideoWallMode 通知视频分屏模式切换
notifyMainVideoChanged 通知主视频更改

屏幕共享

组件 方式 接口 描述
CloudroomVideoMeeting 主调 isScreenShareStarted 获取屏幕共享是否已开启
getScreenShareCfg 获取屏幕共享配置
setScreenShareCfg 设置屏幕共享配置
startScreenShare 开始屏幕共享
stopScreenShare 停止屏幕共享
isEnableOtherMark 获取是否允许他人标注屏幕
enableOtherMark 允许他人标注屏幕
CloudroomVideoCallback 回调 startScreenShareRslt 开启屏幕共享的响应事件
stopScreenShareRslt 停止屏幕共享的响应事件
notifyScreenShareStarted 通知屏幕共享开始
notifyScreenShareStopped 通知屏幕共享停止
startScreenMarkRslt 开始屏幕标注结果
stopScreenMarkRslt 停止屏幕标注结果
notifyScreenMarkStarted 通知屏幕标注开始
notifyScreenMarkStopped 通知屏幕标注停止

影音共享

组件 方式 接口 描述
CloudroomVideoMeeting 主调 setMediaCfg 配置远程影音共享时,图像质量参数
getMediaCfg 获取影音共享图像质量参数
startPlayMedia 播放影音文件
pausePlayMedia 暂停播放影音
stopPlayMedia 停止影音播放
setMediaPlayPos 设置播放进度
getAllFilesInMediaPath 取得影音文件夹下的所有可播放文件
getMediaInfo 取得影音文件信息
setMediaVolume 设置影音播放的音量
getMediaVolume 读取影音播放的音量
CloudroomVideoCallback 回调 notifyMediaOpened 通知影音文件打开
notifyMediaStart 通知影音开始播放
notifyMediaPause 通知影音暂停播放
notifyMediaStop 通知影音播放停止
notifyPlayPosSetted 通知播放进度已设置完成
notifyMemberMediaData 通知影音帧数据已解码完毕
notifyAudioPCMDat 通知语音PCM数据

本地录制/本地直播

组件 方式 接口 描述
CloudroomVideoMeeting 主调 createLocMixer 创建本地混图器
updateLocMixerContent 更新本地混图器内容
destroyLocMixer 消毁本地混图器
getLocMixerState 获取本地混图器状态
addLocMixerOutput 开启本地录制、开启直播推流
rmLocMixerOutput 停止本地录制、直播推流
getAllRecordFiles 取得所有录制文件信息
addFileToRecordMgr 添加本地文件到录制文件管理中
removeFromFileMgr 删除本地的录制文件,上传中的文件会被取消上传
uploadRecordFile 上传录制文件
uploadRecordFile 上传录制文件到服务器指定位置
cancelUploadRecordFile 取消上传中的录制文件
playbackRecordFile 回放录制文件
CloudroomVideoCallback 回调 uploadRecordFileErr 上传录制文件错误通知
cancelUploadRecordFileErr 取消上传错误通知
locMixerStateChanged 本地混图器状态变化通知
locMixerOutputInfo 本地录制文件、本地直播信息通知
notifyRecordFileStateChanged 通知录制文件状态更改
uploadRecordFileSuccess 通知录制文件上传成功
notifyRecordFileUploadProgress 通知录制文件上传进度

云端录制/互动直播

组件 方式 接口 描述
CloudroomVideoMeeting 主调 startSvrMixer 开始云端录制、云端直播
updateSvrMixerContent 更新云端录制、云端直播内容
stopSvrMixer 停止云端录制、云端直播
getSvrMixerState 获取云端录制、云端直播状态
CloudroomVideoCallback 回调 svrMixerStateChanged 云端录制、云端直播状态变化通知
svrMixerCfgChanged 云端录制、云端直播内容变化通知
svrMixerOutputInfo 云端录制文件、云端直播信息变化通知

电子白板/文档共享

组件 方式 接口 描述
CloudroomVideoMeeting 主调 createBoard 创建电子白板
closeBoard 关闭电子白板
initBoardPageDat 初始化白板指定页数据
createElementID 创建图元标识
addBoardElement 添加图元信息
modifyBoardElement 修改图元信息
delBoardElement 删除图元
setMouseHotSpot 设置鼠标热点信息
setBoardCurPageNo 白板翻页
listNetDiskDocFile 查询服务器指定目录下的内容(子目录名、上传的文档源文件及文档转换状态)
uploadDocFileToNetDisk 上传并转换文档
downloadNetDiskDocFile 下载源始文档
deleteNetDiskDocFile 删除文档
getNetDiskDocFilePageInfo 获取文档的转换信息
downloadNetDiskDocFilePage 获取文档的转换信息
setPicResource 将图片资源设置给sdk
CloudroomVideoCallback 回调 notifyInitBoards SDK入会后通知房间中已经存在的白板列表
notifyInitBoardPageDat 初始化白板页数据
notifyCreateBoard 通知创建白板
notifyCloseBoard 通知关闭白板
notifyAddBoardElement 通知添加图元信息
notifyModifyBoardElement 通知图元信息被修改
notifyDelBoardElement 通知图元被删除
notifyMouseHotSpot 通知鼠标热点消息
notifyBoardCurPageNo 通知白板翻页
listNetDiskDocFileRslt 通知查询文档列表结果
getNetDiskDocFilePageInfoRslt 通知查询文档转换结果
deleteNetDiskDocFileRslt 通知删除文档结果
notifyNetDiskDocFileTrsfProgress 通知文档传输进度

Http文件组件

组件 方式 接口 描述
CloudroomHttpFileMgr 主调 startMgr 启动Http文件文件组件运行
stopMgr 停止Http文件文件组件运行
getAllTransferInfos 获取本地上传、下载文件信息
startTransferFile 开始下载/上传文件
cancelFileTransfer 取消传输
rmTransferInfo 删除传输记录及相关文件
CloudroomHttpFileMgrCallback 回调 fileStateChanged 通知用户文件状态更改
fileProgress 通知用户文件的传输进度
fileFinished 通知用户文件传输结束

接口函数详情

云屋SDK的方法/回调接口的相关内容分别实现在基础组件, 房间组件, 视频房间组件 , 房间内可视化UI显示组件, 队列组件, Http文件传输组件六个组件中

  1. 基础组件(CloudroomVideoSDK)的接口函数
  2. 房间组件(CloudroomVideoMgr)的接口函数
  3. 视频房间组件(CloudroomVideoMeeting)的接口函数
  4. 队列组件(CloudroomQueue)的接口函数
  5. Http文件传输组件(CloudroomHttpFileMgr)的接口函数

1. 基础组件(CloudroomVideoSDK)的接口函数

CloudroomVideoSDK 是基础控件,负责整个SDK的初始化和反初始化操作。整个程序的生命过程中只能有一个实例


String GetCloudroomVideoSDKVer()

  • 功能: 获取sdk的版本信息

  • 返回值: 返回云屋SDK版本号

CRVIDEOSDK_ERR_DEF init(Context context, SdkInitDat dat)

  • 功能: SDK初始化

  • 返回值: CRVIDEOSDK_NOERR为成功操作,其他详见定义CRVIDEOSDK_ERR_DEF

参数 类型 含义
context Context 程序上下文,不可为空
dat SdkInitDat SDK配置、临时文件存放位置,不可为空

void uninit()

  • 功能: SDK反初始化

  • 返回值: 无

String serverAddr()

  • 功能: 获取服务器地址

  • 返回值: 服务器地址(如:www.cloudroom.com)或多个服务器地址串(如:www.cloudroom.com:8080;183.60.47.52:8080;)

void setServerAddr(String serverList)

  • 功能: 设置服务器地址

  • 返回值: 无

参数 类型 含义
serverList String 服务器地址(如:www.cloudroom.com)或多个服务器地址串(如:www.cloudroom.com:8080;183.60.47.52:8080;)

void setFileUploadRate(int maxBytePerSec)

  • 功能: 文件上传的流量控制

  • 返回值: 无

参数 类型 含义
maxBytePerSec int 每秒上传的最大字节数 。-1代表不进行流控

void setFileDownloadRate(int maxBytePerSec)

  • 功能: 文件下载的流量控制

  • 返回值: 无

参数 类型 含义
maxBytePerSec int 每秒下载的最大字节数。-1代表不进行流控

2. 房间组件(CloudroomVideoMgr)的接口函数

CloudroomVideoMgr 是房间组件,实现登录、呼叫、房间创建销毁、透明传输等功能。 整个程序的生命过程中只能有一个实例。


void registerCallBack(CloudroomVideoMgrCallback callBack)

  • 功能: 注册监听回调

  • 返回值: 无

参数 类型 含义
callBack CloudroomVideoMgrCallback 回调对象

void unregisterCallBack(CloudroomVideoMgrCallback callBack)

  • 功能: 反注册监听回调

  • 返回值: 无

参数 类型 含义
callBack CloudroomVideoMgrCallback 反注册的回调对象
参数 类型 含义
callBack CloudroomVideoMgrCallback 回调对象

void login(String appID, String appSecret, String nickName, String userID, String userAuthCode, String cookie)

  • 功能: 登陆服务器

  • 返回值: 无

登录成功则触发回调loginSuccess , 登录失败则触发回调loginFail

参数 类型 含义
appID String 项目授权appID
appSecret String 项目授权appID对应密码
nickName String 昵称
userID String 用户ID。和云屋系统无关,业务方自由填写,保证唯一性即可(同一appID下,具有唯一性即可)
userAuthCode String 默认填空。只有开启第三方认证才需要填写。(开启第三方认证时,云屋SDK服务器将连接提前配好的业务方服务器进行实时验证。)
cookie String 可缺省。详细介绍见关键词

void loginByToken(String token, string nickName, String userID, String userAuthCode, String cookie)

  • 功能: Token登录
  • 返回值:无
参数 类型 含义
token String Token鉴权码
nickName String 昵称
userID String 用户ID。和云屋系统无关,业务方自由填写,保证唯一性即可(同一appID下,具有唯一性即可)
userAuthCode String 默认填空。只有开启第三方认证才需要填写。(开启第三方认证时,云屋SDK服务器将连接提前配好的业务方服务器进行实时验证。)
cookie String 可缺省。详细介绍见关键词

登陆成功则回调loginSuccess,登陆失败则回调loginFail

void logout()

  • 功能: 反注册本次登陆

  • 返回值: 无

int getUserAuthErrCode()

  • 功能: 获取第三方认证错误码

  • 返回值: 错误码

String getUserAuthErrDesc()

  • 功能: 获取第三方认证错误描述

  • 返回值: 错误描述

void updateToken(String token))

  • 功能: 更新Token(在Token即将失效的时候更新Token延长有限时间)

  • 返回值: 无

参数 类型 含义
token String Token鉴权码

void setDNDStatus(int DNDStatus, String cookie)

  • 功能: 设置免打扰状态, 如果使用到了SDK的队列功能,则入会后需调用此接口,设置自己的为免打扰状态,防止系统再次推送自己

  • 返回值: 无

设置免打扰状态成功则触发回调setDNDStatusSuccess , 设置免打扰状态失败则触发回调setDNDStatusFail

参数 类型 含义
DNDStatus int 0代表关闭免打扰, 其它值代表开启免打扰,含义自由定义
cookie String 自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void getUserStatus(String userID, String cookie)

  • 功能: 获取企业下指定用户的在线状态

  • 返回值: 无

回调函数getUserStatusRslt

参数 类型 含义
userID String 具体用户的账户ID
cookie String 自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void getUserStatus(String cookie)

  • 功能: 将获取企业下所有用户在线状态(包括呼叫房间状态、免打扰状态)

  • 返回值: 无

回调函数getUserStatusRslt

参数 类型 含义
cookie String 自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void startUserStatusNotify(String cookie)

  • 功能: 开启用户的状态推送 。开启后,企业下所有用户状态有变化时(包括呼叫房间状态、免打扰状态),都会收到通知。开启后,用户量越大消息量越大,所以请按需开启。

  • 返回值: 无

回调函数startStatusPushRslt

参数 类型 含义
cookie String 自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void stopUserStatusNotify(String cookie)

  • 功能: 关闭用户的状态推送

  • 返回值: 无

回调函数stopStatusPushRslt

参数 类型 含义
cookie String 自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void createMeeting(boolean createPswd, String cookie)

  • 功能: 创建视频房间

  • 返回值: 无

创建房间成功则触发回调createMeetingSuccess,创建房间失败则触发createMeetingFail

参数 类型 含义
createPswd boolean 是否创建房间密码,密码由系统自动生成
cookie String 自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void destroyMeeting(int meetID, String cookie)

  • 功能: 销毁视频房间

  • 返回值: 无

回调函数destroyMeetingRslt

参数 类型 含义
meetID int 房间号)
cookie String 自定义数据(在响应消息中回传给调用者),不需要时传空字符串

String call(String calledUserID, MeetInfo meetInfo, String userExtDat, String cookie)

  • 功能: 发起呼叫,邀请用户参加视频会话, 呼叫时,对方迟迟不响应,30秒后系统自动结束呼叫

  • 返回值: 本次呼叫标识码(呼叫ID)

发起呼叫成功则触发回调callSuccess,发起呼叫失败则触发callFail

参数 类型 含义
calledUserID String 被叫用户的账户ID
meetInfo MeetInfo 房间信息,空时代表无房间信息,应由被叫创建或提供房间信息
usrExtDat String 自定义扩展参数
cookie String 自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void acceptCall(String callID, MeetInfo meetInfo, String usrExtDat, String cookie)

  • 功能: 接受对方发起的视频请求,开始进入视频会话

  • 返回值: 无

接受对方发起的视频请求成功则触发回调acceptCallSuccess,接受对方发起的视频请求失败则触发acceptCallFail

参数 类型 含义
callID String 呼叫标识码
meetInfo MeetInfo 房间信息
usrExtDat String 自定义扩展参数
cookie String 自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void rejectCall(String callID, String usrExtDat, String cookie)

  • 功能: 拒绝对方的视频请求

  • 返回值: 无

拒绝对方发起的视频请求成功则触发回调rejectCallSuccess,拒绝对方发起的视频请求失败则触发rejectCallFail

参数 类型 含义
callID String 呼叫标识码
usrExtDat String 自定义扩展参数
cookie String 自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void hangupCall(String callID, String usrExtDat, String cookie)

  • 功能: 挂断正在进行的视频呼叫或视频通话

  • 返回值: 无

挂断视频成功则触发回调hangupCallSuccess,挂断视频失败则触发hangupCallFail

参数 类型 含义
callID String 呼叫标识码
usrExtDat String 自定义扩展参数
cookie String 自定义数据(在响应消息中回传给调用者),不需要时传空字符串

String sendCmd(String targetUserId, String data)

  • 功能: 发送小块数据(50K以内),此接口不能被cancelSend, 一次性发送,不会有进度通知

  • 返回值: 分配的任务ID

回调函数sendCmdRlst

参数 类型 含义
targetUserId String 目标用户ID
data String 发送的数据,base64编码

String sendBuffer(String targetUserId, String data)

  • 功能: 发送大块数据 ,分块发送,进度通知事件sendProgress, 调用cancelSend 取消发送

  • 返回值: 分配的任务ID

回调函数sendBufferRlst

参数 类型 含义
targetUserId String 目标用户ID
data String 发送的数据,base64编码

String sendFile(String targetUserId, String fileName)

  • 功能: 发送文件 ,分块发送,进度通知事件sendProgress,调用cancelSend取消发送

  • 返回值: 分配的任务ID

回调函数sendFileRlst

参数 类型 含义
targetUserId String 目标用户ID
fileName String 需要发送的文件名

void cancelSend(String taskID)

  • 功能: 取消数据发送

  • 返回值: 无

回调函数cancelSendRlst

参数 类型 含义
taskID String 任务ID

void setMarkText(String videoFilePathName, int timestamp, String markText)

  • 功能: 添加视频打点信息

  • 返回值: 无

参数 类型 含义
videoFilePathName NSString 视频文件全路径
timestamp int 时间戳
markText NSString 打点信息

void removeMarkText(String videoFilePathName, int timestamp)

  • 功能: 移除视频打点信息

  • 返回值: 无

参数 类型 含义
videoFilePathName NSString 视频文件全路径
timestamp int 时间戳

String getAllMarks(String videoFilePathName)

  • 功能: 获取所有打点信息

  • 返回值: 打点信息

参数 类型 含义
videoFilePathName NSString 视频文件全路径

String getVideoMarkFile(String videoFilePathName)

  • 功能: 获取打点文件的绝对文件路径名

  • 返回值: 打点文件的绝对文件路径名

参数 类型 含义
videoFilePathName NSString 视频文件全路径

通知回调函数

CloudroomVideoMgrCallback是登录、呼叫、房间创建销毁、透明传输等功能的回调接口


void loginSuccess(String usrID, String cookie)

  • 功能: 登录成功响应

  • 返回值: 无

参数 类型 含义
usrID String 用户账户
cookie String 自定义用户数据

void loginFail(CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能: 登录失败响应

  • 返回值: 无

如果启用了第三方鉴权,并在鉴权失败时(sdkErr为CRVIDEOSDK_CUSTOMAUTH_FAILED),可以通过getUserAuthErrCode、getUserAuthErrDesc获取详细原因。

参数 类型 含义
sdkErr CRVIDEOSDK_ERR_DEF 操作结果代码
cookie String 自定义用户数据

void setDNDStatusSuccess(String cookie)

  • 功能: 客户端设置免打扰状态操作成功响应

  • 返回值: 无

参数 类型 含义
cookie String 自定义用户数据

void setDNDStatusFail(CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能: 客户端设置免打扰状态操作失败响应

  • 返回值: 无

参数 类型 含义
sdkErr CRVIDEOSDK_ERR_DEF 操作结果代码
cookie String 自定义用户数据

void getUserStatusRslt(CRVIDEOSDK_ERR_DEF sdkErr, ArrayList<UserStatus> userStatus, String cookie)

  • 功能: 获取企业内所有用户在线状态响应

  • 返回值: 无

参数 类型 含义
sdkErr CRVIDEOSDK_ERR_DEF 操作结果代码
usersStatus ArrayList<UserStatus> 用户在线状态信息列表
cookie String 自定义用户数据

void startStatusPushRslt(CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能: 启动用户状态推送响应

  • 返回值: 无

参数 类型 含义
sdkErr CRVIDEOSDK_ERR_DEF 操作结果代码
cookie String 自定义用户数据

void stopStatusPushRslt(CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能: 结束用户状态推送响应

  • 返回值: 无

参数 类型 含义
sdkErr CRVIDEOSDK_ERR_DEF 操作结果代码
cookie String 自定义用户数据

void notifyUserStatus(UserStatus userStatus)

  • 功能: 某个用户状态变化通知

  • 返回值: 无

参数 类型 含义
userStatus UserStatus 单个用户在线状态信息

void lineOff(CRVIDEOSDK_ERR_DEF sdkErr)

  • 功能: SDK通知自己掉线

  • 返回值: 无

void notifyTokenWillExpire()

  • 功能: 通知Token即将失效,有效时间剩余30s左右(可调用updateToken更新Token)

  • 返回值: 无

void createMeetingSuccess(MeetInfo meetInfo, String cookie)

  • 功能: 创建房间成功响应

  • 返回值: 无

参数 类型 含义
meetInfo MeetInfo 房间信息
cookie String 自定义用户数据

void createMeetingFail(CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能: 创建房间成功响应

  • 返回值: 无

参数 类型 含义
sdkErr CRVIDEOSDK_ERR_DEF 操作失败代码
cookie String 自定义用户数据

void destroyMeetingRslt(CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能: 结束房间响应

  • 返回值: 无

参数 类型 含义
sdkErr CRVIDEOSDK_ERR_DEF 操作结果代码,成功为CRVIDEOSDK_NOERR
cookie String 自定义用户数据

void callSuccess(String callID, String cookie)

  • 功能: 呼叫他人操作成功响应

  • 返回值: 无

参数 类型 含义
callID String 呼叫全局标识
meetID int 房间号
meetPswd String 房间密码
cookie String 自定义用户数据

void callFail(String callID, CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能: 呼叫他人操作失败响应

  • 返回值: 无

参数 类型 含义
callID String 呼叫全局标识
sdkErr CRVIDEOSDK_ERR_DEF 操作失败代码
cookie String 自定义用户数据

void acceptCallSuccess(String callID, String cookie)

  • 功能: 接受他人呼叫操作成功响应

  • 返回值: 无

参数 类型 含义
callID String 呼叫全局标识
cookie String 自定义用户数据

void acceptCallFail(String callID, CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能: 接受他人呼叫操作失败响应

  • 返回值: 无

参数 类型 含义
callID String 呼叫全局标识
sdkErr CRVIDEOSDK_ERR_DEF 操作失败代码
cookie String 自定义用户数据

void rejectCallSuccess(String callID, String cookie)

  • 功能: 拒绝他人的呼叫成功响应

  • 返回值: 无

参数 类型 含义
callID String 呼叫全局标识
cookie String 自定义用户数据

void rejectCallFail(String callID, CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能: 拒绝他人的呼叫失败响应

  • 返回值: 无

参数 类型 含义
callID String 呼叫全局标识
sdkErr CRVIDEOSDK_ERR_DEF 操作失败代码
cookie String 自定义用户数据

void hangupCallSuccess(String callID, String cookie)

  • 功能: 挂断呼叫操作成功响应

  • 返回值: 无

参数 类型 含义
callID String 呼叫全局标识
cookie String 自定义用户数据

void hangupCallFail(String callID, CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能: 拒绝他人呼叫操作失败响应

  • 返回值: 无

参数 类型 含义
callID String 呼叫全局标识
sdkErr CRVIDEOSDK_ERR_DEF 操作失败代码
cookie String 自定义用户数据

void notifyCallIn(String callID, MeetInfo meetInfo, String callerID, String usrExtDat)

  • 功能: 服务端通知被邀请

  • 返回值: 无

参数 类型 含义
callID String 呼叫全局标识
meetInfo MeetInfo 房间信息,空时代表无房间信息,应由被叫创建或提供房间信息
callerID String 呼叫人员的标识ID
usrExtDat String 自定义扩展参数

void notifyCallAccepted(String callID, MeetInfo meetInfo, String usrExtDat)

  • 功能: 服务端通知呼叫邀请被接受回调

  • 返回值: 无

参数 类型 含义
callID String 呼叫全局标识
meetInfo MeetInfo 房间信息,空时代表无房间信息,应由被叫创建或提供房间信息
usrExtDat String 自定义扩展参数

void notifyCallRejected(String callID, CRVIDEOSDK_ERR_DEF reason, String usrExtDat)

  • 功能: 服务端通知呼叫邀请被拒绝回调

  • 返回值: 无

参数 类型 含义
callID String 呼叫全局标识
reason CRVIDEOSDK_ERR_DEF 呼叫被对方拒绝的原因代码
usrExtDat String 自定义扩展参数

void notifyCallhangup(String callID, String usrExtDat)

  • 功能: SDK通知呼叫被挂断

  • 返回值: 无

参数 类型 含义
callID String 呼叫全局标识
usrExtDat String 自定义扩展参数

void sendCmdRlst(String taskID, CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能: 发送数据时,SDK通知发送结果

  • 返回值: 无

参数 类型 含义
taskID String 发送任务id
sdkErr CRVIDEOSDK_ERR_DEF 操作结果代码
cookie String 自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void sendBufferRlst(String taskID, CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能: 发送数据时,SDK通知发送结果

  • 返回值: 无

参数 类型 含义
taskID String 发送任务id
sdkErr CRVIDEOSDK_ERR_DEF 操作结果代码
cookie String 自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void sendFileRlst(String taskID, String fileName, CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能: 发送数据时,SDK通知发送结果

  • 返回值: 无

参数 类型 含义
taskID String 发送任务id
fileName String 文件名
sdkErr CRVIDEOSDK_ERR_DEF 操作结果代码
cookie String 自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void sendProgress(String taskID, int sendedLen, int totalLen, String cookie)

  • 功能: 发送数据时,SDK通知发送进度

  • 返回值: 无

参数 类型 含义
taskID String 发送任务id
sendedLen int 已发送的数据长度
totalLen int 需要发送的总长度
cookie String 自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void cancelSendRlst(String taskID, CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能: 取消发送操作响应

  • 返回值: 无

参数 类型 含义
taskID String 发送任务id
sdkErr CRVIDEOSDK_ERR_DEF 操作结果代码
cookie String 自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void notifyCmdData(String sourceUserId, String data)

  • 功能: SDK通知收到小块数据

  • 返回值: 无

参数 类型 含义
sourceUserId String 数据来源
data String 数组数据

void notifyBufferData(String sourceUserId, String data)

  • 功能: SDK通知收到大块数据

  • 返回值: 无

参数 类型 含义
sourceUserId String 数据来源
data String 数组数据

void notifyFileData(String sourceUserId, String tmpFile, String orgFileName)

  • 功能: SDK通知收到文件数据

  • 返回值: 无

参数 类型 含义
sourceUserId String 数据来源
tmpFile String 临时文件,不需要时,请移除或删除对应文件
orgFileName String 源始文件名

void notifyCancelSend(String taskID)

  • 功能: 通知发来的数据/文件被取消

  • 返回值: 无

参数 类型 含义
taskID 发送的任务ID 数据来源

String invite(String invitedUserID, String usrExtDat, String cookie)

  • 功能:发送邀请

  • 返回值:返回inviteID(每个邀请对应的唯一ID)

  • 参数
参数 类型 含义
inviteeUserID String 受邀者用户ID
usrExtDat String 用户扩展数据
cookie String 详细介绍见关键词

void acceptInvite(String inviteID, String usrExtDat, String cookie)

  • 功能:接受对方的邀请
  • 参数
参数 类型 含义
inviteID String 邀请ID
usrExtDat String 用户扩展数据
cookie String 详细介绍见关键词

void rejectInvite(String inviteID, String usrExtDat, String cookie)

  • 功能:拒绝对方的邀请
  • 参数
参数 类型 含义
inviteID String 邀请ID
usrExtDat String 用户扩展数据
cookie String 详细介绍见关键词

void cancelInvite(String inviteID, String usrExtDat, String cookie)

  • 功能:取消自己发送的邀请
  • 参数
参数 类型 含义
inviteID String 邀请ID
usrExtDat String 用户扩展数据
cookie String 详细介绍见关键词

void inviteSuccess(String inviteID, String cookie)

  • 功能:发送邀请成功
  • 参数
参数 类型 含义
inviteID String 邀请ID
cookie String 详细介绍见关键词

void inviteFail(String inviteID, CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能:发送邀请失败
  • 参数
参数 类型 含义
inviteID String 邀请ID
sdkErr CRVIDEOSDK_ERR_DEF 操作失败代码,定义见ERR_DEF
cookie String 详细介绍见关键词

void cancelInviteSuccess(String inviteID, String cookie)

  • 功能:取消自己发送的邀请成功
  • 参数
参数 类型 含义
inviteID String 邀请ID
cookie String 详细介绍见关键词

void cancelInviteFail(String inviteID, CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能:取消自己发送的邀请失败
  • 参数
参数 类型 含义
inviteID String 邀请ID
sdkErr CRVIDEOSDK_ERR_DEF 操作失败代码,定义见ERR_DEF
cookie String 详细介绍见关键词

void acceptInviteSuccess(String inviteID, String cookie)

  • 功能:接受对方的邀请成功
  • 参数
参数 类型 含义
inviteID String 邀请ID
cookie String 详细介绍见关键词

void acceptInviteFail(String inviteID, CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能:接受对方的邀请失败
  • 参数
参数 类型 含义
inviteID String 邀请ID
sdkErr CRVIDEOSDK_ERR_DEF 操作失败代码,定义见ERR_DEF
cookie String 详细介绍见关键词

void rejectInviteSuccess(String inviteID, String cookie)

  • 功能:拒绝对方的邀请成功
  • 参数
参数 类型 含义
inviteID String 邀请ID
cookie String 详细介绍见关键词

void rejectInviteFail(String inviteID, CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能:拒绝对方的邀请失败
  • 参数
参数 类型 含义
inviteID String 邀请ID
sdkErr CRVIDEOSDK_ERR_DEF 操作失败代码,定义见ERR_DEF
cookie String 详细介绍见关键词

void notifyInviteIn(String inviteID, String inviterUsrID, String usrExtDat)

  • 功能:通知有人邀请
  • 参数
参数 类型 含义
inviteID String 邀请ID
inviterUsrID String 邀请者用户ID
usrExtDat String 用户扩展数据

void notifyInviteAccepted(String inviteID, String usrExtDat)

  • 功能:通知邀请被接受
  • 参数
参数 类型 含义
inviteID String 邀请ID
usrExtDat String 用户扩展数据

void notifyInviteRejected(String inviteID, CRVIDEOSDK_ERR_DEF reason, String usrExtDat)

  • 功能:通知邀请被拒绝
  • 参数
参数 类型 含义
inviteID String 邀请ID
reason CRVIDEOSDK_ERR_DEF 邀请被拒绝原因,定义见ERR_DEF
usrExtDat String 用户扩展数据

void notifyInviteCanceled(String inviteID, CRVIDEOSDK_ERR_DEF reason, String usrExtDat)

  • 功能:通知邀请被取消
  • 参数
参数 类型 含义
inviteID String 邀请ID
reason CRVIDEOSDK_ERR_DEF 邀请被取消原因,定义见ERR_DEF
usrExtDat String 用户扩展数据

3. 视频房间组件(CloudroomVideoMeeting)的接口函数

CloudroomVideoMeeting 是房间核心控件,实现通话建立、音频采集播入、视频采集编解码、屏幕共享、录制、影音播放等功能,整个程序的生命过程中只能有一个实例


void registerCallBack(CloudroomVideoCallback callBack)

  • 功能: 注册监听回调

  • 返回值: 无

参数 类型 含义
callBack CloudroomVideoCallback 回调对象

void unregisterCallBack(CloudroomVideoCallback callBack)

  • 功能: 反注册监听回调

  • 返回值: 无

参数 类型 含义
callBack CloudroomVideoCallback 反注册的回调对象

void enterMeeting(int meetID, String pswd, String userID, String nikeName)

  • 功能: 使用房间ID和密码(可为空)进入指定的视频房间

  • 返回值: 无

回调函数enterMeetingRslt

参数 类型 含义
meetID int 视频房间ID
pswd String 本次房间中的密码
userID String 用户账号
nickName String 用户昵称

void exitMeeting()

  • 功能: 离开房间 ,调用此接口离开会话时,其他会话用户会收到userLeftMeeting的消息通知

  • 返回值: 无

回调函数userLeftMeeting

ArrayList<MemberInfo> getAllMembers()

  • 功能: 获取所有用户的信息

  • 返回值: ArrayList<MemberInfo>-所有用户的信息

MemberInfo getMemberInfo(String userId)

  • 功能: 获取某个用户的信息

  • 返回值: MemberInfo - 用户的信息

参数 类型 含义
userId String 用户ID

String getNickName(String userId)

  • 功能: 获取某个用户的昵称

  • 返回值: 用户的昵称

参数 类型 含义
userId String 用户ID

void setNickName(String userID, String nickName)

  • 功能: 设置某个用户的昵称, 调用此接口如果设置成功,其他会话用户会收到 notifyNickNameChanged

  • 返回值: 无

回调函数setNickNameRsp

参数 类型 含义
userId String 用户ID
nickname String 新的用户昵称

boolean isUserInMeeting(String userID)

  • 功能: 判断某个用户是否在房间中

  • 返回值: 用户是否在房间中

参数 类型 含义
userId String 用户ID

void setAudioCfg(AudioCfg cfg)

  • 功能: 设置麦克风音频参数

  • 返回值: 无

参数 类型 含义
cfg AudioCfg 音频参数

AudioCfg getAudioCfg()

  • 功能: 获取音频参数

  • 返回值: AudioCfg-音频参数

boolean setMicVolumeScaling(int scale)

  • 功能: 设置麦克风音量增益

  • 返回值: 是否成功

参数 类型 含义
scale int 麦克风音量增益(范围:1-20)

int getMicEnergy(String userID)

  • 功能: 获取用户说话声音大小

  • 返回值: 音量大小(0~10)

参数 类型 含义
userID String 用户的ID

void openMic(String userID)

  • 功能: 打开用户的麦克风, 打开麦克风会触发音频状态变化的回调函数audioStatusChanged 新状态参数先会进入到AOPENING状态, 等服务器处理后才会进入AOPEN状态,此时说话才能被采集到

  • 返回值: 无

回调函数audioStatusChanged

参数 类型 含义
userID String 用户的ID

void closeMic(String userID)

  • 功能: 关闭用户的麦克风 ,关麦克风会触发音频状态变化的回调函数audioStatusChanged 新状态参数会变为ACLOSE 关麦操作是立即生效的,会立即停止采集

  • 返回值: 无

回调函数audioStatusChanged

参数 类型 含义
userID String 用户的ID

ASTATUS getAudioStatus(String userID)

  • 功能: 获取用户的麦状态

  • 返回值: ASTATUS-麦克风设备状态

参数 类型 含义
userID String 用户的ID

int getMicVolume()

  • 功能: 获取麦克风音量大小 ,音量范围类型 0-255

  • 返回值: 麦克风音量大小

boolean setSpeakerVolume(int level)

  • 功能: 设置本地扬声器音量

  • 返回值: 是否成功

参数 类型 含义
level int 本地扬声器音量

int getSpeakerVolume()

  • 功能: 获取本地扬声器音量 ,读写属性,音量等级类型 0-255

  • 返回值: 本地扬声器音量

void setSpeakerMute(boolean bMute)

  • 功能: 设置播放是否静音

  • 返回值: 是否静音

参数 类型 含义
bMute boolean 播放是否静音

boolean getSpeakerMute()

  • 功能: 获取播放是否静音

  • 返回值: 是否静音

boolean setSpeakerOut(boolean speakerOut)

  • 功能: 设置外放状态

  • 返回值: 是否成功

参数 类型 含义
speakerOut boolean 是否外放

boolean getSpeakerOut()

  • 功能: 获取外放状态

  • 返回值: 是否外放

void setAllAudioClose()

  • 功能: 关闭所有用户的麦克风 , 调用此接口后会话内其他人的麦克风会关闭,同时收到消息audioStatusChanged
  • 返回值: 无

回调函数audioStatusChanged

ArrayList<UsrVideoInfo> getAllVideoInfo(String userId)

  • 功能: 获取用户所有的摄像头信息

  • 返回值: ArrayList<UsrVideoInfo>-用户所有的摄像头信息

参数 类型 含义
userID String 用户ID

short createCustomVideoDev(String camName, VIDEO_FORMAT pixFmt, int width, int height, String extParams)

  • 功能: 创建自定义摄像头(sdk最大支持5个), 添加成功后与本地摄像头处理一致;getAllVideoInfo接口可以识别摄像头类型

  • 返回值: 返回值小于0, 则代表创建失败, 返回值大于等于0, 则代表摄像头编号

参数 类型 含义
camName String 摄像头名称
pixFmt VIDEO_FORMAT 图像格式
width int 图像宽度
height int 图像高度
extParams String 扩展参数,没有为空

void destroyCustomVideoDev(short videoID)

  • 功能: 消毁自定义摄像头

  • 返回值: 无

参数 类型 含义
videoID short 摄像头id (createCustomVideoDev返回值)

void inputCustomVideoDat(short videoID, byte[] data, int timeStamp)

  • 功能: 输入摄像头图像数据

  • 返回值: 无

参数 类型 含义
videoID short 摄像头id (createCustomVideoDev返回值)
data byte[] 图像数据(请保证格式、和尺寸与摄像头匹配)
timeStamp int 保留字段,请填0

void inputCustomVideoDat(short videoID, byte[] data, int timeStamp)

  • 功能: 输入摄像头图像数据

  • 返回值: 无

参数 类型 含义
videoID short 摄像头id (createCustomVideoDev返回值)
data byte[] 图像数据(请保证格式、和尺寸与摄像头匹配)
timeStamp int 保留字段,请填0

void setVideoCfg(VideoCfg cfg)

  • 功能: 设置摄像头参数

  • 返回值: 无

参数 类型 含义
cfg VideoCfg 摄像头参数

VideoCfg getVideoCfg()

  • 功能: 获取设置的摄像头参数

  • 返回值: VideoCfg](TypeDefinitions.md#VideoCfg)-摄像头参数

void setLocVideoAttributes(short videoID, VideoAttributes attributes)

  • 功能: 设置某个摄像头私有参数

  • 返回值: 无

参数 类型 含义
videoID short 本地摄像头id
attributes VideoAttributes 摄像头私有参数,

VideoAttributes getLocVideoAttributes(short videoID)

  • 功能: 获取某个摄像头私有参数

  • 返回值: VideoAttributes-摄像头私有参数

参数 类型 含义
videoID short 本地摄像头id

ArrayList<UsrVideoId> getWatchableVideos()

  • 功能: 获取房间内所有可观看的摄像头

  • 返回值: ArrayList<UsrVideoId>-房间内所有可观看的摄像头

void openVideo(String userID)

  • 功能: 打开用户的摄像头,以便本地、远端显示视频图像

  • 返回值: 无

回调函数openVideoRslt, 调用打开和关闭麦克风接口都会触发对应用户的回调videoStatusChanged

参数 类型 含义
userID String 用户的ID

void closeVideo(String userID)

  • 功能: 关闭用户的摄像头 ,

  • 返回值: 无

调用打开和关闭麦克风接口都会触发对应用户的回调videoStatusChanged

参数 类型 含义
userID String 用户的ID

VSTATUS getVideoStatus(String userID)

  • 功能: 获取用户的摄像头状态

  • 返回值: VSTATUS-麦克风摄像头状态

参数 类型 含义
userID String 用户的ID

short getDefaultVideo(String userID)

  • 功能: 获取指定用户的默认摄像头 ,如果用户没有摄像头,返回0

  • 返回值: 摄像头ID

参数 类型 含义
userID String 用户的ID

void setDefaultVideo(String userID, short videoID)

  • 功能: 设置默认的摄像头 ,videoID 应该从getAllVideoInfo返回值中获取

  • 返回值: 无

参数 类型 含义
userID String 用户的ID
videoID short 摄像头ID
参数 类型 含义
usrVideoID UsrVideoId 用户摄像头ID

String getLocalVideoParams(short videoID)

  • 功能: 获取指定本地摄像头参数

  • 返回值: 指定本地摄像头参数,json格式,如{"摄像头参数名称":[可用参数列表]}

参数 类型 含义
videoID short 摄像头ID

void setLocalVideoParam(short videoID, String param, String value)

  • 功能: 设置指定本地摄像头参数

  • 返回值: 指定本地摄像头参数,json格式,如{"摄像头参数名称":[可用参数列表]}

参数 类型 含义
videoID short 摄像头ID
param String 摄像头参数名称
value String 摄像头参数值

boolean isScreenShareStarted()

  • 功能: 获取屏幕共享是否已开启

  • 返回值: 屏幕共享是否已开启

string getScreenShareCfg()

  • 功能: 获取屏幕共享配置

  • 返回值:屏幕共享配置,参见ScreenShareCfg

void setScreenShareCfg(ScreenShareCfg cfg)

  • 功能: 设置屏幕共享配置

  • 返回值:无

参数 类型 含义
string ScreenShareCfg 屏幕共享配置

void startScreenShare()

  • 功能: 开启屏幕共享

  • 返回值:无

  • 注意事项:

    + 共享屏幕需要相应授权,请添加下面权限申请界面声明到主配置文件
	<activity
	  android:name="com.cloudroom.screencapture.PermissionActivity"
	  android:configChanges="orientation|uiMode|screenLayout|screenSize|smallestScreenSize|locale|fontScale|keyboard|keyboardHidden|navigation"
	  android:launchMode="singleTop" 
	  android:screenOrientation="sensor" >
	</activity>

void stopScreenShare()

  • 功能: 停止屏幕共享

  • 返回值:无

void startScreenMark()

  • 功能: 开始屏幕共享标注

  • 返回值: 无

void stopScreenMark()

  • 功能: 停止屏幕共享标注

  • 返回值: 无

void enableOtherMark(boolean enable)

  • 功能:允许他人标注屏幕

  • 返回值:无

  • 参数:

参数 类型 含义
enable boolean 是否允许他人标注

boolean isEnableOtherMark()

  • 功能:获取是否允许他人标注屏幕

  • 返回值: 是否允许他人标注

  • 参数:

CRVIDEOSDK_ERR_DEF createLocMixer(String mixerID, MixerCfg mixerCfg, ArrayList< MixerContent> MixerContent)

  • 功能: 创建本地混图器(用于本地录制、本地推流),当需要多个不同内容的录制、或直播时,就要创建多个混图器 。混图器开消比较大,多个同样图像的输出应该有一个混图器加上多个输出实现

  • 返回值: CRVIDEOSDK_ERR_DEF-操作结果码

参数 类型 含义
mixerID String 混图器唯一标识
mixerCfg MixerCfg 混图器规格配置
mixerContents ArrayList<MixerContent> 混图器内容配置

CRVIDEOSDK_ERR_DEF updateLocMixerContent(String mixerID, ArrayList< MixerContent> MixerContents>

参数 类型 含义
mixerID String 混图器唯一标识
MixerContents ArrayList<MixerContent> 混图器内容配置

void destroyLocMixer(String mixerID)

  • 功能: 消毁本地混图器 , 消毁本地混图器后, 基于此混图器的录制输出、直播推流输出将自动结束

  • 返回值: 无

参数 类型 含义
mixerID String 混图器唯一标识

MIXER_STATE getLocMixerState(String mixerID)

  • 功能: 获取本地混图器状态

  • 返回值: MIXER_STATE-混图器状态

参数 类型 含义
mixerID String 混图器唯一标识

CRVIDEOSDK_ERR_DEF addLocMixerOutput(String mixerID, ArrayList<MixerOutPutCfg> mixerOutput)

  • 功能: 开启本地录制、开启直播推流

  • 返回值: CRVIDEOSDK_ERR_DEF-操作结果码

参数 类型 含义
mixerID String 混图器唯一标识
mixerOutput ArrayList<MixerOutPutCfg> 本地输出对象
  • 注意事项:

    • 可以一次添加多个输出,也可以依据业务需要稍后再添加新的输出
    • 多个输出不能同名、或同一url
    • 每个输出,有独立的信息通知,请见事件locMixerOutputInfo
    • 如果输出异常时,将自动停止, 停止本地录制、直播推流

void rmLocMixerOutput(String mixerID, ArrayList<String> nameOrUrls)

  • 功能: 停止本地录制、直播推流 , 所有输出停止后并不会消毁混图器,如果混图器不再需要请手工消毁

  • 返回值: 无

参数 类型 含义
mixerID String 混图器唯一标识
nameOrUrls ArrayList<String> 要停止的录制文件名或直播url列表

ArrayList<RecordFileShow> getAllRecordFiles()

  • 功能: 取得所有录制文件信息

  • 返回值: ArrayList<义RecordFileShow>所有录制文件信息

int addFileToRecordMgr(String fileName, String filePath)

  • 功能: 添加本地文件到录制文件管理中 , 第三方录制文件调用此接口后可进行本地回放和上传到视频服务器上,和自己录制的文件一样可以正常

  • 返回值: -1:本地文件不存在,0:成功,1:文件已经被添加过

参数 类型 含义
filename String 文件名,不含路径
filePath String 文件路径,不含文件名

void removeFromFileMgr(String fileName)

  • 功能: 删除本地的录制文件,上传中的文件会被取消上传 , 已上传完成的服务器文件不受影响

  • 返回值: 无

参数 类型 含义
filename String 文件名,不含路径

void uploadRecordFile(String fileName)

  • 功能: 上传文件

  • 返回值: 无

参数 类型 含义
filename String 文件名,不含路径

void uploadRecordFile(String fileName, String svrPathFileName)

  • 功能: 上传文件到服务器指定位置

  • 返回值: 无

参数 类型 含义
filename String 文件名,不含路径
svrPathFileName String 文件存放在服务器上的相对路径文件名(如/AA/BB/CC/test.mp4)

void cancelUploadRecordFile(String filename)

  • 功能: 取消上传中的录制文件

  • 返回值: 无

参数 类型 含义
filename String 文件名,不含路径

void playbackRecordFile(String filename)

  • 功能: 回放录制文件 , 可创建影音控件显示录制内容,功能同接口startPlayMedia,如果录制文件被加密,则只能使用playbackRecordFile来回放

  • 返回值: 无

参数 类型 含义
filename String 文件名,不含路径

CRVIDEOSDK_ERR_DEF startSvrMixer(Map< String, MixerCfg> mutiMixerCfgs, Map< String, ArrayList< MixerContent>> mutiMixerContents, Map<String, ArrayList<MixerOutPutCfg>> mutiMixerOutputs)

参数 类型 含义
mutiMixerCfgs Map<String, MixerCfg> 服务器混图配置
mutiMixerContents Map<String, ArrayList<MixerContent>> 服务器混图内容
mutiMixerOutputs ArrayList<MixerOutPutCfg>> 服务器输出
  • 注意事项:

    • 启动云端功能有一定耗时,请关注混图器的状态变化事件svrMixerStateChanged
    • 每个输出有私有的状态变化事件svrMixerOutputInfo

CRVIDEOSDK_ERR_DEF updateSvrMixerContent(Map< String, ArrayList< MixerContent> > mutiMixerContents)

  • 功能: 更新云端录制、云端直播内容

  • 返回值: CRVIDEOSDK_ERR_DEF-操作结果

参数 类型 含义
mutiMixerContents Map<String, ArrayList<MixerContent> > 服务器混图内容

void stopSvrMixer()

  • 注意事项:

    • 停止有一定耗时,请关注混图器的状态变化事件svrMixerStateChanged*
    • 每个输出有私有的状态变化事件svrMixerOutputInfo*

MIXER_STATE getSvrMixerState()

  • 功能: 获取云端录制、云端直播状态

  • 返回值: MIXER_STATE

void switchToPage(MAIN_PAGE main, SubPage sub)

  • 功能: 功能切换

  • 返回值: 无

参数 类型 含义
main MAIN_PAGE 功能类型
sub SubPage 子页面标识(如创建白板时返回的boardID)

MAIN_PAGE getCurrentMainPage()

  • 功能: 获取当前主功能区

  • 返回值: MAIN_PAGE-当前主功能区

SubPage getCurrentSubPage()

  • 功能: 获取当前子页面

  • 返回值: SubPage-当前子页面

VIDEO_WALL_MODE getVideoWallMode()

  • 功能: 获取视频墙当前分屏模式

  • 返回值: VIDEO_WALL_MODE-分屏模式

void setVideoWallMode(VIDEO_WALL_MODE wallMode)

  • 功能: 设置视频墙分屏模式

  • 返回值: 无

参数 类型 含义
videoWallMode VIDEO_WALL_MODE 分屏模式

void setMainVideo(String userID)

  • 功能: 设置当前哪个用户为主视频

  • 返回值: 无

参数 类型 含义
userID String 用户ID

String getMainVideo()

  • 功能: 获取当前哪个用户为主视频

  • 返回值: 用户ID

SubPage createBoard(String title, int width, int height, int pageCount)

  • 功能: 创建电子白板

  • 返回值: SubPage-白板标识

参数 类型 含义
title String 白板名称
width int 白板宽度
height int 白板高度
pageCount int 白板内有多个页(一般空白板1页,文档白板为实际页数)
  • 注意事项:

    • 其他参会者会收到notifyCreateBoard事件
    • 后台会记录下白板数据,新入会者会收到notifyInitBoards事件
    • 创建完白板后,一定要及尽快调用initBoardPageDat初始化各页数据
    • 如果需要所有参会者同步切到此白板,请调用switchToPage

void closeBoard(SubPage boardID)

  • 功能: 关闭电子白板 , 其他参会者将收到notifyCloseBoard事件;同时后台会移除对应白板的所有信息
  • 返回值: 无

回调函数notifyCloseBoard

参数 类型 含义
boardID SubPage 白板标识

void initBoardPageDat(SubPage boardID, int boardPageNo, String imgID, String elemetDatas)

  • 功能: 初始化白板指定页数据
  • 返回值: 无
参数 类型 含义
boardID SubPage 白板标识
boardPageNo int 白板第几页(0:代表第一页)
imgID String 白板的背景图片标识(空代表无背影图)
elemetDatas String 白板的初始图元(空代表无图元,一般在导入历史文件才用到),白板图元数据Json数组,详见定义BoardElement
  • 注意事项:

    • imgID非空时, 代表背景的图片ID。img来源请参见getNetDiskDocFilePageInfo
    • 其他参会者将收到notifyInitBoardPageDat事件
    • 后台会记录下白板的页数据,在新用户入会时,也会收到notifyInitBoardPageDat事件

String createElementID()

  • 功能: 创建图元标识
  • 返回值: elementID图元标识

void addBoardElement(SubPage boardID, int boardPageNo, String element)

  • 功能: 添加图元信息 , 其他参会者会收到:notifyAddBoardElement事件同时后台会保存图元,新入会者会在notifyInitBoardPageDat中得到这些图元
  • 返回值: 无
参数 类型 含义
boardID SubPage 白板标识
boardPageNo int 白板第几页(0:代表第一页)
element String 图元信息,Json数据格式详见定义BoardElement

void modifyBoardElement(SubPage boardID, int boardPageNo, String element)

  • 功能: 修改图元信息 , 其他参会者会收到:notifyModifyBoardElement事件,同时后台会覆盖对应图元的数据,新入会者会在notifyInitBoardPageDat中得到这些图元
  • 返回值: 无
参数 类型 含义
boardID SubPage 白板标识
boardPageNo int 白板第几页(0:代表第一页)
element String 图元信息,Json数据格式详见定义BoardElement

void delBoardElement(SubPage boardID, int boardPageNo, ArrayList<String> elementIDs)

  • 功能: 删除图元
  • 返回值: 无
参数 类型 含义
boardID SubPage 白板标识
boardPageNo int 白板第几页(0:代表第一页)
elementIDs ArrayList<String> 图元id列表

void setMouseHotSpot(SubPage boardID, int boardPageNo, int x, int y)

  • 功能: 设置鼠标热点信息
  • 返回值: 无
参数 类型 含义
boardID SubPage 白板标识
boardPageNo int 白板第几页(0:代表第一页)
x int 屏幕横坐标
y int 屏幕纵坐标

void setBoardCurPageNo([SubPage](TypeDefinitions.md#SubPage) boardID, int boardPageNo, int pagePos1, int pagePos2)

  • 功能: 白板翻页
  • 返回值: 无
参数 类型 含义
boardID SubPage 白板标识
boardPageNo int 白板第几页(0:代表第一页)
pagePos1 int 私有扩展参数1(如可用于页内x方向滚动位置)
pagePos2 int 私有扩展参数2(如可用于页内y方向滚动位置)

void listNetDiskDocFile(String dir)

  • 功能: 查询服务器指定目录下的内容(子目录名、上传的文档源文件及文档转换状态)
  • 返回值: 无

回调函数listNetDiskDocFileRslt

参数 类型 含义
dir String 要查询的目录,空或"/"时,代表查询根目录下的内容

void uploadDocFileToNetDisk(String svrPathFileName, String locPathFileName)

  • 功能: 上传并转换文档

  • 返回值: 无

参数 类型 含义
svrPathFileName String 服务器的路径文件名,包含目录时,服务器自动创建对应目录
locPathFileName String 要上传文件的本地的路径文件名
  • 注意事项:

    • 支持的文件格式有:doc,docx, ppt, pptx, pps, ppsx, xls, xlsx, et, ett, wps, wpt, dps, pdf, txt, log, ini, bmp, png, jpg, jpeg;

void downloadNetDiskDocFile(String svrPathFileName, String locPathFileName)

  • 功能: 下载源始文档

  • 返回值: 无

参数 类型 含义
svrPathFileName String 服务器的路径文件名,包含目录时,服务器自动创建对应目录
locPathFileName String 要上传文件的本地的路径文件名

void cancelTransforNetDiskDocFile(String svrPathFileName)

  • 功能: 取消文档传输

  • 返回值: 无

参数 类型 含义
svrPathFileName String 服务器的路径文件名,包含目录时,服务器自动创建对应目录

void deleteNetDiskDocFile(String svrPathFileName)

  • 功能: 删除文档

  • 返回值: 无

回调函数deleteNetDiskDocFileRslt(删除结果)

参数 类型 含义
svrPathFileName String 服务器的路径文件名,包含目录时,服务器自动创建对应目录

void getNetDiskDocFilePageInfo(String svrPathFileName)

  • 功能: 获取文档的转换信息

  • 返回值: 无

回调函数getNetDiskDocFilePageInfoRslt(获取结果)

参数 类型 含义
svrPathFileName String 服务器的路径文件名,包含目录时,服务器自动创建对应目录
  • 注意事项:

    • 获取到的文档转换后的信息后, 就可以创建白板createBoard, 然后为白板初始化文档内容

void downloadNetDiskDocFilePage(String pagePathFileName, String locPathFileName)

  • 功能: 下载文档转换后的页文件

  • 返回值: 无

参数 类型 含义
pagePathFileName String 页文件在服务器的路径文件名
locPathFileName String 文件下载后存放的本地的路径文件名,目录不存在时自动创建
  • 注意事项:

    • 页文件格式: 6字节保留,4字节图像格式(2:jpg, 4:png),4字节图像内容长度,图像内容

void setMediaCfg(VideoCfg cfg)

  • 功能: 配置远程影音共享时,图像质量参数

  • 返回值: 无

参数 类型 含义
cfg VideoCfg 影音共享配置参数

VideoCfg getMediaCfg()

  • 功能: 获取影音共享配置参数

  • 返回值: VideoCfg-影音共享配置参数

void startPlayMedia(String filename, boolean bLocPlay)

  • 功能: 播放影音文件

  • 返回值: 无

参数 类型 含义
filename String 文件名,全路径
bLocPlay int 是否仅仅本地播放(true:本地播放,false:房间内播放)

void startPlayMedia(String filename, int bLocPlay, boolean bPauseWhenFinished)

  • 功能: 播放影音文件

  • 返回值: 无

播放视频则触发回调notifyMediaOpened, 停止播放则触发回调notifyMediaStop

参数 类型 含义
filename String 文件名,全路径
bLocPlay int 是否仅仅本地播放(1:本地播放,0:房间内播放)
bPauseWhenFinished boolean 是否停在最后一帧, 如果播放成功,其他人收到notifyMediaStart,如果播放失败,请关注通知事件notifyMediaStop

void pausePlayMedia(boolean bPause)

  • 功能: 暂停播放影音

  • 返回值: 无

参数 类型 含义
bPause boolean 是否暂停

void stopPlayMedia()

  • 功能: 停止影音播放

  • 返回值: 无

回调函数notifyMediaStop

void setMediaPlayPos(int pos)

  • 功能: 设置播放进度

  • 返回值: 无

参数 类型 含义
pos int 设置播放位置,单位:毫秒

ArrayList<String> getAllFilesInMediaPath()

  • 功能: 取得影音文件夹下的所有可播放文件

  • 返回值: 文件名列表

参数 类型 含义
pos int 设置播放位置,单位:毫秒
  • 注意事项:

    • 影音文件夹位于方法init的第二个参数sdkFilePath,sdk会在此文件中建立media的子文件夹,即为影音文件夹

MediaInfo getMediaInfo()

  • 功能: 正在播放的影音信息

  • 返回值: MediaInfo-影音文件信息

void setMediaVolume(int level)

  • 功能: 设置影音播放的音量

  • 返回值: 无

参数 类型 含义
level int 影音播放的音量,类型范围(0-255)

int getMediaVolume()

  • 功能: 读取影音播放的音量

  • 返回值: 影音播放的音量,类型范围(0-255)

参数 类型 含义
userID String 用户id

void sendMeetingCustomMsg(String text, String cookie)

  • 功能:发送房间内自定义广播消息

  • 返回值:无

  • 参数
参数 类型 含义
text String 用户自定义消息
cookie String 可为空字符串。详细介绍见关键词

回调函数sendMeetingCustomMsgRlst

void setPicResource(String resID, Bitmap bitmap)

  • 功能: 将图片资源设置给sdk

  • 返回值: 无

参数 类型 含义
resID String 资源唯一标识
bitmap Bitmap 图片对象,为空代表移除资源

void setPicResource(String resID, String picFile)

  • 功能: 将图片资源设置给sdk

  • 返回值: 无

参数 类型 含义
resID String 资源唯一标识
picFile Bitmap 资源文件路径,为空代表移除资源

boolean setPicResource(String resID, View view)

  • 功能: 将图片资源设置给sdk

  • 返回值: 无

参数 类型 含义
resID String 资源唯一标识
view View 控件对象,为空代表移除资源(注:不能是opengl显示控件,必须是在界面已经显示的控件)

boolean setPicResource(String resID, View view, Size size)

  • 功能: 将图片资源设置给sdk

  • 返回值: 无

参数 类型 含义
resID String 资源唯一标识;
view Bitmap 控件对象,为空代表移除资源(注:不能是opengl显示控件,必须是在界面已经显示的控件)
size Size size 图片大小

通知回调函数

CloudroomVideoCallback是通话建立、音频采集播入、视频采集编解码、屏幕共享、录制、影音播放等功能的回调接口


void enterMeetingRslt(CRVIDEOSDK_ERR_DEF sdkErr)

  • 功能: 自己进入房间的结果

  • 返回值: 无

参数 类型 含义
sdkErr CRVIDEOSDK_ERR_DEF 操作结果码
cookie String 自定义用户数据

void stopMeetingRslt(CRVIDEOSDK_ERR_DEF sdkErr)

  • 功能: 通知结束视频房间结果

  • 返回值: 无

参数 类型 含义
sdkErr CRVIDEOSDK_ERR_DEF 操作结果码
cookie String 自定义用户数据

void setNickNameRsp(CRVIDEOSDK_ERR_DEF sdkErr, String userid, String newName)

  • 功能: 设置昵称的结果

  • 返回值: 无

参数 类型 含义
sdkErr CRVIDEOSDK_ERR_DEF 操作结果码
userid String 用户id
newName String 新的昵称

void notifyNickNameChanged(String userID, String oldName, String newName)

  • 功能: 某用户改变了昵称(改昵称的用户自身不会接收到此通知)

  • 返回值: 无

参数 类型 含义
userID String 改变昵称的某用户id
oldName String 改变昵称的某用户昵称(改变之前的昵称)
newName String 改变昵称的某用户昵称(改变之后的昵称)

void userEnterMeeting(String userID)

  • 功能: 某用户进入了房间

  • 返回值: 无

参数 类型 含义
userID String 进入房间的用户id

void userLeftMeeting(String userID)

  • 功能: 某用户离开了房间

  • 返回值: 无

参数 类型 含义
userID String 离开房间的用户id

void meetingDropped()

  • 功能: 通知从房间里掉线了,收到该通知后可以调用enterMeeting尝试重新入会

  • 返回值: 无

  • 注意事项:

    • 如果用到了呼叫队列,掉线后不重新入会就必须调用hangupCall释放本次呼叫

void meetingStoped()

  • 功能: 房间已被结束

  • 返回值: 无

void netStateChanged(int level)

  • 功能: 网络变化通知

  • 返回值: 无

参数 类型 含义
level int 网络状况等级(0~10,10分为最佳网络)

void audioDevChanged()

  • 功能: 通知本地音频设备有变化

  • 返回值: 无

void audioStatusChanged(String userID, ASTATUS oldStatus, ASTATUS newStatus)

  • 功能: 通知音频状态变化

  • 返回值: 无

参数 类型 含义
userID String 房间中设备的所有者
oldStatus ASTATUS 旧状态
newStatus ASTATUS 新状态

void micEnergyUpdate( String userID, int oldLevel, int newLevel)

  • 功能: 通知用户的说话声音强度更新

  • 返回值: 无

参数 类型 含义
userID String 用户标识ID
oldLevel int 原来的说话声音强度(0~10)
newLevel int 现在的说话声音强度(0~10)

void openVideoRslt(String devID, boolean bSuccess)

  • 功能: 打开摄像头设备操作结果

  • 返回值: 无

参数 类型 含义
devID String 摄像头设备ID
bSuccess boolean 是否成功

void videoStatusChanged(String userID, VSTATUS oldStatus, VSTATUS newStatus)

  • 功能: 视频状态变化

  • 返回值: 无

参数 类型 含义
userID String 房间中设备的所有者
oldStatus VSTATUS 旧状态
newStatus VSTATUS 新状态

void videoDevChanged(String userID)

  • 功能: 通知用户的视频设备有变化

  • 返回值: 无

参数 类型 含义
String String 设备变化的用户ID

void notifyVideoData(UsrVideoId usrVideoID, long frameTime)

  • 功能: 通知用户有新的视频数据

  • 返回值: 无

参数 类型 含义
usrVideoID UsrVideoId 用户摄像头标识ID
frmTime long 图像的创建时间,可用作时间戳

void defVideoChanged(String userID, short videoID)

  • 功能: 通知用户的视频默认设备有变化

  • 返回值: 无

参数 类型 含义
userID String 设备变化的用户ID

void uploadRecordFileErr(String fileName, int err)

  • 功能: 上传录制文件错误通知

  • 返回值: 无

参数 类型 含义
fileName String 上传文件名
err int 操作失败代码

void cancelUploadRecordFileErr(int sdkErr)

  • 功能: 取消上传错误通知

  • 返回值: 无

参数 类型 含义
sdkErr int 操作失败代码

void locMixerStateChanged(String mixerID, MIXER_STATE state)

  • 功能: 本地混图器状态变化通知

  • 返回值: 无

参数 类型 含义
mixerID String 混图器唯一标识
state MIXER_STATE 状态

void locMixerOutputInfo(String mixerID, String nameOrUrl, MixerOutputInfo outputInfo)

  • 功能: 本地录制文件、本地直播信息通知

  • 返回值: 无

参数 类型 含义
mixerID String 混图器唯一标识
nameOrUrl String 录像名称、或直播url
outputInfo MixerOutputInfo 通知内容

void svrMixerStateChanged(MIXER_STATE state, int err,String operatorID)

  • 功能: 云端录制、云端直播状态变化通知

  • 返回值: 无

参数 类型 含义
state MIXER_STATE 状态值
err int 错误值,请参考CRVIDEOSDK_ERR_DEF
operatorID String 引起变化的用户id

void svrMixerCfgChanged()

  • 功能: 云端录制、云端直播内容变化通知

  • 返回值: 无

void svrMixerOutputInfo(MixerOutputInfo info)

  • 功能: 云端录制文件、云端直播信息变化通知

  • 返回值: 无

参数 类型 含义
outputInfo MixerOutputInfo 通知内容

void startScreenShareRslt(CRVIDEOSDK_ERR_DEF sdkErr)

  • 功能: 开启屏幕共享的响应事件
  • 参数
参数 类型 含义
sdkEr CRVIDEOSDK_ERR_DEF 错误码

void stopScreenShareRslt(int sdkErr)

  • 功能停止屏幕共享的响应事件
  • 参数
参数 类型 含义
sdkEr CRVIDEOSDK_ERR_DEF 错误码

void notifyScreenShareStarted()

  • 功能: 通知他人开启了屏幕共享

  • 返回值: 无

void notifyScreenShareStopped()

  • 功能: 通知他人停止了屏幕共享

  • 返回值: 无

void startScreenMarkRslt(CRVIDEOSDK_ERR_DEF sdkErr)

  • 功能: 开始屏幕标注结果
  • 参数
参数 类型 含义
sdkEr CRVIDEOSDK_ERR_DEF 错误码

void stopScreenMarkRslt(int sdkErr)

  • 功能: 停止屏幕标注结果
  • 参数
参数 类型 含义
sdkEr CRVIDEOSDK_ERR_DEF 错误码

void notifyScreenMarkStarted()

  • 功能: 通知屏幕标注开始

  • 返回值: 无

void notifyScreenMarkStopped()

  • 功能: 通知屏幕标注停止

  • 返回值: 无

void sendMeetingCustomMsgRlst(CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能:通知发送房间内自定义广播消息结果
  • 参数
参数 类型 含义
sdkErr CRVIDEOSDK_ERR_DEF CRVIDEOSDK_ERR_DEF(错误码为CRVIDEOSDK_NOERR表示没有错误)
cookie String 可为空字符串。详细介绍见关键词

void notifyMeetingCustomMsg(String fromUserID, String text)

  • 功能:通知收到房间内自定义广播消息
  • 参数
参数 类型 含义
fromUserID String 房间内广播消息的发送者的用户id
text String 广播内容

void notifySwitchToPage(MAIN_PAGE mainPage, [SubPage](TypeDefinitions.md#SubPage) pageID)

  • 功能: 通知功能切换

  • 返回值: 无

参数 类型 含义
mainPage MAIN_PAGE 功能类型
pageID SubPage 子页面标识

void notifyVideoWallMode(VIDEO_WALL_MODE model)

  • 功能: 通知视频分屏模式切换

  • 返回值: 无

参数 类型 含义
model VIDEO_LAYOUT_MODE 分屏模式

void notifyMainVideoChanged()

  • 功能: 通知主视频更改

  • 返回值: 无

  • 参数: 无

参数 类型 含义
userID String 主视频用户ID

void notifyInitBoards(ArrayList<SubPageInfo> boards)

  • 功能: SDK入会后通知房间中已经存在的白板列表

  • 返回值: 无

参数 类型 含义
boards ArrayList<SubPageInfo> 已经创建好的白板列表

void notifyInitBoardPageDat(SubPage boardID, int boardPageNo, String imgID, String elementDatas,String operatorID)

  • 功能: 初始化白板页数据

  • 返回值: 无

参数 类型 含义
boardID SubPage 白板标识
boardPageNo int 白板页序号
imgID String 页背景文件ID(空代表无背景), 使用downloadNetDiskDocFile进行下载
elementDatas String 此页的所有图元,白板图元数据Json数组,详见定义BoardElement
operatorID String 初始化用户(为空时,代表入会时后台事件)

void notifyCreateBoard(SubPageInfo board, String operatorID)

  • 功能: 通知创建白板

  • 返回值: 无

参数 类型 含义
board SubPageInfo 白板信息
operatorID String 创建白板的用户ID

void notifyCloseBoard(SubPage boardID, String operatorID)

  • 功能: 通知关闭白板

  • 返回值: 无

参数 类型 含义
boardID SubPage 白板标识
operatorID String 关闭白板的用户ID

void notifyAddBoardElement(SubPage boardID, int boardPageNo, String element, String operatorID)

  • 功能: 通知添加图元信息

  • 返回值: 无

参数 类型 含义
boardID SubPage 白板标识
boardPageNo int 白板页序号
element String 图元信息, Json数据格式详见定义BoardElement
operatorID String 添加图元的用户ID

void notifyModifyBoardElement(SubPage boardID, int boardPageNo, String element, String operatorID)

  • 功能: 通知图元信息被修改

  • 返回值: 无

参数 类型 含义
boardID SubPage 白板标识
boardPageNo int 白板页序号
element String 图元信息, Json数据格式详见定义BoardElement
operatorID String 添加图元的用户ID

void notifyDelBoardElement(SubPage boardID, int boardPageNo, ArrayList<String> elementIDs, String operatorID)

  • 功能: 通知图元被删除

  • 返回值: 无

参数 类型 含义
boardID SubPage 白板标识
boardPageNo int 白板页序号
elementIDs ArrayList<String> 图元id列表
operatorID String 添加图元的用户ID

void notifyMouseHotSpot(SubPage boardID, int boardPageNo, int x, int y, String operatorID)

  • 功能: 通知鼠标热点消息

  • 返回值: 无

参数 类型 含义
boardID SubPage 白板标识
x int 屏幕横坐标
y int 屏幕纵坐标
operatorID String 添加图元的用户ID

void notifyBoardCurPageNo(SubPage boardID, int boardPageNo, int pagePos1, int pagePos2)

  • 功能: 通知白板翻页

  • 返回值: 无

参数 类型 含义
boardID SubPage 白板标识
boardPageNo int 白板的页序号(0为第一页)
pagePos1 int 私有扩展参数1(如可用于页内x方向滚动位置)
pagePos2 int 私有扩展参数2(如可用于页内y方向滚动位置)

void notifyRecordFileStateChanged(String fileName, int state)

  • 功能: 通知录制文件状态更改

  • 返回值: 无

参数 类型 含义
fileName String 本地文件路径
state int 状态,0未上传,1上传中,2已上传,3上传失败

void uploadRecordFileSuccess(String fileName, String fileUrl)

  • 功能: 通知录制文件上传成功

  • 返回值: 无

参数 类型 含义
fileName String 本地文件路径
fileUrl String 服务端录制文件地址

void notifyRecordFileUploadProgress(String fileName, int percent)

  • 功能: 通知录制文件上传进度

  • 返回值: 无

参数 类型 含义
fileName String 本地文件路径
percent int 进度0-100

void notifyMediaOpened(int totalTime, Size picSZ)

  • 功能: 通知影音文件打开

  • 返回值: 无

参数 类型 含义
totalTime long 影音时长(毫秒)
picSZ Size 宽高

void notifyMediaStart(String userid)

  • 功能: 通知影音开始播放

  • 返回值: 无

参数 类型 含义
userid String 操作者的用户id

void notifyMediaPause(String userid, boolean bPause)

  • 功能: 通知设置鼠标热点消息

  • 返回值: 无

参数 类型 含义
userid String 操作者的用户id
bPause boolean 是否暂停

void notifyMediaStop(String userid, int reason)

  • 功能: 通知影音播放停止

  • 返回值: 无

参数 类型 含义
userid String 操作者的用户id
reason int 播放停止原因,数值参考MEDIA_STOP_REASON

void notifyPlayPosSetted(int setPTS)

  • 功能: 通知播放进度已设置完成

  • 返回值: 无

参数 类型 含义
setPTS int 播放进度

void notifyMemberMediaData(String userid, int curPos)

  • 功能: 通知影音帧数据已解码完毕

  • 返回值: 无

参数 类型 含义
userid String 操作者的用户id
curPos int 该影音帧的时间,毫秒为单位
  • 注意事项:

    • 收到此通知消息后,可通过getMediaImg获取图像显示;但如果之前显示的帧时戳更大,说明此通知消息已过时,直接忽略即可 如果使用了影音共享UI显示方式,不再需要自已关注此事件和进行显示处理

void notifyAudioPCMDat(int aSide, byte[] audioDat)

  • 功能: 通知语音PCM数据

  • 返回值: 无

参数 类型 含义
aSide int 声道类型
audioDat byte[] PCM数据

void listNetDiskDocFileRslt(String dir, CRVIDEOSDK_ERR_DEF sdkERR, NetDiskDocDir docDir)

  • 功能: 通知查询文档列表结果

  • 返回值: 无

参数 类型 含义
dir String 查询的目录
sdkErr CRVIDEOSDK_ERR_DEF 操作结果
docDir NetDiskDocDir 成功时的查询的结果

void getNetDiskDocFilePageInfoRslt(String svrPathFileName, CRVIDEOSDK_ERR_DEF sdkErr, NetDiskDocFilePageInfo pageInfo)

  • 功能: 通知查询文档转换结果

  • 返回值: 无

参数 类型 含义
svrPathFileName String 查询的文档名
sdkErr CRVIDEOSDK_ERR_DEF 操作结果
pageInfo NetDiskDocFilePageInfo 成功的查询的结果

void deleteNetDiskDocFileRslt(String svrPathFileName, CRVIDEOSDK_ERR_DEF sdkERR)

  • 功能: 通知删除文档结果

  • 返回值: 无

参数 类型 含义
svrPathFileName String 查询的文档名
sdkErr CRVIDEOSDK_ERR_DEF 操作结果

void notifyNetDiskDocFileTrsfProgress(String svrPathFileName, int percent)

  • 功能: 通知文档传输进度

  • 返回值: 无

参数 类型 含义
svrPathFileName String 查询的文档名
percent int 传输进度(等于100代表传输完成)

5. 队列组件(CloudroomQueue)的接口函数

CloudroomQueue 是队列组件,实现队列功能,目的是为了实现用户自动分配。,整个程序的生命过程中只能有一个实例。


void registerCallBack(CloudroomQueueCallback callBack)

  • 功能: 注册监听回调

  • 返回值: 无

参数 类型 含义
callBack CloudroomQueueCallback 回调对象

void unregisterCallBack(CloudroomQueueCallback callBack)

  • 功能: 反注册监听回调

  • 返回值: 无

参数 类型 含义
callBack CloudroomQueueCallback 指定的反注册回调对象

void initQueue(String cookie)

  • 功能: 初始化用户队列功能数据

  • 返回值: 无

回调函数initQueueDatRslt

参数 类型 含义
cookie String 自定义数据(在响应消息中回传给调用者),不需要时传空字符串
  • 注意事项:

    • 在响应回调initQueueDatRslt初始化成功后,才可获取队列队列相关信息

void refreshAllQueueStatus()

  • 功能: 刷新所有队列状态信息

  • 返回值: 无

回调函数queueStatusChanged

  • 注意事项:

    • 当前排队的队列或服务的队列,sdk自动有状态变化回调;其它队列则需要此函数来查询

ArrayList<QueueInfo> getAllQueueInfo()

  • 功能: 获取队列信息

  • 返回值: ArrayList<QueueInfo>-队列信息列表

QueueStatus getQueueStatus(int queID)

  • 功能: 获指定取队列状态

  • 返回值: QueueStatus-队列状态

参数 类型 含义
queID int 队列ID

QueuingInfo getQueuingInfo()

  • 功能: 功能获取我的排队信息

  • 返回值: QueuingInfo-我的排队信息

ArrayList<Integer> getServiceQueues()

  • 功能: 获取我服务的所有队列

  • 返回值: 队列ID列表

VideoSessionInfo getSessionInfo()

void startQueuing(int queID, String usrExtDat, String cookie)

  • 功能: 客户开始排队

  • 返回值: 无

回调函数startQueuingRslt

参数 类型 含义
queID int 排队的队列ID
usrExtDat String 用户排队扩展数据
cookie String 用户自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void stopQueuing(String cookie)

  • 功能: 客户停止排队

  • 返回值: 无

回调函数stopQueuingRslt

参数 类型 含义
cookie String 用户自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void startService(int queID, String cookie)

  • 功能: 开始服务某个队列(可以多次调用,开启对多个队列的服务)

  • 返回值: 无

回调函数startServiceRslt

参数 类型 含义
queID int 排队的队列ID
cookie String 用户自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void startService(int queID, int priority, String cookie)

  • 功能: 开始服务某个队列(可以多次调用,开启对多个队列的服务)

  • 返回值: 无

回调函数startServiceRslt

参数 类型 含义
queID int 排队的队列ID
priority int 座席优先级(缺省为0, 0为最高优先级, 值越大优先级越低)
cookie String 用户自定义数据(在响应消息中回传给调用者),不需要时传空字符串
  • 注意事项:

    • 如果没有开启免打扰,那么系统会自动分配客户:将收到事件autoAssignUser

    • 如果开启免打扰,系统就不会分配客户,如需服务客户可调用reqAssignUser

    • 座席优先级描述

      • 座席优先级只在服务的队列内部有效;
      • 客户优先分配给服务此队列优先级最高的,且空闲的座席;
      • 优先级相同时,则分配给最先空闲的座席;
      • 优先级高的座席变空闲时,不抢夺已分配的客户;

void stopService(int queID, String cookie)

  • 功能: 停止服务某个队列

  • 返回值: 无

回调函数stopServiceRslt

参数 类型 含义
queID int 排队的队列ID
cookie String 用户自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void reqAssignUser(String cookie)

  • 功能: 请求分配一个客户

  • 返回值: 无

回调函数reqAssignUserRslt

参数 类型 含义
cookie String 用户自定义数据(在响应消息中回传给调用者),不需要时传空字符串
  • 注意事项:

    • 当关闭免打扰时,系统将自动分配客户,无需调用此函数
    • 当开启免打扰时,系统不再自动分配客户,座席如需服务客户可使用此函数分配

void acceptAssignUser(int queID, String userID, String cookie)

  • 功能: 接受系统安排的客户

  • 返回值: 无

回调函数reqAssignUserRslt

参数 类型 含义
queID int 排队的队列ID
userID String 队列中的用户ID
cookie String 用户自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void rejectAssignUser(int queID, String userID, String cookie)

  • 功能: 拒绝系统安排的客户

  • 返回值: 无

回调函数reqAssignUserRslt

参数 类型 含义
queID int 排队的队列ID
userID String 队列中的用户ID
cookie String 用户自定义数据(在响应消息中回传给调用者),不需要时传空字符串

通知回调函数

CloudroomQueueCallback 是队列回调接口


void initQueueDatRslt(CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能: 队列初始化操作结果

  • 返回值: 无

参数 类型 含义
sdkErr CRVIDEOSDK_ERR_DEF 操作结果代码,成功为CRVIDEOSDK_NOERR
cookie String 用户自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void queueStatusChanged(QueueStatus queStatus)

  • 功能: 队列状态变化通知

  • 返回值: 无

参数 类型 含义
queStatus QueueStatus 新的队列状态
  • 注意事项:

    • 在排队的队列、或服务的队列发生变化时,将有队列状态变化通知到来
    • 在调用refreshAllQueueStatus时,查询到的队列数据有变化时,会有通知到来

void queuingInfoChanged(QueuingInfo queuingInfo)

  • 功能: 排队信息变化通知

  • 返回值: 无

参数 类型 含义
queuingInfo QueuingInfo 排队信息

void startQueuingRslt(CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能: 开始排队操作结果

  • 返回值: 无

参数 类型 含义
sdkErr CRVIDEOSDK_ERR_DEF 操作结果代码,CRVIDEOSDK_NOERR为成功操作
cookie String 用户自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void stopQueuingRslt(CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能: 停止排队操作结果

  • 返回值: 无

参数 类型 含义
sdkErr CRVIDEOSDK_ERR_DEF 操作结果代码,CRVIDEOSDK_NOERR为成功操作
cookie String 用户自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void startServiceRslt(int queID, CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能: 开始服务队列操作结果

  • 返回值: 无

参数 类型 含义
queID int 排队的队列ID
sdkErr CRVIDEOSDK_ERR_DEF 操作结果代码,CRVIDEOSDK_NOERR为成功操作
cookie String 用户自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void stopServiceRslt(int queID, CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能: 停止服务队列操作结果

  • 返回值: 无

参数 类型 含义
queID int 排队的队列ID
sdkErr CRVIDEOSDK_ERR_DEF 操作结果代码,CRVIDEOSDK_NOERR为成功操作
cookie String 用户自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void reqAssignUserRslt(CRVIDEOSDK_ERR_DEF sdkErr, UserInfo usr, String cookie)

  • 功能: 停止服务队列操作结果

  • 返回值: 无

参数 类型 含义
sdkErr CRVIDEOSDK_ERR_DEF 操作结果代码,CRVIDEOSDK_NOERR为成功操作
usr UserInfo 请求到的队列用户
cookie String 用户自定义数据(在响应消息中回传给调用者),不需要时传空字符串

void autoAssignUser(UserInfo usr)

  • 功能: 队列系统自动分配客户

  • 返回值: 无

参数 类型 含义
usr UserInfo 请求到的队列用户
  • 注意事项:

    • 如果想停止系统的自动分配,请调用CloudroomVideoMgr中的 setDNDStatus 设置免打扰功能。

void cancelAssignUser(int queID, String userID)

  • 功能: 队列系统取消之前自动分配的的客户

  • 返回值: 无

参数 类型 含义
queID int 服务的队列
userID String 自动分配用户被取消

void responseAssignUserRslt(CRVIDEOSDK_ERR_DEF sdkErr, String cookie)

  • 功能: 拒绝、接受分配的用户

  • 返回值: 无

参数 类型 含义
sdkErr CRVIDEOSDK_ERR_DEF 操作结果代码,CRVIDEOSDK_NOERR为成功操作
cookie String 用户自定义数据(在响应消息中回传给调用者),不需要时传空字符串
  • 注意事项:

    • 队列系统通过接口autoAssignUser给开始队列服务的人自动推送用户,收到系统分配的用户后, 如果队列服务者还未决定接受acceptAssignUser还是拒绝rejectAssignUser推送的用户,系统可用取消本次推送, 并通过本接口通知队列服务者。

6. Http文件传输组件(CloudroomHttpFileMgr)的接口函数

CloudroomHttpFileMgr是Http文件传输组件,实现Http文件上传下载、及文件管理。


void registerCallBack(CloudroomHttpFileMgrCallback callBack)

  • 功能: 注册监听回调

  • 返回值: 无

参数 类型 含义
callBack CloudroomHttpFileMgrCallback 回调对象

void unregisterCallBack(CloudroomHttpFileMgrCallback callBack)

  • 功能: 反注册监听回调

  • 返回值: 无

参数 类型 含义
callBack CloudroomHttpFileMgrCallback 指定的反注册回调对象

void startMgr()

  • 功能: 启动Http文件文件组件运行

  • 返回值: 无

  • 注意事项:

    • 在调用CloudroomVideoSDK的 init 初始化SDK后后方可调用

void stopMgr()

  • 功能: 停止Http文件文件组件运行

  • 返回值: 无

ArrayList<FileTransInfo> getAllTransferInfos()

  • 功能: 获取本地上传、下载文件信息

  • 返回值: ArrayList<FileTransInfo>-文件信息

void startTransferFile(HttpReqInfo info)

  • 功能: 开始下载/上传文件

  • 返回值: 无

参数 类型 含义
info HttpReqInfo 上传文件信息
  • 注意事项:

    • 上传不支持断点续传; 下载支持断点续传;如果文件传输完成,且fileVersion一致,下次再请求时会立即报告完成。

void cancelFileTransfer(String fileName)

  • 功能: 取消传输

  • 返回值: 无

参数 类型 含义
fileName String 本地路径文件名
  • 注意事项:

  1. 取消时,只是停止了传输任务,不清理记录及断点文件。

void rmTransferInfo(String fileName, int bRemoveLocFile)

  • 功能: 删除传输记录及相关文件

  • 返回值: 无

参数 类型 含义
fileName String 本地路径文件名
bRemoveLocFile int 是否移除本地文件
  • 注意事项:

    • 此接口将文件从管理器中移除(getAllTransferInfos将不再返回相关信息),如果bRemoveLocFile为1时, 那么上传的源始文件、下载的临时文件或结果文件都将被移除。

通知回调函数

CloudroomHttpFileMgrCallback是Http上传下载通知回调接口


void fileStateChanged(String fileName, HTTP_TRANSFER_STATE state)

  • 功能: 通知用户文件状态更改

  • 返回值: 无

参数 类型 含义
fileName String 本地路径文件名
state HTTP_TRANSFER_STATE 状态

void fileProgress(String fileName, int finisedSize, int totalSize)

  • 功能: 通知用户文件的传输进度

  • 返回值: 无

参数 类型 含义
fileName String 本地路径文件名
finisedSize int 已传输大小
totalSize int 文件总大小

void fileFinished(string fileName, int rslt)

  • 功能: 通知用户文件传输结束

  • 返回值: 无

参数 类型 含义
fileName String 本地路径文件名
rslt int 传输结果,详见定义 HTTP_TRANSFER_STATE