属性定义
<mlvb-live-room> 组件包含如下属性:
属性 | 类型 | 值 | 说明 |
template | String | 'float' | 必要,标识组件使用的界面模板。 |
roomID | String | 自定义 | 可选,房间号(role = audience 时,roomID 不能为空)。 |
roomName | String | 自定义 | 可选,房间名。 |
role | String | ‘anchor’,'audience' | 必要,anchor 代表主播,audience 代表观众。 |
pureaudio | Boolean | true,false | 可选,默认 false,是否开启纯音频推流。 |
beauty | Number | 0 - 5 | 可选,默认5,美颜级别0 - 5。 |
muted | Boolean | true,false | 可选,默认 false,是否静音。 |
debug | Boolean | true,false | 可选,默认 false,是否打印推流 debug 信息。 |
bindRoomEvent | function | - | 必要,监听 mlvb-live-room 组件返回的事件。 |
操作接口
<mlvb-live-room> 组件包含如下操作接口,您需要先通过 selectComponent 获取 <mlvb-live-room> 标签的引用,之后就可以进行相应的操作。
注意
函数名 | 说明 |
start() | 启动。 |
pause() | 暂停。 |
resume() | 恢复。 |
stop() | 停止。 |
requestJoinAnchor() | 请求连麦,适用于 audience。 |
respondJoinAnchor(agree:Boolean, audience:Object) | 同意连麦,适用于 anchor。 |
switchCamera() | 切换摄像头。 |
sendTextMsg(text:String) | 发送文本消息。 |
var liveroom = this.selectComponent("#id_liveroom");liveroom.pause();
事件通知
<mlvb-live-room> 标签通过 onRoomEvent 返回内部事件,事件参数格式如下:
"detail": {"tag": "事件tag标识,具有唯一性","code": "事件代码","detail": "对应事件的详细参数"}
示例代码
// Page.json 文件"usingComponents": {"mlvb-live-room": "/pages/components/mlvb-live-room/mlvbliveroomview"}// Page.wxml 文件<mlvb-live-room id="id_liveroom"roomID="{{roomID}}"roomName="{{roomName}}"template="float"beauty="{{beauty}}"muted="{{muted}}"role="{{role}}"debug="{{debug}}"bindRoomEvent="onRoomEvent"></mlvb-live-room>// Page.js 文件Page({data: {//...role: 'anchor', // 角色视您的业务场景而定roomID: '',roomName: '',beauty: 3,muted: false,debug: false,},//...onRoomEvent: function(e){switch(e.detail.tag){case 'roomClosed': {//房间已经关闭break;}case 'error': {//发生错误var code = e.detail.code;var detail = e.detail.detail;break;}case 'recvTextMsg': {//收到文本消息var text = e.detail.detail;break;}case 'requestJoinAnchor': {//主播收到来自观众的连麦请求var audience = e.detail;var name = audience.userName;var id = audience.userID;// 允许请求liveroom.respondJoinReq(true, audience)break;}case 'linkOn': {//连麦观众在连麦成功时会收到此通知break;}case 'linkOut': {//连麦观众退出连麦时会收到此通知break;}}},onShow: function () {},onHide: function () {},onRead: function() {var liveroom = this.selectComponent("#id_liveroom");this.setData({roomName: '测试',});liveroom.start();},})