ccVideo
init playGS close changeVisible sendMsg fullscreen cancelFullscreen setRect switchDV
论坛示例
为帮助用户更好更快的使用模块,论坛维护了一个示例,示例中包含示例代码、知识点讲解、注意事项等,供您参考。
概述
ccVideo模块封装了CC视频平台的直播SDK,使用此模块可实现在线课堂的直播功能。
使用CC视频基本流程说明: 1.在CC视频官网( https://www.bokecc.com/ )申请账号试用。
init
sdk初始化
init({params},function(ret,err))
params
account
- 类型:字符串
- 描述:登录账号进入到个人中心找到userid。
room
- 类型:字符串
- 描述:直播的房间号。
joinPwd
- 类型:字符串
描述:用户加入房间需要的密码。
drect: {x:0,y:0,w:300,h:200},//文档的大小位置
vrect: {x:0,y:200,w:100,h:100},//摄像头的大小位置
nickName
- 类型:字符串
- 描述:昵称。
switchFlag
- 类型:布尔型
- 描述:是否可以切换摄像头和文档的显示位置,true可以切换,false不可以。
- 默认:false。
vrect
- 类型:JSON 对象
- 描述:(可选项)摄像头区域的位置及尺寸
- 内部字段:
- {
- x: 0, //(可选项)数字类型;模块左上角的 x 坐标(相对于所属的 Window 或 Frame);默认:0
- y: 0, //(可选项)数字类型;模块左上角的 y 坐标(相对于所属的 Window 或 Frame);默认:0
- w: 320, //(可选项)数字类型;模块的宽度;默认:所属的 Window 或 Frame 的宽度
- h: 300 //(可选项)数字类型;模块的高度;默认:w的3/4 }
drect
- 类型:JSON 对象
- 描述:(可选项)文档区域的位置及尺寸
- 内部字段:
- {
- x: 0, //(可选项)数字类型;模块左上角的 x 坐标(相对于所属的 Window 或 Frame);默认:0
- y: 0, //(可选项)数字类型;模块左上角的 y 坐标(相对于所属的 Window 或 Frame);默认:0
- w: 320, //(可选项)数字类型;模块的宽度;默认:所属的 Window 或 Frame 的宽度
- h: 300 //(可选项)数字类型;模块的高度;默认:w的3/4 }
callback(ret, err)
ret:
- 类型:JSON对象
- 内部字段:
{
cmd:"init",
data:'登录成功'
}
示例代码
var ccVideo=api.require('ccVideo');
ccVideo.init({
room:"9D0ECA2E08D426699C33DC5901xxxxxx",
account:"9B78915A0Dxxxxxx",
nickName:"mynickname",
joinPwd:"111111",
switchFlag:true,
drect:{x:0,y:10,w:api.winWidth,h:~~(api.winWidth*9/16)},
vrect:{x:20,y:300,w:100,h:~~(100*3/4)},
},function(ret,err){
alert(JSON.stringify(ret));
setTimeout(playGS,300)//延迟执行
})
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
playGS
打开一个直播。注:这个方法一定要在init返回之后调用
playGS({},function(ret,err))
callback(ret, err)
ret:
- 类型:JSON对象
- 内部字段:
{
cmd:"",//onJoin加入成功;onChatMessage 聊天回调;onBanChat被禁言回调;onUnBanChat解除禁言回调;onBroadcastMsg 广播回到;onPrivateChat私聊回调;onPublicChatMessage公共聊天回调;onHistoryBroadcastMsg聊天历史记录回调;onLeave被剔除直播间回调;onRosterTotal聊天人数变化回调;onLiveStatus直播间状态回调;
data:'',//返回相关数据
sendMsgStatus:1,//1 信息发送成功;0 信息发送失败
type:'public',//仅当type==1&&sendMsgStatus==1有聊天信息回调
nickName:'',//仅当type==1&&sendMsgStatus==1有值,发言者的昵称
chatId,'',//仅当type==1&&sendMsgStatus==1有值,发言id
senderId,//仅当type==1&&sendMsgStatus==1有值,发言者id
role,//仅当type==1&&sendMsgStatus==1有值,发言者角色
msg,//仅当cmd=onRosterTotal有值,为观看人数
}
示例代码
var ccVideo=api.require('ccVideo');
ccVideo.playGS({},function(ret,err){
alert(JSON.stringify(ret));
})
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
close
关闭直播或者点播
close()
示例代码
var ccVideo=api.require('ccVideo');
ccVideo.close()
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
changeVisible
设置视频区域和文档区域的显示与隐藏
params
type
- 类型:字符串
- 描述:要隐藏的区域,doc为文档区域,video为视频区域。
isShow
- 类型:数值类型
- 描述:显示或者隐藏,0为隐藏,1为显示。
changeVisible({params},function(ret,err))
示例代码
var ccVideo=api.require('ccVideo');
ccVideo.changeVisible({
type: 'doc',
isShow: 1
})
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
sendMsg
发送聊天消息。
sendMsg({params},function(ret,err))
params
content
- 类型:字符串
- 描述:聊天消息纯文本。
示例代码
var ccVideo=api.require('ccVideo');
ccVideo.sendMsg({
content:'test',
},function(ret,err){
alert(JSON.stringify(ret));
})
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
fullscreen
文档区域全屏显示
fullscreen()
示例代码
var ccVideo=api.require('ccVideo');
ccVideo.fullscreen()
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
cancelFullscreen
文档区域取消全屏
cancelFullscreen()
示例代码
var ccVideo=api.require('ccVideo');
ccVideo.cancelFullscreen()
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
setRect
设置文档或者摄像头区域的位置及大小
setRect({params})
params
type
- 类型:字符串
- 描述:要设置的区域,video为摄像头区域,doc文档区域。
rect
- 类型:JSON 对象
- 描述:(可选项)文档或摄像头区域的位置及尺寸
- 内部字段:
- {
- x: 0, //(可选项)数字类型;模块左上角的 x 坐标(相对于所属的 Window 或 Frame);默认:0
- y: 0, //(可选项)数字类型;模块左上角的 y 坐标(相对于所属的 Window 或 Frame);默认:0
- w: 320, //(可选项)数字类型;模块的宽度;默认:所属的 Window 或 Frame 的宽度
- h: 300 //(可选项)数字类型;模块的高度;默认:w的3/4 }
示例代码
var ccVideo=api.require('ccVideo');
ccVideo.setRect({
type: 'video',//video摄像头区域,doc文档区域
rect: {x:0,y:0,w:300,h:200}
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
switchDV
文档和摄像头区域互换位置大小,仅当playGS()中switchFlag==true时有效
switchDV()
示例代码
var ccVideo=api.require('ccVideo');
ccVideo.switchDV()
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本