程序包 | 说明 |
---|---|
net.x52im.mobileimsdk.server |
服务端核心类。
|
net.x52im.mobileimsdk.server.event |
服务端事件通知和回调接口。
|
net.x52im.mobileimsdk.server.processor |
各种具体业务逻辑实现类, since 3.0。
|
net.x52im.mobileimsdk.server.protocal |
Java、Android和Server端共用的协议定义类。
|
net.x52im.mobileimsdk.server.qos |
Server端的QoS机制实现类。
|
net.x52im.mobileimsdk.server.utils |
服务端代码的辅助工具类, since 3.0。
|
限定符和类型 | 方法和说明 |
---|---|
void |
ServerCoreHandler.messageReceived(io.netty.channel.Channel session,
Protocal pFromClient)
框架中收到客户端消息的回调方法。
|
限定符和类型 | 方法和说明 |
---|---|
boolean |
ServerEventListener.onTransferMessage_RealTimeSendFaild(Protocal p)
服务端在进行消息直发(S2C消息)或转发(C2C消息)时,当对方在线但实时发送失败、以及其它各种问题导
致消息并没能正常发出时,将无条件走本回调通知。
|
void |
ServerEventListener.onTransferMessage4C2C_AfterBridge(Protocal p)
注意:本回调仅用于与Web的互通模式下,默认情况下本方法可什么也不做,无任何影响。
|
void |
ServerEventListener.onTransferMessage4C2C(Protocal p)
收到客户端发送给“其它客户端”的数据回调通知(即:消息路径为“C2C”的消息).
|
boolean |
ServerEventListener.onTransferMessage4C2CBefore(Protocal p,
io.netty.channel.Channel session)
收到客户端发送给“其它客户端”的数据回调通知(即:消息路径为“C2C”的消息)前的处理逻辑。
|
boolean |
ServerEventListener.onTransferMessage4C2S(Protocal p,
io.netty.channel.Channel session)
收到客户端发送给“服务端”的数据回调通知(即:消息路径为“C2S”的消息).
|
boolean |
ServerEventListener.onTransferMessage4C2SBefore(Protocal p,
io.netty.channel.Channel session)
收到客户端发送给“服务端”的数据回调通知(即:消息路径为“C2S”的消息)前的处理逻辑。
|
限定符和类型 | 方法和说明 |
---|---|
void |
MessageQoSEventListenerS2C.messagesLost(java.util.ArrayList<Protocal> lostMessages)
消息未送达的回调事件通知.
|
限定符和类型 | 方法和说明 |
---|---|
protected abstract boolean |
BridgeProcessor.offlineC2CProcessCallback(Protocal p)
无法在线实时发送成功的消息将通过本回调方法进行处理。
|
void |
LogicProcessor.processACK(Protocal pFromClient,
java.lang.String remoteAddress)
处理来自客户端的各类ACK消息应答包。
|
void |
LogicProcessor.processC2CMessage(BridgeProcessor bridgeProcessor,
io.netty.channel.Channel session,
Protocal pFromClient,
java.lang.String remoteAddress)
处理C2C(client to client)类消息(即客户端发给客户端的普通聊天消息)。
|
void |
LogicProcessor.processC2SMessage(io.netty.channel.Channel session,
Protocal pFromClient,
java.lang.String remoteAddress)
处理C2S(client to server)类消息(即客户端发给服务端的指令类消息)。
|
void |
LogicProcessor.processKeepAlive(io.netty.channel.Channel session,
Protocal pFromClient,
java.lang.String remoteAddress)
处理来自客户端的心跳包。
|
void |
LogicProcessor.processLogin(io.netty.channel.Channel session,
Protocal pFromClient,
java.lang.String remoteAddress)
处理来自客户端的登陆请求。
|
protected abstract void |
BridgeProcessor.realtimeC2CSuccessCallback(Protocal p)
在线实时将消息桥接转发成功后被调用的回调方法。
|
限定符和类型 | 方法和说明 |
---|---|
static Protocal |
ProtocalFactory.createCommonData(java.lang.String dataContent,
java.lang.String from_user_id,
java.lang.String to_user_id,
boolean QoS,
java.lang.String fingerPrint)
通用消息的Protocal报文对象新建方法(typeu字段默认-1)。
|
static Protocal |
ProtocalFactory.createCommonData(java.lang.String dataContent,
java.lang.String from_user_id,
java.lang.String to_user_id,
boolean QoS,
java.lang.String fingerPrint,
int typeu)
通用消息的Protocal报文对象新建方法。
|
static Protocal |
ProtocalFactory.createPErrorResponse(int errorCode,
java.lang.String errorMsg,
java.lang.String user_id)
创建错误响应消息报文对象(该对象由服务端发出).
|
static Protocal |
ProtocalFactory.createPKeepAlive(java.lang.String from_user_id)
创建用户心跳包报文对象(该对象由客户端发出).
|
static Protocal |
ProtocalFactory.createPKeepAliveResponse(java.lang.String to_user_id)
创建响应客户端的心跳消息报文对象(该对象由服务端发出).
|
static Protocal |
ProtocalFactory.createPKickout(java.lang.String to_user_id,
int code,
java.lang.String reason)
创建用户被踢包报文对象(该对象由服务端发出).
|
static Protocal |
ProtocalFactory.createPLoginInfo(PLoginInfo loginInfo)
创建用户登陆消息报文对象(该对象由客户端发出).
|
static Protocal |
ProtocalFactory.createPLoginInfoResponse(int code,
long firstLoginTime,
java.lang.String user_id)
创建用户登陆响应消息报文对象(该对象由服务端发出).
|
static Protocal |
ProtocalFactory.createPLoginoutInfo(java.lang.String user_id)
创建用户注消登陆消息报文对象(该对象由客户端发出).
|
static Protocal |
ProtocalFactory.createRecivedBack(java.lang.String from_user_id,
java.lang.String to_user_id,
java.lang.String recievedMessageFingerPrint)
客户端from_user_id向to_user_id发送一个QoS机制中需要的“收到消息应答包”(默认bridge标认为false).
|
static Protocal |
ProtocalFactory.createRecivedBack(java.lang.String from_user_id,
java.lang.String to_user_id,
java.lang.String recievedMessageFingerPrint,
boolean bridge)
客户端from_user_id向to_user_id发送一个QoS机制中需要的“收到消息应答包”.
|
static Protocal |
ProtocalFactory.parse(byte[] fullProtocalJSONBytes,
int len)
将JSON文本反射成Java对象。
|
限定符和类型 | 方法和说明 |
---|---|
void |
QoS4ReciveDaemonRoot.addRecieved(Protocal p)
向列表中加入一个包的特征指纹。
|
void |
QoS4SendDaemonRoot.put(Protocal p)
推入一个消息包的指纹特征码.
|
限定符和类型 | 方法和说明 |
---|---|
protected void |
QoS4SendDaemonRoot.notifyMessageLost(java.util.ArrayList<Protocal> lostMessages)
将未送达信息反馈给消息监听者。
|
限定符和类型 | 方法和说明 |
---|---|
static Protocal |
ServerToolKits.fromIOBuffer(io.netty.buffer.ByteBuf buffer)
从Netty的原始数据对象中解析出MobileIMSDK的完整协议内容(Protocal对象)。
|
static Protocal |
ServerToolKits.toProtocal(java.lang.String protocalJSONStr)
获得MobileIMSDK完整协议内容Protocal对象形式。
|
限定符和类型 | 方法和说明 |
---|---|
static void |
LocalSendHelper.replyDataForUnlogined(io.netty.channel.Channel session,
Protocal p,
MBObserver resultObserver)
当服务端检测到用户尚未登陆(或登陆会话已失效时)由服务端回复给
客户端的消息。
|
static void |
LocalSendHelper.replyRecievedBack(io.netty.channel.Channel session,
Protocal pFromClient,
MBObserver resultObserver)
服务端回复应答包(给客户端发送方)。
|
static void |
LocalSendHelper.sendData(io.netty.channel.Channel session,
Protocal p,
MBObserver resultObserver)
向目标发送一条数据。
|
static void |
LocalSendHelper.sendData(Protocal p,
MBObserver resultObserver)
向目标发送一条数据。
|
static void |
GlobalSendHelper.sendDataC2C(BridgeProcessor bridgeProcessor,
io.netty.channel.Channel session,
Protocal pFromClient,
java.lang.String remoteAddress,
ServerCoreHandler serverCoreHandler)
用方法用于服务端作为中转发送C2C类型的数据之用,此方法封装了服务端中转发送
C2C消息的所有逻辑(包括当接收者不在本机在线列表时的桥接处理、离线处理逻辑等)。
|
static void |
GlobalSendHelper.sendDataS2C(BridgeProcessor bridgeProcessor,
Protocal pFromClient,
MBObserver resultObserver)
用方法用于服务端向客户端主动发起的数据之用,此方法封装了服务端发送
S2C消息的所有逻辑(包括当接收者不在本机在线列表时的桥接处理等,但不包括离线处理逻辑——请据本方法的
返回值,在应用层决定如何进行离线处理)。
|