视频会议

8.1 获取StarRtc.StarRoomSDK实例,实现回调函数

function videoMeetingCallBack(data, status, oper)
{
var thisRoom = data.obj;
switch (status){
case "connect success":
//连接成功
break;
case "connect failed":
case "connect closed":
//连接失败
break;
case "onChatRoomMessage":
//收到聊天室类别消息
break;
case "onWebrtcMessage":
//收到视频类别消息
switch(data.type)
{
case "streamCreated":
//本地视频流创建,data.status == "success"为成功
break;
case "srcApplyUpload":
//申请上传状态,data.status == "success"为成功
break;
case "addUploader":
//视频会议添加成员
break;
case "removeUploader":
//视频会议移除成员
break;
case "delChannel":
//删除视频会议,data.status == "success"为成功
break;
case "createChannel":
//创建视频会议,data.status == "success"为成功
break;
case "streamData":
//收到实时数据
break;
case "streamConfig":
//设置大小图回调
break;
case "serverErr":
//服务器错误
break;
}
break;
}
}

/**
* 创建视频会议房间
* @param _oper 操作类型:new,创建;open,加入
* @param _userCallback 消息回调
* @param _userData 存储视频会议房间的相关信息(id,name,creator),结构为{"roomInfo":{"id":"", "name":"", "creator":""}}
*/
StarRtc.StarSDK.getVideoMeetingRoomSDK = function (_oper, _userCallback, _userData)

例:
var starSDK = new StarRtc.StarSDK();
currRoom = starSDK.getVideoMeetingRoomSDK("open", videoMeetingCallBack, {"roomInfo":{"id":"", "name":"", "creator":""}});

8.2 StarRtc.StarRoomSDK 视频会议 部分 API 说明

/**
* 连接房间
*/
StarRtc.StarRoomSDK.sigConnect = function ()

/**
* 断连房间
* @param flag 是否主动断开连接的标志为,用于判断重连
*/
StarRtc.StarRoomSDK.sigDisconnect = function (_flag)

/**
* 创建房间
*/
StarRtc.StarRoomSDK.createNew = function ()

/**
* 删除房间
*/
StarRtc.StarRoomSDK.deleteCurrRoom = function ()

/**
* 创建本地视频流
* @param streamOption 流配置(分辨率等),如{ "video": true, "audio": { deviceId: { ideal: ["default"] } } }, 或{ "video": { width: { ideal: 640 }, height: { ideal: 480 }, frameRate: { ideal: 25 }, facingMode: { ideal: ["user"] } }, "audio": { deviceId: { ideal: ["default"] } }
*/
StarRtc.StarRoomSDK.createStream = function (streamOption)

/**
* 创建分享屏幕视频流
*/
StarRtc.StarRoomSDK.createScreenCaptureStream = function ()

/**
* 设置流可见性(会同时影响自己本地流和对端流)
* @param config 流可见性配置{"video":true, "audio":true}
*/
StarRtc.StarRoomSDK.publishStream = function (config)

/**
* 加入房间
*/
StarRtc.StarRoomSDK.joinRoom = function ()

/**
* 离开房间
* @param _flag 是否主动离开(可选)
*/
StarRtc.StarRoomSDK.leaveRoom = function (_flag)

/**
* 切换大小图
* @param streamConfig 切换大小图的配置,数组,1为小图,2为大图[1,2,1,2...]
*/
StarRtc.StarRoomSDK.streamConfigApply = function (streamConfig)

/**
* 发送聊天室消息
* @param msg 消息
*/
StarRtc.StarRoomSDK.sendChatMsg = function (msg)

/**
* 发送聊天室私聊消息
* @param toUserId 发送对象
* @param msg 消息
*/
StarRtc.StarRoomSDK.sendChatPrivateMsg = function (userId, msg)

/**
* 聊天室踢人
* @param kickOutUserId 踢出的用户Id
*/
StarRtc.StarRoomSDK.kickOutUser = function (kickOutUserId)

/**
* 聊天室禁言
* @param banUserId 禁言的用户Id
* @param banTime 禁言的时间长度
*/
StarRtc.StarRoomSDK.banToSendMsg = function (banUserId, banTime)

/**
* 获取聊天室在线用户数
*/
StarRtc.StarRoomSDK.getRoomOnlineNum = function ()

/**
* 发送实时数据
* @param data 实时数据
*/
StarRtc.StarRoomSDK.sendStreamData = function (data)

/**
* 获取是主动断开还是被动断开
*/
StarRtc.StarRoomSDK.activeDisconnect = function ()