RTS
public abstract class com.ss.bytertc.engine.RTS
java

RTS Class

静态函数
返回名称
static synchronized RTScreateRTS
static synchronized voiddestroyRTS
static StringgetSdkVersion
成员函数
返回名称
abstract voidsetRtsEventHandler
abstract longlogin
abstract voidlogout
abstract voidupdateLoginToken
abstract voidsetServerParams
abstract voidgetPeerOnlineStatus
abstract longsendMessage
abstract longsendBinaryMessage
abstract longsendServerMessage
abstract longsendServerBinaryMessage
abstract RTSRoomcreateRoom
abstract intsetBusinessId
abstract voidsetRuntimeParameters
函数说明

createRTS
public static synchronized RTS com.ss.bytertc.engine.RTS.createRTS(
    Context context,
    String appId,
    IRTSEventHandler handler,
    JSONObject parameters)
java

创建引擎对象

如果当前进程中未创建引擎实例,那么你必须先使用此方法,以使用 RTS 提供的各种消息能力。

如果当前进程中已创建了引擎实例,再次调用此方法时,会创建另一个独立的引擎实例。

传入参数

参数名类型说明
contextContextAndroid 应用 Context
appIdString每个应用的唯一标识符,由控制台随机生成的。不同的 AppId 生成的实例完全独立,无法互通。
handlerIRTSEventHandlerSDK 回调给应用层的 Handler,详见 IRTSEventHandler。你应注意保持 handler 的生命周期必须大于引擎的生命周期,即 handler 必须在调用 destroyRTS 之后销毁。
parametersJSONObject用以覆盖默认参数的本引擎实例参数。JSON 字符串格式。

返回值

destroyRTS
public static synchronized void com.ss.bytertc.engine.RTS.destroyRTS()
java

销毁由 createRTS 所创建引擎实例,并释放所有相关资源

注意

getSdkVersion
public static String com.ss.bytertc.engine.RTS.getSdkVersion()
java

获取 SDK 当前的版本号。

返回值
SDK 当前的版本号。

setRtsEventHandler
public abstract void com.ss.bytertc.engine.RTS.setRtsEventHandler(
    IRTSEventHandler engineEventHandler)
java

设置引擎事件回调的接收类。

传入参数

参数名类型说明
engineEventHandlerIRTSEventHandler事件处理器回调类,详见 IRTSEventHandler。

注意

login
public abstract long com.ss.bytertc.engine.RTS.login(
    String token,
    String uid)
java

登录 RTS 服务器。

必须先登录,才能收发消息。

在调用本接口登录后,如果想要登出,需要调用 logout。

传入参数

参数名类型说明
tokenString动态密钥
用户登录必须携带的 Token,用于鉴权验证。
登录 Token 与加入房间时必须携带的 Token 不同。测试时可使用控制台生成临时 Token,正式上线需要使用密钥 SDK 在你的服务端生成并下发 Token。
uidString用户 ID
用户 ID 在 appid 的维度下是唯一的。

返回值

注意
本地用户调用此方法登录成功后,会收到 onLoginResult 回调通登录结果。

logout
public abstract void com.ss.bytertc.engine.RTS.logout()
java

登出 RTS 服务器。

调用本接口登出后,无法再调用消息相关的方法或收到相关回调。

注意
本地用户调用此方法登出后,会收到 onLogout 回调通知结果,远端用户不会收到通知。

updateLoginToken
public abstract void com.ss.bytertc.engine.RTS.updateLoginToken(
    String token)
java

更新用户用于登录的 Token

Token 有一定的有效期,当 Token 过期时,需调用此方法更新登录的 Token 信息。

调用 login 方法登录时,如果使用了过期的 Token 将导致登录失败,并会收到 onLoginResult 回调通知,错误码为 LOGIN_ERROR_CODE_INVALID_TOKEN。此时需要重新获取 Token,并调用此方法更新 Token。

传入参数

参数名类型说明
tokenString更新的动态密钥

注意

setServerParams
public abstract void com.ss.bytertc.engine.RTS.setServerParams(
    String signature,
    String url)
java

设置应用服务器参数

客户端调用 sendServerMessage 或 sendServerBinaryMessage 发送消息给应用服务器之前,必须需要设置有效签名和应用服务器地址。

传入参数

参数名类型说明
signatureString动态签名
应用服务器会使用该签名对请求进行鉴权验证。
urlString应用服务器的地址

注意

getPeerOnlineStatus
public abstract void com.ss.bytertc.engine.RTS.getPeerOnlineStatus(
    String peer_user_id)
java

查询本地/远端用户的登录状态。

传入参数

参数名类型说明
peer_user_idString需要查询的用户 ID

注意

sendMessage
public abstract long com.ss.bytertc.engine.RTS.sendMessage(
    String uid,
    String message,
    MessageConfig config)
java

给指定的用户发送点对点文本消息(p2p)

传入参数

参数名类型说明
uidString消息接收用户的 ID
messageString发送的文本消息内容。
消息不超过 64KB。
configMessageConfig消息类型,参看 MessageConfig。

返回值

注意

sendBinaryMessage
public abstract long com.ss.bytertc.engine.RTS.sendBinaryMessage(
    String uid,
    byte[] buffer,
    MessageConfig config)
java

给指定的用户发送点对点二进制消息(P2P)

传入参数

参数名类型说明
uidString消息接收用户的 ID
bufferbyte[]发送的二进制消息内容
消息不超过 64KB。
configMessageConfig消息类型,参看 MessageConfig。

返回值

注意

sendServerMessage
public abstract long com.ss.bytertc.engine.RTS.sendServerMessage(
    String message)
java

客户端给应用服务器发送文本消息(P2Server)

传入参数

参数名类型说明
messageString发送的文本消息内容
消息不超过 64KB。

返回值

注意

sendServerBinaryMessage
public abstract long com.ss.bytertc.engine.RTS.sendServerBinaryMessage(
    byte[] buffer)
java

客户端给应用服务器发送二进制消息(P2Server)

传入参数

参数名类型说明
bufferbyte[]发送的二进制消息内容
消息不超过 64KB。

返回值

注意

createRoom
public abstract RTSRoom com.ss.bytertc.engine.RTS.createRoom(
    String roomId)
java

创建房间。

多次调用此方法以创建多个 RTSRoom 实例。分别调用各 RTSRoom 实例中的 joinRoom 方法,同时加入多个房间。

传入参数

参数名类型说明
roomIdString标识通话房间的房间 ID,最大长度为 128 字节的非空字符串。支持的字符集范围为:
• 26 个大写字母 A ~ Z
• 26 个小写字母 a ~ z
• 10 个数字 0 ~ 9
• 下划线 "_", at 符 "@", 减号 "-"
多房间模式下,调用创建房间接口后,请勿调用同样的 roomID 创建房间,否则会导致创建房间失败。

返回值
创建的 RTSRoom 房间实例

setBusinessId
public abstract int com.ss.bytertc.engine.RTS.setBusinessId(
    String businessId)
java

设置业务标识参数

可通过 businessId 区分不同的业务场景。businessId 由客户自定义,相当于一个“标签”,可以分担和细化现在 AppId 的逻辑划分的功能,但不需要鉴权。

传入参数

参数名类型说明
businessIdString用户设置的自己的 businessId 值
businessId 只是一个标签,颗粒度需要用户自定义。

返回值

注意

setRuntimeParameters
public abstract void com.ss.bytertc.engine.RTS.setRuntimeParameters(
    JSONObject params)
java

设置运行时的参数

传入参数

参数名类型说明
paramsJSONObjectjson 序列化之后的字符串
RTSRoom
public abstract class com.ss.bytertc.engine.RTSRoom
java
成员函数
返回名称
abstract voiddestroy
abstract intjoinRoom
abstract voidsetRTSRoomEventHandler
abstract voidleaveRoom
abstract longsendRoomMessage
abstract longsendRoomBinaryMessage
函数说明

destroy
public abstract void com.ss.bytertc.engine.RTSRoom.destroy()
java

退出并销毁调用 createRoom 所创建的房间。

joinRoom
public abstract int com.ss.bytertc.engine.RTSRoom.joinRoom()
java

加入房间。

调用 createRoom 创建房间后,可调用该方法进房,在房间内收发广播消息。

返回值
方法调用结果:

注意

setRTSRoomEventHandler
public abstract void com.ss.bytertc.engine.RTSRoom.setRTSRoomEventHandler(
    IRTSRoomEventHandler rtsRoomEventHandler)
java

通过设置房间事件 handler,监听此对象对应的回调事件。

传入参数

参数名类型说明
rtsRoomEventHandlerIRTSRoomEventHandler参看 IRTSRoomEventHandler

leaveRoom
public abstract void com.ss.bytertc.engine.RTSRoom.leaveRoom()
java

离开房间。

用户调用此方法离开房间,结束实时消息通信,释放所有通信相关的资源。

此方法是异步操作,调用返回时并没有真正退出房间。真正退出房间后,本地会收到 onLeaveRoom 回调通知。

注意
如果调用此方法后立即销毁引擎,SDK 将无法触发 onLeaveRoom 回调。

sendRoomMessage
public abstract long com.ss.bytertc.engine.RTSRoom.sendRoomMessage(
    String messageStr)
java

给房间内的所有其他用户群发文本消息。

传入参数

参数名类型说明
messageStrString发送的文本消息内容
消息不超过 64KB。

注意

sendRoomBinaryMessage
public abstract long com.ss.bytertc.engine.RTSRoom.sendRoomBinaryMessage(
    byte[] buffer)
java

给房间内的所有其他用户群发二进制消息。

传入参数

参数名类型说明
bufferbyte[]发送的二进制消息内容
消息不超过 64KB。

注意