文档

uni-app nvue封装层接口文档

更新时间:

本文介绍uni-app nvue JS封装层SDK提供的类和方法。

重点接口类简介

  • RoomEngine:Room的全局管理类单例,需要全局初始化一次,负责鉴权、登入、登出等。

  • RoomChannel:提供关于直播间以及插件能力调用。

方法列表

RoomEngine方法

方法

参数

描述

方法描述

getInstance

用于获取roomEngine实例。

此方法为静态方法,需要以RoomEngine.getInstance()的方式调用。

静态方法

getRoomChannel

roomId: string

按房间获取RoomChannel实例。

roomId可以通过服务端创建房间获取,也可以通过服务端场景化接口创建直播,再通过直播详情获取。

同步方法

init

config: IEngineConfig

初始化SDK。

interface IEngeineConfig {
  appId: string; // 您的应用Id,在控制台中获取
  appKey: string; // 您的应用appKey,可以使用web端,在控制台中获取
  userId: string; // 您用户系统的userId
  deviceId: string; // 表示设备唯一的字符串
  authTokenCallback: () => Promise<AuthToken> // 获取token的函数
}
interface AuthToken {
  accessToken: string;
  refreshToken: string;
  accessTokenExpiredTime: number;
}

同步方法

login

长连接登录建连

异步方法

logout

长连接登出

异步方法

isLogined

获取登录状态

此为Getter,使用方式为roomEngine.isLogined。

Getter

RoomChannel方法

方法

参数

描述

方法描述

enterRoom

nick

进入房间。

异步方法

leaveRoom

离开房间。

异步方法

getRoomDetail

获取房间详情。

异步方法

listUser

pageNum: number,

pageSize: number

获取房间用户列表。

pageNum从1开始。

异步方法

kickUser

userId: string

踢出用户。

调用者必须为房间管理员或房间所有者。

异步方法

getChatService

获取Chat实例。

同步方法

getPlayerService

ref: PlayerRef

获取Player实例。

PlayerRef需要通过nvue的refs语法获取。

同步方法

getPusherService

ref: PusherRef

获取Pusher实例。

PusherRef需要通过nvue的refs语法获取。

同步方法

isAdmin

获取是否为管理员

此为Getter,使用方式为roomChannel.isAdmin。

Getter

isOwner

获取是否为房间所有者

此为Getter,使用方式为roomChannel.isOwner。

Getter

ChatService方法

方法

参数

描述

方法描述

getChatDetail

获取Chat详细信息。

包括消息配置、是否静音等。

异步方法

sendComment

content: string,

extension?: BasicMap<string | number>

发送弹幕消息。

extension字段可选,为包含任意数据的对象,会透传到消息事件和消息列表中。

interface BasicMap<U> {
  [index: string]: U
}

异步方法

sendLike

点赞。

内部做了合流操作,支持连续点赞。

同步方法

listComment

sortType: 0 | 1,

pageNumber: number,

pageSize: number

拉取弹幕列表。

sortType是数据排序方式,0为时间递增顺序,1为时间递减顺序。

pageNumber从1开始。

异步方法

banAllComment

全员禁止发送弹幕。

只有管理员和房间所有者有权限调用。

异步方法

cancelBanAllComment

全员取消禁止发送弹幕。

只有管理员和房间所有者有权限调用。

异步方法

banComment

userId: string,

muteSeconds: number

禁止某人发送弹幕。

muteSeconds单位为秒,传0为永久禁言。

只有管理员和房间所有者有权限调用。

异步方法

cancelBanComment

userId: string

取消禁止某人发送弹幕

只有管理员和房间所有者有权限调用。

异步方法

sendCustomMessageToAll

body: string | BasicMap<string | number>

给房间内全员发送自定义消息。

interface BasicMap<U> {
  [index: string]: U
}

异步方法

sendCustomMessageToUsers

body: string | BasicMap<string | number>,

userIds: string[]

给某人发送自定义消息

userIds为userId组成的数组。

异步方法

LiveBase基类方法

说明

LiveBase为PlayerService和PusherService的基类,两者的实例都可以调用LiveBase上的方法。

方法

参数

描述

方法描述

getLiveDetail

获取直播数据详情。

包括推流地址、拉流地址等信息。

异步方法

PlayerService方法

方法

参数

描述

方法描述

start

showMode: ShowMode

开始播放。

ShowMode用于指定显示模式。数据结构可以通过结构赋值从SDK中获取。

enum ShowMode {
  MODE_FILL = "fill",
  MODE_ASPECT_FILL = "aspect_fill",
  MODE_ASPECT_FIT = "aspect_fit",
}

同步方法

stop

结束播放。

同步方法

pause

暂停播放。

同步方法

resume

恢复播放。

同步方法

refresh

刷新播放器。

同步方法

PusherService方法

方法

参数

描述

方法描述

startPreview

pusherOptions: PusherOptions

开始预览。

interface PusherOptions {
  videoBitrate: number;
  resolution: Resolution;
  showMode: ShowMode;
}
enum Resolution {
  VALUE_180P,
  VALUE_240P,
  VALUE_360P,
  VALUE_480P,
  VALUE_540P,
  VALUE_720P,
  VALUE_1080P,
} 

异步方法

setPreviewMode

showMode: ShowMode

设置预览画面展示方式。

同步方法

startLive

开始直播推流。

异步方法

stopLive

结束直播推流。

异步方法

setPreviewMirror

mirror: boolean

设置预览镜像。

同步方法

setPushMirror

mirror: boolean

设置推流镜像。

同步方法

switchCamera

切换前后摄像头。

同步方法

消息列表

说明

消息列表可以通过结构赋值从SDK中获取:

import { EventNameEnum } from 'path/to/RoomPaasSdk.uni.min.js';

所有消息都从uni-app的官方插件globalEvent上透出,在相应页面引入即可,示例代码:

const globalEvent = uni.requireNativePlugin('globalEvent');
// 绑定事件
globalEvent.addEventListener(EventNameEnum.CommentReceived, receiveCommentHandler)
// 移除事件
globalEvent.removeEventListener(EventNameEnum.CommentReceived)

RoomEngine消息

消息名

描述

OnKicked

被长连接下线。

RoomChannel消息

消息名

描述

EnterRoom

成员进入房间。

LeaveRoom

成员离开房间。

KickedFromRoom

本人被踢出房间。

ChatService消息

方法

描述

CommentReceived

收到弹幕消息。

CommentMuted

禁言。

CommentMuteCanceled

取消禁言。

CommentAllMuted

全体禁言。

CommentAllMuteCanceled

取消全体禁言。

Liked

收到点赞信息。

CustomMessage

收到自定义消息。

PlayerService和PusherService消息

方法

描述

LiveStarted

直播开始。

LiveStopped

直播结束。

LiveFirstFrameRendered

首帧渲染事件。

LiveLoadingStarted

播放加载开始。

LiveLoadingStopped

播放加载结束。

LivePreviewStarted

预览开始。

LivePushStarted

推流开始。

LivePushStopped

推流结束。

LiveNotExist

直播不存在。

  • 本页导读 (1)
文档反馈