# 类型定义
类型定义
CRVideo_InitObj
初始化配置
- Type:object
参数 | 类型 | 说明 |
---|---|---|
isCallSer | boolean | 是否启用callSer模块。如需用到透明通道、呼叫、队列等功能需要开启 |
CRVideo_AudioCfg
音频配置
- Type:object
参数 | 类型 | 说明 |
---|---|---|
micName | string | 麦克风设备名称 |
speakerName | string | 扬声器名称 |
privEC | string | 是否开启云屋私有回声消息0:不开启;1:开启 |
privAgc | string | 是否开启云屋私有语音自动增益0:不开启;1:开启 |
CRVideo_MediaInfoObj
影音文件信息
- Type: object
参数 | 类型 | 说明 |
---|---|---|
userID | string | 用户id |
state | number | 播放状态 0:播放 1:暂停 2:未播放 |
mediaName | string | 影音文件名 |
CRVideo_MemberInfo
成员信息
- Type: object
名称 | 类型 | 说明 |
---|---|---|
userID | string | 用户ID |
nickname | string | 昵称 |
audioStatus | CRVideo_ASTATUS | 音频状态,数值参考麦克风状态 |
videoStatus | CRVideo_VSTATUS | 视频状态,数值参考摄像头(视频)状态定义 |
CRVideo_QueueInfo
队列信息
- Type: object
参数 | 类型 | 说明 |
---|---|---|
queID | string | 队列ID |
name | string | 队列名称 |
desc | string | 队列描述 |
prio | number | 优先级,值越小优先级越高 |
CRVideo_ClientStatus
客户状态
- Type: object
参数 | 类型 | 说明 |
---|---|---|
callInfo | object | 呼叫状态,若无该字段则不在呼叫,属性参考CRVideo_SessionInfo |
queuingInfo | object | 当前排队状态,若无该字段则当前不在排队,属性参考CRVideo_QueuingInfo |
CRVideo_ServingStatus
客户状态
- Type: object
参数 | 类型 | 说明 |
---|---|---|
callInfo | object | 呼叫状态,若无该字段则不在呼叫,属性参考CRVideo_SessionInfo |
queIDs | array | 当前服务的队列数组 |
CRVideo_UserStatus
用户在线状态
- Type: object
参数 | 类型 | 说明 |
---|---|---|
userID | string | 在线用户的UID |
userStatus | number | 用户的在线状态(0离线 ;1在线空闲 ;2在线忙碌;3在线房间中) |
isDND | number | 用户免打扰状态(0代表关闭免打扰,其它值代表开启免打扰) |
CRVideo_QueuingInfo
排队信息
- Type: object
参数 | 类型 | 说明 |
---|---|---|
queID | string | 队列ID 我排的队列 |
position | string | 我的位置 |
queuingTime | string | 我排队的时长(单位s) |
CRVideo_ScreenShareCfgObj
屏幕共享配置对象
- Type: object
参数 | 类型 | 说明 |
---|---|---|
catchRect | object | {"left":xx,"top":xx,"width":xx,"height":xx}用于实现区域共享 |
catchWnd | number | 共享窗口的窗口句柄,用于实现窗口共享 |
maxFPS | number | 最大帧率, 缺省为8 (当网络发不动时,帧率会自动下降) |
maxKbps | number | 最大码率,缺省为800kbps |
CRVideo_SessionInfo
呼叫信息
- Type: object
参数 | 类型 | 说明 |
---|---|---|
callID | string | 房间的呼叫ID |
peerID | string | 房间的目标用户ID |
peerName | string | 房间的目标用户昵称 |
callState | number | 呼叫是否被对方接受 0:暂未接受,1:已接受 |
meetInfo | object | 分配的房间对象,参考CRVideo_MeetInfoObj |
duration | number | 房间持续的时长(单位s) |
CRVideo_VideoIDsObj
视频设备对象
- Type: object
参数 | 类型 | 说明 |
---|---|---|
userID | string | 用户ID |
videoID | string | 设备id |
CRVideo_Board
白板信息
- Type: object
参数 | 类型 | 说明 |
---|---|---|
userID | string | 用户ID |
boardID | number | 白板id |
title | string | 白板名称 |
width | number | 白板宽度 |
height | number | 白板高度 |
CRVideo_QueInfo
队列信息
- Type: object
参数 | 类型 | 说明 |
---|---|---|
queID | number | 队列id |
name | number | 队列名称 |
desc | string | 队列描述 |
prio | number | 优先级,值越小优先级越高 |
CRVideo_QueStatus
队列状态
- Type: object
参数 | 类型 | 说明 |
---|---|---|
queID | number | 队列id |
agent_num | number | 坐席数量 |
wait_num | number | 排队客户数量 |
srv_num | number | 正在服务的客户数量 |
CRVideo_QueUser
队列用户信息
- Type: object
参数 | 类型 | 说明 |
---|---|---|
queID | number | 队列ID |
usrID | string | 用户ID |
name | string | 用户昵称 |
queuingTime | string | 已排队时长(秒) |
usrExtDat | string | 用户排队时携带的扩展数据 |
CRVideo_Rect
区域
- Type: object
参数 | 类型 | 说明 |
---|---|---|
left | number | 区域右上角x坐标 |
top | number | 区域右上角y坐标 |
width | number | 区域宽度 |
height | number | 区域高度 |
CRVideo_SubPage
子功能区信息
- Type: object
参数 | 类型 | 说明 |
---|---|---|
userID | number | 用户ID |
boardID | number | 白板id |
CRVideo_GetMeetingsParam
获取房间列表的参数
- Type: object
参数 | 类型 | 说明 |
---|---|---|
QueryMode | number | 0:查询全部, 1:查询我创建的房间 |
CRVideo_MixerCfgObj
- 混图器规格配置
{"width":640,"height":360,"frameRate":8,"bitRate":500000,"defaultQP":28,"gop":120}
- Type: object
参数 | 类型 | 说明 |
---|---|---|
width | number | 图像宽度(要求8的倍数) |
height | number | 图像高度(要求8的倍数) |
frameRate | number | 图像帧率,取值范围:1-30(值越大,cpu要求更高,录像推荐15帧,直播推存25帧) |
bitRate | number | 录制视频文件的最高码率,当图像变化小时,实际码率会低于此值 |
defaultQP | number | 录制视频文件的目标质量,缺省值:26。取值范围:0~51,0表示完全无损, 51表示质量非常差,推荐高质量取值18,中质量26, 低质量34 |
gop | number | I帧周期(I帧越少码率越小,但直播延时会越大); 文件录制建议15秒一个I帧取值:frameRate x 15(frameRate的15倍); 直播建议4秒一个I帧取值: frameRate x 4(frameRate的4倍); |
CRVideo_MutiMixerCfgsObj
- 混图器规格配置列表
[
{"id":"1",
"cfg":{"width":640,"height":360,"frameRate":8,"bitRate":500000,"defaultQP":28,"gop":120}
}
]
- Type: object
参数 | 类型 | 说明 |
---|---|---|
id | number | 混图器编号 |
cfg | CRVideo_MixerCfgObj | 混图器规格配置,参见CRVideo_MixerCfgObj |
CRVideo_MixerContentObj
- 混图器内容配置
[{
"type":0,
"keepAspectRatio":1,
"left":5,
"top":10,
"width":633,
"height":356,
"param":{"camid":"usr1.1"}
},{
"type":0,
"keepAspectRatio":1,
"left":642,
"top":10,
"width":633,
"height":356,
"param":{"camid":"usr2.1"}
}]
- Type: object
参数 | 类型 | 说明 |
---|---|---|
left | number | 在混图画面中的区域(水平位置) |
top | number | 在混图画面中的区域(垂直位置) |
width | number | 在混图画面中的区域(尺寸---宽) |
height | number | 在混图画面中的区域(尺寸---高) |
type | CRVideo_MIXER_VCONTENT_TYPE | 请见后面type描述; |
keepAspectRatio | number | 内容保持原始比例,0不保持,1保持 |
param | object | 如:{"camid":"usr2.1"}。请见后面param支持的参数; |
type描述:
- 0.当type=0时,表示混图的是摄像头,param必须包含camid
- 3.当type=3时,表示混图的是影音共享,不用附加任何参数
- 4.当type=4时,表示混图的是时戳,不用附加任何参数
- 5.当type=5时,表示混图的是远端共享的屏幕,不用附加任何参数
- 6.当type=6时,表示混图的是白板,不用附加任何参数。
- 7.当type=7时,表示混图的是文本(支持简单html),param必须包含resourceid和text
- 注type=7 时,width和height可为0,此时元素大小由文本信息自动确定
param 支持的参数如下:
- 1.camid 用户id.摄像头id, 如:"testuser.1"
- 2.text 文件内容,支持一些简单的html标签,如:
<span style=" font-weight:600; color:#00f;">客户姓名:</span>
<span style=" color:#00f;">张三</span> <br/>
<span style=" font-weight:600; color:#00f;">录制日期:</span>
<span style=" color:#00f;">2018-03-01</span>
CRVideo_MutiMixerContentsObj
- 混图器内容配置列表
[{
"id": "1",
"content": [{
"type":0,
"keepAspectRatio":1,
"left":5,
"top":10,
"width":633,
"height":356,
"param":{"camid":"usr1.1"}
},{
"type":0,
"keepAspectRatio":1,
"left":642,
"top":10,
"width":633,
"height":356,
"param":{"camid":"usr2.1"}
}]
}]
- Type: object
参数 | 类型 | 说明 |
---|---|---|
id | number | 混图器编号 |
content | CRVideo_MixerContentObj | 混图器内容配置,参见CRVideo_MixerContentObj |
CRVideo_MixerOutputObj
- 混图器输出配置
[
{"type":0,"filename":"D:/1.mp4"},
{"type":1,"liveUrl":"rtmp://xxx"},
]
- Type: object
当type==MIXOT_FILE (即 0),可携带以下参数:
参数 | 类型 | 说明 |
---|---|---|
type | number | 输出类型CRVideo_MIXER_OUTPUT_TYPE |
filename | string | 录像路径文件名(本地录像名格式如:d:/1.mp4,服务器录像名格式如:/2018-11-21/1.mp4),支持的文件格式为mp4/ts/flv/avi,其中flv和ts两种格式在程序异常结束时产生的录制文件仍可用。 |
encryptType | number | 录像文件是否加密,0:不加密,1:加密;(此参数仅本地录制有效) |
isUploadOnRecording | number | 录像文件是否边录边传,0:不上传,1:边录边传; (此参数仅本地录像有效) |
serverPathFileName | string | 边录边传时,上传到服务器的路径文件名; (此参数仅本地录像有效) |
当type==MIXOT_LIVE(即 1),可携带以下参数:
参数 | 类型 | 说明 |
---|---|---|
type | number | 输出类型CRVideo_MIXER_OUTPUT_TYPE |
liveUrl | string | 直播推流地址,支持rtmp/rtsp; |
errRetryTimes | number | 直播推流异常时,重试次数 |
CRVideo_MutiMixerOutputsObj
- 混图器输出配置列表
[
{
"id": "1",
"output": [
{"type": 0,"filename": "D:/1.mp4"},
{"type": 1,"liveUrl": "rtmp://xxx"}]
}
]
- Type: object
参数 | 类型 | 说明 |
---|---|---|
id | number | 混图器编号 |
output | 混图器输出配置 | 参见CRVideo_MixerOutputObj |
CRVideo_MixerOutputInfoObj
- 录制文件、直播信息
{"state":2, "duration":100,"fileSize":10000}
- Type: object
参数 | 类型 | 说明 |
---|---|---|
state | number | 状态,请见后面描述; |
duration | number | 录像文件时长,单位:毫秒; |
fileSize | number | 录像文件大小; |
errCode | number | 错误码 |
state状态描述:
0:输出对象已创建;
1:输出目标信息更新; 可以从结构中取得:duration, fileSize参数;
2:输出对象已关闭; 可以从结构中取得:duration, fileSize参数;
3:输出对象异常;可以从结构中取得:err参数;
CRVideo_MeetInfoObj
房间对象
{"ID":100,
"pswd":"",
"subject":"test",
"pubMeetUrl":"www.cloudroom.com/auzjie",
"creator":"testuser",
"memberCount":4,
"startTime": 123455}
属性 | 值 |
---|---|
ID | 房间号,0:代表房间信息无效 |
pswd | 房间密码;(空代表房间无密码) |
subject | 房间主题 |
pubMeetUrl | 房间公共链接 |
creator | 房间创建者 |
memberCount | 房间内人数 |
startTime | 会议开始时间(从1970年1月1日00:00:00起) |
CRVideo_MeetInfoObjs
房间对象列表
[{"ID":100,
"pswd":"",
"subject":"test",
"pubMeetUrl":"www.cloudroom.com/auzjie",
"creator":"testuser",
"memberCount":4},
{"ID":100,
"pswd":"",
"subject":"test",
"pubMeetUrl":"www.cloudroom.com/auzjie",
"creator":"testuser",
"memberCount":4},... ]
CRVideo_MemberObj
成员对象
{"userID":"111",
"nickName":"aaa",
"audioStatus":"1",
"videoStatus":"1"}
属性 | 值 |
---|---|
userID | 用户ID |
nickName | 用户昵称 |
audioStatus | 音频状态,数值参考麦克风状态CRVideo_ASTATUS |
videoStatus | 视频状态,数值参考视频状态定义CRVideo_VSTATUS |
CRVideo_MembersObj
成员对象列表
[{"userID":111,"nickName":"aaa",
"audioStatus":1,"videoStatus":1},
{"userID":222,"nickName":"bbb",
"audioStatus":1,"videoStatus":1}]
CRVideo_AudioCfg
音频配置
{"micName":"aaa",
"speakerName":"aaa",
"echoCancelDelay":-1,
"privAgc": 0,
"echoSuppression": 0
}
属性 | 值 |
---|---|
micName | 麦克风设备名称(空代表系统默认设备) |
speakerName | 扬声器名称(空代表系统默认设备) |
privAgc | 是否开启云屋私有语音自动增益. 0:不开启(缺省值); 1:开启 |
echoSuppression | 是否开启回声抑制。 0,不开启(缺省值); 1:开启(开启后回声消除更强,但会影响音质) |
echoCancelDelay | 回声延时(ms)。 -1:自动检测(缺省值); 0:配置指定的回声延时,如:40; (对于一些定制的设备,有准确的回声延时,可在此配置) |
属性 | 值 |
---|---|
format | 图像格式,数值参考视频图像格式CRVideo_VIDEO_FORMAT |
dat | 图像数据Base64编码 |
width | 图像宽度(要求8的倍数) |
height | 图像高度(要求8的倍数) |
frameTime | 图像的时戳 |
CRVideo_VideoInfoObj
用户视频信息
{"userID":"111",
"videoID":2,
"videoName":"camera2"}
属性 | 值 |
---|---|
userID | 用户id |
videoID | 设备id |
videoName | 设备名称 |
isIPCamera | 是否为网络摄像头 (只有获取自已的才有此字段) |
CRVideo_VideoInfosObj
用户视频信息列表
[
{"userID":"111","videoID":1,
"videoName":"camera1"},
{"userID":"111","videoID":2,
"videoName":"camera2"},,...
]
CRVideo_VideoIDObjs
用户视频列表
[
{"userID":"111","videoID":1},
{"userID":"111","videoID":2},...
]
属性 | 值 |
---|---|
userID | 用户id |
videoID | 设备id |
CRVideo_ScreenShareCfgObj
屏幕共享配置
屏幕共享:
{"maxFPS":8,
"maxKbps":800
}
区域共享:
{"maxFPS":8,
"maxKbps":800,
"catchRect":{"left":0, "top":0, "width":1920, "height":1080}
}
窗口共享:
{"maxFPS":8,
"maxKbps":800,
"catchWnd":134080
}
属性 | 值 |
---|---|
catchRect | {"left":10,"top":10,"width":100,"height":100}用于实现区域共享 |
catchWnd | 共享窗口的窗口句柄,用于实现窗口共享 |
maxFPS | 最大帧率, 缺省为8 (当网络发不动时,帧率会自动下降) |
maxKbps | 最大码率,缺省800kbps |
CRVideo_RecordVideosObj
影音文件
{ "userID":"111", "state":1, "mediaName":"D:/1.mp4"}
属性 | 值 |
---|---|
userID | 用户id径 |
state | 播放状态 0:播放 1:暂停 2:未播放 |
mediaName | 影音文件名 |
CRVideo_BoardObjs
白板信息列表
[{ "boardID":"a","title":"board",
"width":1024,"height":768,
"pageCount":1},
{ "boardID": "b","title": "board",
"width": 1024,"height":>768,
"pageCount":1}…
]
CRVideo_BoardObj
白板对象
{ "boardID":"x",
"title": "board",
"width": 1024,
"height":768,
"pageCount":1}
属性 | 值 |
---|---|
boardID | 白板标识 |
title | 白板的名字 |
width、height | 白板的宽、高 |
pageCount | 页数(建议白板是一页,文档是实际页面数) |
CRVideo_PenColorObj
白板的画笔颜色值对象
{"opacity":0.3,
"color": "#ef8020"}
属性 | 值 |
---|---|
opacity | 画笔颜色的透明度(0~1的数值) |
color | 画笔颜色的rgb值(格式为“#ff3030”的字符串) |
CRVideo_BoardElementObjs
白板图元列表
[
{ "elementID": "xx", "type":100,
"orderID":0, "left":0, "top":0}
{ "elementID":"yy", "type":100,
"orderID":0, "left":100, "top":100}
]
CRVideo_BoardElementObj
白板图元
{ "elementID": "xx", "type":100, "left":0, "top":0, … }
属性 | 值 |
---|---|
elementID | 图元id |
type | 图元的类型,值100以下为云屋保留值,100及以上为自定义值 |
left、top | 图元在页内的左上角位置 |
… | 可自由扩展 |
说明: | 1.elementID必须调用createElementID()获取, 即使是曾经调此接口创建的然后存入了磁盘文件,再次读入房间时,所有elementID也需要重新生重。 2.如果要和云屋产品互通,那就需要按云屋的定义取值,可以联系云屋获取相关文档 |
MeetingAttrOptions
操作房间属性选项
{"notifyAll":1}
属性 | 类型 | 值 |
---|---|---|
notifyAll | number | 1:通知房间所有人员,0(默认值):不通知。 |
MeetingAttrObjs
会议属性集
{
"userdef Key1": {
"value": "11111",
"lastModifyUserID": "111",
"lastModifyTs": 11111
},
"userdef Key2": {
"value": "22222",
"lastModifyUserID": "222",
"lastModifyTs": 22222
}
}
属性 | 类型 | 值 |
---|---|---|
value | string | 属性值 |
lastModifyUserID | string | 最后修改者 |
lastModifyTs | number | 最后的修改时间,1970-1-1 0:00:00以来的秒数 |
UsrMeetingAttrObjs
用户属性集
{
"userid1": {
"userdef Key1": {
"value": "11111",
"lastModifyUserID": "111",
"lastModifyTs": 11111
},
"userdef Key2": {
"value": "22222",
"lastModifyUserID": "222",
"lastModifyTs": 22222
}
},
"userid2": {
"userdef Key1": {
"value": "11111",
"lastModifyUserID": "111",
"lastModifyTs": 11111
},
"userdef Key2": {
"value": "22222",
"lastModifyUserID": "222",
"lastModifyTs": 22222
}
}
}
属性 | 类型 | 值 |
---|---|---|
value | string | 属性值 |
lastModifyUserID | string | 最后修改者 |
lastModifyTs | number | 最后的修改时间,1970-1-1 0:00:00以来的秒数 |
← 常量定义 SDK下载及Demo演示 →