超级对讲

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

function superTalkCallBack(data, status, oper) {
switch (status) {
case "connect success":
//连接成功
break;
case "connect failed":
case "connect closed":
//连接失败
break;
case "onWebrtcMessage":
switch (data.type) {
case "createChannel":
//创建超级对讲,data.status == "success"为成功
break;
case "delChannel":
//删除超级对讲,data.status == "success"为成功
break;
case "streamCreated":
//本地流创建,data.status == "success"为成功
break;
case "srcApplyUpload":
//开启说话状态,data.status == "success"为成功
break;
case "vdnApplyDownload":
//加入超级房间状态,data.status == "success"为成功
break;
case "addUploader":
//超级房间添加成员
break;
case "removeUploader":
//超级房间移除成员
break;
case "serverErr":
//服务器错误
break;
}
break;
}
}

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

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

10.2 API 说明


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

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

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

/**
* 删除房间
*/
StarRtc.StarSuperRoomSDK.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.StarSuperRoomSDK.createStream = function (streamOption)

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

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

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

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

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

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

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

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

/**
* 开始对讲
*/
StarRtc.StarSuperRoomSDK.startTalk = function ()

/**
* 结束对讲
*/
StarRtc.StarSuperRoomSDK.endTalk = function ()