跳到主要内容
版本:1.0.3

1、核心接口

(1) 初始化SDK

未初始化前,SDK 处于未初始化阶段,需要通过接口 Initialize()初始化 SDK,才可以使用实时语音服务、文本服务

a) 生产LiveConfig对象

参数类型含义
SdkAppIdstring权限id,由Unity中国团队提供
SdkAppKeystring权限密钥,由Unity中国团队提供
TokenUristring获取connectToken的服务器url地址,由Unity中国团队提供
Serverstring连接房间时需要提供的服务器url地址,由Unity中国团队提供

b) 获取Service实例

使用 LiveService.Instance去获取实例

c) 调用初始化函数

//初始化房间示例代码
var config = new LiveConfig
{
SdkAppID = "Your AppId",
SdkAppKey = "Your AppSecret"
};

LiveService.Instance.Initialize(config);

(2) 生成连接Token

生成创建房间的鉴权信息。

接口原型

IEnumerator GetConnectToken(string roomId, string userIdentity, Action<string> callback)
属性名数据类型属性说明
roomIdstring房间号, 最大支持127个字符。
userIdentifystring用户名, 需要保证唯一性
callbackfunctoken生成后会通过callback返回给客户端

(3) 加入房间

用生成的鉴权信息加入房间,加入房间默认不打开麦克风。该接口是异步接口,调用没有错误不代表进房成功。

接口原型

RoomManager EnterRoom(string roomId, string token);
属性名数据类型属性说明
roomIdstring房间号, 最大支持127个字符。
tokenstring鉴权信息,由GetConnectToken生成

代码示例

void OnTokenFetched(string token)
{
LiveService.Instance.EnterRoom(roomId, token);
}

StartCoroutine(LiveService.Instance.GetConnectToken(roomId, _myId, OnTokenFetched));

加入房间事件回调

加入房间完成后会通过回调返回状态,监听到进房事件后可以进行用户逻辑处理。

事件名称事件说明
OnEnterRoomCompleteEvent玩家连入房间时触发
// 监听加入房间事件:
LiveService.Instance.OnEnterRoomCompleteEvent += OnRoomEntered;
// 监听处理
void OnRoomEntered(string roomId)
{
//进房成功
Log("Connected!")
}

(4) 退出房间

退出房间时,可通过调用该接口退出所在房间,并解绑相应的监听事件。

接口原型

void ExitRoom(string roomId)
属性名数据类型属性说明
roomIdstring所要退出房间的房间号
注意

roomId可以为空, 则默认退出第一个加入的房间

代码示例

LiveService.Instance.ExitRoom(roomId);

退出房间事件回调

创建Room后,一般需要绑定相应的事件监听,以下列举了部分Room中可设置的事件:

事件名称事件说明
OnExitRoomCompleteEvent当前玩家离开时触发

代码示例

// 当前玩家离开房间
LiveService.Instance.OnExitRoomCompleteEvent += OnRoomExited;

// 监听处理
void OnRoomExited(string roomId)
{
// 退出成功
Log("Disconnected!")
}