消息交互API参考说明 - Android

主要方法

初始化 (EVMessage)

public EVMessage(Context context)

该方法创建EVMessage对象

设置回调(setMessageCallback)

public void setMessageCallback(MessageCallback callback)

设置消息系统回调函数。消息系统运行过程中各种事件的回调,包括网络连接、发送消息、接收消息等事件的回调。MessageCallback的定义详见下方回调事件中的描述

连接(connect)

public void connect(String channel)

连接房间,频道号channel字符串由上层业务指定,一般以视频唯一id作为房间号

发送消息(send)

public void send(String channel, String message, String userdata, String type,
                     MyRequestCallBack<String> callBack)

该方法用于发送消息,消息级别、是否保存、是否过滤等设置使用默认值。参数说明如下:

名称 描述
channel 房间唯一id,频道号
message 文本消息内容,用户发送普通文本消息时使用,可以为空
userdata 用户发送自定义消息时使用,一般为json字符串,由上层业务系统定义该协议
type 消息类型,用于指定发送消息的类型
callBack 发送消息异步回调

发送消息(sendMsg)

public void sendMsg(String channel, String message, String userdata, String type, int level,
                        boolean save, boolean filter, MyRequestCallBack<String> callBack)

该方法是send方法的高级版本,可以指定消息级别、是否保存、是否过滤等。参数说明如下:

名称 描述
channel 房间唯一id,频道号
message 文本消息内容,用户发送普通文本消息时使用,可以为空
userdata 用户发送自定义消息时使用,一般为json字符串,由上层业务系统定义该协议
type 消息类型,用于指定发送消息的类型
level 优先级[0,10],值越大越重要,其中level为9,10的不能过滤
save 消息是否保存
filter 是否使用关键词过滤
callBack 发送消息异步回调

获取最近N条历史消息(getLastHistoryMsgs)

public void getLastHistoryMsgs(String channel, int count, String type)

该方法用于获取最近的N条历史消息,第一次获取历史消息时使用。

名称 描述
channel 房间唯一id,频道号
count 获取历史消息的条数
type 逗号分隔的字符串,表示历史消息的消息类型,例如"sys,msg,gift",为空表示获取全部类型的历史消息

获取从指定位置开始的N条历史消息(getHistoryMsgs)

public void getHistoryMsgs(String channel, int start, int count, String type)

该方法用于获取从指定位置开始的N条历史消息,当start为0时,和getLastHistoryMsgs方法效果相同

关闭(close)

public void close()

退出聊天交互界面时调用该函数,关闭网络连接,停止接收消息。

回调事件(MessageCallback)

MessageCallback接口类用于消息SDK向应用程序发送回调事件通知,应用程序通过该接口类的方法获取SDK的事件通知。

连接成功回调(onConnected)

void onConnected()

表示客户端已经加入聊天交互房间,房间id是connect方法中指定的房间id。

接收到消息回调(onNewMessage)

void onNewMessage(final String message, final String userdata, final String userid,
                      final String channel, final String type)

表示收到交互房间中的新消息,参数说明如下:

名称 描述
message 文本消息内容
userdata 自定义消息字符串
userid 用户唯一id
channel 房间唯一id,频道号
type 消息类型

历史消息回调(onHistoryMessage)

void onHistoryMessage(final List<MsgInfoEntity> msgs, final int next, final int count)

调用获取历史消息的异步回调通知,参数说明如下:

名称 描述
msgs 历史消息列表
next 下一条历史消息的索引,可以作为继续获取历史消息的起始索引
count 获取到的历史消息条数

用户进入回调(onUserJoin)

void onUserJoin(final List<String> users)

表示房间中有用户加入。

名称 描述
users 加入房间用户id的列表

用户离开回调(onUserLeave)

void onUserLeave(final List<String> users)

表示房间中有用户离开。

名称 描述
users 离开房间用户id的列表

正在观看人数回调(onWatchingCount)

void onWatchingCount(int watchingCount)

房间实时观看人数有变化会回调该方法。

名称 描述
watchingCount 互动房间在线人数

已观看人数回调(onWatchedCount)

void onWatchedCount(int watchedCount)

房间已经观看人数有变化回调该方法。

名称 描述
watchedCount 互动房间累计在线人数

错误回调(onError)

void onError(final int errCode)

用户互动过程中发生错误,回调该方法。错误码详情:

名称 数组 含义
EV_MESSAGE_ERROR_NETWORK_TIMEOUT -1001 连接超时
EV_MESSAGE_ERROR_NETWORK_INVALID_URL -1002 消息服务器URL错误
EV_MESSAGE_ERROR_NETWORK_NOT_CONNECT -1003 未连接
EV_MESSAGE_ERROR_NETWORK_UNKNOWN -1101 未知的网络错误
EV_MESSAGE_ERROR_SDK_INIT -2001 sdk未初始化或初始化不成功
EV_MESSAGE_ERROR_LOGIN -2002 用户登录错误
EV_MESSAGE_ERROR_INTERNAL_SERVER -3001 消息服务器内部错误

重连回调(onReconnecting)

void onReconnecting()

由于网络原因,客户端可能会和消息服务器失去连接,互动消息SDK会进行自动重连,开始重连时触发此回调方法。

重连成功回调(onReconnected)

void onReconnected()

互动消息SDK内部重连成功后触发此回调方法。

重连失败回调(onReconnectFailed)

void onReconnectFailed()

互动消息SDK内部不会无限重连,当重连次数超过一定限制还未连接上消息服务器,会触发重连失败回调。

连接断开回调(onClose)

void onClose()

客户端和消息服务器连接断开会触发此回调。

results matching ""

    No results matching ""