# API
房间外接口 | 基础函数 |
初始化/反初始化 | |
登录/注销/掉线 | |
队列管理 | |
呼叫 | |
邀请 | |
房间管理 | |
房间内接口 | 进出房间 |
房间内基础消息 | |
房间、用户属性 | |
成员管理 | |
音频管理 | |
视频管理 | |
屏幕共享 | |
影音共享 | |
电子白板 | |
云端录制/互动直播 | |
可视化UI组件 | |
白板UI组件(白板显示容器) | |
消息接口 | 消息通道(房间外) |
广播消息(房间内) |
接口描述
基础函数
类型 | 接口 | 描述 |
---|---|---|
主调 | CRVideo_GetSDKVersion | 获取当前SDK版本号 |
CRVideo_WriteLog | 向日志中写入自定义内容 | |
CRVideo_SetSDKParams | 设置SDK基础配置 |
初始化/反初始化
类型 | 接口 | 描述 |
---|---|---|
主调 | CRVideo_Init | SDK初始化 |
CRVideo_Uninit | SDK反初始化 |
登录/注销/掉线
类型 | 接口 | 描述 |
---|---|---|
主调 | CRVideo_SetServerAddr | 设置服务器地址 |
CRVideo_Login | 登录(帐号密码鉴权) | |
CRVideo_LoginByToken | 登录(Token鉴权) | |
CRVideo_UpdateToken | 更新Token | |
CRVideo_Logout | 注销登录 | |
回调 | CRVideo_LoginSuccess | 回调,登陆成功 |
CRVideo_LoginFail | 回调,登录失败 | |
CRVideo_NotifyTokenWillExpire | 通知,Token即将失效 | |
CRVideo_LineOff | 通知,从服务器掉线了 |
队列管理
类型 | 接口 | 描述 |
---|---|---|
主调 | CRVideo_InitQueueDat | 初始化队列数据 |
CRVideo_GetAllQueueInfo | 查询所有队列的信息 | |
CRVideo_RefreshAllQueueStatus | 刷新所有队列的状态 | |
CRVideo_GetQueueStatus | 获取某个队列的状态 | |
CRVideo_GetQueuingInfo | 获取我的排队信息 | |
CRVideo_GetServingQueues | 获取我当前服务的所有队列 | |
CRVideo_GetSessionInfo | 获取我的会话信息 | |
CRVideo_StartQueuing | 开始排队 | |
CRVideo_StopQueuing | 停止排队 | |
CRVideo_StartService | 坐席开始服务某个队列 | |
CRVideo_StopService | 坐席停止服务某个队列 | |
CRVideo_ReqAssignUser | 坐席请求分配一个客户 | |
CRVideo_AcceptAssignUser | 坐席接受系统分配的客户 | |
CRVideo_RejectAssignUser | 坐席拒绝系统分配的客户 | |
回调 | CRVideo_InitQueueDatRslt | 回调,队列初始化操作的结果 |
CRVideo_QueueStatusChanged | 通知,队列状态变化 | |
CRVideo_GetQueueStatusRslt | 回调,获取某个队列状态的结果 | |
CRVideo_QueuingInfoChanged | 通知,排队信息变化(客户) | |
CRVideo_StartQueuingRslt | 回调,开始排队的结果(客户) | |
CRVideo_StopQueuingRslt | 回调,停止排队的结果(客户) | |
CRVideo_StartServiceRslt | 回调,开始服务某个队列的结果(坐席) | |
CRVideo_StopServiceRslt | 回调,停止服务某个队列的结果(坐席) | |
CRVideo_ResponseAssignUserRslt | 回调,响应系统分配客户的结果(坐席) | |
CRVideo_AutoAssignUser | 通知,系统自动分配了客户 | |
CRVideo_ReqAssignUserRslt | 回调,请求系统分配客户的结果(坐席) | |
CRVideo_CancelAssignUser | 通知,系统取消分配客户(坐席) |
呼叫
邀请
类型 | 接口 | 描述 |
---|---|---|
主调 | CRVideo_Invite | 发送邀请 |
CRVideo_AcceptInvite | 接受对方发送的邀请 | |
CRVideo_RejectInvite | 拒绝对方发送的邀请 | |
CRVideo_CancelInvite | 取消自己发送的邀请 | |
回调 | CRVideo_InviteSuccess | 回调,发送邀请成功 |
CRVideo_InviteFail | 回调,发送邀请失败 | |
CRVideo_AcceptInviteSuccess | 回调,接受对方发送的邀请成功 | |
CRVideo_AcceptInviteFail | 回调,接受对方发送的邀请失败 | |
CRVideo_RejectInviteSuccess | 回调,拒绝对方发送的邀请成功 | |
CRVideo_RejectInviteFail | 回调,拒绝对方发送的邀请失败 | |
CRVideo_CancelInviteSuccess | 回调,取消自己发送的邀请成功 | |
CRVideo_CancelInviteFail | 回调,取消自己发送的邀请失败 | |
CRVideo_NotifyInviteIn | 通知,收到别人的邀请 | |
CRVideo_NotifyInviteAccepted | 通知,我发送的邀请被对方接受 | |
CRVideo_NotifyInviteRejected | 通知,我发送的邀请被对方拒绝 | |
CRVideo_NotifyInviteCanceled | 通知,邀请已经被取消了 |
房间管理
类型 | 接口 | 描述 |
---|---|---|
主调 | CRVideo_CreateMeeting2 | 创建房间 |
CRVideo_DestroyMeeting | 销毁房间 | |
回调 | CRVideo_CreateMeetingSuccess | 回调,创建房间成功 |
CRVideo_CreateMeetingFail | 回调,创建房间失败 | |
CRVideo_DestroyMeetingRslt | 回调,销毁房间的结果 | |
CRVideo_MeetingStopped | 通知,当前房间已被结束 |
进出房间
类型 | 接口 | 描述 |
---|---|---|
主调 | CRVideo_EnterMeeting3 | 进入房间 |
CRVideo_ExitMeeting | 离开房间 | |
CRVideo_Kickout | 将房间内指定成员踢出房间 | |
回调 | CRVideo_EnterMeetingRslt | 回调,进入房间的结果 |
CRVideo_UserEnterMeeting | 通知,有人进入房间 | |
CRVideo_UserLeftMeeting | 通知,有人离开房间 | |
CRVideo_MeetingDropped | 通知,从房间中掉线了 |
房间内基础消息
类型 | 接口 | 描述 |
---|---|---|
主调 | CRVideo_GetMainVideo | 获取当前哪个用户为主视频 |
CRVideo_SetMainVideo | 设置哪个用户为主视频 | |
CRVideo_SetMainVideoMode | 设置主视频模式 | |
CRVideo_GetMainVideoMode | 获取当前主视频模式 | |
CRVideo_SwitchToPage | 功能区切换 | |
CRVideo_GetCurrentMainPage | 获取当前主功能区 | |
CRVideo_GetCurrentSubPage | 获取当前子页面 | |
回调 | CRVideo_NotifyMainVideoChanged | 通知,会话内主视频变化 |
CRVideo_NotifyMainVideoModeChanged | 通知,会话内主视频模式变化 | |
CRVideo_NotifySwitchToPage | 通知,会话内功能区变化 |
房间、用户属性
房间成员管理
类型 | 接口 | 描述 |
---|---|---|
主调 | CRVideo_GetAllMembers | 获取房间内所有成员的信息 |
CRVideo_GetMemberInfo | 获取房间内指定成员的信息 | |
CRVideo_GetMemberNickName | 获取房间内指定成员的昵称 | |
CRVideo_IsUserInMeeting | 判断某个用户是否在房间中 | |
CRVideo_SetNickName | 设置房间内某个成员的昵称 | |
回调 | CRVideo_NotifyNickNameChanged | 通知,房间内某个成员昵称变化 |
音频管理
类型 | 接口 | 描述 |
---|---|---|
主调 | CRVideo_GetAudioMicNames | 获取本地麦克风设备列表 |
CRVideo_GetAudioSpkNames | 获取本地扬声器设备列表 | |
CRVideo_SetAudioCfg | 设置本地音频参数 | |
CRVideo_GetAudioCfg | 获取本地音频参数 | |
CRVideo_GetMicEnergy | 获取指定成员的麦克风声音大小 | |
CRVideo_OpenMic | 打开指定成员的麦克风 | |
CRVideo_CloseMic | 关闭指定成员的麦克风 | |
CRVideo_GetAudioStatus | 获取指定成员的麦克风状态 | |
CRVideo_SetAllAudioClose | 关闭房间内所有人麦克风 | |
CRVideo_PauseSpeaker | 暂停播放房间内通话声音(静音) | |
CRVideo_PlaySpeaker | 恢复播放房间内通话声音 | |
回调 | CRVideo_AudioStatusChanged | 通知,成员麦克风状态变化 |
CRVideo_MicEnergyUpdate | 通知,成员麦克风声音能量变化 |
视频管理
类型 | 接口 | 描述 |
---|---|---|
主调 | CRVideo_CreatVideoObj | 创建成员视频UI显示对象 |
CRVideo_GetVideoCfg | 获取当前视频参数 | |
CRVideo_SetVideoCfg | 设置视频参数 | |
CRVideo_GetVideoStatus | 获取指定成员的视频状态 | |
CRVideo_GetDefaultVideo | 获取指定成员的默认摄像头 | |
CRVideo_SetDefaultVideo | 设置指定成员的默认摄像头 | |
CRVideo_GetAllVideoInfo | 获取指定成员的所有摄像头信息 | |
CRVideo_GetOpenedVideoIDs | 获取指定成员当前打开的摄像头ID列表 | |
CRVideo_OpenVideo | 打开指定成员的摄像头 | |
CRVideo_CloseVideo | 关闭指定成员的摄像头 | |
CRVideo_SetEnableMutiVideo | 设置是否启用多摄像头 | |
CRVideo_GetEnableMutiVideo | 获取当前是否启用多摄像头 | |
CRVideo_AddStreamCam | 添加WebRTC媒体流摄像头 | |
CRVideo_RemoveStreamVideo | 移除WebRTC媒体流摄像头 | |
CRVideo_AddCanvasVCam | 添加canvas虚拟摄像头 | |
CRVideo_RemoveCanvasVCam | 移除canvas摄像头 | |
CRVideo_SetVirtualBackground | 设置虚拟背景 | |
回调 | CRVideo_VideoDevChanged | 通知,某个成员的摄像头设备发生了变化 |
CRVideo_DefVideoChanged | 通知,某个成员的默认摄像头发生了变化 | |
CRVideo_VideoStatusChanged | 通知,某个成员的视频状态发生了变化 | |
CRVideo_NotifyVideoStream | 通知,获取到某个成员的WebRTC视频流 |
屏幕共享
类型 | 接口 | 描述 |
---|---|---|
主调 | CRVideo_CreatScreenShareObj | 创建屏幕共享显示UI组件 |
CRVideo_SetScreenShareCfg | 配置屏幕共享参数 | |
CRVideo_StartScreenShare | 开启本地屏幕共享 | |
CRVideo_StopScreenShare | 结束本地屏幕共享 | |
CRVideo_StartScreenMark | 开启房间内屏幕共享标注 | |
CRVideo_StopScreenMark | 停止房间内屏幕共享标注 | |
回调 | CRVideo_StartScreenShareRslt | 回调,开启屏幕共享的结果 |
CRVideo_StopScreenShareRslt | 回调,停止屏幕共享的结果 | |
CRVideo_StartScreenMarkRslt | 回调,开启房间内屏幕共享标注的结果 | |
CRVideo_StopScreenMarkRslt | 回调,停止房间内屏幕共享标注的结果 | |
CRVideo_NotifyScreenShareStarted | 通知,他人开启了屏幕共享 | |
CRVideo_NotifyScreenShareStopped | 通知,他人停止了屏幕共享 | |
CRVideo_NotifyScreenMarkStarted | 通知,房间内开启了屏幕共享标注 | |
CRVideo_NotifyScreenMarkStopped | 通知,房间内停止了屏幕共享标注 |
影音共享
类型 | 接口 | 描述 |
---|---|---|
主调 | CRVideo_CreatMediaObj | 创建影音共享显示UI组件 |
CRVideo_StartPlayMedia | 开始播放影音 | |
CRVideo_PausePlayMedia | 暂停或恢复播放影音 | |
CRVideo_StopPlayMedia | 停止播放影音及共享 | |
CRVideo_SetMediaplaypos | 设置播放进度 | |
CRVideo_SetMediaVolume | 设置本地媒体音量 | |
CRVideo_Getmediainfo | 获取影音播放信息 | |
CRVideo_GetMediaImg | 获取影音图像数据 | |
回调 | CRVideo_NotifyMediaOpened | 通知,影音文件已打开 |
CRVideo_NotifyMediaStart | 通知,影音开始播放 | |
CRVideo_NotifyMediaStop | 通知,影音播放停止 | |
CRVideo_NotifyMediaPause | 通知,影音播放暂停/取消暂停 | |
CRVideo_NotifyPlayPosSetted | 通知,影音播放位置更新 |
电子白板
类型 | 接口 | 描述 |
---|---|---|
主调 | CRVideo_Creatboard | 创建白板 |
CRVideo_Closeboard | 关闭白板 | |
CRVideo_SetBoardCurPageNo | 白板翻页 | |
CRVideo_CreateBoardUIObj | 创建白板UI显示组件(白板容器) | |
回调 | CRVideo_NotifyInitBoards | 通知,初始化白板列表 |
CRVideo_NotifyCreateBoard | 通知,创建了新的白板 | |
CRVideo_NotifyCloseBoard | 通知,关闭某个白板 | |
CRVideo_NotifyBoardCurPageNo | 通知,白板翻页 |
云端录制/互动直播
类型 | 接口 | 描述 |
---|---|---|
主调 | CRVideo_StartSvrMixer | 开始云端录制、云端直播推流 |
CRVideo_UpdateSvrMixerContent | 更新云端录制、云端直播推流内容 | |
CRVideo_StopSvrMixer | 停止云端录制、云端直播推流 | |
CRVideo_GetSvrMixerState | 获取云端录制、云端直播推流状态 | |
回调 | CRVideo_SvrMixerStateChanged | 通知,云端录制、云端直播推流状态变化 |
CRVideo_SvrMixerOutputInfo | 通知,云端录制文件、云端直播推流信息变化 |
可视化UI组件
组件 | 方法 | 描述 |
---|---|---|
CRVideo_VideoObj、CRVideo_ScreenShareObj、CRVideo_MediaObj 公共方法 | id | 设置/查询组件的独立ID |
height | 设置/查询组件的高度 | |
width | 设置/查询组件的宽度 | |
left | 设置/查询组件在父元素中的left位置 | |
top | 设置/查询组件在父元素中的top位置 | |
show | 显示组件 | |
hide | 隐藏组件 | |
handler | 获取该组件的DOM对象 | |
setVideo | 设置组件上要显示的视频画面,订阅视频 | |
clear | 清除组件中的图像 | |
isPicEmpty | 检查组件当前图像是否为空 | |
setNickNameStyle | 设置组件上昵称的显示样式 | |
setNickNameContent | 设置组件上昵称的显示内容 | |
setVisibleNickName | 设置组件上是否显示昵称 | |
getVisibleNickName | 获取组件当前是否显示昵称 | |
dblClickFullScreen | 设置/查询组件是否支持双击全屏 | |
savePic | 保存组件当前显示的一帧画面为图片文件 | |
savePicToBase64 | 保存组件当前显示的一帧画面为base64数据 | |
CRVideo_VideoObj | setVideo | 订阅成员摄像头画面 |
getVideoID | 查询组件当前订阅的摄像头ID | |
destroy | 销毁组件,退订视频 | |
CRVideo_ScreenShareObj | setVideo | 设置组件显示的屏幕内容(谁的屏幕) |
setMark | 设置屏幕共享标注样式 | |
CRVideo_MediaObj | setVideo | 设置组件显示的影音内容(谁的影音) |
白板UI组件(白板显示容器)
组件 | 方法 | 描述 |
---|---|---|
CRVideo_BoardUIObj | handler | 获取白板UI组件的Dom对象 |
setCurBoardPage | 设置该组件上要显示的白板页 | |
isScaledContents | 设置(查询)当前组件是否内容允许缩放 | |
setTitleStyle | 设置当前组件的标题样式 | |
setBoardStyle | 设置当前组件的canvas样式 | |
setPen | 设置当前组件的画笔样式 | |
undo | 撤销一笔 | |
redo | 恢复一笔 | |
clear | 清空组件 | |
importImg | 导入背景图片 | |
getCanvasElement | 导入背景图片 |
房间外点对点消息通道
类型 | 接口 | 描述 |
---|---|---|
主调 | CRVideo_SendCmd | 发送点对点消息 |
CRVideo_SendBuffer | 发送大块数据 | |
CRVideo_SendFile | 发送文件数据 | |
CRVideo_CancelSend | 取消发送 | |
回调 | CRVideo_SendCmdRslt | 回调,发送点对点消息的结果 |
CRVideo_SendBufferRslt | 回调,发送大块数据的结果 | |
CRVideo_SendFileRslt | 回调,发送文件的结果 | |
CRVideo_SendProgress | 通知,当前发送进度 | |
CRVideo_NotifyCmdData | 通知,收到点对点消息 | |
CRVideo_NotifyBufferData | 通知,收到大块数据 | |
CRVideo_NotifyFileData | 通知,收到文件数据 |
房间内广播消息
类型 | 接口 | 描述 |
---|---|---|
主调 | CRVideo_SendMeetingCustomMsg | 发送房间内广播消息 |
回调 | CRVideo_SendMeetingCustomMsgRslt | 回调,发送房间内广播消息的结果 |
CRVideo_NotifyMeetingCustomMsg | 通知,收到房间内广播消息 |
接口详情
CRVideo_GetSDKVersion()
- 描述: 获取当前SDK版本号
- 返回值:
当前sdk版本,如:"1.8.0.3"
- 回调:
无
CRVideo_WriteLog(strLog)
- 描述: 向日志中写入自定义内容
- 返回值:
无
- 回调:
无
CRVideo_SetSDKParams(SDKParams)
- 描述: 设置SDK基础配置
- 返回值:
无
- 回调:
无
- 参数: 参数类型必传含义
SDKParams Object 否 SDK参数对象,详见:CRVideo_SDKParams,不传则为默认值
CRVideo_Init(SDKParams).then(res=>{},err=>{})
- 描述: SDK初始化
- 返回值:
返回一个promise对象,成功返回resolve,失败返回reject 错误码
- 回调:
无
- 参数: 参数类型必传含义
SDKParams Object 否 SDK参数对象,详见:CRVideo_SDKParams,可以不传,则全部为默认值
// 传一个对象,对象内设置具体参数(只传需要修改的参数,不传的参数为缺省值)
CRVideo_Init({
isCallSer: false,
MSProtocol: 1,
videoSendBW: 1024,
//...
}).then(res => {
//初始化成功后的处理...
}, err => {
//初始化失败后的处理...
})
//或者不传这个对象,全部为缺省值
CRVideo_Init().then(res => {
//初始化成功后的处理...
}, err => {
//初始化失败后的处理...
})
// 注:.then(callback1,callback2)方法中的参数为两个回调函数
// 第一个参数为初始化成功的回调函数,第二个参数为初始化失败的回调函数
// 可以通过错误码判断初始化失败的原因
注意:
程序开始时init,程序结束时uninit,整个程序的生命周期中只进行一次初始化和反初始化。
webRTC默认不支持http协议(chrome78+已支持file:///协议),只能通过配置127.0.0.1或locallhost访问,或通过配置Chrome调试模式绕过此限制。
CRVideo_Uninit()
- 描述: SDK反初始化
- 返回值:
无
- 回调:
无
CRVideo_SetServerAddr(ServerAddr)
- 描述: 设置服务器地址
- 返回值:
无
- 回调:
无
- 参数: 参数类型必传含义
ServerAddr String 是 登录的服务器地址,如:10.8.8.122:2726 或 sdk.cloudroom.com
CRVideo_Login(appID,appSecret,nickname,UID,userAuthCode,cookie)
- 描述: 登录(帐号密码鉴权)
- 返回值:
无
- 回调:
登陆成功则回调 CRVideo_LoginSuccess.callback,登陆失败则回调 CRVideo_LoginFail.callback
- 参数: 参数类型必传含义
appID String 是 云屋鉴权帐号。用于区分不同的项目,每个项目都有属于自己的唯一的appID,不同appID的项目完全独立,无法相互通信。appID请联系云屋销售获取,并开通相关套餐和功能权限。
appSecret String 是 md5(appSecret)。 (appSecret: 云屋鉴权密码, 可登录云屋管理后台修改)
nickname String 是 昵称
UID String 是 用户ID, 详细介绍见 关键词
userAuthCode String 否 用户验证信息,为空代表不需要sdk验证(一般由业务方先对UID认证完了,再来使用云屋sdk)。如果不为空,云屋sdk服务器将连接提前配置好的业务方服务器进行实时验证。(SDK管理后台-项目管理可以配置)
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_LoginByToken(Token,nickname,UID,userAuthCode,cookie)
- 描述: 登录(Token鉴权)
- 返回值:
无
- 回调:
登陆成功则回调 CRVideo_LoginSuccess.callback,登陆失败则回调 CRVideo_LoginFail.callback
- 参数:
CRVideo_UpdateToken(Token)
- 描述: 更新Token
- 返回值:
无
- 回调:
无
- 参数: 参数类型必传含义
Token String 是 新的Token鉴权码
CRVideo_Logout()
- 描述: 注销登录
- 返回值:
无
- 回调:
无
退出程序时,必须注销本次登录,然后再进行SDK反初始化操作。
CRVideo_LoginSuccess.callback=function(UID,cookie) {}
- 描述: 回调,登陆成功
- 回调参数:
CRVideo_LoginFail.callback=function(sdkErr,cookie) {}
- 描述: 回调,登录失败
- 回调参数:
CRVideo_NotifyTokenWillExpire.callback=function(){}
- 描述: 通知,Token即将失效
此回调将在token失效前30s通知,此时应重新获取新的Token后调用 CRVideo_UpdateToken 接口及时更新Token,否则将被强制下线
CRVideo_InitQueueDat(cookie)
- 描述: 初始化队列数据
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
cookie String 否 详细介绍见 关键词,可以传空串
队列初始化成功后才可获取队列相关信息
CRVideo_GetAllQueueInfo()
- 描述: 查询所有队列的信息
- 返回值:
所有队列的信息集合(数组),其中每个队列信息:CRVideo_QueueInfo
- 回调:
无
CRVideo_RefreshAllQueueStatus(nolog)
- 描述: 刷新所有队列的状态
- 返回值:
无
- 回调:
无
- 参数: 参数类型必传含义
nolog Bool 否 是否禁止SDK打印此接口的日志,缺省为空,不禁止。当需要频繁调用此接口时,可以传true,SDK将不会打印此接口的日志。
刷新所有队列的状态会触发多次 CRVideo_GetQueueStatusRslt.callback 回调,从该回调中获取每个队列的状态
CRVideo_GetQueueStatus(queID,cookie)
- 描述: 获取某个队列的状态
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
queID Number 是 队列ID
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_GetQueuingInfo()
- 描述: 获取我的排队信息
- 返回值:
返回排队信息 CRVideo_QueuingInfo
- 回调:
无
CRVideo_GetServingQueues()
- 描述: 获取我当前服务的所有队列
- 返回值:
返回我当前服务的队列ID列表,Array: 如 [1,2,3]
- 回调:
无
CRVideo_GetSessionInfo()
- 描述: 获取我的会话信息
- 返回值:
返回会话信息 CRVideo_SessionInfo
- 回调:
无
此接口用来在会话过程中掉线并重登后,获取上一次会话的信息以便重新进入之前的会话
此会话信息只会在初始化队列成功时更新一次,会话过程中不会更新
CRVideo_StartQueuing(queID,usrExtDat,cookie)
- 描述: 开始排队
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
queID Number 是 队列ID
usrExtDat String 否 用户排队携带的扩展数据, 座席在服务时可获得
cookie String 否 详细介绍见 关键词,可以传空串
客户只允许同时在一个队列排队,需要更换队列排队时,应该先停止排队,再重新开始排队
客户开始排队时会触发排队信息变化的通知 CRVideo_QueuingInfoChanged.callback
CRVideo_StopQueuing(cookie)
- 描述: 停止排队
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_StartService(queID,priority,cookie)
- 描述: 坐席开始服务某个队列
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
queID Number 是 队列ID
priority Number 是 坐席优先级
cookie String 否 详细介绍见 关键词,可以传空串
可以多次调用,开启对多个队列的服务。
开始服务成功后,如果没有开启免打扰,那么有客户在此队列排队时系统会自动分配客户:CRVideo_AutoAssignUser.callback;
如果开启免打扰,系统就不会自动分配客户,如果需要手动分配客户,可调用 CRVideo_ReqAssignUser。
坐席优先级描述:
1.座席优先级只在服务的队列内部有效;
2.客户优先分配给服务此队列优先级最高的,且空闲的座席;
3.优先级相同时,则分配给最先空闲的座席;
4.优先级高的座席变空闲时,不抢夺已分配的客户;
CRVideo_StopService(queID,cookie)
- 描述: 坐席停止服务某个队列
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
queID Number 是 队列ID
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_ReqAssignUser(cookie)
- 描述: 坐席请求分配一个客户
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
cookie String 否 详细介绍见 关键词,可以传空串
当坐席关闭免打扰时,系统将自动分配客户,无需调用此函数; 当开启免打扰时,系统不再自动分配客户,座席如需服务客户可调用此接口请求系统分配。
CRVideo_AcceptAssignUser(queID,UID,cookie)
- 描述: 坐席接受系统分配的客户
- 返回值:
无
- 回调:
- 参数:
CRVideo_RejectAssignUser(queID,UID,cookie)
- 描述: 坐席拒绝系统分配的客户
- 返回值:
无
- 回调:
- 参数:
CRVideo_InitQueueDatRslt.callback = function(sdkErr,cookie){}
- 描述: 回调,队列初始化操作的结果
- 回调参数:
CRVideo_QueueStatusChanged.callback = function(QueStatus){}
- 描述: 通知,队列状态变化
- 回调参数: 参数类型含义
QueStatus Object 用户队列状态,详见:CRVideo_QueStatus
当用户服务某个队列,相关队列状态变化时,会收到此通知。
CRVideo_GetQueueStatusRslt.callback = function(QueStatus,sdkErr,cookie){}
- 描述: 回调,获取某个队列状态的结果
- 回调参数: 参数类型含义
QueStatus Object 用户队列状态,详见:CRVideo_QueStatus
sdkErr Number 错误码,详细见 错误码定义
CRVideo_QueuingInfoChanged.callback = function(CRVideo_QueuingInfo){}
- 描述: 通知,排队信息变化(客户)
- 回调参数: 参数类型含义
CRVideo_QueuingInfo Object 排队信息 CRVideo_QueuingInfo
CRVideo_StartQueuingRslt.callback = function(sdkErr,cookie){}
- 描述: 回调,开始排队的结果(客户)
- 回调参数:
CRVideo_StopQueuingRslt.callback = function(sdkErr,cookie){}
- 描述: 回调,停止排队的结果(客户)
- 回调参数:
CRVideo_StartServiceRslt.callback = function(queID,sdkErr,cookie){}
- 描述: 回调,开始服务某个队列的结果(坐席)
- 回调参数:
CRVideo_StopServiceRslt.callback = function(queID,sdkErr,cookie){}
- 描述: 回调,停止服务某个队列的结果(坐席)
- 回调参数:
CRVideo_ResponseAssignUserRslt.callback = function(sdkErr,cookie){}
- 描述: 回调,响应系统分配客户的结果(坐席)
- 回调参数:
CRVideo_AutoAssignUser.callback = function(CRVideo_QueUser){}
- 描述: 通知,系统自动分配了客户
- 回调参数: 参数类型含义
CRVideo_QueUser Object 队列用户信息, 详细介绍见 类型定义
如果想停止系统的自动分配,请调用 CRVideo_SetDNDStatus 设置为免打扰状态
CRVideo_ReqAssignUserRslt.callback = function(sdkErr,CRVideo_QueUser,cookie){}
- 描述: 回调,请求系统分配客户的结果(坐席)
- 回调参数:
CRVideo_CancelAssignUser.callback = function(queID,UID){}
- 描述: 通知,系统取消分配客户(坐席)
- 回调参数: 参数类型含义
queID Number 队列ID
UID String 用户ID, 详细介绍见 关键词
系统通过接口 CRVideo_AutoAssignUser 给队列服务者自动推送客户(或队列服务者通过 CRVideo_ReqAssignUser 请求分配客户),收到系统分配的客户后,如果队列服务者30秒之内不接受 (CRVideo_AcceptAssignUser) 也不拒绝 (CRVideo_RejectAssignUser) 推送的客户,系统将通过本接口取消分配,然后将客户分配给其他空闲的服务者。
CRVideo_Call(calledUID,MeetInfoObj,userExtDat,cookie)
- 描述: 发起呼叫
- 返回值:
无
- 回调:
呼叫成功回调 CRVideo_CallSuccess.callback,呼叫失败回调 CRVideo_CallFail.callback
- 参数: 参数类型必传含义
calledUID String 是 被叫用户的 UID
MeetInfoObj Object 是 房间信息对象,详见:CRVideo_RoomInfoObj
userExtDat String 否 自定义扩展参数,没有则传空串
cookie String 否 详细介绍见 关键词,可以传空串
房间信息对象可以在创建房间成功的回调接口 CRVideo_CreateMeetingSuccess.callback 获得
userExtDat参数为自定义参数,对方在收到呼叫时可以拿到此参数的数据
CRVideo_AcceptCall(callID,MeetInfoObj,userExtDat,cookie)
- 描述: 接受对方发起的呼叫
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
callID String 是 呼叫全局标识ID
MeetInfoObj Object 是 房间信息对象,详见:CRVideo_RoomInfoObj
userExtDat String 否 自定义扩展参数,没有则传空串
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_RejectCall(callID,userExtDat,cookie)
- 描述: 拒绝对方发起的呼叫
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
callID String 是 呼叫全局标识ID
userExtDat String 否 自定义扩展参数,没有则传空串
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_HangupCall(callID,userExtDat,cookie)
- 描述: 挂断当前的呼叫
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
callID String 是 呼叫全局标识ID
userExtDat String 否 自定义扩展参数,没有则传空串
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_SetDNDStatus(DNDStatus,cookie)
- 描述: 设置免打扰状态
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
DNDStatus Number 是 0代表关闭免打扰, 其它值代表开启免打扰,含义自由定义
cookie String 否 详细介绍见 关键词,可以传空串
如果是使用到了SDK的队列功能,则入会后需调用此接口,设置自己的为免打扰状态,防止系统再次推送自己
CRVideo_GetUserStatus(cookie)
- 描述: 获取AppID下所有用户在线状态
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_GetOneUserStatus(cookie)
- 描述: 获取AppID下指定用户的在线状态
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_StartUserStatusNotify(cookie)
- 描述: 开启用户的状态推送
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
cookie String 否 详细介绍见 关键词,可以传空串
AppID下所有用户状态有变化时(包括在线状态、空闲状态、免打扰状态),都会收到 CRVideo_NotifyUserStatus.callback 通知。开启后,用户量越大消息量越大,所以请按需开启。在 CRVideo_StartUserStatusNotify 前,应该先通过 CRVideo_GetUserStatus 获取所有用户状态。
CRVideo_StopUserStatusNotify(cookie)
- 描述: 关闭用户的状态推送
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_CallSuccess.callback = function(callID,cookie){}
- 描述: 回调,发起呼叫成功
- 回调参数: 参数类型含义
callID String 呼叫全局标识ID
cookie String 详细介绍见 关键词,可以传空串
CRVideo_CallFail.callback = function(callID,sdkErr,cookie){}
- 描述: 回调,发起呼叫失败
- 回调参数:
CRVideo_AcceptCallSuccess.callback = function(callID,cookie){}
- 描述: 回调,接受他人的呼叫成功
- 回调参数: 参数类型含义
callID String 呼叫全局标识ID
cookie String 详细介绍见 关键词,可以传空串
CRVideo_AcceptCallFail.callback = function(callID,sdkErr,cookie){}
- 描述: 回调,接受他人的呼叫失败
- 回调参数:
CRVideo_RejectCallSuccess.callback = function(callID,cookie){}
- 描述: 回调,拒绝他人的呼叫成功
- 回调参数: 参数类型含义
callID String 呼叫全局标识ID
cookie String 详细介绍见 关键词,可以传空串
CRVideo_RejectCallFail.callback = function(callID,sdkErr,cookie){}
- 描述: 回调,拒绝他人的呼叫失败
- 回调参数:
CRVideo_HangupCallSuccess.callback = function(callID,cookie){}
- 描述: 回调,挂断呼叫成功
- 回调参数: 参数类型含义
callID String 呼叫全局标识ID
cookie String 详细介绍见 关键词,可以传空串
CRVideo_HangupCallFail.callback = function(callID,sdkErr,cookie){}
- 描述: 回调,挂断呼叫失败
- 回调参数:
CRVideo_NotifyCallIn.callback = function(callID,MeetInfoObj,callerID,userExtDat){}
- 描述: 通知,有人呼叫自己
- 回调参数: 参数类型含义
callID String 呼叫全局标识ID
MeetInfoObj Object 房间信息对象,详见:CRVideo_RoomInfoObj
callerID String 对方呼叫人员的标识ID
userExtDat String 自定义扩展参数,没有则传空串
CRVideo_NotifyCallAccepted.callback = function(callID,MeetInfoObj,userExtDat){}
- 描述: 通知,呼叫被对方接受
- 回调参数: 参数类型含义
callID String 呼叫全局标识ID
MeetInfoObj Object 房间信息对象,详见:CRVideo_RoomInfoObj
userExtDat String 自定义扩展参数,没有则传空串
CRVideo_NotifyCallRejected.callback = function(callID,sdkErr,userExtDat){}
- 描述: 通知,呼叫被对方拒绝
- 回调参数: 参数类型含义
callID String 呼叫全局标识ID
sdkErr Number 错误码,详细见 错误码定义
userExtDat String 自定义扩展参数,没有则传空串
CRVideo_NotifyCallHangup.callback = function(callID,userExtDat){}
- 描述: 通知,呼叫被对方挂断
- 回调参数: 参数类型含义
callID String 呼叫全局标识ID
userExtDat String 自定义扩展参数,没有则传空串
CRVideo_SetDNDStatusSuccess.callback = function(cookie){}
- 描述: 回调,设置免打扰状态成功
- 回调参数: 参数类型含义
cookie String 详细介绍见 关键词,可以传空串
CRVideo_SetDNDStatusFail.callback = function(sdkErr,cookie){}
- 描述: 回调,设置免打扰状态失败
- 回调参数:
CRVideo_GetUserStatusSuccess.callback = function(userStatusArr,cookie){}
- 描述: 回调,获取用户在线状态成功
- 回调参数: 参数类型含义
userStatusArr Array 用户在线状态信息列表,[CRVideo_UserStatus, ...]
cookie String 详细介绍见 关键词,可以传空串
CRVideo_GetUserStatusFail.callback = function(sdkErr,cookie){}
- 描述: 回调,获取用户在线状态失败
- 回调参数:
CRVideo_StartUserStatusNotifyRslt.callback = function(sdkErr,cookie){}
- 描述: 回调,开启用户状态推送的结果
- 回调参数:
CRVideo_StopUserStatusNotifyRslt.callback = function(sdkErr,cookie){}
- 描述: 回调,停止用户状态推送的结果
- 回调参数:
CRVideo_NotifyUserStatus.callback = function(CRVideo_UserStatus){}
- 描述: 通知,用户的状态变化
- 回调参数: 参数类型含义
CRVideo_UserStatus Object 单个用户在线状态信息,类型定义: CRVideo_UserStatus
CRVideo_Invite(invitedUserID,userExtDat,cookie)
- 描述: 发送邀请
- 返回值:
返回inviteID(每个邀请对应的唯一ID) (string)
- 回调:
- 参数:
需要邀请对方加入房间时,userExtDat可以是房间信息 CRVideo_RoomInfoObj
CRVideo_AcceptInvite(inviteID,userExtDat,cookie)
- 描述: 接受对方发送的邀请
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
inviteID String 是 邀请ID,在收到邀请时获取
userExtDat String 否 自定义扩展参数,没有则传空串
cookie String 否 详细介绍见 关键词,可以传空串
收到邀请时,需要及时接受邀请或拒绝邀请,超时回应服务端将会自动拒绝本地邀请
CRVideo_RejectInvite(inviteID,userExtDat,cookie)
- 描述: 拒绝对方发送的邀请
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
inviteID String 是 邀请ID,在收到邀请时获取
userExtDat String 否 自定义扩展参数,没有则传空串
cookie String 否 详细介绍见 关键词,可以传空串
收到邀请时,需要及时接受邀请或拒绝邀请,超时回应服务端将会自动拒绝本地邀请
CRVideo_CancelInvite(inviteID,userExtDat,cookie)
- 描述: 取消自己发送的邀请
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
inviteID String 是 邀请ID,在发送邀请时接口返回
userExtDat String 否 自定义扩展参数,没有则传空串
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_InviteSuccess.callback = function(inviteID,cookie){}
- 描述: 回调,发送邀请成功
- 回调参数: 参数类型含义
inviteID String 邀请ID
cookie String 详细介绍见 关键词,可以传空串
CRVideo_InviteFail.callback = function(inviteID,sdkErr,cookie){}
- 描述: 回调,发送邀请失败
- 回调参数:
CRVideo_AcceptInviteSuccess.callback = function(inviteID,cookie){}
- 描述: 回调,接受对方发送的邀请成功
- 回调参数: 参数类型含义
inviteID String 邀请ID
cookie String 详细介绍见 关键词,可以传空串
CRVideo_AcceptInviteFail.callback = function(inviteID,sdkErr,cookie){}
- 描述: 回调,接受对方发送的邀请失败
- 回调参数:
CRVideo_RejectInviteSuccess.callback = function(inviteID,cookie){}
- 描述: 回调,拒绝对方发送的邀请成功
- 回调参数: 参数类型含义
inviteID String 邀请ID
cookie String 详细介绍见 关键词,可以传空串
CRVideo_RejectInviteFail.callback = function(inviteID,sdkErr,cookie){}
- 描述: 回调,拒绝对方发送的邀请失败
- 回调参数:
CRVideo_CancelInviteSuccess.callback = function(inviteID,cookie){}
- 描述: 回调,取消自己发送的邀请成功
- 回调参数: 参数类型含义
inviteID String 邀请ID
cookie String 详细介绍见 关键词,可以传空串
CRVideo_CancelInviteFail.callback = function(inviteID,sdkErr,cookie){}
- 描述: 回调,取消自己发送的邀请失败
- 回调参数:
CRVideo_NotifyInviteIn.callback = function(inviteID,inviterUserID,userExtDat){}
- 描述: 通知,收到别人的邀请
- 回调参数: 参数类型含义
inviteID String 邀请ID
inviterUserID String 发送邀请的用户ID
userExtDat String 自定义扩展参数,没有则传空串
CRVideo_NotifyInviteAccepted.callback = function(inviteID,userExtDat){}
- 描述: 通知,我发送的邀请被对方接受
- 回调参数: 参数类型含义
inviteID String 邀请ID
userExtDat String 自定义扩展参数,没有则传空串
CRVideo_NotifyInviteRejected.callback = function(inviteID,reason,userExtDat){}
- 描述: 通知,我发送的邀请被对方拒绝
- 回调参数: 参数类型含义
inviteID String 邀请ID
reason String 邀请被拒绝的原因,详见:错误码
userExtDat String 自定义扩展参数,没有则传空串
CRVideo_NotifyInviteCanceled.callback = function(inviteID,reason,userExtDat){}
- 描述: 通知,邀请已经被取消了
- 回调参数: 参数类型含义
inviteID String 邀请ID
reason String 邀请被取消的原因,详见:错误码
userExtDat String 自定义扩展参数,没有则传空串
CRVideo_CreateMeeting2(cookie)
- 描述: 创建房间
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_DestroyMeeting(meetID,cookie)
- 描述: 销毁房间
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
meetID Number 是 房间号
cookie String 否 详细介绍见 关键词,可以传空串
SDK创建的房间为固定房间,固定房间不会自动销毁,当该房间今后不再使用时,应当调用此接口销毁该房间
调用此接口后,房间内成员将收到 CRVideo_MeetingStopped.callback 通知
CRVideo_CreateMeetingSuccess.callback = function(MeetInfoObj,cookie){}
- 描述: 回调,创建房间成功
- 回调参数: 参数类型含义
MeetInfoObj Object 房间信息对象,详见:CRVideo_RoomInfoObj
cookie String 详细介绍见 关键词,可以传空串
CRVideo_CreateMeetingFail.callback = function(sdkErr,cookie){}
- 描述: 回调,创建房间失败
- 回调参数:
CRVideo_DestroyMeetingRslt.callback = function(sdkErr,cookie){}
- 描述: 回调,销毁房间的结果
- 回调参数:
CRVideo_MeetingStopped.callback = function(){}
- 描述: 通知,当前房间已被结束
CRVideo_EnterMeeting3(meetID,cookie)
- 描述: 进入房间
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
meetID Number 是 房间号
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_ExitMeeting()
- 描述: 离开房间
- 返回值:
无
- 回调:
无
CRVideo_Kickout(UID).then(function(resObject){}).catch(function(errObject){})
- 描述: 将房间内指定成员踢出房间
- 返回值:
返回一个Promise对象,成功返回resolveCallback,失败返回rejectCallback
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
- resObject,参数如下:
- errObject,参数如下: 参数类型必传含义
errCode Number 是 错误码,详细见 错误码定义
errDesc String 是 错误详情
CRVideo_Kickout(UID).then(resObj =>{
// 成功
const errCode = resObj.errCode;
const userID = resObj.userID;
}).catch(errObj =>{
// 失败
const errCode = errObj.errCode;
const errDesc = errObj.errDesc;
})
CRVideo_EnterMeetingRslt.callback = function(sdkErr,cookie){}
- 描述: 回调,进入房间的结果
- 回调参数:
CRVideo_UserEnterMeeting.callback = function(UID){}()
- 描述: 通知,有人进入房间
- 回调参数: 参数类型含义
UID String 用户ID, 详细介绍见 关键词
CRVideo_UserLeftMeeting.callback = function(UID){}()
- 描述: 通知,有人离开房间
- 回调参数: 参数类型含义
UID String 用户ID, 详细介绍见 关键词
CRVideo_MeetingDropped.callback = function(){}()
- 描述: 通知,从房间中掉线了
当收到此通知后,如果要继续会话,需再次调用 CRVideo_EnterMeeting3 接口重新进入房间,并可通过传cookie参数在进入房间成功的回调中来区分是第一次进入房间还是重新进入房间,以此来做不同的处理,详见Demo。
如果是Token鉴权登录,当Token过期时,也会强制从房间中退出并收到此通知,此时应先更新Token,再重新进入房间。
CRVideo_GetMainVideo()
- 描述: 获取当前哪个用户为主视频
- 返回值:
当前主视频用户ID
- 回调:
无
CRVideo_SetMainVideo(UID)
- 描述: 设置哪个用户为主视频
- 返回值:
无
- 回调:
无
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
CRVideo_SetMainVideoMode(mode,UID)
- 描述: 设置主视频模式
- 返回值:
无
- 回调:
无
- 参数: 参数类型必传含义
mode Number 是 主视频模式,详见 CRVideo_MAIN_VIDEO_MODE
UID String 是 用户ID, 详细介绍见 关键词
CRVideo_GetMainVideoMode()
- 描述: 获取当前主视频模式
- 返回值:
返回当前房间的主视频模式,详见 CRVideo_MAIN_VIDEO_MODE
CRVideo_SwitchToPage(mainPage,subPage).then(function(resObject){}).catch(function(errObject){})
- 描述: 功能区切换
- 返回值:
返回一个Promise对象,成功返回resolveCallback,失败返回rejectCallback
- 参数: 参数类型必传含义
mainPage Number 是 功能区类型,详见 CRVideo_MAIN_PAGE_TYPE
subPage String 否 子页面标识(如创建白板时返回的boardID:"2.58"),非必传
- resObject,参数如下: 参数类型必传含义
errCode Number 是 错误码,详细见 错误码定义
- errObject,参数如下: 参数类型必传含义
errCode Number 是 错误码,详细见 错误码定义
errDesc String 是 错误详情
CRVideo_GetCurrentMainPage()
- 描述: 获取当前主功能区
- 返回值:
返回当前的主功能区。功能区类型详见 CRVideo_MAIN_PAGE_TYPE
CRVideo_GetCurrentSubPage()
- 描述: 获取当前子页面
- 返回值:
返回当前的子页面标识,如白板的boardID。没有子页面标识的功能区,则返回 0.0
CRVideo_NotifyMainVideoChanged.callback = function(UID){}
- 描述: 通知,会话内主视频变化
- 回调参数: 参数类型含义
UID String 用户ID, 详细介绍见 关键词
CRVideo_NotifyMainVideoModeChanged.callback = function(mode){}
- 描述: 通知,会话内主视频模式变化
- 回调参数: 参数类型含义
mode Number 主视频模式,详见 CRVideo_MAIN_VIDEO_MODE
CRVideo_NotifySwitchToPage.callback = function(mainPage,subPage){}
- 描述: 通知,会话内功能区变化
- 回调参数: 参数类型含义
mainPage Number 功能区类型,详见 CRVideo_MAIN_PAGE_TYPE
subPage String 子页面标识(如创建白板时返回的boardID:"2.58"),非必传。没有子页面标识的功能区,则为 "0.0"
CRVideo_GetMeetingAttrs(keys, cookie)
- 描述: 获取房间部份属性
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
keys Array 是 需要查询的房间属性key,如:["key1", "key2"]
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_GetMeetingAllAttrs(cookie)
- 描述: 获取房间所有属性
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_SetMeetingAttrs(attrs ,options ,cookie)
- 描述: 重置房间属性集
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
attrs String 是 房间属性集,json格式,如:{"key1":"value1", "key2":"value2"} (key最大长度为64B,value最大长度为8KB)
options String 否 操作选项,json格式参见CRVideo_MeetingAttrOptions
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_AddOrUpdateMeetingAttrs(attrs ,options ,cookie)
- 描述: 增加或者更新房间属性
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
attrs String 是 房间属性集,json格式,如:{"key1":"value1", "key2":"value2"} (key最大长度为64B,value最大长度为8KB)
options String 否 操作选项,json格式参见CRVideo_MeetingAttrOptions
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_DelMeetingAttrs(keys ,options ,cookie)
- 描述: 删除房间属性
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
keys Array 是 需要删除的房间属性key,如:["key1", "key2"]
options String 否 操作选项,json格式参见CRVideo_MeetingAttrOptions
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_ClearMeetingAttrs(options ,cookie)
- 描述: 清除房间所有属性
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
options String 否 操作选项,json格式参见CRVideo_MeetingAttrOptions
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_GetUserAttrs(uids ,keys ,cookie)
- 描述: 获取指定用户的指定属性
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
uids Array 是 目标用户id列表,一次最多包含50个用, 如:["uid1","uid2"]
keys Array 否 将要获取的用户属性key列表(空数组或者不传表获取全部),如:["key1","key2"]
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_SetUserAttrs(UID ,attrs ,options ,cookie)
- 描述: 重置用户属性
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
attrs String 是 用户属性集, json格式,如:{"key1":"value1", "key2":"value2"} (key最大长度为64B,value最大长度为8KB)
options String 否 操作选项,json格式参见CRVideo_MeetingAttrOptions
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_AddOrUpdateUserAttrs(UID ,attrs ,options ,cookie)
- 描述: 增加或更新用户属性
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
attrs String 是 用户属性集, json格式,如:{"key1":"value1", "key2":"value2"} (key最大长度为64B,value最大长度为8KB)
options String 否 操作选项,json格式参见CRVideo_MeetingAttrOptions
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_DelUserAttrs(UID ,keys ,options ,cookie)
- 描述: 删除用户的特定属性
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
keys Array 是 需要删除的用户属性key列表,json格式,如:["key1","key2"]
options String 否 操作选项,json格式参见CRVideo_MeetingAttrOptions
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_ClearUserAttrs(uids ,options ,cookie)
- 描述: 清除特定用户的所有属性
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
uids Array | String 是 目标用户UID或UID数组
options String 否 操作选项,json格式参见CRVideo_MeetingAttrOptions
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_ClearAllUserAttrs(options ,cookie)
- 描述: 清除所有用户的所有属性
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
options String 否 操作选项,json格式参见CRVideo_MeetingAttrOptions
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_GetMeetingAttrsSuccess.callback = function(attr, cookie){}
- 描述: 回调,成功获取到房间指定属性
- 回调参数: 参数类型含义
attrs Object 房间属性,结构体请参见CRVideo_MeetingAttrObjs
cookie String 详细介绍见 关键词,可以传空串
CRVideo_GetMeetingAttrsFail.callback = function(sdkErr, cookie){}
- 描述: 回调,获取房间指定属性失败
- 回调参数:
CRVideo_GetMeetingAllAttrsSuccess.callback = function(attr, cookie){}
- 描述: 回调,成功获取到房间所有属性
- 回调参数: 参数类型含义
attrs Object 房间属性,结构体请参见CRVideo_MeetingAttrObjs
cookie String 详细介绍见 关键词,可以传空串
CRVideo_GetMeetingAllAttrsFail.callback = function(sdkErr, cookie){}
- 描述: 回调,获取房间属性失败
- 回调参数:
CRVideo_SetMeetingAttrsRslt.callback = function(sdkErr, cookie){}
- 描述: 回调,设置用户属性结果
- 回调参数:
CRVideo_AddOrUpdateMeetingAttrsRslt.callback = function(sdkErr, cookie){}
- 描述: 回调,增加或更新房间属性结果
- 回调参数:
CRVideo_DelMeetingAttrsRslt.callback = function(sdkErr, cookie){}
- 描述: 回调,删除房间属性结果
- 回调参数:
CRVideo_ClearMeetingAttrsRslt.callback = function(sdkErr, cookie){}
- 描述: 回调,清除房间属性结果
- 回调参数:
CRVideo_GetUserAttrsSuccess.callback = function(attrsMap, cookie){}
- 描述: 回调,获取房间内用户属性成功
- 回调参数: 参数类型含义
attrsMap Object 用户属性,结构体请参见CRVideo_UsrMeetingAttrObjs
cookie String 详细介绍见 关键词,可以传空串
CRVideo_GetUserAttrsFail.callback = function(sdkErr, cookie){}
- 描述: 回调,获取房间内用户属性失败
- 回调参数:
CRVideo_SetUserAttrsRslt.callback = function(sdkErr, cookie){}
- 描述: 回调,设置用户属性结果
- 回调参数:
CRVideo_AddOrUpdateUserAttrsRslt.callback = function(sdkErr, cookie){}
- 描述: 回调,增加或者更新用户属性结果
- 回调参数:
CRVideo_DelUserAttrsRslt.callback = function(sdkErr, cookie){}
- 描述: 回调,删除特定用户属性结果
- 回调参数:
CRVideo_ClearUserAttrsRslt.callback = function(sdkErr, cookie){}
- 描述: 回调,清除特定用户属性结果
- 回调参数:
CRVideo_ClearAllUserAttrsRslt.callback = function(sdkErr, cookie){}
- 描述: 回调,清除所有用户属性结果
- 回调参数:
CRVideo_NotifyMeetingAttrsChanged.callback = function(adds ,updates ,delKeys){}
- 描述: 通知,房间属性发生改变
- 回调参数: 参数类型含义
adds Object 增加房间属性集,结构体请参见CRVideo_MeetingAttrObjs
updates Object 变化的房间属性集,结构体请参见CRVideo_MeetingAttrObjs
delKeys Array 被删除的房间属性的数组列表,如:["key1", "key2"]
CRVideo_NotifyUserAttrsChanged.callback = function(UID ,adds ,updates ,delKeys){}
- 描述: 通知,某个用户属性发生改变
- 回调参数: 参数类型含义
UID String 用户ID, 详细介绍见 关键词
adds Object 增加用户属性集,结构体请参见CRVideo_MeetingAttrObjs
updates Object 变化的用户属性集,结构体请参见CRVideo_MeetingAttrObjs
delKeys Array 被删除的用户属性列表,json格式,如:["key1", "key2"]
CRVideo_GetAllMembers()
- 描述: 获取房间内所有成员的信息
- 返回值:
返回包含多个成员信息 CRVideo_MemberInfo 的列表数组:[memberInfo1, memberInfo2, ...]
- 回调:
无
CRVideo_GetMemberInfo(UID)
- 描述: 获取房间内指定成员的信息
- 返回值:
返回房间内指定成员的信息 CRVideo_MemberInfo
- 回调:
无
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
CRVideo_GetMemberNickName(UID)
- 描述: 获取房间内指定成员的昵称
- 返回值:
返回该成员的昵称 (String)
- 回调:
无
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
CRVideo_IsUserInMeeting(UID)
- 描述: 判断某个用户是否在房间中
- 返回值:
在房间中则返回 true,否则返回 false (Bool)
- 回调:
无
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
CRVideo_SetNickName(UID,newName).then(function(resObject){}).catch(function(errObject){})
CRVideo_NotifyNickNameChanged.callback = function(UID,oldName,newName){}
- 描述: 通知,房间内某个成员昵称变化
- 回调参数: 参数类型含义
UID String 用户ID, 详细介绍见 关键词
oldName String 旧昵称
newName String 新昵称
CRVideo_GetAudioMicNames()
- 描述: 获取本地麦克风设备列表
- 返回值:
返回麦克风设备列表Array,如:[MicInfoObj1, MicInfoObj2, ...],详见:CRVideo_MicInfoObj
- 回调:
无
CRVideo_GetAudioSpkNames()
- 描述: 获取本地扬声器设备列表
- 返回值:
返回扬声器设备列表Array,如:[SpeakerInfoObj1, SpeakerInfoObj2, ...],详见:CRVideo_SpeakerInfoObj
- 回调:
无
CRVideo_SetAudioCfg(AudioCfg)
- 描述: 设置本地音频参数
- 返回值:
无
- 回调:
无
- 参数: 参数类型必传含义
AudioCfg Object 是 本地音频配置,详细介绍见类型定义:CRVideo_AudioCfg
CRVideo_GetAudioCfg()
- 描述: 获取本地音频参数
- 返回值:
返回本地音频参数对象:CRVideo_AudioCfg
- 回调:
无
CRVideo_GetMicEnergy(UID)
- 描述: 获取指定成员的麦克风声音大小
- 返回值:
返回该成员当前麦克风声音大小,0-10
- 回调:
无
- 参数: 参数类型必传含义
CRVideo_OpenMic(UID)
- 描述: 打开指定成员的麦克风
- 返回值:
无
- 回调:
无
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
打开自已的麦克风时,先会进入到AOPENING状态,等服务器处理后才会进入AOPEN状态,此时说话才能被采集到。
CRVideo_CloseMic(UID)
- 描述: 关闭指定成员的麦克风
- 返回值:
无
- 回调:
无
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
关麦操作是立即生效的,本地会立即停止采集
CRVideo_GetAudioStatus(UID)
- 描述: 获取指定成员的麦克风状态
- 返回值:
返回该成员当前的麦克风状态:CRVideo_ASTATUS
- 回调:
无
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
CRVideo_SetAllAudioClose()
- 描述: 关闭房间内所有人麦克风
- 返回值:
无
- 回调:
无
CRVideo_PauseSpeaker()
- 描述: 暂停播放房间内通话声音(静音)
- 返回值:
无
- 回调:
无
CRVideo_PlaySpeaker()
- 描述: 恢复播放房间内通话声音
- 返回值:
无
- 回调:
无
CRVideo_AudioStatusChanged.callback = function(UID,oldStatus,newStatus){}
- 描述: 通知,成员麦克风状态变化
- 回调参数: 参数类型含义
UID String 用户ID, 详细介绍见 关键词
oldStatus Number 旧的麦克风状态,详见:CRVideo_ASTATUS
newStatus Number 新的麦克风状态,详见:CRVideo_ASTATUS
CRVideo_MicEnergyUpdate.callback = function(UID,oldLevel,newLevel){}
- 描述: 通知,成员麦克风声音能量变化
- 回调参数: 参数类型含义
UID String 用户ID, 详细介绍见 关键词
oldLevel Number 原来的说话声音强度等级,0-10
newLevel Number 现在的说话声音强度等级,0-10
CRVideo_CreatVideoObj(CreateUIParams)
- 描述: 创建成员视频UI显示对象
- 返回值:
返回成员视频UI显示对象 CRVideo_VideoObj
- 回调:
无
- 参数: 参数类型必传含义
CreateUIParams Object 否 详细介绍见:CRVideo_CreateUIParams
// 创建对象
const user1VideoObj = CRVideo_CRVideo_CreatVideoObj();
// 设置对象属性
const userVideoDOM = user1VideoObj.handler(); // 获取组件DOM
$('#userVideo').append(userVideoDOM); // 将组件DOM放到页面上
const nicknameStyle = {
left: "10px",
top: "10px",
backgroundColor: "rgba(0, 0, 0, .7)",
padding: "0 10px",
borderRadius: "15px",
display: "block"
}
user1VideoObj.setNickNameStyle(nicknameStyle); // 设置昵称样式
user1VideoObj.setVisibleNickName(true); // 设置是否显示昵称
user1VideoObj.setVideo(UID); // 设置显示成员摄像头画面
必须创建成员视频UI对象才能在网页上显示成员的摄像头画面
CRVideo_GetVideoCfg()
- 描述: 获取当前视频参数
- 返回值:
返回当前视频配置参数对象,详见:CRVideo_VideoCfg
- 回调:
无
CRVideo_SetVideoCfg(VideoCfg)
- 描述: 设置视频参数
- 返回值:
无
- 回调:
无
- 参数: 参数类型必传含义
VideoCfg Object 是 详细介绍见:CRVideo_VideoCfg
设置视频参数会根据浏览器支持的能力自适应,相关属性不一定能设置成功,超出浏览器能力时浏览器会选择适合的值。例如:设置fps:35,在chrome上不支持,最终结果是30fps,而在safari上最终结果是31fps
CRVideo_GetVideoStatus(UID)
- 描述: 获取指定成员的视频状态
- 返回值:
返回该用户的视频状态,详见:CRVideo_VSTATUS
- 回调:
无
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
CRVideo_GetDefaultVideo(UID)
- 描述: 获取指定成员的默认摄像头
- 返回值:
返回该成员的默认摄像头ID(Number),如:1
- 回调:
无
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
CRVideo_SetDefaultVideo(UID,videoID)
- 描述: 设置指定成员的默认摄像头
- 返回值:
无
- 回调:
无
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
videoID Number 是 摄像头ID
如果用户只有一个摄像头,可以不设置默认摄像头
如果用户有多个摄像头,但是只想用其中一个,需要把这个摄像头设置为默认摄像头(切换摄像头)
可以通过调用 CRVideo_GetAllVideoInfo 接口获取用户的摄像头列表
如果调用此接口设置了新的默认摄像头,房间内用户将会收到 CRVideo_DefVideoChanged.callback 接口通知
CRVideo_GetAllVideoInfo(UID)
- 描述: 获取指定成员的所有摄像头信息
- 返回值:
返回该用户摄像头信息列表Array,如:[VideoInfoObj1,VideoInfoObj2,...],详见:CRVideo_VideoInfoObj
- 回调:
无
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
CRVideo_GetOpenedVideoIDs(UID)
- 描述: 获取指定成员当前打开的摄像头ID列表
- 返回值:
返回该用户当前打开的摄像头ID列表集合,如:[1, 2, 3, ...]
- 回调:
无
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
CRVideo_OpenVideo(UID)
- 描述: 打开指定成员的摄像头
- 返回值:
无
- 回调:
无
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
打开指定成员的摄像头,以便本地和远端显示视频图像
调用此接口后,如果获取到对应的视频流,将会收到CRVideo_NotifyVideoStream.callback(#CRVideo_NotifyVideoStream) 接口通知
CRVideo_CloseVideo(UID)
- 描述: 关闭指定成员的摄像头
- 返回值:
无
- 回调:
无
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
CRVideo_SetEnableMutiVideo(UID,bool)
- 描述: 设置是否启用多摄像头
- 返回值:
无
- 回调:
无
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
bool bool 是 是否启用多摄像头
CRVideo_GetEnableMutiVideo(UID,bool)
- 描述: 获取当前是否启用多摄像头
- 返回值:
返回当前是否启用了多摄像头
- 回调:
无
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
CRVideo_AddStreamCam(videoStream,videoName)
- 描述: 添加WebRTC媒体流摄像头
- 返回值:
返回摄像头ID
- 参数: 参数类型必传含义
videoStream MediaStream 是 WebRTC媒体流,详见:MediaStream
videoName String 是 自定义摄像头名称,如:“媒体流摄像头1”
添加媒体流摄像头后,可以调用 CRVideo_GetAllVideoInfo 接口来获取该摄像头对应的videoID,打开此摄像头时需要传入videoID
CRVideo_RemoveStreamVideo(videoID)
- 描述: 移除WebRTC媒体流摄像头
- 返回值:
无
- 回调:
无
- 参数: 参数类型必传含义
videoID Number 是 需要移除的媒体流摄像头的ID
CRVideo_AddCanvasVCam(canvas,videoName,options)
- 描述: 添加canvas虚拟摄像头
- 返回值:
返回摄像头ID
- 参数: 参数类型必传含义
canvas Object 是 canvas element, Dom对象
videoName String 是 自定义摄像头名称,如:“canvas摄像头1”
options Object 否 保留参数
添加canvas摄像头后,可以调用 CRVideo_GetAllVideoInfo 接口来获取该摄像头对应的videoID,打开此摄像头时需要传入videoID
CRVideo_RemoveCanvasVCam(videoID)
- 描述: 移除canvas摄像头
- 返回值:
无
- 回调:
无
- 参数: 参数类型必传含义
videoID Number 是 需要移除的canvas摄像头的ID
CRVideo_SetVirtualBackground(jsonCfg).then(function(resObject){}).catch(function(errObject){})
CRVideo_VideoDevChanged.callback = function(UID){}
- 描述: 通知,某个成员的摄像头设备发生了变化
- 回调参数: 参数类型含义
UID String 用户ID, 详细介绍见 关键词
CRVideo_DefVideoChanged.callback = function(UID,videoID){}
- 描述: 通知,某个成员的默认摄像头发生了变化
- 回调参数: 参数类型含义
UID String 用户ID, 详细介绍见 关键词
videoID Number 摄像头ID
CRVideo_VideoStatusChanged.callback = function(UID,oldStatus,newStatus){}
- 描述: 通知,某个成员的视频状态发生了变化
- 回调参数: 参数类型含义
UID String 用户ID, 详细介绍见 关键词
oldStatus Number 旧的视频状态,详见:CRVideo_VSTATUS
newStatus Number 新的视频状态,详见:CRVideo_VSTATUS
CRVideo_NotifyVideoStream.callback = function(UID,videoStream){}
- 描述: 通知,获取到某个成员的WebRTC视频流
- 回调参数: 参数类型含义
UID String 用户ID, 详细介绍见 关键词
videoStream MediaStream 该成员的WebRTC视频流,详见:MediaStream
获取到成员的视频流后,可以给界面上的<video>标签设置srcObject属性显示此视频流的画面,一般不建议这样使用,可以直接通过创建该成员的视频UI组件 CRVideo_CreatVideoObj 来显示他的画面
CRVideo_CreatScreenShareObj(CreatParams)
- 描述: 创建屏幕共享显示UI组件
- 返回值:
返回屏幕共享UI显示对象 CRVideo_ScreenShareObj
- 回调:
无
- 参数: 参数类型必传含义
CreateUIParams Object 否 详细介绍见:CRVideo_CreateUIParams
CRVideo_SetScreenShareCfg(CRVideo_ScreenCfgObj)
- 描述: 配置屏幕共享参数
- 返回值:
无
- 回调:
无
- 参数: 参数类型必传含义
CRVideo_ScreenCfgObj Object 是 屏幕共享配置参数对象,详细介绍见:CRVideo_ScreenCfgObj
CRVideo_StartScreenShare()
- 描述: 开启本地屏幕共享
- 返回值:
无
- 回调:
CRVideo_StopScreenShare()
- 描述: 结束本地屏幕共享
- 返回值:
无
- 回调:
CRVideo_StartScreenMark()
- 描述: 开启房间内屏幕共享标注
- 返回值:
无
- 回调:
CRVideo_StopScreenMark()
- 描述: 停止房间内屏幕共享标注
- 返回值:
无
- 回调:
CRVideo_StartScreenShareRslt.callback = function(sdkErr){}
- 描述: 回调,开启屏幕共享的结果
- 回调参数: 参数类型含义
sdkErr Number 错误码,详细见 错误码定义
CRVideo_StopScreenShareRslt.callback = function(sdkErr){}
- 描述: 回调,停止屏幕共享的结果
- 回调参数: 参数类型含义
sdkErr Number 错误码,详细见 错误码定义
CRVideo_StartScreenMarkRslt.callback = function(sdkErr){}
- 描述: 回调,开启房间内屏幕共享标注的结果
- 回调参数: 参数类型含义
sdkErr Number 错误码,详细见 错误码定义
CRVideo_StopScreenMarkRslt.callback = function(sdkErr){}
- 描述: 回调,停止房间内屏幕共享标注的结果
- 回调参数: 参数类型含义
sdkErr Number 错误码,详细见 错误码定义
CRVideo_NotifyScreenShareStarted.callback = function(UID){}
- 描述: 通知,他人开启了屏幕共享
- 回调参数: 参数类型含义
UID String 用户ID, 详细介绍见 关键词
CRVideo_NotifyScreenShareStopped.callback = function(UID){}
- 描述: 通知,他人停止了屏幕共享
- 回调参数: 参数类型含义
UID String 用户ID, 详细介绍见 关键词
CRVideo_NotifyScreenMarkStarted.callback = function(UID){}
- 描述: 通知,房间内开启了屏幕共享标注
- 回调参数: 参数类型含义
UID String 用户ID, 详细介绍见 关键词
CRVideo_NotifyScreenMarkStopped.callback = function(UID){}
- 描述: 通知,房间内停止了屏幕共享标注
- 回调参数: 参数类型含义
UID String 用户ID, 详细介绍见 关键词
CRVideo_CreatMediaObj(CreatParams)
- 描述: 创建影音共享显示UI组件
- 返回值:
返回影音共享UI显示对象 CRVideo_MediaObj
- 回调:
无
- 参数: 参数类型必传含义
CreateUIParams Object 否 详细介绍见:CRVideo_CreateUIParams
无论是共享自己的影音还是收看别人共享的影音,都需要创建此对象
CRVideo_StartPlayMedia(mediaObj,file,locPlay,bPauseWhenFinished)
- 描述: 开始播放影音
- 返回值:
返回播放状态,0未在播放,1播放中
- 回调:
无
- 参数: 参数类型必传含义
mediaObj MediaContainerObj 是 封装好的videoUI对象,即需要播放的视频容器
file File 是 支持File类型文件也支持同源播放地址URL(String)
locPlay Number 否 是否仅仅本地播放(0:房间内播放,1:本地播放)缺省为0
bPauseWhenFinished Number 否 是否播放完毕自动暂在再最后一帧(0:播放完自动结束共享,1:播放完暂停在最后一帧,2:自动循环播放)缺省为0
MediaContainerObj 通过调用 CRVideo_CreatMediaObj 接口创建
CRVideo_PausePlayMedia(bPause)
- 描述: 暂停或恢复播放影音
- 返回值:
无
- 回调:
无
- 参数: 参数类型必传含义
bPause Bool 是 ture为暂停,false为播放
CRVideo_SetMediaplaypos(setPTS)
- 描述: 设置播放进度
- 返回值:
无
- 回调:
无
- 参数: 参数类型必传含义
setPTS Number 是 设置播放位置,单位:毫秒
CRVideo_SetMediaVolume(level)
- 描述: 设置本地媒体音量
- 返回值:
无
- 回调:
无
- 参数: 参数类型必传含义
level Number 是 本地音量 0-100
CRVideo_Getmediainfo(UID)
- 描述: 获取影音播放信息
- 返回值:
返回影音信息,详见:CRVideo_MediaInfoObj
- 回调:
无
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
CRVideo_Getmediaimg(UID,format)
- 描述: 获取影音图像数据
- 返回值:
当前播放的一帧图片
- 回调:
无
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
format String 否 图片格式,缺省为jpg
CRVideo_NotifyMediaOpened.callback = function(){}
- 描述: 通知,影音文件已打开
CRVideo_NotifyMediaStart.callback = function(UID){}
- 描述: 通知,影音开始播放
- 回调参数: 参数类型含义
UID String 用户ID, 详细介绍见 关键词
CRVideo_NotifyMediaStop.callback = function(){}
- 描述: 通知,影音播放停止
CRVideo_NotifyMediaPause.callback = function(UID,status){}
- 描述: 通知,影音播放暂停/取消暂停
- 回调参数: 参数类型含义
UID String 用户ID, 详细介绍见 关键词
status Number 是否暂停, 0:播放中 1:暂停中
CRVideo_NotifyPlayPosSetted.callback = function(setPTS){}
- 描述: 通知,影音播放位置更新
- 回调参数: 参数类型含义
setPTS Number 新的播放位置,单位:毫秒
CRVideo_Creatboard(title,width,height,pageCount).then(function(resObject){}).catch(function(errObject){})
- 描述: 创建白板
- 返回值:
返回一个Promise对象,成功返回resolveCallback,失败返回rejectCallback
- 参数: 参数类型必传含义
title String 是 白板名称
width Number 是 白板宽度
height Number 是 白板高度
pageCount Number 是 白板页数(一般空白板1页,文档白板为实际页数)
- resObject,参数如下: 参数类型必传含义
errCode Number 是 错误码,详细见 错误码定义
boardID String 是 白板标识,创建白板时返回,如:"2.58"
- errObject,参数如下: 参数类型必传含义
errCode Number 是 错误码,详细见 错误码定义
errDesc String 是 错误详情
CRVideo_Closeboard(boardID).then(function(resObject){}).catch(function(errObject){})
CRVideo_SetBoardCurPageNo(boardID,pageNo).then(function(resObject){}).catch(function(errObject){})
CRVideo_CreateBoardUIObj(jsonParams)
- 描述: 创建白板UI显示组件(白板容器)
- 返回值:
- 参数: 参数类型必传含义
jsonParams Object 否 保留参数,非必传
CRVideo_NotifyInitBoards.callback = function(CRVideo_BoardObjs){}
- 描述: 通知,初始化白板列表
- 回调参数: 参数类型含义
CRVideo_BoardObjs Array 白板对象的集合,详见:[CRVideo_BoardObj, CRVideo_BoardObj, ...]
CRVideo_NotifyCreateBoard.callback = function(CRVideo_BoardObj,UID){}
- 描述: 通知,创建了新的白板
- 回调参数: 参数类型含义
CRVideo_BoardObj Object 白板对象,详见:CRVideo_BoardObj
UID String 用户ID, 详细介绍见 关键词
CRVideo_NotifyCloseBoard.callback = function(boardID,UID){}
- 描述: 通知,关闭某个白板
- 回调参数: 参数类型含义
boardID String 白板标识,创建白板时返回,如:"2.58"
UID String 用户ID, 详细介绍见 关键词
CRVideo_NotifyBoardCurPageNo.callback = function(boardID,curPage,pagePos1,pagePos2,UID){}
- 描述: 通知,白板翻页
- 回调参数: 参数类型含义
boardID String 白板标识,创建白板时返回,如:"2.58"
curPage Number 目标页码
pagePos1 Number SDK保留参数
pagePos2 Number SDK保留参数
UID String 用户ID, 详细介绍见 关键词
CRVideo_StartSvrMixer(Cfgs,Contents,Outputs).then(function(resObject){}).catch(function(errObject){})
- 描述: 开始云端录制、云端直播推流
- 返回值:
返回一个Promise对象,成功返回resolveCallback,失败返回rejectCallback
- 参数: 参数类型必传含义
Cfgs Array 是 服务器混图配置列表,如:[ CRVideo_MutiMixerCfg, ... ]
Contents Array 是 服务器混图内容列表,如:[ CRVideo_MutiMixerContent, ... ]
Outputs Array 是 服务器混图输出列表,如:[ CRVideo_MutiMixerOutput, ... ]
- resObject,参数如下: 参数类型必传含义
errCode Number 是 错误码,详细见 错误码定义
- errObject,参数如下: 参数类型必传含义
errCode Number 是 错误码,详细见 错误码定义
errDesc String 是 错误详情
// 正确录制参数格式示例:
// 以下参数同时包含1.音视频和2.纯音频两个混图器,若只需要录制音视频,则应去掉id为2的混图器;
// MixerCfgs(多个混图器对象的录制配置参数列表集合,id要和MixerContents及MixerOutputs中的id一一对应):
[{
"id": 1, // 混图器1的录制参数配置
"streamTypes": 3, // 混图器类型为音视频
"cfg": {
"width": 1280,
"height": 720,
"frameRate": 15,
"bitRate": 2000000,
"defaultQP": 15
}
}, {
"id": 2, // 混图器2的录制参数配置
"streamTypes": 1, // 混图器类型为纯音频
"aCfg": {
"channelType": 1,
"audioFormat": 1
}
}]
// MixerContents(多个混图器对象的录制内容列表集合,id要和MixerCfgs及MixerOutputs中的id一一对应):
[{
"id": 1, // 混图器1的录制内容
"content": [{
"type": 0, // 录一个摄像头的画面
"left": 0,
"top": 0,
"width": 1280,
"height": 720,
"param": {
"camid": "张三.1"
},
"keepAspectRatio": 1
}, {
"type": 4, // 录一个时间戳
"left": 35,
"top": 3,
"width": 175,
"height": 32,
"keepAspectRatio": 1
}, {
"type": 7, // 录一个纯文本
"left": 40,
"top": 30,
"param": {
"text": "<span style='font-size:14px;color:#e21918'>张三</span>"
}
}]
}, {
"id": 2, // 混图2的录制内容
"content": [{
"type": 9, // 录张三的语音
"param": "张三"
}]
}]
// MixerOutputs(多个混图器对象的录制输出列表集合,id要和MixerCfgs及MixerContents中的id一一对应):
[{
"id": 1, // 混图器1的录制输出
"output": [{
"type": 0, // 输出一个录像视频文件
"filename": "/2020-07-21/张三的录像.mp4"
}, {
"type": 1, // 输出一个rtmp协议的直播流
"liveUrl": "rtmp://pub.cloudroom.com/live/xxxx"
}]
}, {
"id": 2, // 混图器2的录制输出
"output": [{
"type": 0, // 输出一个音频文件
"filename": "/2020-07-21/张三的录音.mp3"
}]
}]
启动云端功能有一定耗时,请关注混图器的状态变化事件 CRVideo_SvrMixerStateChanged 每个输出有私有的状态变化事件 CRVideo_SvrMixerOutputInfo
rCfgs、MutiMixerContents、MixerOutputs 三个参数均为数组,数组中的具体项请参考类型定义
当调用此接口后,会收到混图器状态变化通知,若状态一直为启动中,则可能参数不正确或者录制服务异常,请先检查传参格式是否正确(建议用json工具格式化后与文档对比)
CRVideo_UpdateSvrMixerContent(MixerContents).then(function(resObject){}).catch(function(errObject){})
- 描述: 更新云端录制、云端直播推流内容
- 返回值:
返回一个Promise对象,成功返回resolveCallback,失败返回rejectCallback
- 参数: 参数类型必传含义
MixerContents Array 是 服务器混图内容列表,如:[ CRVideo_MutiMixerContent, ... ]
- resObject,参数如下: 参数类型必传含义
errCode Number 是 错误码,详细见 错误码定义
- errObject,参数如下: 参数类型必传含义
errCode Number 是 错误码,详细见 错误码定义
errDesc String 是 错误详情
MixerContents 参数格式与 CRVideo_StartSvrMixer 时的 MixerContents 参数格式一致
CRVideo_StopSvrMixer().then(function(resObject){}).catch(function(errObject){})
- 描述: 停止云端录制、云端直播推流
- 返回值:
返回一个Promise对象,成功返回resolveCallback,失败返回rejectCallback
- resObject,参数如下: 参数类型必传含义
errCode Number 是 错误码,详细见 错误码定义
- errObject,参数如下: 参数类型必传含义
errCode Number 是 错误码,详细见 错误码定义
errDesc String 是 错误详情
停止有有一定耗时,请关注混图器的状态变化事件 CRVideo_SvrMixerStateChanged 每个输出有私有的状态变化事件 CRVideo_SvrMixerOutputInfo
CRVideo_GetSvrMixerState()
- 描述: 获取云端录制、云端直播推流状态
- 返回值:
返回当前云端录制、云端直播推流状态(Number),详见:CRVideo_MIXER_STATE
- 回调:
无
CRVideo_SvrMixerStateChanged.callback = function(MIXER_STATE,sdkErr){}
- 描述: 通知,云端录制、云端直播推流状态变化
- 回调参数: 参数类型含义
MIXER_STATE Number 当前云端录制、云端直播推流状态,详见:CRVideo_MIXER_STATE
sdkErr Number 错误码,详细见 错误码定义
CRVideo_SvrMixerOutputInfo.callback = function(MixerOutputInfo){}
- 描述: 通知,云端录制文件、云端直播推流信息变化
- 回调参数: 参数类型含义
MixerOutputInfo Object 云端录制文件、云端直播推流输出信息,详见:CRVideo_MixerOutputInfoObj
云端录制开启成功并不代表本次录制就一定是成功的,开启云端录制之后,需关注此通知。
服务器上一次完整的云端录制包括:启动录制、结束录制、生成录像文件、上传录像文件等过程,最终收到此通知,并且 state 为7时,则表示此次录制全部完成
VideoObj.id(ID)
- 描述: 设置/查询组件的独立ID
- 返回值:
不传参时返回改组件的独立ID,默认为空
- 参数: 参数类型必传含义
ID String 否 组件独立ID
非必须调用的方法。不调用此方法设置时,组件没有独立ID,所有调用 CRVideo_CreatVideoObj 方法创建的组件独立ID均为""
VideoObj.height(height)
- 描述: 设置/查询组件的高度
- 返回值:
不传参时返回组件的高度,单位px
- 参数: 参数类型必传含义
height String 否 组件高度,单位px
VideoObj.height('720px');
// 或者
const domHeight = VideoObj.height();
非必须调用的方法。不调用此方法设置时,默认为父元素高度的100%
VideoObj.width(width)
- 描述: 设置/查询组件的宽度
- 返回值:
不传参时返回组件的宽度,单位px
- 参数: 参数类型必传含义
width String 否 组件宽度,单位px
VideoObj.width('1280px');
// 或者
const domWidth = VideoObj.width();
非必须调用的方法。不调用此方法设置时,默认为父元素宽度的100%
VideoObj.left(left)
- 描述: 设置/查询组件在父元素中的left位置
- 返回值:
不传参时返回组件在父元素中的left位置,单位px
- 参数: 参数类型必传含义
left String 否 组件在父元素中的left位置,单位px
VideoObj.left('100px');
// 或者
const domLeftPos = VideoObj.left();
非必须调用的方法。不调用此方法设置时,默认为0
VideoObj.top(top)
- 描述: 设置/查询组件在父元素中的top位置
- 返回值:
不传参时返回组件在父元素中的top位置,单位px
- 参数: 参数类型必传含义
top String 否 组件在父元素中的top位置,单位px
VideoObj.top('100px');
// 或者
const domTopPos = VideoObj.top();
非必须调用的方法。不调用此方法设置时,默认为0
VideoObj.show()
- 描述: 显示组件
- 返回值:
无
组件默认是显示状态,在组件隐藏后调用此方法重新显示组件。SDK此时会重新订阅该组件所对应的视频流
VideoObj.hide()
- 描述: 隐藏组件
- 返回值:
无
组件默认是显示状态,调用此方法隐藏组件时,SDK会退订组件对应的视频流以节省带宽
VideoObj.handler()
- 描述: 获取该组件的DOM对象
- 返回值:
返回该组件的DOM对象
$('#userVideo').append(CRVideo_VideoObj.handler());
// 或者
$('#userScreen).append(CRVideo_ScreenShareObj.handler());
VideoObj.setVideo(UID,camID)
- 描述: 设置组件上要显示的视频画面,订阅视频
- 返回值:
无
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
camID Number 否 要显示画面的摄像头ID,-1为默认摄像头。可以不传,缺省为-1(仅组件类型为CRVideo_VideoObj时才需要传此参数)
VideoObj.setVideo('Victor');
组件类型为 CRVideo_VideoObj 时,可以传camID参数,为其它类型时不需要此参数
VideoObj.clear()
- 描述: 清除组件中的图像
- 返回值:
无
若需要再次显示图像,需重新调用 setVideo() 方法
VideoObj.isPicEmpty()
- 描述: 检查组件当前图像是否为空
- 返回值:
返回组件当前图像是否为空,0为空,1为非空
VideoObj.setNickNameStyle(style)
- 描述: 设置组件上昵称的显示样式
- 返回值:
无
- 参数: 参数类型必传含义
style Object 是 昵称显示css样式
const style = {
left: "10px",
top: "10px",
backgroundColor: "rgba(0, 0, 0, .7)",
padding: "0 10px",
borderRadius: "15px",
display: "block"
}
VideoObj.setNickNameStyle(style);
VideoObj.setNickNameContent(content)
- 描述: 设置组件上昵称的显示内容
- 返回值:
无
- 参数: 参数类型必传含义
content String 是 要显示的昵称内容
VideoObj.setNickNameContent("主持人的屏幕");
当组件类型为 CRVideo_VideoObj 时,昵称内容默认为该用户的昵称;
当组件类型为 CRVideo_ScreenShareObj 时,昵称内容默认为 xxx's screenShare;
当组件类型为 CRVideo_MeidaObj 时,昵称内容默认为 xxx's media;
若需要显示其他内容,可调用此接口修改
VideoObj.setVisibleNickName(isVisible)
- 描述: 设置组件上是否显示昵称
- 返回值:
无
- 参数: 参数类型必传含义
isVisible Bool 是 是否显示昵称,true:显示昵称,false:隐藏昵称
VideoObj.setVisibleNickName(true);
VideoObj.getVisibleNickName()
- 描述: 获取组件当前是否显示昵称
- 返回值:
返回组件当前是否显示昵称,true:显示昵称,false:隐藏昵称
VideoObj.dblClickFullScreen(bool)
- 描述: 设置/查询组件是否支持双击全屏
- 返回值:
不传参时返回组件是否支持双击全屏
- 参数: 参数类型必传含义
bool Bool 否 是否显示支持双击全屏,true:支持,false:不支持
VideoObj.savePic(fileName)
- 描述: 保存组件当前显示的一帧画面为图片文件
- 返回值:
无
- 参数: 参数类型必传含义
fileName String 是 保存的图片文件名,如:123.png
VideoObj.savePic('123.png');
调用此接口后,会自动触发浏览器的下载,图片将以下载的方式保存到本地,下载路径由用户行为决定,无法指定
支持常见的图片格式,如:jpg、jpeg、png、bmp、gif 等
组件上有视频画面时才可以调用此方法,否则SDK不会有任何响应
VideoObj.savePicToBase64(format)
- 描述: 保存组件当前显示的一帧画面为base64数据
- 返回值:
返回当前一帧画面的base64数据
- 参数: 参数类型必传含义
format String 否 图片格式,缺省为png
const picBase64 = VideoObj.savePicToBase64('png');
返回的base64数据带有mimeType头,比如:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA....",如不需要可将 "data:image/png;base64," 去掉,只保留后面的数据
支持常见的图片格式,如:jpg、jpeg、png、bmp、gif 等
组件上有视频画面时才可以调用此方法,否则SDK不会有任何响应
CRVideo_VideoObj.setVideo(UID, camID)
- 描述: 订阅成员摄像头画面
- 返回值:
无
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
camID Number 否 成员的摄像头ID,非必传。不传或传-1则订阅该成员默认摄像头。传0则为退订
若要退订某个UI组件上的视频,则调用:CRVideo_VideoObj.setVideo('',0) 即可
每个组件可以反复订阅不同成员的不同摄像头ID,订阅新的摄像头之后,此前订阅的摄像头则会自动退订
组件setVideo之后,若不退订或不进行销毁,则无论该组件是否显示,都会持续传输其所订阅的摄像头视频流,并占用资源
CRVideo_VideoObj.getVideoID()
- 描述: 查询组件当前订阅的摄像头ID
- 返回值:
返回组件当前订阅的摄像头ID
CRVideo_VideoObj.destroy()
- 描述: 销毁组件,退订视频
- 返回值:
无
调用此方法彻底销毁UI组件,组件销毁后,SDK会退订相关视频流,以节省带宽
CRVideo_ScreenShareObj.setVideo(UID)
- 描述: 设置组件显示的屏幕内容(谁的屏幕)
- 返回值:
无
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
CRVideo_ScreenShareObj.setMark(CRVideo_MarkOptions)
- 描述: 设置屏幕共享标注样式
- 返回值:
无
- 参数: 参数类型必传含义
CRVideo_MarkOptions Object 是 屏幕共享标注样式参数对象, 详见:CRVideo_MarkOptions
CRVideo_MediaObj.setVideo(UID)
- 描述: 设置组件显示的影音内容(谁的影音)
- 返回值:
无
- 参数: 参数类型必传含义
UID String 是 用户ID, 详细介绍见 关键词
CRVideo_BoardUIObj.handler()
- 描述: 获取白板UI组件的Dom对象
- 返回值:
返回白板UI组件的Dom对象(div)
CRVideo_BoardUIObj.setCurBoardPage(boardID,pageNo)
- 描述: 设置该组件上要显示的白板页
- 返回值:
无
- 参数: 参数类型必传含义
boardID String 是 白板标识,创建白板时返回,如:"2.58"
pageNo Number 是 白板页码
CRVideo_BoardUIObj.isScaledContents(bool)
- 描述: 设置(查询)当前组件是否内容允许缩放
- 返回值:
不传参时返回 true/false
- 参数: 参数类型必传含义
bool Bool 否 当前组件是否内容允许缩放
CRVideo_BoardUIObj.setTitleStyle(style)
- 描述: 设置当前组件的标题样式
- 返回值:
无
- 参数: 参数类型必传含义
style Object 是 当前组件的标题的css样式对象
CRVideo_BoardUIObj.setBoardStyle(style)
- 描述: 设置当前组件的canvas样式
- 返回值:
无
- 参数: 参数类型必传含义
style Object 是 当前组件的canvas的css样式对象
CRVideo_BoardUIObj.setPen(CRVideo_BoardPenOptions)
- 描述: 设置当前组件的画笔样式
- 返回值:
无
- 参数: 参数类型必传含义
CRVideo_BoardPenOptions Object 是 白板UI组件画笔配置对象,详见:CRVideo_BoardPenOptions
CRVideo_BoardUIObj.undo()
- 描述: 撤销一笔
- 返回值:
无
CRVideo_BoardUIObj.redo()
- 描述: 恢复一笔
- 返回值:
无
CRVideo_BoardUIObj.clear()
- 描述: 清空组件
- 返回值:
无
CRVideo_BoardUIObj.importImg(Image)
- 描述: 导入背景图片
- 返回值:
无
- 参数: 参数类型必传含义
Image Object 是 Image对象,通过new Image()获得,并设置其src属性后在onload事件中调用此方法导入
const img = new Image();
img.src = 'xxx.png'; // 支持在线url、本地相对路径、URL对象或base64URL
img.onload = (e) => {
CRVideo_BoardUIObj.importImg(img);
}
CRVideo_BoardUIObj.getCanvasElement()
- 描述: 导入背景图片
- 返回值:
返回白板容器中的canvas组件
CRVideo_SendCmd(UID,data,cookie)
- 描述: 发送点对点消息
- 返回值:
uuid,本次发送任务的ID
- 回调:
- 参数: 参数类型必传含义
UID String 是 发送目标用户ID
data String 是 要发送的数据,字符串
cookie String 否 详细介绍见 关键词,可以传空串
发送点对点消息不需要进入房间,但是需要登录呼叫系统,即 init 时 isCallSer 参数的值不能为false
可以通过此接口发送自定义的json格式消息来实现一些自定义功能
CRVideo_SendBuffer(UID,data,cookie)
- 描述: 发送大块数据
- 返回值:
uuid,本次发送任务的ID
- 回调:
- 参数: 参数类型必传含义
UID String 是 发送目标用户ID
data String 是 要发送的数据
cookie String 否 详细介绍见 关键词,可以传空串
发送进度通知 CRVideo_SendProgress.callback
发送结果回调 CRVideo_SendBufferRslt.callback
CRVideo_SendFile(UID,File,cookie)
- 描述: 发送文件数据
- 返回值:
uuid,本次发送任务的ID
- 回调:
- 参数: 参数类型必传含义
UID String 是 发送目标用户ID
File File 是 要发送的文件对象
cookie String 否 详细介绍见 关键词,可以传空串
发送进度通知 CRVideo_SendProgress.callback
发送结果回调 CRVideo_SendFileRslt.callback
CRVideo_CancelSend(taskID)
- 描述: 取消发送
- 返回值:
无
- 回调:
无
- 参数: 参数类型必传含义
taskID Number 是 要取消发送的任务ID
CRVideo_SendCmdRslt.callback = function(taskID,sdkErr,cookie){}
- 描述: 回调,发送点对点消息的结果
- 回调参数:
CRVideo_SendBufferRslt.callback = function(taskID,sdkErr,cookie){}
- 描述: 回调,发送大块数据的结果
- 回调参数:
CRVideo_SendFileRslt.callback = function(taskID,sdkErr,cookie){}
- 描述: 回调,发送文件的结果
- 回调参数:
CRVideo_SendProgress.callback = function(taskID,sendedLenth,totalLenth,cookie){}
- 描述: 通知,当前发送进度
- 回调参数: 参数类型含义
taskID String 发送任务id
sendedLenth Number 已发送的数据长度
totalLenth Number 需要发送的总长度
cookie String 详细介绍见 关键词,可以传空串
CRVideo_NotifyCmdData.callback = function(UID,data){}
- 描述: 通知,收到点对点消息
- 回调参数: 参数类型含义
UID String 消息来源用户ID
data String 收到的数据
CRVideo_NotifyBufferData.callback = function(UID,data){}
- 描述: 通知,收到大块数据
- 回调参数: 参数类型含义
UID String 数据来源用户ID
data String 收到的数据
CRVideo_NotifyFileData.callback = function(UID,fileBuffer,fileName){}
- 描述: 通知,收到文件数据
- 回调参数: 参数类型含义
UID String 文件来源用户ID
fileBuffer ArrayBuffer 收到的文件数据, ArrayBuffer
fileName String 收到的文件文件名
// 将ArrayBuffer转成url并借助a标签自动下载
const blob = new Blob([fileBuffer]);
const url = window.URL.createObjectURL(blob);
const a = document.createElement('a');
a.style.display = 'none';
a.href = url;
a.download = fileName;
document.body.appendChild(a);
a.click();
收到的文件数据为ArrayBuffer格式,需要业务层根据需要转成url下载
CRVideo_SendMeetingCustomMsg(stringMsg,cookie)
- 描述: 发送房间内广播消息
- 返回值:
无
- 回调:
- 参数: 参数类型必传含义
stringMsg String 是 要发送的消息数据
cookie String 否 详细介绍见 关键词,可以传空串
CRVideo_SendMeetingCustomMsgRslt.callback = function(sdkErr,cookie){}
- 描述: 回调,发送房间内广播消息的结果
- 回调参数:
CRVideo_NotifyMeetingCustomMsg.callback = function(UID,stringMsg){}
- 描述: 通知,收到房间内广播消息
- 回调参数: 参数类型含义
UID String 消息来源用户ID
stringMsg String 收到的消息数据