Web组件化SDK更新记录

优质
小牛编辑
133浏览
2023-12-01

开启直播接口支持默认开启录制和不开启录制功能

直播开启接口由老师角色去控制

rtc.startLive(object);

参数说明:

参数名称参数类型说明是否必须
statusnumber1: 录制 0:不录制可选(不传次参数,默认录制)
successfunction成功回调(含参数)可选
failfunction失败回调(含参数)可选
object:包含以下属性
* (可选)success 成功回调
object.success = function(data){
    // 返回值对象,包含直播id
}

* (可选)fail 失败回调
object.fail = function(str){
    // 返回值为失败原因,字符串类型
    console.log(str);
}

使用例子:

rtc.startLive({
    success: function(data){
        console.log('开启直播成功', data);
    },
    fail: function(str){
        console.log(str);
    }
});

支持手动开启、结束、暂停、恢复录制功能

用于控制直播过程中开启、关闭、暂停、恢复录制

rtc.liveRecord(object);

参数说明:

参数名称参数类型说明是否必须
statusstr'start' 开启, 'end' 结束, 'pause' 暂停, 'resume' 恢复必选
successfunction成功回调(含参数)可选
failfunction失败回调(含参数)可选
object:包含以下属性
* (必须) status 表示执行动作

* (可选)success 成功回调
object.success = function(data){
    // 返回数据
}

* (可选)fail 失败回调
object.fail = function(str){
    // 返回值为字符串类型
    console.log(str);
}

使用例子:

rtc.liveRecord({
    status:'start',
    success: function(data){
        console.log('成功', data);
    },
    fail: function(str){
        console.log(str);
    }
});

支持单条流状态回调结果

rtc.on('streamStatus' function(data){

    console.log(data);
    {
        stream:stream, //流对象
        type: 1  ,  // 推流0 订阅流1
        status: 1001,  // 1001正常  1002/1003异常
        delay: 30, // 延时
           bandWidth: 300, //带宽
        action: 'streamStatus'
    }
});

支持整体流服务网络状态检测

rtc.on('netStatus' function(data){
    // 包含流对象、丢包、延时、带宽
    console.log(data);
    {
        delay: 30, // 延时
        packetLost: 0.01, // 丢包比率
        netStatus: 180,  // 网络状态参数
        action: 'netStatus'
    }
});

支持助教上麦更新接口,所有人可订阅助教流

助教推流成功后,调用更新麦序方法成功后,其他人可以订阅到助教的流

rtc.assistantUp(object);

object 参数说明:

参数名称参数类型说明是否必须
streamIdstring助教流id必选
successfunction成功回调(含参数)可选
failfunction失败回调(含参数)可选

使用例子:

rtc.assistantUp({
    streamId:"455353543353453453454353453",
    success: function(data){
        console.log('操作成功', data);
    },
    fail: function(data){
        console.log('操作失败',data);
    }
});

支持助教、讲师下麦功能

助教下麦

助教或者讲师角色可将助教麦序更新为0,助教收到下麦通知后,应停止推流

rtc.assistantDown(object);

object 参数说明:

参数名称参数类型说明是否必须
useridstring助教的人员id必选
downBystring被其他人下麦的id(被讲师下麦,可填讲师id)可选
successfunction成功回调(含参数)可选
failfunction失败回调(含参数)可选

使用例子:

rtc.assistantDown({
    userid:"455353543353453453454353453",
    success: function(data){
        console.log('操作成功', data);
    },
    fail: function(data){
        console.log('操作失败',data);
    }
});

讲师下麦

助教或者讲师角色可将讲师麦序更新为0,讲师收到下麦通知后,应停止推流

rtc.teacherDown(object);

object 参数说明:

参数名称参数类型说明是否必须
useridstring讲师的人员id必选
downBystring被其他人下麦的id(被助教下麦,可填助教id)可选
successfunction成功回调(含参数)可选
failfunction失败回调(含参数)可选

使用例子:

rtc.teacherDown({
    userid:"455353543353453453454353453",
    success: function(data){
        console.log('操作成功', data);
    },
    fail: function(data){
        console.log('操作失败',data);
    }
});

支持助教、讲师预上麦接口(切麦会用到)

助教或讲师角色可以被别人(非自己)调用预上麦接口通知上麦,此时,收到预上麦通知后,应主动推流后更新麦序

rtc.teacherOrAssistantUp(object);

object 参数说明:

参数名称参数类型说明是否必须
useridstring讲师或助教的人员id必选
successfunction成功回调(含参数)可选
failfunction失败回调(含参数)可选

使用例子:

rtc.teacherOrAssistantUp({
    userid:"455353543353453453454353453",
    success: function(data){
        console.log('操作成功', data);
    },
    fail: function(data){
        console.log('操作失败',data);
    }
});

支持预上麦事件监听

在助教应用场景下,助教或讲师可能切换上麦,预上麦就是通知讲师或者助教被切换上麦了,需要推流

rtc.on('preLive' function(uid){
    console.log(uid);
});