API

API接口主要分为:基础函数初始化/反初始化登录/注销成员管理队列管理透明通道/呼叫排队房间管理音频管理视频管理屏幕共享影音共享本地录制/本地直播云端录制/互动直播电子白板/文档共享

接口描述

基础函数:

方式 接口 描述
主调 getSDKVer 获取SDK版本号
sdkPath 获取sdk所在的目录
enableLog2File 设置是否开启日志
enableLogReport 设置是否开启日志上报
setSDKParams 设置SDK参数
setFileUploadRate 文件上传的流量控制
setFileDownloadRate 文件下载的流量控制
setAliyunOssAccountInfo 设置阿里云OSS信息

初始化/反初始化:

方式 接口 描述
主调 init2 SDK初始化
uninit SDK反初始化

登录/注销:

方式 接口 描述
主调 login 登录
logout 注销
回调 loginSuccess 登陆成功
loginFail 登录失败

成员管理:

方式 接口 描述
主调 getAllMembers 房间成员列表
getMemberInfo 房间成员信息
getMemberNickName 房间成员昵称
isUserInMeeting 用户是否在房间中
setNickName 设置某个用户的昵称

队列管理

方式 接口 描述
主调 initQueueDat 初始化队列
refreshAllQueueStatus 刷新所有队列状态
getAllQueueInfo 查询队列
getQueueStatus 获取队列状态
getQueuingInfo 获取我的排队信息
getServingQueues 获取我服务的所有队列
getSessionInfo 获取我的会话信息
startQueuing2 开始排队
stopQueuing 停止排队
startService2 开始服务队列
stopService 停止服务队列
reqAssignUser 请求分配一个客户
acceptAssignUser 接受分配的客户
rejectAssignUser 拒绝分配的客户
回调 initQueueDatRslt 列初始化操作结果
queueStatusChanged 队列状态变化通知
queuingInfoChanged 排队信息变化通知
startQueuingRslt 开始排队通知
stopQueuingRslt 停止排队通知
startServiceRslt 开始服务队列通知
stopServiceRslt 停止服务队列通知
responseAssignUserRslt 响应分配客户操作结果
autoAssignUser 自动分配用户通知
reqAssignUserRslt 请求分配用户结果
cancelAssignUser 分配用户被取消

透明通道/呼叫排队

方式 接口 描述
主调 call 发起呼叫
acceptCall 接受对方发起的呼叫
rejectCall 拒绝对方发起的呼叫
hungupCall 挂断呼叫
setDNDStatus 设置免打扰状态
getUserStatus 获取企业下所有用户在线状态
getOneUserStatus 获取企业下指定用户的在线状态
startUserStatusNotify 开启用户的状态推送
stopUserStatusNotify 关闭用户的状态推送
sendCmd 发送小块数据
sendBuffer 发送大块数据
sendFile 发送文件(分块发送 )
cancelSend 取消数据发送
sendIMmsg 发送点对点消息
回调 callSuccess 发起呼叫操作成功
callFail 发起呼叫操作失败
acceptCallSuccess 接受他人呼叫操作成功
acceptCallFail 接受他人呼叫操作失败
rejectCallSuccess 拒绝他人的呼叫成功
rejectCallFail 拒绝他人的呼叫失败
hangupCallSuccess 挂断他人的呼叫成功
hangupCallFail 挂断他人的呼叫失败
notifyCallIn 通知有人呼入
notifyCallAccepted 通知呼叫被对方接受
notifyCallRejected 通知呼叫被对方拒绝
notifyCallHungup 通知呼叫被对方挂断
setDNDStatusSuccess 设置免打扰状态操作成功
setDNDStatusFailed 设置免打扰状态操作失败
getUserStatusSuccess 获取所有用户在线状态成功
getUserStatusFail 获取所有用户在线状态失败
startUserStatusNotifyRslt 开启用户状态推送结果
stopUserStatusNotifyRslt 关闭用户状态推送结果
notifyUserStatus 用户状态变化通知
sendCmdRlst 发送小块数据
sendBufferRlst 发送大块数据
sendFileRlst 发送文件
sendProgress 发送数据时,通知发送进度
cancelSendRlst 取消发送响应
notifyCmdData 通知收到小块数据
notifyBufferData 通知收到大块数据
notifyFileData 通知收到文件数据
notifyCancelSend 通知取消发送文件数据
sendIMmsgRlst 发送点对点消息结果
notifyIMmsg SDK通知收到IM消息

房间管理

方式 接口 描述
主调 switchtopage 功能切换
getcurrentmainpage 获取当前主功能区
getcurrentsubpage 获取当前子页面
getMainVideo 获取当前哪个用户为主视频
setMainVideo 设置当前哪个用户为主视频
createMeeting 创建房间
destroyMeeting 销毁房间
getMeetings 获取房间列表
enterMeeting 进入房间
exitMeeting 离开房间
stopMeeting 结束房间
回调 enterMeetingRslt 进入房间结果
stopMeetingRslt 结束房间结果
userEnterMeeting 有人进入房间通知
meetingStopped 房间被结束通知
meetingDropped 房间掉线通知
userLeftMeeting 有人离开房间通知
lineOff 通知自己掉线
createMeetingSuccess 创建房间成功
createMeetingFail 创建房间失败
destroyMeetingRslt 销毁房间响应
getMeetingsSuccess 获取房间列表成功
getMeetingsFail 获取房间列表失败
setNickNameRsp 设置房间成员昵称的结果
notifyNickNameChanged 某用户改变了昵称
notifyVideoWallMode2 会话内视频分屏模式通知
notifyMainVideoChanged 会话内主视频变化通知
notifySwitchToPage 会话内主功能页切换通知
defVideoChanged 通知用户的视频默认设备有变化
netStateChanged 通知我的网络变化

音频管理

方式 接口 描述
主调 setMediacfg 设置音频配置
getMediacfg 获取音频参数
getAudioMicNames 麦克风设备列表
getAudioSpkNames 扬声器设备列表
setAudioCfg 麦克风设置
getAudioCfg 获取麦克风设置
getMicEnergy 麦克风声音大小
openMic 打开麦克风
closeMic 关闭麦克风
getAudioStatus 麦克风状态
getMicVolume 获取麦克风音量
setMicVolume 设置麦克风音量
getSpeakerVolume 获取扬声器音量
setSpeakerVolume 设置扬声器音量
setAllAudioClose 关闭所有人麦克风
回调 audioDevChanged 麦克风设备变化
audioStatusChanged 麦克风状态变化
micEnergyUpdate 麦克风声音变化

视频管理

方式 接口 描述
主调 getVideoWallMode2 获取视频墙当前分屏模式
setVideoWallMode2 设置视频墙分屏模式
getVideoCfg 获取视频参数
setVideoCfg 设置视频参数
getVideoStatus 获取视频状态
getDefaultVideo 获取默认视频
setDefaultVideo 设置默认视频
getAllVideoInfo 摄像头设备列表
setVideoDenoise 开启或关闭摄像头降噪处理
getVideoDenoise 获取是否开启摄像头降噪
createScreenCamDev 创建桌面摄像头(sdk最大支持5个)
updateScreenCamDev 更新桌面摄像头
destroyScreenCamDev 消毁桌面摄像头
createCustomVideoDev 创建自定义摄像头(sdk最大支持5个)
destroyCustomVideoDev 消毁自定义摄像头
inputCustomVideoDat 输入摄像头图像数据
getWatchableVideos 房间内可观看摄像头列表
openVideo 打开用户的摄像头
closeVideo 关闭用户的摄像头
getEnableMutiVideo 获取是否启用多摄像头
getVideoImg 摄像头图像数据
showVideoAdvCfgDlg 调出摄像头驱动的高级配置(只对真实物理摄像头有效)
setLocVideoAttributes 视频设备私有参数配置
getLocVideoAttributes 获取某个摄像头私有参数
setEnableMutiVideo 设置用户是否启用多摄像头
addIPCam 添加网络摄像头
delIPCam 移除网络摄像头
回调 videoDevChanged 摄像头设备变化
videoStatusChanged 视频状态变化

屏幕共享

方式 接口 描述
主调 getScreenShareCfg 获取屏幕共享配置
setScreenShareCfg 设置屏幕共享配置
startScreenShare 停止屏幕共享
requestShare 请求某人开启屏幕共享
cancelShareRequestion 取消屏幕共享请求
rejectShareRequestion 拒绝分享请求
getShareScreenDecodeImg 屏幕共享图像数据
setCustomizeScreenImg 自定义的抓屏图像数据
giveCtrlRight 赋予控制权限
releaseCtrlRight 收回控制权限
sendMouseCtrlMsg 发送鼠标控制消息
sendKeyCtrlMsg 发送键盘控制消息
回调 startScreenShareRslt 开启屏幕共享的响应事件
notifyRequestShare 请求屏幕共享通知
stopScreenShareRslt 停止屏幕共享的响应事件
notifyCancelShareRequestion 取消屏幕共享请求通知
notifyRejectShareRequestion 拒绝屏幕共享请求通知

影音共享

方式 接口 描述
主调 startPlayMedia 开始播放影音
pausePlayMedia 暂停或恢复播放影音
stopPlayMedia 停止播放影音
setMediaplaypos 设置播放进度
getAllFilesInMediaPath 影音文件列表
getmediainfo 影音播放信息
getmediaimg 获取影音图像数据
startGetAudioPCM 开始获取语音pcm数据
stopGetAudioPCM 停止获取语音pcm数据
回调 notifyMediaOpened 通知影音文件打开
notifyMediaStart 通知影音开始播放
notifyMediaStop 通知影音播放停止
notifyMediaPause 通知影音播放是否暂停
notifyPlayPosSetted 通知更新影音播放进度
notifyAudioPCMDat 通知语音PCM数据

本地录制/本地直播

方式 接口 描述
主调 createLocMixer 创建本地混图器
updateLocMixerContent 更新本地混图器内容
destroyLocMixer 消毁本地混图器
getLocMixerState 获取本地混图器状态
addLocMixerOutput 开启本地录制、直播推流
rmLocMixerOutput 停止本地录制、直播推流
getAllRecordFiles 录制文件列表
cancelFileTransfer 取消传输
cancelUploadRecordFile 取消上传录像文件
uploadRecordFile 上传录像文件
playbackRecordFile 回放录制文件
回调 locMixerStateChanged 本地录制、本地直播状态变化通知
locMixerOutputInfo 本地录制文件、本地直播信息通知
notifyRecordFileStateChanged 通知录制文件状态更改
notifyRecordFileUploadProgress 通知上传录制文件进度
uploadRecordFileErr 录制文件上传错误

云端录制/互动直播

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

电子白板/文档共享

方式 接口 描述
主调 createboard 创建白板
closeboard 关闭白板
initBoardPageDat 初始化白板图元数据
createElementID 生成白板图元ID
addboardelement 添加图元信息
modifyBoardElement 修改图元信息
delboardelement 删除图元
setmousehotspot 设置白板鼠标热点
setBoardCurPageNo 白板翻页
listNetDiskDocFile 查询文档列表
uploadDocFileToNetDisk 上传文档并转换
downloadDocSrcFile 下载源始文档
cancelTransforNetDiskDocFile 取消文档传输
deleteNetDiskDocFile 删除文档
getNetDiskDocFilePageInfo 获取文档的转换信息
downloadNetDiskDocFilePage 下载文档转换后的页文件
setPicResource 添加图片资源
回调 notifyInitBoards 通知初始化电子白板列表
notifyInitBoardPageDat 通知初始化白板内图元数据
notifyCreateBoard 通知创建白板
notifyCloseBoard 通知关闭白板
notifyAddBoardElement 通知添加图元信息
notifyModifyBoardElement 通知图元信息被修改
notifyDelBoardElement 通知删除图元
notifyMouseHotSpot 通知白板鼠标热点
notifyBoardCurPageNo 通知白板翻页
undoEnableChange 通知白板的“撤消”功能是否可用
redoEnableChange 通知白板的“恢复”功能是否可用
listNetDiskDocFileRslt 通知查询文档列表结果
getNetDiskDocFilePageInfoRslt 通知查询文档转换结果
deleteNetDiskDocFileRslt 通知删除文档结果
notifyNetDiskDocFileTrsfProgress 通知文档传输进度

Http文件管理组件

方式 接口 描述
主调 startHttpMgr 开启http文档上传下载功能
stopHttpMgr 停止http文档上传下载功能
getAllTransferInfos 获取所有本地上传、下载文件信息
getTransferInfo 获取本地指定文件的上传、下载文件信息
startTransferFile 开始/取消传输文件
cancelFileTransfer 取消传输
rmTransferInfo 删除传输记录
回调 fileStateChanged 通知用户文件状态更改
fileProgress 通知文件传输(上传/下载)进度
fileFinished 通知用户文件传输结束
fileHttpRspHeader 通知http响应消息的header数据
fileHttpRspContent 通知上传完成后,http的响应内容

接口详情

string getSDKVer()

  • 功能: 获取SDK版本号

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

string sdkPath()

  • 功能: 获取sdk所在的目录

  • 返回值:返回sdk所在的目录

void enableLog2File(int bEnable)

  • 功能: 设置是否开启日志

  • 返回值:无

参数 类型 含义
bEnable int 1表示开启日志,0表示不开启日志

SDK中日志功能默认是打开的,这个接口在init或init2之前可调用

void enableLogReport(int bEnable)

  • 功能: 设置是否开启日志上报

  • 返回值:无

参数 类型 含义
bEnable int 1表示开启日志上报,0表示不开启日志上报

SDK中日志上报默认是打开的,这个接口在init或init2之前可调用

void setSDKParams(string jsonVal)

  • 功能: 设置SDK参数

  • 返回值:无

  • 参数:json格式,具体可用参数如下:

//使用格式如下:
{"NoQueue":	0}
参数 取值 含义
NoQueue 0/1(缺省:0) 设为1可加快登录速度(适合于不使用sdk的排队功能的业务,如:临柜双录业务、链接入 会业务)
Timeout (缺 省:90000) 网络通信超时时间,单位是毫秒
DatEncType 0/1 (缺省:1) 数据加密类型(0:敏感数据加密,1:全面加密)

这个接口在init之前调用有效

void setFileUploadRate(int maxbps)

  • 功能: 文件上传的流量控制(SDK默认不开启流控,目前对文件上传控制的功能有:录制文件上传、网盘文件上传。)

  • 返回值:无

参数 类型 含义
maxbps int 每秒上传的最大字节数,小于等于0表示不开启流控

void setFileDownloadRate(int maxBytePerSec)

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

  • 返回值:无

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

void setAliyunOssAccountInfo(string accessKey,string accessSecret)

  • 功能: 设置阿里云OSS信息

  • 返回值:无

参数 类型 含义
accessKey string 用于标示用户
accessSecret string 用户用于加密签名字符串和OSS用来验证签名字符串的密钥

参考阿里云的用户签名验证相关文档 :https://help.aliyun.com/document_detail/31950.html?spm=a2c4g.11186623.6.707.44c0734ctzHsOa

int init_2(string sdkUsePath, int isCallSer, int isMediaSer, int isHttp)

  • 功能: 登录

  • 返回值:返回错误码(错误码为CRVIDEOSDK_NOERR表示没有错误)(int)

参数 类型 含义
sdkUsePath string SDK工作目录,用于存储配置文件、临时文件、录制文件、影音文件、日志等文件,如果传空值,则默认为sdk的安装目录
isCallSer int 是否启用callSer模块。 0为不启用,1为启用。(可缺省,缺省为1)
isMediaSer int 是否启用mediaSer模块。 0为不启用,1为启用,(可缺省,缺省为1)
isHttp int 是否启用http模块。0为不启用,1为启用,(可缺省,缺省为0)
  • 注意:程序开始时需要调用init_2,程序结束时调用uninit,整个程序的生命周期中只进行一次初始化和反初始化。
  • 注意目录的读写权限,如果目录只读,则无法在此目录下生成其他文件和文件夹

void uninit()

  • 功能: SDK反初始化

  • 返回值:无

  • 参数:无

void setServerAddr(string serverList)

  • 功能: 设置服务器地址
  • 返回值:无
参数 类型 含义
serverList string 服务器地址,多个服务器地址使用分号隔开(如:www.cloudroom.com:8080;183.60.47.52:8080;)

void login(string appID, string md5_appSecret, string nickName, string userID, string privAuthCode, string cookie)

  • 功能: 登录
  • 返回值:无
参数 类型 含义
appID string appID用于区分不同的项目,每个项目都有属于自己的唯一的appID,不同appID的项目完全独立,无法相互通信。appID请联系云屋销售获取,并开通相关套餐和功能权限。
md5_appSecret string appID对应的密码,可登录云屋管理后台修改。
nickName string 昵称
userID string 用户ID,在登录和加入房间时传入,用于标识不同的用户。 同一个项目下的userID需要保证唯一
privAuthCode string 可缺省。自定义验证码(有复杂要求的,可以使用json格式,不需要时传空字符串)
cookie string 可缺省。详细介绍见关键词

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

void loginSuccess(string usrID, string cookie)

  • 功能: 登录成功回调
  • 返回值:无

void loginFail(CRVIDEOSDK_ERR_DEF sdkErr, string &cookie)

  • 功能: 登录失败回调,登录出错,可以弹出错误提示,或调用登录接口再次重试登录

void logout()

  • 功能: 注销

退出程序时,必须注销本次登录,然后再进行SDK反初始化操作

string getAllMembers()

  • 功能: 房间成员列表

  • 返回值:返回含多个成员信息,json格式,参见MembersObj

string getMemberInfo(string userID)

  • 功能: 返回房间内指定成员信息

  • 返回值: userID的成员信息,json格式,参见MemberObj

string getMemberNickName(string userID)

  • 功能: 房间成员昵称

  • 返回值:用户userID的昵称(string)

bool isUserInMeeting(string userID)

  • 功能: 用户是否在房间中

  • 返回值:如果用户存在则返回true,否则返回false(bool)

void setNickName(string userid, string strNickName)

  • 功能: 设置某个用户的昵称

  • 返回值: 无

参数 类型 含义
userid string 用户ID
strNickName string 新的用户昵称

回调函数 setNickNameRsp 调用此接口如果设置成功,其他会话用户会收到 notifyNickNameChanged

string getScreenShareCfg()

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

  • 返回值:屏幕共享配置,json格式,参见screenShareCfgObj

void setScreenShareCfg(string jsonCfg)

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

  • 返回值:无

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

void startScreenShare()

  • 功能: 开启屏幕共享

  • 返回值:无

void stopScreenShare()

  • 功能: 停止屏幕共享

  • 返回值:无

void rejectShareRequestion(string requesterId, string param)

  • 功能: 拒绝分享请求
  • 返回值:无

void setCustomizeScreenImg(video_FORMAT format, int width, int heigh, string dat)

  • 功能: 自定义的抓屏图像数据

  • 返回值:无

参数 类型 含义
format video_FORMAT 视频格式
width int 图像的宽度
heigh int 图像的高度
dat string 承载argb数据,base64编码

void giveCtrlRight(string userID)

  • 功能: 赋予控制权限

  • 返回值:无

参数 类型 含义
userID string 用户ID

void releaseCtrlRight(string userID)

  • 功能: 收回控制权限

  • 返回值:无

参数 类型 含义
userID string 用户ID

void sendMouseCtrlMsg(MOUSE_MSG_TYPE msgType,MOUSE_KEY_TYPE mouseMsgType, int x, int y)

  • 功能: 发送鼠标控制消息

  • 返回值:无

参数 类型 含义
msgType MOUSE_MSG_TYPE 鼠标事件类型
mouseMsgType MOUSE_KEY_TYPE 鼠标键类型
x int 鼠标在屏幕中的横坐标
y int 鼠标在屏幕中的纵坐标

void sendKeyCtrlMsg(KEY_MSG_TYPE keyMsgType, int vk, int bExtendedKey)

  • 功能: 发送键盘控制消息

  • 返回值:无

参数 类型 含义
keyMsgType KEY_MSG_TYPE 键盘事件类型
vk int 键盘虚拟键值
bExtendedKey int -

string getShareScreenDecodeImg()

  • 功能: 屏幕共享图像数据

  • 返回值:获取屏幕共享图像数据。json格式,参见(VideoImgObj)

void startScreenShareRslt(int sdkErr)

  • 功能: 开启屏幕共享的响应事件
  • 参数
参数 类型 含义
sdkEr int 操作失败代码,定义见ERR_DEF

void stopScreenShareRslt(int sdkErr)

  • 功能停止屏幕共享的响应事件
  • 参数
参数 类型 含义
sdkEr int 操作失败代码,定义见ERR_DEF

void notifyRequestShare(const string& sharerId, const string& requesterId, const string& param)

  • 功能:SDK通知请求屏幕共享
  • 参数
参数 类型 含义
sharerId string 共享者ID
requesterId string 请求者ID
param string 自定义参数

void notifyCancelShareRequestion(const string& sharerId, const string& requesterId)

  • 功能:SDK通知取消屏幕共享请求
  • 参数
参数 类型 含义
sharerId string 请求者ID
requesterId string 共享者ID

void notifyRejectShareRequestion(const string& requesterId, const string& sharerId, const string¶m)

  • 功能:SDK通知拒绝屏幕共享请求
  • 参数
参数 类型 含义
requesterId string 请求者ID
sharerId string 共享者ID
param string 自定义参数

void requestShare(int sharerId, string param)

  • 功能: 请求某人开启屏幕共享

  • 返回值: 无

参数 类型 含义
sharerId int 需要开启共享的用户ID
param string 自定义参数,可传空

void cancelShareRequestion(int sharerId)

  • 功能: 取消屏幕共享请求

  • 返回值: 无

参数 类型 含义
sharerId int 需要取消的共享者ID,与requestShare的参数对应

void rejectShareRequestion(int requesterId, string param)

  • 功能: 拒绝分享请求

  • 返回值: 无

参数 类型 含义
requesterId int 请求者ID
param string 自定义参数,可传空

void notifyScreenShareStarted()

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

void notifyScreenShareStopped()

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

void notifyScreenShareData(const string &userID, const string &datInfo)

  • 功能:通知对端屏幕图像有变化
  • 参数
参数 类型 含义
userID string 用户ID
datInfo string 变化的区域;(可以只重绘这块区域)

void notifyCatchScreen()

  • 功能:自定义抓屏时,SDK通知使用者抓屏(在收到通知时, 一定要及时setCustomizeScreenImg,如果没图像时,可以先送入空图像)

void notifyGiveCtrlRight(const string &operId, const string &targetId)

  • 功能:SDK通知远程控制权限给予了某人
  • 参数
参数 类型 含义
operId string 操作的用户ID
targetId string 控制权限给予了谁

void notifyReleaseCtrlRight(string operId, string targetId )

  • 功能:SDK通知收回屏幕共享操作权限
  • 参数
参数 类型 含义
operId string 操作的用户ID
targetId string 收回了谁的控制权限

void notifyShareRectChanged(int x, int y, int w, int h)

  • 功能:通知屏幕共享大小改变

int createLocMixer(string mixerID, string mixerCfg, string mixerContent)

  • 功能: 创建本地混图器

  • 返回值: 错误码

  • 参数
参数 类型 含义
mixerID string 混图器唯一标识
mixerCfg MixerCfgObj 混图器规格配置,json格式
mixerContent MixerContentObj 混图器内容配置,json格式

int updateLocMixerContent(string mixerID, string mixerContent)

  • 功能: 更新本地混图器内容

  • 返回值: 错误码

  • 参数
参数 类型 含义
mixerID string 混图器唯一标识
mixerContent MixerContentObj 混图器内容配置,json格式

void destroyLocMixer(string mixerID)

  • 功能: 消毁本地混图器

  • 返回值: 无

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

int getLocMixerState(string mixerID)

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

  • 返回值: 返回本地混图器状态,可参考 MIXER_STATE

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

int addLocMixerOutput(string mixerID,string mixerOutput)

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

  • 返回值: 错误码

  • 参数
参数 类型 含义
mixerID string 混图器唯一标识,请确保创建了有效的混图器createLocMixer
mixerOutput MixerOutputObj 混图器输出配置,json格式
  • 可以一次添加多个输出,也可以依据业务需要稍后再添加新的输出;
  • 多个输出不能同名、或同一url;
  • 每个输出,有独立的信息通知,请见事件locMixerOutputInfo.如果输出异常时,将自动停止;

void rmLocMixerOutput(string mixerID, string nameOrUrl)

  • 功能: 停止本地录制、直播推流

  • 返回值: 无

  • 参数
参数 类型 含义
mixerID string 混图器唯一标识
nameOrUrl string 要停止的录制文件名或直播url,支持多值,以";"分隔;

注意事项:所有输出停止后并不会消毁混图器,如果混图器不再需要请手工消毁;

string getAllRecordFiles()

  • 功能: 录制文件列表

  • 返回值:返回含多个录制文件信息,请见RecordFileInfoObj

void cancelFileTransfer(string fileName)

  • 功能: 取消传输

  • 返回值:无

  • 参数
参数 类型 含义
fileName string 本地路径文件名

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

void cancelUploadRecordFile(string filename)

  • 功能: 取消上传录像文件

  • 返回值:无

  • 参数
参数 类型 含义
filename string 文件名

void uploadRecordFile(string filename)

  • 功能: 上传录像文件

  • 返回值:无

  • 参数
参数 类型 含义
filename string 文件名

上传文件在默认位置

void uploadRecordFile2(string fileName,string svrPathFileName)

  • 功能: 上传录像文件

  • 返回值:无

  • 参数
参数 类型 含义
filename string 文件名
svrPathFileName string 服务器路径文件名

上传文件到服务器指定位置

void playbackRecordFile(string filename)

  • 功能: 回放录制文件

  • 返回值:无

  • 参数
参数 类型 含义
filename string 文件名

void locMixerStateChanged(string mixerID, int state)

  • 功能:SDK通知本地录制、本地直播状态变化
  • 参数
参数 类型 含义
mixerID string 混图器唯一标识
state int CRVideo_MIXER_STATE

void locMixerOutputInfo(string mixerID, string nameOrUrl, string outputInfo)

  • 功能:SDK通知本地录制文件、本地直播信息通知
  • 参数
参数 类型 含义
mixerID string 混图器唯一标识
nameOrUrl string 录像名称、或直播url
outputInfo string json结构的字符串,请参见MixerOutputInfoObj

void notifyRecordFileStateChanged(const string &fileName, int state)

  • 功能:SDK通知录制文件状态更改
  • 参数
参数 类型 含义
fileName string 本地文件路径
state int 状态: 0未上传 1上传中 2已上传

void notifyRecordFileUploadProgress(const string &fileName, int percent)

  • 功能:SDK通知上传录制文件进度
  • 参数
参数 类型 含义
fileName string 文件名
percent int 进度0-100

void uploadRecordFileErr(const string &fileName, int sdkErr)

  • 功能:上传录制文件错误通知
  • 参数
参数 类型 含义
fileName string 本地文件路径
sdkEr int 操作失败代码,定义见ERR_DEF

void startSvrMixer(string mutiMixerCfgs, string mutiMixerContents, string mutiMixerOutputs)

  • 功能: 开始云端录制、云端直播

  • 返回值: 错误码

  • 参数
参数 类型 含义
mutiMixerCfgs string 服务器混图配置,请参考MutiMixerCfgsObj
mutiMixerContents string 服务器混图内容,请参考MutiMixerContentsObj
mutiMixerOutputs string 服务器输出,请参考MutiMixerOutputsObj

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

int updateSvrMixerContent(MutiMixerContentsObj mutiMixerContents)

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

  • 返回值: 错误码

参数 类型 含义
mutiMixerContents MutiMixerContentsObj 服务器混图内容

void stopSvrMixer()

  • 功能: 停止云端录制、云端直播

  • 返回值: 无

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

int getSvrMixerState()

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

  • 返回值: MIXER_STATE

void svrMixerStateChanged(int state, int err, const string &operatorID)

  • 功能:SDK通知云端录制、云端直播状态变化
  • 参数
参数 类型 含义
state int 状态值请参考CRVideo_MIXER_STATE
err int 错误值请参考ERR_DEF
operatorID string 引起变化的用户id

void svrMixerCfgChanged()

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

  • 参数:无

void svrMixerOutputInfo(const string& outputInfo)

  • 功能:SDK通知云端录制文件、云端直播信息变化
  • 参数
参数 类型 含义
outputInfo string 通知内容,json结构,请参见MixerOutputInfoObj

void createboard(string title, int width, int height, int pageCount)

  • 功能: 创建白板

  • 返回值:白板 boardID

参数 类型 含义
title string 白板名称
width int 白板宽度
height int 白板高度
pageCount int 白板内有多个页(一般空白板1页,文档白板为实际页数

其他参会者会收到:notifyCreateBoard事件;同时后台会记录下白板数据,新入会者会收到:notifyInitBoards事件.注意:创建完白板后,一定要及尽快调用initBoardPageDat初始化各页数据

void closeboard(string boardID)

  • 功能: 关闭白板

  • 返回值:无

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

其他参会者将收到notifyCloseBoard事件;同时后台会移除对应白板的所有信息

void initBoardPageDat(string boardID, int boardPageNo, string imgID,string elemets)

  • 功能: 初始化白板图元数据

  • 返回值:无

参数 类型 含义
boardID string 白板标识
boardPageNo int 白板第几页(0:代表第一页)
imgID string 白板的背景图片标识(空代表无背影图)
elemets string 白板的初始图元(空代表无图元,一般在导入历史文件才用到)
  1. imgID非空时, 代表背景的图片ID。 img来源请参见getNetDiskDocFilePageInfo
  2. 其他参会者将收到notifyInitBoardPageDat事件;
  3. 后台会记录下白板的页数据,在新用户入会时,也会收到notifyInitBoardPageDat事件

string createElementID()

  • 功能: 生成白板图元ID

  • 返回值:图元id

本地操作;所有白板图元id,必须由此接口创建;(历史文件存储的图元id,在房间内不能再使用,应重新创建)

void addboardelement(string boardID, int boardPageNo, string element)

  • 功能: 添加图元信息

  • 返回值:无

参数 类型 含义
boardID string 白板标识
boardPageNo int 白板的页序号(0为第一页)
element string 图元信息,参见json格式之BoardElementObj

其他参会者会收到:notifyAddBoardElement事件;同时后台会保存图元,新入会者会在notifyInitBoardPageDat中得到这些图元

void modifyBoardElement(string boardID, int boardPageNo, string element)

  • 功能: 修改图元信息

  • 返回值:elementID图元标识(string)

参数 类型 含义
boardID string 白板标识
boardPageNo int 白板的页序号(0为第一页)
element string 图元信息,参见json格式之 BoardElementObj

说明:其他参会者会收到:notifyModifyBoardElement事件;同时后台会覆盖对应图元的数据,新入会者会在notifyInitBoardPageDat中得到这些图元

void delboardelement(string boardID, int boardPageNo, string elementIDs)

  • 功能: 删除图元

  • 返回值:无

参数 类型 含义
boardID string 白板标识
boardPageNo int 白板的页序号(0为第一页)
elementIDs string 图元id列表,多值时,以“;”分隔,如:“id1;id2”

说明:其他参会者会收到:notifyDelBoardElement事件;同时后台会移除这些图元,新入会者会在notifyInitBoardPageDat中将不包含这些图元

void setmousehotspot(string boardID, int boardPageNo, int x, int y)

  • 功能: 设置白板鼠标热点

  • 返回值:无

参数 类型 含义
boardID string 白板标识
boardPageNo int 白板的页序号(0为第一页)
x int 屏幕横坐标
y int 屏幕纵坐标

void setBoardCurPageNo(string boardID, int boardPageNo, int pagePos1, int pagePos2)

  • 功能: 白板翻页

  • 返回值:无

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

void listNetDiskDocFile(string dir)

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

查询服务器指定目录下的内容(子目录名、上传的文档源文件及文档转换状态)

void uploadDocFileToNetDisk(string svrPathFileName,string locPathFileName)

  • 功能: 上传文档并转换

  • 返回值:无

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

上传进度请参见notifyNetDiskDocFileTrsfProgress, 转换结果请调用listNetDiskDocFile或者getNetDiskDocFilePageInfo

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

void downloadDocSrcFile(string svrPathFileName, string locPathFileName)

  • 功能: 下载源始文档

  • 返回值:无

参数 类型 含义
svrPathFileName string 服务器的路径文件名
locPathFileName string 文件下载后存放的本地的路径文件名,目录不存在时自动创建

下载进度请参见notifyNetDiskDocFileTrsfProgress

void cancelTransforNetDiskDocFile(string svrPathFileName)

  • 功能: 取消文档传输

  • 返回值:无

参数 类型 含义
svrPathFileName string 服务器的路径文件名

void deleteNetDiskDocFile(string svrPathFileName)

参数 类型 含义
svrPathFileName string 服务器的路径文件名

void getNetDiskDocFilePageInfo(string svrPathFileName)

参数 类型 含义
svrPathFileName string 服务器的路径文件名

说明:获取到的文档转换后的信息后, 就可以创建白板createboard, 然后为白板初始化文档内容initBoardPageDat

void downloadNetDiskDocFilePage(string pagePathFileName,string locPathFileName)

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

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

void setPicResource(string resourceid, string picJsonVal)

  • 功能: 添加图片资源

  • 返回值:无

参数 类型 含义
resourceid string 资源唯一标识;(可以是guserID,也可以序号方式)
picJsonVal object 资源内容,json格式,详见picResourceObj说明

void notifyInitBoards(const string &jsonBoards)

  • 功能:SDK入会后通知房间中已经存在的白板列表
  • 参数
参数 类型 含义
jsonBoards string 已经创建好的白板列表, json结构体请参见BoardObjs说明

void notifyInitBoardPageDat(const string &boardID, int pageNo, const string &bkImgID, const string &elementDatas, const string &operatorID)

  • 功能:通知初始化白板内图元数据
  • 参数
参数 类型 含义
boardID string 白板标识
boardPageNo int 白板页序号
imgID string 页背景文件ID(空代表无背景)
elementDatas string 此页的所有图元, json结构体请参见BoardElementObjs
operatorID string 初始化用户(为空时,代表入会时后台事件)

void notifyCreateBoard(const string &jsonBoard, const string &operatorID)

  • 功能:SDK通知创建白板
  • 参数
参数 类型 含义
jsonBoard string 白板信息,json结构体请参见BoardObj
operatorID string 创建白板的用户ID

void notifyCloseBoard(const string &boardID, const string &operatorID)

  • 功能:SDK通知关闭白板
  • 参数
参数 类型 含义
boardID string 白板标识
operatorID string 关闭白板的用户ID

void notifyAddBoardElement(const string &boardID, int pageNo, const string &elementData, const string &operatorID)

  • 功能:SDK通知添加图元信息
  • 参数
参数 类型 含义
boardID string 白板标识
boardPageNo int 白板页序号
element string 此页的所有图元, json格式请参见BoardElementObj
operatorID string 添加图元的用户ID

void notifyModifyBoardElement(const string &boardID, int pageNo, const string &elementData, const string &operatorID)

  • 功能:SDK通知图元信息被修改
  • 参数
参数 类型 含义
boardID string 白板标识
boardPageNo int 白板页序号
element string 此页的所有图元, json格式请参见BoardElementObj
operatorID string 添加图元的用户ID

void notifyDelBoardElement(const string &boardID, int pageNo, const string &elementIDs, const string &operatorID)

  • 功能:SDK通知删除图元
  • 参数
参数 类型 含义
boardID string 白板标识
boardPageNo int 白板页序号
elementIDs string 图元id列表,以 “;”分隔
operatorID string 删除图元的用户ID

void notifyMouseHotSpot(const string&, int pageNo, int, int, const string &)

  • 功能:SDK通知设置鼠标热点消息
  • 参数
参数 类型 含义
e.p_boardID string 白板标识
e.p_x int 屏幕横坐标
e.p_y int 屏幕纵坐标
e.p_operatorID string 操作者的用户ID

void notifyBoardCurPageNo(const string &boardID, int pageNo, int pagePos1, int pagePos2, const string &operatorID)

  • 功能:SDK通知通知白板翻页
  • 参数
参数 类型 含义
boardID string 白板标识
pageNo int 翻到第几页
pagePos1 int 扩展参数1
pagePos2 int 扩展参数2
operatorID string 操作者的用户ID

void undoEnableChange(bool isEnable)

  • 功能:SDK通知白板的“撤消”功能是否可用
  • 参数
参数 类型 含义
isEnable bool 撤消功能是否可用

void redoEnableChange(bool isEnable)

  • 功能:SDK通知白板的“恢复”功能是否可用
  • 参数
参数 类型 含义
isEnable bool 恢复功能是否可用

void listNetDiskDocFileRslt(const string &dir, int sdkErr, const string &rslt)

  • 功能 通知查询文档列表结果
  • 参数
参数 类型 含义
dir string 查询的目录
sdkERR int 0代表成功,非0参见ERR_DEF
rslt string 成功时的查询的结果,json格式请参见ListDocFileRsltObj

void getNetDiskDocFilePageInfoRslt(const string &svrPathFileName, int sdkErr, const string &rslt)

  • 功能 通知查询文档转换结果
  • 参数
参数 类型 含义
svrPathFileName string 查询的文档名
sdkERR int 0代表成功,非0参见ERR_DEF
rslt string 成功时的查询的结果,json格式请参见GetDocPageInfoRsltObj

void deleteNetDiskDocFileRslt(const string &svrPathFileName, int sdkERR)

  • 功能: 通知删除文档结果
  • 参数:
参数 类型 含义
svrPathFileName string 要删除的文档,或页文件名
sdkERR int 删除结果,0代表删除成功, 错误码取值参考ERR_DEF

void notifyNetDiskDocFileTrsfProgress(const string &svrPathFileName, int percent)

  • 功能 通知文档传输进度
  • 参数
参数 类型 含义
svrPathFileName string 传输的文档,或页文件名
percent int 传输进度(等于100代表传输完成)

string getOpenFileName(string title, string directory, string filter)

  • 功能:获取用户打开的全路径文件名

  • 返回值: 结果,空串表示用户取消, 否则返回用户选择的文件路径文件名

参数 类型 含义
title string 打开文件框的标题
directory string 打开对话框初始路径,不设初始值时请传空
filter string 文件类型过滤器(可为空),示例:"Images (*.png *.xpm .jpg);;Text files (.txt)"

string getSaveFileName(string title, string directory, string filter)

  • 功能:获取用户保存的全路径文件名

  • 返回值: 结果,空串表示用户取消, 否则返回用户保存的文件路径文件名

参数 类型 含义
title string 打开文件框的标题
directory string 打开对话框初始路径,不设初始值时请传空
filter string 文件类型过滤器(可为空),示例:"Images (*.png *.xpm .jpg);;Text files (.txt)"

void sendCmd(string targetUserId, string data)

  • 功能:发送小块数据

  • 返回值:分配的任务ID(string)

参数 类型 含义
targetUserId string 目标用户ID
data string 发送的数据

一次性发送不会有进度通知,发送结果事件sendCmdRlst,sendCmd不能被cancelSend

void sendBuffer(string targetUserId, string data)

  • 功能:发送大块数据(分块发送)

  • 返回值: 无

参数 类型 含义
targetUserId string 目标用户ID
data string 发送的数据

进度通知事件sendProgress,发送结果事件sendBufferRlst,取消发送cancelSend

void sendFile(string targetUserId, string fileName)

  • 功能:发送文件(分块发送 )

  • 返回值: 无

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

进度通知事件sendProgress,发送结果事件sendFileRlst,取消发送cancelSend)

void cancelSend(string taskID)

  • 功能: 取消数据发送

  • 返回值:无

参数 类型 含义
taskID string 任务ID

取消数据发送 操作完成则回调cancelSendRlst

void sendIMmsg(string text, string UserID, string cookie)

  • 返回值: 无
参数 类型 含义
text string 发送的文本消息
UserID string 目标用户,如果用户ID为空,消息发送给房间内所有用户
cookie string 详细介绍见关键词

响应事件sendIMmsgRlst

void sendIMmsgRlst(const string &taskID, int sdkErr, const string &cookie)

  • 功能:发送IM消息,SDK通知使用者发送结果
  • 参数
参数 类型 含义
taskID string 发送任务id
sdkEr int 操作失败代码,定义见ERR_DEF
cookie string 详细介绍见关键词

void notifyIMmsg(const string &fromUserID, const string &text, int sendTime)

  • 功能:SDK通知收到IM消息
  • 参数
参数 类型 含义
fromUserID string 消息来源
text string 消息内容
sendTime int 消息发送时间戳,从1970开始算起

void initQueueDat(string cookie)

  • 功能: 初始化队列

  • 返回值:无

参数 类型 含义
cookie string 详细介绍见关键词

操作完成回调initQueueDatRslt,队列初始化成功后才可获取队列队列相关信息

void refreshAllQueueStatus()

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

  • 返回值:无

操作完成则触发queueStatusChanged(当前排队的队列,或服务的队列,sdk自动有状态变化回调)

string getAllQueueInfo()

  • 功能: 查询队列

  • 返回值:返回所有队列信息(QueueInfoObj

int getQueueStatus(string queID)

  • 功能: 获取队列状态

  • 返回值:返回队列状态(QueStatusObj

参数 类型 含义
queID string 队列ID

string getQueuingInfo()

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

  • 返回值:返回排队信息(QueuingInfoObj

string getServingQueues()

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

  • 返回值:返回我服务的队列列表

string getSessionInfo()

  • 功能: 获取我的房间对象信息

  • 返回值: 返回房间对象信息SessionInfoObj

void startQueuing2(string queID,string usrExtDat,string cookie)

  • 功能: 开始排队

  • 返回值:无

参数 类型 含义
queID string 队列ID
usrExtDat string 用户排队携带的扩展数据, 座席在服务时可获得。
cookie string 详细介绍见关键词

带自定义扩展参数。 操作完成回调startQueuingRslt

void stopQueuing(string cookie)

  • 功能: 停止排队

  • 返回值:无

参数 类型 含义
cookie string 详细介绍见关键词

操作完成回调stopQueuingRslt

void startService2(int queID, int priority, string cookie)

  • 功能: 开始服务队列

  • 返回值:无

参数 类型 含义
queID int 队列ID
priority int 坐席优先级 (缺省为0,取值为0~1000内整数。值越小优先级越高。0为最高优先级 ))
cookie string 详细介绍见关键词

可以多次调用,开启对多个队列的服务。操作回调startServiceRslt 开启成功后: a. 如果没有开启免打挽,那么系统会自动分配客户:autoAssignUser; b. 如果开启免打挽,系统就不会分配客户,如需服务客户可调用:reqAssignUser 座席优先级描述:

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

void stopService(string queID, string cookie)

  • 功能: 停止服务队列

  • 返回值:无

参数 类型 含义
queID string queID 队列ID
cookie string 详细介绍见关键词

操作完成回调stopServiceRslt

void reqAssignUser(string cookie)

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

  • 返回值:无

参数 类型 含义
cookie string 详细介绍见关键词

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

void acceptAssignUser(string queID, string userID, string cookie)

  • 功能: 接受分配的客户
参数 类型 含义
queID string 队列ID
userID string 队列中的用户ID
cookie string 详细介绍见关键词

void rejectAssignUser(string queID, string userID, string cookie)

  • 功能: 拒绝分配的客户

  • 返回值:无

  • 参数
参数 类型 含义
queID string 队列ID
userID string 队列中的用户ID
cookie string 详细介绍见关键词

void initQueueDatRslt(int sdkErr, const string &cookie)

  • 功能:队列初始化操作结果
  • 参数
参数 类型 含义
sdkEr int 详细介绍见关键词
cookie string 详细介绍见关键词

void queueStatusChanged(const string &json queStatus)

  • 功能:队列状态变化通知
  • 参数
参数 类型 含义
queStatus string 队列状态

void queuingInfoChanged(const string &queuingInfo)

  • 功能:排队信息变化通知
  • 参数
参数 类型 含义
queuingInfo string 排队信息

void startQueuingRslt(int sdkErr, const string &cookie)

  • 功能:开始排队操作结果
  • 参数
参数 类型 含义
sdkEr int 详细介绍见关键词
cookie string 详细介绍见关键词

void stopQueuingRslt(int sdkErr, const string &cookie)

  • 功能:停止排队操作结果
  • 参数
参数 类型 含义
sdkEr int 详细介绍见关键词
cookie string 详细介绍见关键词

void startServiceRslt(int queID, int sdkErr, const string &cookie)

  • 功能:开始服务队列操作结果
  • 参数
参数 类型 含义
queID int 服务的队列ID
sdkEr int 操作失败代码,定义见ERR_DEF
cookie string 详细介绍见关键词

void stopServiceRslt(int queID, int sdkErr, const string &cookie)

  • 功能:停止服务队列操作结果
  • 参数
参数 类型 含义
queID int 服务的队列ID
sdkEr int 操作失败代码,定义见ERR_DEF
cookie string 详细介绍见关键词

void responseAssignUserRslt(int sdkErr, const string &cookie)

  • 功能:响应分配客户操作结果
  • 参数
参数 类型 含义
sdkEr int 操作失败代码,定义见ERR_DEF
cookie string 详细介绍见关键词

void autoAssignUser(const string &jsonUsr)

  • 功能:系统自动安排客户
  • 参数
参数 类型 含义
user string 队列用户信息。如果想停止系统的自动分配,请通setDNDStatus设置免打扰功能

void reqAssignUserRslt(int sdkErr, const string &jsonUsr, const string &cookie)

  • 功能:请求分配客户操作结果
  • 参数
参数 类型 含义
sdkEr int 操作失败代码,定义见ERR_DEF
user string 队列用户信息
cookie string 详细介绍见关键词

void cancelAssignUser(int queID, const string &usrID)

  • 功能:系统取消之前分配的的客户
  • 参数
参数 类型 含义
queID int 服务的队列
userid string 用户id

系统通过接口autoAssignUser给队列服务者自动推送客户(或队列服务者通过reqAssignUser请求分配客户),收到系统分配的客户后,如果队列服务者30秒之内不接受acceptAssignUser也不拒绝rejectAssignUser推送的客户,系统将通过本接口取消分配,然后将客户分配给其他空闲的服务者。

void call(string calledUserID, MeetInfoObj meetObj, string usrExtDat, string cookie)

  • 功能: 发起呼叫

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

参数 类型 含义
calledUserID string 被叫用户的账户ID
meetObj MeetInfoObj 房间对象信息
usrExtDat string 自定义扩展参数
cookie string 详细介绍见关键词

操作成功则回调callSuccess,失败则回调callFail。 呼叫时,对方迟迟不响应,30秒后系统自动结束呼叫

void acceptCall(string callID, meetObj, string usrExtDat, string cookie)

  • 功能: 接受对方发起的呼叫
参数 类型 含义
callID string 呼叫ID
meetObj MeetInfoObj 房间对象信息
usrExtDat string 自定义扩展参数
cookie string 详细介绍见关键词

开始进入视频房间。操作成功则回调acceptCallSuccess,失败则回调acceptCallFail

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

  • 功能: 拒绝对方发起的呼叫

  • 返回值:无

参数 类型 含义
callID string 呼叫ID
usrExtDat string 自定义扩展参数
cookie string 详细介绍见关键词

操作成功则回调rejectCallSuccess,失败则回调rejectCallFail

void hungupCall(string callID, string usrExtDat, string cookie)

  • 功能: 挂断呼叫

  • 返回值:无

  • 参数
参数 类型 含义
callID string 呼叫ID
usrExtDat string 自定义扩展参数
cookie string 详细介绍见关键词

操作成功则回调hangupCallSuccess,失败则回调hangupCallFail

void callSuccess(const string& callID, const string &cookie)

  • 功能:呼叫他人操作成功响应
  • 参数
参数 类型 含义
callID string 呼叫全局标识
cookie string 详细介绍见关键词

void callFail(const string& callID, int sdkErr, const string &cookie)

  • 功能:呼叫他人操作失败响应
  • 参数
参数 类型 含义
callID string 呼叫全局标识
sdkEr 操作失败代码,定义见ERR_DEF
cookie string 详细介绍见关键词

void acceptCallSuccess(const string& callID, const string &cookie)

  • 功能:接受他人呼叫操作成功响应
  • 参数
参数 类型 含义
callID string 呼叫全局标识
cookie string 详细介绍见关键词

void acceptCallFail(const string& callID, int sdkErr, const string &cookie)

  • 功能:接受他人呼叫操作失败响应
  • 参数
参数 类型 含义
callID string 呼叫全局标识
sdkEr 操作失败代码,定义见ERR_DEF
cookie string 详细介绍见关键词

void rejectCallSuccess(const string& callID, const string &cookie)

  • 功能:拒绝他人的呼叫成功响应
  • 参数
参数 类型 含义
callID string 呼叫全局标识
cookie string 详细介绍见关键词

void rejectCallFail(const string& callID, int sdkErr, const string &cookie)

  • 功能:拒绝他人的呼叫失败响应
  • 参数
参数 类型 含义
callID string 呼叫全局标识
sdkEr 操作失败代码,定义见ERR_DEF
cookie string 详细介绍见关键词

void hangupCallSuccess(const string& callID, const string &cookie)

  • 功能:挂断他人的呼叫成功响应
  • 参数
参数 类型 含义
callID string 呼叫全局标识
cookie string 详细介绍见关键词

void hangupCallFail(const string& callID, int sdkErr, const string &cookie)

  • 功能:挂断呼叫操作失败响应
  • 参数
参数 类型 含义
callID string 呼叫全局标识
sdkEr 操作失败代码,定义见ERR_DEF
cookie string 详细介绍见关键词

void notifyCallIn(const string& callID, const string &meetObj, const string& callerID, const string& usrExtDat)

  • 功能:SDK通知自己被呼叫
  • 参数
参数 类型 含义
callID string 呼叫全局标识
meetObj string 房间对象
callerID string 呼叫人员的标识ID
usrExtDat string 自定义扩展参数

void notifyCallAccepted(const string& callID, const string &meetObj, const string& usrExtDat)

  • 功能:SDK通知自己视频呼叫被对方接受
  • 参数
参数 类型 含义
callID string 呼叫全局标识
meetObj string 房间对象
usrExtDat string 自定义扩展参数

void notifyCallRejected(const string& callID, int reason, const string& usrExtDat)

  • 功能:SDK通知自己呼叫被对方拒绝
  • 参数
参数 类型 含义
callID string 呼叫全局标识
reason int 操作失败代码,定义见ERR_DEF
usrExtDat string 自定义扩展参数

void notifyCallHungup(const string& callID, const string& usrExtDat)

  • 功能:SDK通知自己呼叫被挂断
  • 参数
参数 类型 含义
callID string 呼叫全局标识
usrExtDat string 自定义扩展参数

void sendCmdRlst(const string &sendId, int sdkErr, const string &cookie)

  • 功能:发送小块数据时,SDK通知发送结果
  • 参数
参数 类型 含义
taskID string 发送任务id
sdkEr int 操作失败代码,定义见ERR_DEF
cookie string 详细介绍见关键词

void sendBufferRlst(const string &sendId, int sdkErr, const string &cookie)

  • 功能:发送大块数据时,SDK通知发送结果
  • 参数
参数 类型 含义
taskID string 发送任务id
sdkEr int 操作失败代码,定义见ERR_DEF
cookie string 详细介绍见关键词

void sendFileRlst(const string &sendId, const string &fileName, int sdkErr, const string &cookie)

  • 功能:发送文件时,SDK通知发送结果
  • 参数
参数 类型 含义
taskID string 发送任务id
fileName int 文件名
sdkEr int 操作失败代码,定义见ERR_DEF
cookie string 详细介绍见关键词

void sendProgress(const string &sendId, int sendedLen, int totalLen, const string &cookie)

  • 功能:发送数据时,SDK通知发送进度
  • 参数
参数 类型 含义
taskID string 发送任务id
sendedLen int 已发送的数据长度
totalLen int 需要发送的总长度
cookie string 详细介绍见关键词

void cancelSendRlst(const string &sendId, int sdkErr, const string &cookie)

  • 功能:取消发送响应
  • 参数
参数 类型 含义
taskID string 发送任务id
sdkEr int 操作失败代码,定义见ERR_DEF
cookie string 详细介绍见关键词

void notifyCmdData(const string &sourceUserId, const string &data)

  • 功能:SDK通知收到小块数据
  • 参数
参数 类型 含义
sourceUserId string 数据来源的用户
data string 数据类型

void notifyBufferData(const string &sourceUserId, const string &data)

  • 功能:SDK通知收到大块数据
  • 参数
参数 类型 含义
sourceUserId string 数据来源的用户
data string 数据类型

void notifyFileData(const string &sourceUserId, const string &tmpFile, const string &orgFileName)

  • 功能:SDK通知收到文件数据(收到的文件生成在系统临时目录下,请尽快移走对应文件)
  • 参数
参数 类型 含义
sourceUserId string 数据来源的用户
tmpFile string 临时文件,不需要时,请移除或删除对应文件
orgFileName string 原始文件名

void notifyCancelSend(const string &sendId)

  • 功能:SDK通知取消发送文件数据
  • 参数
参数 类型 含义
taskID string 取消的任务id

int getVideoWallMode2()

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

  • 返回值:分屏模式(业务层自由定义)

void setVideoWallMode2(int videoWallMode)

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

  • 返回值:无

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

string getVideoCfg()

  • 功能: 获取视频参数

  • 返回值:获取视频参数,可参考(VideoCfgObj

bool setVideoCfg(string cfg)

  • 功能: 视频设置

  • 返回值: 设置成功与否,true/false

参数 类型 含义
cfg VideoCfgObj 设置参数

int getVideoStatus(string userID)

  • 功能: 视频状态

  • 返回值:麦克风摄像头状态,可参考 CRVideo_VSTATUS

参数 类型 含义
userID string 用户ID

int getDefaultVideo(string userID)

  • 功能: 获取默认视频

  • 返回值:返回摄像头ID (int)

参数 类型 含义
userID string 用户ID

void setDefaultVideo(string userID, int videoID)

  • 功能: 设置默认视频

  • 返回值:无

参数 类型 含义
userID string 用户ID
videoID int 摄像头ID

注意: 1、如果用户只有一个摄像头,可以不设置默认摄像头; 2、如果用户有多个摄像头,但是只想用其中一个,需要把这个设置为默认摄像头; 3、如果用户有多个摄像头,全都要用到,就不需要设置默认摄像头,打开摄像头时会全部打开; 4、如果用户有多个摄像头,想用到其中部分几个摄像头,不用设置默认摄像头,但是要先启用多摄像头,然后调用setLocVideoAttributes把不想用的禁用了,之后打开的时候就只打开没禁用的那几个;

string getAllVideoInfo()

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

  • 返回值:用户的所有摄像头信息列表,数据类型为:videoInfoObj的json格式(VideoInfoObj

void setVideoDenoise(bool bDenoise)

  • 功能: 开启或关闭摄像头降噪处理

  • 返回值:无

参数 类型 含义
bDenoise bool 取值true时,开启降噪处理

bool getVideoDenoise()

  • 功能: 获取是否开启摄像头降噪

  • 返回值:true:降噪已开启,false:降噪未开启

int createScreenCamDev(string camName,int monitor)

  • 功能: 创建桌面摄像头(sdk最大支持5个)

  • 返回值:<0, 失败, >=0, 为videoID(摄像头ID) (int)

参数 类型 含义
camName string 摄像头名称
monitor int 显示器序号,与系统显示编号一致,-1代表主屏。(创建时对应monitorID不存在时将失败, 运行中monitorID对应的屏关闭时显示全黑,开启后恢复正常工作)

添加成功后与本地摄像头处理一致;getAllVideoInfo接口可以识别摄像头类型。

bool updateScreenCamDev(int videoID, int monitor)

  • 功能: 更新桌面摄像头

  • 返回值:false失败, true成功 (bool)

参数 类型 含义
videoID int 摄像头id
monitor int 显示器序号,与系统显示编号一致,-1代表主屏。(monitorID不存在时将失败)

void destroyScreenCamDev(int videoID)

  • 功能: 消毁桌面摄像头

  • 返回值:无

参数 类型 含义
videoID int 摄像头id

int createCustomVideoDev(string camName, video_FORMAT pixFmt, int width, int height,string extParams)

  • 功能: 创建自定义摄像头(sdk最大支持5个)

  • 返回值: <0 ,失败; >=0, 为videoID(摄像头ID) (int)

参数 类型 含义
camName string 摄像头名称
pixFmt video_FORMAT 参见 video_FORMAT定义
width int 图像宽度
height int 图像高度
extParams string 扩展参数,没有为空

添加成功后与本地摄像头处理一致;getAllVideoInfo接口可以识别摄像头类型。

void destroyCustomVideoDev(int videoID)

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

  • 返回值: 无

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

void inputCustomVideoDat(int videoID,string base64Dat, int timeStamp)

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

  • 返回值: 无

参数 类型 含义
videoID int 摄像头id
base64Dat string 图像数据,base64编码。(请保证格式、和尺寸与摄像头匹配)
timeStamp int 保留字段,请填0

string getWatchableVideos()

  • 功能: 房间内可观看摄像头列表

  • 返回值: 房间内可观看摄像头列表的json字符串,请参考 VideoIDObjs

只有摄像头打开才能被获取到,能获取到自已的和房间里其他人的

void openVideo(string userID)

  • 功能: 打开用户的摄像头

  • 返回值:无

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

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

void closeVideo(string userID)

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

  • 返回值:无

参数 类型 含义
userID string 用户ID

int getEnableMutiVideo(string userID)

  • 功能: 获取是否启用多摄像头

  • 返回值:用户是否多摄像头(bool)

参数 类型 含义
userID string 用户ID

string getVideoImg()

  • 功能: 摄像头图像数据

  • 返回值:返回frame视频数据,可参考 VideoImgObj

参数 类型 含义
userID string 用户ID
videoID int 设备id

bool showVideoAdvCfgDlg(int videoID, int hParenWnd)

  • 功能: 调出摄像头驱动的高级配置(只对真实物理摄像头有效)

  • 返回值:true/false

参数 类型 含义
videoID int 摄像头id
hParenWnd int 高级配置界面的父窗口, 没有特别需求传0即可

void setLocVideoAttributes(string videoID, string jsonAttributes)

  • 功能: 视频设备私有参数配置

  • 返回值:无

参数 类型 含义
videoID string 本地摄像头id
jsonAttributes string 详见VideoAttributesObj

注:未设置的参数,使用全局参数

string getLocVideoAttributes(string videoID)

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

  • 返回值:私有参数, json格式,详见(VideoAttributesObj

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

void setEnableMutiVideo(string userID,bool enable)

  • 功能: 设置用户是否启用多摄像头
参数 类型 含义
userID string 用户ID (当前只能配置自已)
enable bool 1表示开启(将启用本地所有摄像头),0表示关闭(只启用默认摄像头,setDefaultVideo

如果只想开启某几个摄像头(不是所有), 那么需要:setEnableMutiVideo(myUserID, true), 然后调用setLocVideoAttributes将不需要的摄像头disable掉。

int addIPCam(string url)

  • 功能: 添加网络摄像头(sdk最大支持5个)

  • 返回值:sdkErr 操作结果码, 0代成功, 非0代表入会失败,定义见ERR_DEF

参数 类型 含义
url string 网络摄像头url,支持协议:rtmp,rtsp

添加成功后与本地摄像头处理一致;getAllVideoInfo接口可以识别哪些是网络摄像头。

void delIPCam(string url)

  • 功能: 移除网络摄像头

  • 返回值:无

参数 类型 含义
url string 网络摄像头url,支持协议:rtmp,rtsp

void videoDevChanged(const string &userID)

  • 功能:SDK通知用户的视频设备有变化
  • 参数
参数 类型 含义
userID string 设备变化的用户ID

void videoStatusChanged(const string &userID, int oldStatus, int newStatus)

  • 功能:SDK通知打开本地视频状态变化
  • 参数
参数 类型 含义
userID string 房间中设备的所有者ID
oldStatus int 旧状态
newStatus int 新状态

void switchtopage(int mainPage, string pageID)

  • 功能: 功能切换

  • 返回值:无

参数 类型 含义
mainPage int 功能类型
pageID string 子页面标识(如创建白板时返回的boardID)

void getcurrentmainpage()

void getcurrentsubpage()

  • 功能: 获取当前子页面

  • 返回值:返回pageID(如:创建白板时返回的boardID)

void getMainVideo()

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

  • 返回值:无

void setMainVideo(string userID)

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

  • 返回值:无

参数 类型 含义
userID string 用户ID

void setDNDStatus(int DNDStatus, string cookie)

  • 功能: 设置免打扰状态

  • 返回值:无

参数 类型 含义
DNDStatus int 0代表关闭免打扰, 其它值代表开启免打扰,含义自由定义
cookie string 自定义数据 (在回调时,回传给调用者)

操作成功则回调setDNDStatusSuccess,失败则回调setDNDStatusFailed

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

void getUserStatus(string cookie)

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

  • 返回值:无

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

操作成功则回调getUserStatusSuccess,失败则回调getUserStatusFail

void getOneUserStatus(string usrID, string cookie)

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

  • 返回值:无

参数 类型 含义
usrID string 用户ID
cookie string 自定义数据(在回调时,回传给调用者,不需要时传空字符串)

操作成功则回调getUserStatusSuccess,失败则回调getUserStatusFail

void startUserStatusNotify(string cookie)

  • 功能: 开启用户的状态推送

  • 返回值:无

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

回调函数: startUserStatusNotifyRslt 企业下所有用户状态有变化时包括呼叫房间状态、免打扰状态),都会收到通知开启后,用户量越大消息量越大,所以请按需开启在startUserStatusNotify前,应该先通过getUserStatus获取所有用户状态

void stopUserStatusNotify(string cookie)

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

  • 返回值:无

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

回调函数: stopUserStatusNotifyRslt

void createMeeting(string meetSubject, int needPswd, string cookie)

void createMeeting2(json, string cookie)

  • 功能: 创建房间

  • 返回值:无

参数 类型 含义
meetSubject string 房间主题(字符长度最大值50)
needPswd int 是否创建房间密码(=0时:房间无密码,>0时:密码由系统自动生成)
cookie string 自定义数据 (在回调时,回传给调用者)
json CreatInfoObj 创建房间对象,json结构体定义请参见creatInfoObj

操作成功则回调createMeetingSuccess,失败则回调createMeetingFail

void destroyMeeting(string meetID, string cookie)

  • 功能: 销毁房间

  • 返回值:无

参数 类型 含义
meetID int 房间id
cookie string 详细介绍见关键词

回调函数destroyMeetingRslt

void getMeetings(string cookie)

void getMeetings2(string json,string cookie)

  • 功能: 获取房间列表

  • 返回值:无

参数 类型 含义
json string 获取视频房间列表的参数,json结构体,请参见GetMeetingsParamObj,可不传入参数,使用getMeetings,默认获取全部
cookie string 详细介绍见关键词

响应事件getMeetingsSuccess,房间被他人结束的回调事件getMeetingsFail

void setNickNameRsp(int err, const string &userid, const string &newname)

  • 功能:SDK通知设置房间成员昵称的结果
  • 参数
参数 类型 含义
sdkErr int 操作结果码, 0代表设置成功, 非0代表设置失败
userid string 当前的昵称
newname string 新的昵称

void notifyNickNameChanged(const string &userid, const string &oldname, const string &newname)

  • 功能:SDK通知某用户改变了昵称(改昵称的用户自身不会接收到此通知)
  • 参数
参数 类型 含义
userid string 用户id
oldname string 当前的昵称
newname string 新的昵称

void notifyVideoWallMode2(int model)

  • 功能:SDK通知视频分屏模式切换
  • 参数
参数 类型 含义
model int 分屏模式

void notifyMainVideoChanged()

  • 功能:SDK通知主视频更改

void notifySwitchToPage(int mainPage, const string &subPageID)

  • 功能:SDK通知功能切换
  • 参数
参数 类型 含义
mainPage int 功能类型
pageID string 子页面标识

void defVideoChanged(const string &userID, int videoID)

  • 功能:SDK通知用户的视频默认设备有变化
  • 参数
参数 类型 含义
userID string 用户id,, 命名规则 详见关键词
videoID int 默认设备id

void netStateChanged(int level)

  • 功能:SDK通知我的网络变化
  • 参数
参数 类型 含义
level int 网络状况等级(0~10,10分为最佳网络)

void enterMeeting(string meetID, string pswd, string userID, string nickName,string cookie)

  • 功能: 进入房间

  • 返回值:无

参数 类型 含义
meetID int 房间ID
pswd string md5处理后的,本次房间中的密码(系统自动生成,在呼叫回调中取得)
userID string 用户id,, 命名规则 详见关键词
nickName string 昵称
cookie string 详细介绍见关键词

双方开始进入房间 操作完成则回调enterMeetingRslt

void exitMeeting()

  • 功能: 离开房间

  • 返回值:无

void enterMeetingRslt(int sdkErr)

  • 功能:进入房间完成响应
  • 参数
参数 类型 含义
sdkErr int 操作失败代码,定义见ERR_DEF

void stopMeetingRslt(int sdkErr)

  • 功能:通知结束视频房间结果
  • 参数
参数 类型 含义
sdkErr int 操作失败代码,定义见ERR_DEF

void userEnterMeeting(const string &userID)

  • 功能某用户进入了房间

void userLeftMeeting(const string &userID)

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

void meetingDropped()

  • 功能:SDK通知从房间里掉线了

void meetingStopped()

  • 功能:房间已被结束

他人离开房间的回调事件userLeftMeeting

void stopMeeting(int meetID,string cookie)

  • 功能: 停止房间

  • 返回值:无

参数 类型 含义
meetID int 房间id
cookie string 详细介绍见关键词

回调函数stopMeetingRslt,调用此接口结束房间时,其他会话用户会收到meetingStopped

void setDNDStatusSuccess(const string &cookie)

  • 功能:客户端设置免打扰状态操作成功响应
  • 参数
参数 类型 含义
cookie string 详细介绍见关键词

void setDNDStatusFailed(int sdkErr, const string &cookie)

  • 功能:客户端设置免打扰状态操作失败响应
  • 参数
参数 类型 含义
sdkErr int 操作失败代码,定义见ERR_DEF
cookie string 详细介绍见关键词

void getUserStatusSuccess(const string &usersStatus, const string &cookie)

  • 功能:客获取所有用户在线状态成功响应
  • 参数
参数 类型 含义
usersStatus string 用户在线状态信息列表,userID:用户id,userStatus:用户的在线状态(0离线 ;1在线空闲 ;2在线忙碌;3在线房间中),DNDType:用户免打扰状态(0代表关闭免打扰,其它值代表开启免打扰)
cookie string 详细介绍见关键词

void getUserStatusFail(int sdkErr, const string &cookie)

  • 功能:获取所有用户在线状态失败响应
  • 参数
参数 类型 含义
sdkErr int 操作失败代码,定义见ERR_DEF
cookie string 详细介绍见关键词

void startUserStatusNotifyRslt(int sdkErr, const string &cookie)

  • 功能:启动用户状态推送响应
  • 参数
参数 类型 含义
sdkErr int 操作失败代码,定义见ERR_DEF
cookie string 详细介绍见关键词

void stopUserStatusNotifyRslt(int sdkErr, const string &cookie)

  • 功能:结束用户状态推送响应
  • 参数
参数 类型 含义
sdkErr int 操作失败代码,定义见ERR_DEF
cookie string 详细介绍见关键词

void notifyUserStatus(const string &userStatus)

  • 功能:某个用户状态变化通知
  • 参数
参数 类型 含义
userStatus string 用户的在线状态(0离线 ;1在线空闲 ;2在线忙碌;3在线房间中)

void lineOff(int sdkErr)

  • 功能:SDK通知自己掉线
  • 参数
参数 类型 含义
sdkErr int 操作失败代码,定义见ERR_DEF

void createMeetingSuccess(const string &meetObj, const string &cookie)

  • 功能:创建房间成功响应
  • 参数
参数 类型 含义
meetObj string 房间对象
cookie string 详细介绍见关键词

void createMeetingFailed(int sdkErr, const string &cookie)

  • 功能:创建房间失败响应
  • 参数
参数 类型 含义
sdkErr int 操作失败代码,定义见ERR_DEF
cookie string 详细介绍见关键词

void destroyMeetingRslt(int sdkErr, const string &cookie)

  • 功能:销毁房间响应
  • 参数
参数 类型 含义
sdkErr int 操作失败代码,定义见ERR_DEF
cookie string 详细介绍见关键词

void getMeetingsSuccess(const string &jsonMeetings, const string &cookie)

  • 功能:获取房间列表成功响应
  • 参数
参数 类型 含义
jsonMeetings string 房间列表信息
cookie string 详细介绍见关键词

void getMeetingsFail(int sdkErr, const string &cookie)

  • 功能:获取房间列表失败响应
  • 参数
参数 类型 含义
sdkEr int 操作失败代码,定义见ERR_DEF
cookie string 详细介绍见关键词

void setMediacfg(string jsonCfg)

  • 功能: 设置音频配置

  • 返回值:无

参数 类型 含义
jsonCfg string 详见VideoCfgObj说明

string getMediacfg()

  • 功能: 获取音频参数

  • 返回值:json格式的音频参数,详见VideoCfgObj说明

string getAudioMicNames()

  • 功能: 麦克风设备列表

  • 返回值:返回麦克风设备字符串列表(Array)

string getAudioSpkNames()

  • 功能: 扬声器设备列表

  • 返回值:扬声器设备列表(Array)

void setAudioCfg(string cfg)

  • 功能: 麦克风设置

  • 返回值:无

  • 参数:
参数 类型 含义
cfg AudioCfgObj 设置参数

string getAudioCfg()

  • 功能: 获取麦克风设置

  • 返回值:cfg对象(AudioCfgObj

int getMicEnergy(string userID)

  • 功能: 麦克风声音大小

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

  • 参数:
参数 类型 含义
userID string 用户的ID

void openMic(string userID)

  • 功能: 打开麦克风

  • 返回值:无

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

打开自已的麦克风时,先会进入到AOPENING状态,等服务器处理后才会进入AOPEN状态,此时说话才能被采集到

void closeMic(string userID)

  • 功能: 关闭麦克风

  • 返回值:无

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

关麦操作是立即生效的,本地会立即停止采集

int getAudioStatus(string userID)

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

双方开始进入本次视频会话。操作完成则回调enterMeetingRslt

int getMicVolume()

  • 功能: 获取麦克风音量

  • 返回值:返回麦克风音量(0~255)(int)

bool setMicVolume(int level)

  • 功能: 设置麦克风音量

  • 返回值:设置成功则返回true,否则返回false(bool)

参数 类型 含义
level int 音量等级( 取值范围:0~255)

int getSpeakerVolume()

  • 功能: 获取扬声器音量

  • 返回值:返回扬声器音量(0~255)(int)

bool setSpeakerVolume(int level)

  • 功能: 设置扬声器音量

  • 返回值:设置成功则返回true,否则返回false(bool)

参数 类型 含义
level int 音量等级( 取值范围:0~255)

void setAllAudioClose()

  • 功能: 关闭所有人麦克风

  • 返回值:无

void audioDevChanged()

  • 功能: 麦克风设备变化

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

void audioStatusChanged(const string &userID, int oldStatus, int newStatus)

  • 功能:SDK通知打开本地音频状态变化
  • 参数
参数 类型 含义
userID string 会话中设备的所有者ID
oldStatus int 旧状态
newStatus int 新状态

void micEnergyUpdate(const string& userID, int oldLevel, int newLevel)

  • 功能:SDK通知用户的说话声音强度更新
  • 参数
参数 类型 含义
userID string 用户ID
oldLevel int 原来的说话声音强度
newLevel int 现在的说话声音强度

int startPlayMedia(string filename, int locPlay, int bPauseWhenFinished)

  • 功能: 开始播放影音

  • 返回值:返回值 整形数值,1:正常,0:失败(int)

参数 类型 含义
filename string 媒体文件名(本地全路径文件名,或网络流媒体,支持的协议有:http, rtmp, rtsp)
locPlay int 是否仅仅本地播放(1:本地播放,0:房间内播放)
bPauseWhenFinished int 是否播放完毕自动暂停在最后一帧

void pausePlayMedia(bool bPause)

  • 功能: 暂停或恢复播放影音

  • 返回值:无

参数 类型 含义
bPause bool ture为暂停,false为恢复

void stopPlayMedia()

  • 功能: 停止播放影音

  • 返回值:无

void setMediaplaypos(int pos)

  • 功能: 设置播放进度

  • 返回值:无

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

string getAllFilesInMediaPath()

  • 功能: 影音文件列表

  • 返回值:文件名列表

string getmediainfo(string userID)

  • 功能: 影音播放信息

  • 返回值:影音文件信息(MediaInfoObj

参数 类型 含义
userID string 用户id,详见UID

string getmediaimg(string userID)

  • 功能: 获取影音图像数据

  • 返回值:帧信息(videoImgObj)

参数 类型 含义
userID string 用户id

int startGetAudioPCM(int aSide, int getType, string jsonParam)

  • 功能: 开始获取语音pcm数据

  • 返回值:返回值 整形数值,1:正常,0:失败(int)

参数 类型 含义
aSide int 声道类型 0:麦克风,1:扬声器
getType int 获取方式 0:回调方式,1:保存为文件
jsonParam string 当getType=0 表示回调方式,jsonParam可配置回调的数据大小(320-32000),如: {"EachSize":320};当getType=1 表示保存为文件,jsonParam可配置文件名,如: { "FileName" : "e:\test.pcm" }

void stopGetAudioPCM(aSide)

  • 功能: 停止获取语音pcm数据

  • 返回值:无

参数 类型 含义
aSide int 声道类型 0:麦克风,1:扬声器

void notifyMediaOpened(long totalTime, const int w, const int h)

  • 功能SDK通知影音文件打开
  • 参数
参数 类型 含义
totalTime long 影音时长(秒)
w int 宽度
h int 高度

void notifyMediaStart(const string &userid)

  • 功能:SDK通知影音开始播放
  • 参数
参数 类型 含义
userid string 操作者的用户id

void notifyMediaStop(const string &userid, int reason)

  • 功能:SDK通知影音播放停止
  • 参数
参数 类型 含义
userid string 操作者的用户id
reason int 播放停止原因,详见MEDIA_STOP_REASON

void notifyMediaPause(const string &userid, int bPause)

  • 功能:SDK通知影音播放是否暂停
  • 参数
参数 类型 含义
userid string 操作者的用户id
pause int 是否暂停 1暂停 0播放

void notifyPlayPosSetted(int setPos)

  • 功能:SDK通知播放进度已设置完成
  • 参数
参数 类型 含义
setPos int 播放进度

void notifyAudioPCMDat(int aSide, const string &base64PcmDat)

  • 功能:SDK通知语音PCM数据
  • 参数
参数 类型 含义
aSide int 声道类型
base64PcmDat string PCM数据(base64格式)

影音共享UI显示组件

void disableToolBar(int bDisable)

  • 功能:设置工具条是否可用

  • 返回值:无

void setDblClickFullScreen(int value)

  • 功能:设置是否支持双击全屏,默认不支持双击全屏

  • 返回值:无

string savePicToBase64(string format)

  • 功能:保存播放影音画面到图片文件

  • 返回值:保存文件路径

string savePicToBase64(string pathFileName)

  • 功能:保存播放影音画面到图片文件

  • 返回值:0成功,非0失败 (int)

  • 参数:
参数 类型 含义
pathFileName string 本地绝对路径文件名(支持格式:bmp, png, gif, jpg, jpeg)

void setToolBarUIElementVisible(int UIElement, bool isVisible)

  • 功能:显示隐藏播放工具条上的界面元素

  • 返回值:无

  • 参数:
参数 类型 含义
UIElement int 界面元素ToolBarUI
isVisible bool 是否可见

void setFullScreen(bool bFullScreen)

  • 功能:设置全屏

  • 返回值:无

  • 参数:
参数 类型 含义
bFullScreen bool true :全屏

void getFullScreen()

  • 功能:获取全屏状态

  • 返回值:无表示该控件当前是否全屏,true 表示全屏

屏幕共享UI显示组件

void clear()

- 清空缓存的图像

void ctrlOpen(bool)

  • 功能:开启控制模式

  • 返回值:无

  • 参数:
参数 类型 含义
value bool true: 开启, false:不开启

void disableFloatToolbar(bool bDisabled)

  • 功能: 是否禁止出现浮动工具

  • 返回值:无

  • 参数:
参数 类型 含义
bDisabled bool true:禁止出现, false:允许出现(缺省值)

bool isCursorInUI()

  • 功能:鼠标是否在屏幕共享显示控件上

  • 返回值:鼠标是否在控件上,true- 在控件上; false - 不在控件上 (bool)

string getCursorPosInRemote()

  • 功能:鼠标在本地的屏幕共享UI控件上时,鼠标位置映射到远端的屏幕上的坐标

  • 返回值:映射到远端的屏幕上的坐标。数据格式:json格式,如:{"x"=1,"y"=1}

int getPicWidth()

  • 功能:获取远端屏幕的实际宽度

  • 返回值:远端屏幕的实际宽度(int)

int getPicHeight()

  • 功能:获取远端屏幕的实际高度

  • 返回值:远端屏幕的实际高度(int)

void enableMarked(bool value)

  • 功能:开启标注模式

  • 返回值:无

  • 参数:

参数 类型 含义
value bool 0: 不开启, 1:开启

int isPicEmpty()

  • 功能: 检查图像是否为空

  • 返回值:int

  • 参数:

参数 类型 含义
value int 0: 有图像, 1:无图像

bool savePic(string pathFileName)

  • 功能:拍照

  • 返回值:0:成功; 非0:保存遇到的错误码(bool)

  • 参数:

参数 类型 含义
pathFileName string 本地绝对路径文件名(支持格式:bmp, png, gif, jpg, jpeg)

void setPenStyle(intRgba color, int penWidth)

  • 功能:设置标注画笔样式

  • 返回值:无

  • 参数:

参数 类型 含义
intRgba int 颜色,排列方式bgr(8:8:8)
penWidth int 画笔宽度

void setFullScreen(bool bFullScreen)

  • 功能:设置全屏

  • 返回值:无

  • 参数:

参数 类型 含义
bFullScreen bool true :全屏

bool getFullScreen()

  • 功能:获取全屏

  • 返回值:表示该控件当前是否全屏,true 表示全屏

void setDblClickFullScreen(bool bVal)

  • 功能:配置是否允许双击全屏

  • 返回值:无

  • 参数:无

参数 类型 含义
bVal bool true:允许(缺省值), false:不允许

bool getDblClickFullScreen()

  • 功能:获取是否允许双击全屏

  • 返回值:表示该控件是否允许双击全屏,true 允许, false:不允许

成员视频UI显示组件

void clear()

  • 功能:清理当前图像

string getVideoID()

  • 功能:获取当前显示的用户的视频设备

  • 返回值:视频ID (string)

bool getVisibleNickName()

  • 功能: 获取是否显示昵称

  • 返回值:否显示昵称 (bool)

void setMaskPic(string base64PNG, bool bScaleToFitVideoUI)

  • 功能:在视频窗口上显示一个遮罩图片

  • 返回值:无

  • 参数:

参数 类型 含义
base64PNG string base64格式的png图像数据
bScaleToFitVideoUI bool true:铺满视频窗口,false:居中显示

bool isPicEmpty()

  • 功能: 检查图像是否为空

  • 返回值:图像是否为空

int getPicFrameTime()

  • 功能: 获取图像时间戳

  • 返回值:当前图像数据对应的时间戳(int)

keepAspectRatio(int value)

  • 功能:设置显示的视频画面是否保持比例
参数 类型 含义
value bool true: 保持比例不拉伸, false:不保持比例进行拉伸

bool dblClickFullScreen(bool value)

  • 功能: 设置是否支持双击全屏,默认不支持双击全屏

int savePic(string pathFileName)

  • 功能: 拍照

  • 返回值:0:成功; 非0:保存遇到的错误码 (bool)

  • 参数:

参数 类型 含义
pathFileName string 本地绝对路径文件名(支持格式:bmp, png, gif, jpg, jpeg)

string savePicToBase64(string format)

  • 功能: 拍照

  • 返回值:Base64为图片数据字符串,不成功则为空 (string)

  • 参数:

参数 类型 含义
format string 图片格式,支持bmp, png, gif, jpg, jpeg

void setMaskPic(string base64PNG, bool scaleToFitVideoUI)

  • 功能: 在视频窗口上显示一个遮罩图片

  • 返回值:无

  • 参数:

参数 类型 含义
base64PNG string base64格式的png图像数据
scaleToFitVideoUI bool true:铺满视频窗口,false:居中显示

void setToolbarHeight(int height)

  • 功能: 配置工具条高度

  • 返回值:无

  • 参数:

参数 类型 含义
height int 工具条高度

void setSavePicRect(int x, int y, int w, int h)

  • 功能: 设置拍照区域

  • 返回值:无

  • 参数:

参数 类型 含义
x int 相对于VideoUI控件的左上角位置(水平方向)
y int 相对于VideoUI控件的左上角位置(垂直方向)
w int 拍照的图像大小(宽)
h int 拍照的图像大小(高)
status int 第3方呼叫状态码:0-振铃; 1-接通 ;2-拒绝; 3-未应答 ;4-挂断

注意:此设配置对以下所有保存接口有效, 当x,y,w,h均为0时,代表保存完整图像。

int getPicWidth()

  • 功能: 获取图像宽

  • 返回值:图像宽

int getPicHeight()

  • 功能:获取图像高

  • 返回值:图像高

void setFullScreen(bool bFullScreen)

  • 功能:设置全屏

  • 返回值:无

bool getFullScreen()

  • 功能: 获取全屏

  • 返回值: 表示该控件当前是否全屏,true 表示全屏

void setVideo(string userID, int videoID)

  • 功能: 设置显示的目标用户视频

  • 返回值:无

  • 参数:

参数 类型 含义
userID string 目标用户ID
videoID int 用户的指定视频设备(-1,代表用户的默认视频设备)

void setVideo2(string userID, int videoID, int qualityLv)

  • 功能: 设置显示目标用户的第2档视频

  • 返回值:无

  • 参数:

参数 类型 含义
userID string 目标用户ID
videoID int 用户的指定视频设备(-1,代表用户的默认视频设备)
qualityLv int 视频档位(1:默认档位,2:对应quality2,如果2未开启时将显示1档的视频流)

房间内可观看摄像头列表中获取userID和videoID

开启一个摄像头多档视频流,请参见setLocVideoAttributes

注意:配置后就会建立视频通道并占用带宽。 如果不再观看时,应设为空:setVideo("", -1)。

int getQualityLv()

  • 功能: 获取当前显示的视频档位

  • 返回值: 视频档位

  • 参数:无

void setVisibleNickName(bool value)

  • 功能: 设置是否显示昵称

  • 返回值:无

  • 参数:
参数 类型 含义
value bool 否显示昵称

白板显示UI显示组件

CloudroomBoardUI 白板显示组件,是由视频房间组件内相关接口的封装而成,如果此组件不满足需求,可以使用视频房间组件内相关的接口自行实现。

string getBoardIDs()

  • 功能: 获取当前房间内的所有白板ID

  • 返回值: 白板的ID,字符串数组 (string[])

string getBoardInfo(boardID)

  • 功能:获取指定白板的信息

  • 返回值: 白板信息,json格式,详见BoardObj说明

string getCurBoardID()

  • 功能:获取当前显示的白板

  • 返回值: 白板的ID (string)

int getCurPageNo()

  • 功能: 获取当前白板的当前页

  • 返回值: 页序号(0为第一页) (int)

void setCurBoard(string boardID, int pageNo)

  • 功能: 设置当前白板

  • 返回值: 无

  • 参数:

参数 类型 含义
boardID string 白板的ID
pageNo int 白板的页序号,0为第一页

void undo()

  • 功能: 撤消我的最后一个标注

  • 返回值: 无

void redo()

  • 功能: 恢复我的最后一次撤消

  • 返回值: 无

void clear()

  • 功能: 清空当前白板所有标注(清空操作不能再恢复)

  • 返回值: 无

bool isScaledContents()

  • 功能: 获取白板当前的缩放模式,缩放模式下内容将被缩小或放大以填充有效区域,非缩放模式下图像将按原始尺寸显示并可能出现滚动条

  • 返回值: bool

void setScaledContents(bool bScaled)

  • 功能: 设置白板的缩放模式

  • 返回值: 无

  • 参数
参数 类型 含义
bScaled bool 是否启用缩放模式

void setLineWidth(int width)

  • 功能: 设置画笔粗细

  • 返回值: 无

  • 参数:
参数 类型 含义
width int 线条的宽度

int getLineWidth()

  • 功能: 获取当前画笔颜色

  • 返回值: 线条的宽度 (int)

void setReadOnly(bool bReadOnly)

  • 功能: 设置白板本地只读(本地禁止标注,其他端不受影响)

  • 返回值: 无

  • 参数:

参数 类型 含义
bReadOnly bool 是否只读

bool isReadOnly()

  • 功能: 获取白板本地只读配置

  • 返回值: 是否只读 (bool), true - 白板本地只读

void startHttpMgr()

  • 功能: 启动http文档上传下载功能

  • 返回值:无

void stopHttpMgr()

  • 功能: 停止http文档上传下载功能

  • 返回值:无

string getAllTransferInfos()

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

  • 返回值:详见 HttpFileInfoObjs

HttpFileInfoObj getTransferInfo(string filePathName)

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

  • 返回值:详见 HttpFileInfoObj

  • 参数:

参数 类型 含义
filePathName string 本地路径文件名

void startTransferFile(HttpReqInfo fileinfo)

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

  • 返回值:无

  • 参数:
参数 类型 含义
fileinfo string 详见HttpFileInfoObj

void cancelFileTransfer(string fileName)

  • 功能: 取消传输

  • 返回值:无

  • 参数:
参数 类型 含义
fileName string 本地路径文件名

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

void rmTransferInfo(string fileName,int bRemoveLocFile)

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

  • 返回值:无

  • 参数
参数 类型 含义
fileName string 文件名
bRemoveLocFile int 是否移除本地文件,为1时,那么上传的源始文件、下载的临时文件或结果文件都将被移除。

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

void fileStateChanged(const string &fileName, HTTP_TRANSFER_STAT state)

  • 功能: 通知用户文件状态更改
  • 参数
参数 类型 含义
fileName string 文件名
state int 详细介绍见HTTP_TRANSFER_STAT

void fileProgress(conststring &fileName, int finisedSize, int totalSize)

  • 功能: 通知用户文件的传输进度
  • 参数
参数 类型 含义
fileName string 文件名
totalSize int 文件总大小

void fileFinished(const string &fileName, int rslt)

  • 功能: 通知用户文件传输结束
  • 参数
参数 类型 含义
fileName string 文件名
rslt int 传输结果,详见CRVideo_HTTP_TRANSFER_RESULT

void fileHttpRspHeader(const string &fileName, const string &rspHeader)

  • 功能: 通知http响应消息的header数据
  • 参数
参数 类型 含义
fileName string 文件名
rspHeader string http响应头

void fileHttpRspContent(const string &filename, const string &content)

  • 功能: 通知上传完成后,http的响应内容
  • 参数
参数 类型 含义
fileName string 文件名
rspContent string http上传完成后的响应内容

int tryReadFile(string diskPathFileName)

  • 功能: 尝试读取文件

  • 返回值:尝试结果,定义见ERR_DEF

  • 参数
参数 类型 含义
diskPathFileName string 本地路径文件名

int readFileAsBase64(string diskPathFileName)

  • 功能: 读取文件

  • 返回值: 以base64编码返回文件内容

  • 参数
参数 类型 含义
diskPathFileName string 本地路径文件名

int writeBase64ToFile(string diskPathFileName, string base64Dat)

  • 功能: 创建或重写文件(如果目录不存在,则创建目录)

  • 返回值: 结果,定义见ERR_DEF

  • 参数
参数 类型 含义
diskPathFileName string 本地路径文件名
base64Dat string base64编码格式的文件数据

int moveFile(string srcDiskFileName, string dstDiskFileName)

  • 功能: 移动文件

  • 返回值: 结果,定义见ERR_DEF

  • 参数
参数 类型 含义
srcDiskFileName string 本地源文件
dstDiskFileName string 本地目标文件

注意:目标文件如果已存在,将按失败处理,不会覆盖;

string getOpenFileName(string title, string directory, string filter)

  • 功能: 获取用户打开的全路径文件名

  • 返回值: 结果,空串表示用户取消, 否则返回用户选择的文件路径文件名

  • 参数
参数 类型 含义
title string 打开文件框的标题
directory string 打开对话框初始路径,不设初始值时请传空
filter string 文件类型过滤器(可为空),示例:"Images (*.png *.xpm .jpg);;Text files (.txt)"

string getSaveFileName(string title, string directory, string filter)

  • 功能: 获取用户保存的全路径文件名

  • 返回值: 结果,空串表示用户取消, 否则返回用户保存的文件路径文件名

  • 参数
参数 类型 含义
title string 打开文件框的标题
directory string 打开对话框初始路径,不设初始值时请传空
filter string 文件类型过滤器(可为空),示例:"Images (*.png *.xpm .jpg);;Text files (.txt)"

void removeFromFileMgr(string filename)

  • 功能: 删除本地的录制文件

  • 返回值:无

  • 参数
参数 类型 含义
filename string 文件名

上传中的文件会被取消上传,已上传完成的服务器文件不受影响

int addFileToRecordMgr(string fileName, string filePath)

  • 功能: 添加本地文件到录制文件管理中

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

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

第三方录制文件调用此接口后可进行本地回放和上传到视频服务器上,和自己录制的文件一样可以正常在线播放和下载

string getWriteablePathInIEProtectedMode()

  • 功能: 获取ie的保护模式下可读写的路径(获取到的为InternetCache目录,在系统重启或InternetCache目录清理时,此目录下的内容将会丢失)

  • 返回值:路径

bool isIEProtectedMode()

  • 功能: 检查插件是否运行在ie的保护模式下

  • 返回值:true - ie保护模式下; false - 非ie或非保护模式{bool}

void startScreenMark()

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

  • 返回值: 无

void stopScreenMark()

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

  • 返回值: 无

void setMarkText(string videoFilePathName,int msecond, string markText)

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

  • 返回值:无

  • 参数
参数 类型 含义
videoFilePathName string 视频文件路径名
msecond int 视频播放的位置(毫秒)
markText string 打点信息

调用此接口会生成一个和视频文件同名且有.json后缀的打点文本文件

void removeMarkText(string videoFilePathName,msecond)

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

  • 返回值:无

  • 参数
参数 类型 含义
videoFilePathName string 视频文件路径名
msecond int 视频播放的位置(毫秒)

string getVideoMarkFile(string videoFilePathName)

  • 功能: 获取视频文件对应的打点文件

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

  • 参数
参数 类型 含义
videoFilePathName string 视频文件路径名

string getAllMarks(string videoFilePathName)

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

  • 返回值:打点信息集合字符串,json格式

  • 参数
参数 类型 含义
videoFilePathName string 视频文件路径名

string callMoreParty(string callid,meetObj, string usrExtDat, string cookie)

  • 功能:2方通话中再呼叫第3方

  • 返回值:本次邀请标识码(邀请ID)

  • 参数
参数 类型 含义
callid string 被叫用户的账户ID
meetObj string 当前会议信息(请参见MeetInfoObj)
usrExtDat string 自定义扩展参数
cookie string 自定义数据 (在回调时,回传给调用者)

结果事件callMorePartyRslt,根据sdkErr判断是否成功

void callMorePartyRslt(const string &inviteID, int sdkErr, const string &cookie)

  • 功能:第3方呼叫操作结果
  • 参数
参数 类型 含义
inviteID string 邀请ID
sdkErr int 操作失败代码,定义见ERR_DEF
cookie string 自定义数据 (在回调时,回传给调用者)

void cancelCallMorePartyRslt(const string &inviteID, int sdkErr, const string &cookie)

  • 功能:取消第3方呼叫操作结果
  • 参数
参数 类型 含义
inviteID string 邀请ID
sdkErr int 操作失败代码,定义见ERR_DEF
cookie string 自定义数据 (在回调时,回传给调用者)

void notifyCallMorePartyStatus(const string &inviteID, int status)

  • 功能:SDK通知第3方呼叫状态改变
  • 参数
参数 类型 含义
inviteID string 邀请ID
status int 第3方呼叫状态码:0-振铃; 1-接通 ;2-拒绝; 3-未应答 ;4-挂断

string getRecordFileInfo(string fileName)

  • 参数
参数 类型 含义
fileName string 文件名, 不含路径

void kickout(string userId)

  • 功能:剔出用户

  • 返回值:无

  • 参数
参数 类型 含义
userId string 用户id