Commit 53891b8c by zhangyunjie

oimcore

parent 3e59e066
//
//
......@@ -16,6 +16,7 @@ typedef NS_ENUM(NSUInteger, OffcnIMConnectStatus) {
OffcnIMConnectStatusFail, //连接失败
OffcnIMConnectStatusBreak, //连接断开
OffcnIMConnectStatusDisConnectOK, //手动断开成功
OffcnIMConnectStatusKickout, //互挤
};
//收到消息回调
......
//
//
......@@ -165,30 +165,41 @@ static OffcnIMSocketManager *socketManager;
}
}
//Z_CONN_IM_SRV_OK,连接成功
//Z_CONN_IM_SRV_FAILED,连接失败
//Z_CONN_IM_SRV_BROKEN,连接断开
//Z_DISCONN_IM_SRV_OK,手动断开成功
-(void)OnOImCoreEventWithCode:(int)code context:(const char *)context{
//typedef enum
//{
// Z_CONN_IM_SRV_OK,
// Z_CONN_IM_SRV_FAILED,
//
// Z_CONN_IM_SRV_BROKEN,
//
// Z_DISCONN_IM_SRV_OK,
//
// Z_CONN_IM_KICK_OUT, //±ªÃfl ≤ª–Ë“™÷ÿ¡¨
//
//}OImEventCode;
-(void)OnOImCoreEventWithCode:(OImEventCode)code context:(const char *_Nonnull)context{
//连接状态
if (code == 1 || code == 2) {
if (code == Z_CONN_IM_SRV_FAILED || code == Z_CONN_IM_SRV_BROKEN || code == Z_CONN_IM_KICK_OUT) {
[self.adapter DisConnectImServer];
}
if (self.connectStatus) {
NSString *message = [NSString stringWithUTF8String:context];
if (code == 0) {
if (code == Z_CONN_IM_SRV_OK) {
self.IMConnectStatus = OffcnIMConnectStatusSuccess;
self.connectStatus(OffcnIMConnectStatusSuccess,message);
}else if (code == 1){
}else if (code == Z_CONN_IM_SRV_FAILED){
self.IMConnectStatus = OffcnIMConnectStatusFail;
self.connectStatus(OffcnIMConnectStatusFail,message);
}else if (code == 2){
}else if (code == Z_CONN_IM_SRV_BROKEN){
self.IMConnectStatus = OffcnIMConnectStatusBreak;
self.connectStatus(OffcnIMConnectStatusBreak,message);
}else if (code == 3){
}else if (code == Z_DISCONN_IM_SRV_OK){
self.IMConnectStatus = OffcnIMConnectStatusDisConnectOK;
self.connectStatus(OffcnIMConnectStatusDisConnectOK,message);
}else if (code == Z_CONN_IM_KICK_OUT){
self.IMConnectStatus = OffcnIMConnectStatusKickout;
self.connectStatus(OffcnIMConnectStatusKickout,message);
}
}
}
......
......@@ -108,6 +108,8 @@
errorMessage = @"连接失败,请重新连接";
}else if (status == OffcnIMConnectStatusBreak){
errorMessage = @"连接断开,请重新连接";
}else if (status == OffcnIMConnectStatusKickout){
errorMessage = @"被挤掉";
}
[weakSelf tipMessageWithTitle:@"收到连接状态" message:errorMessage];
};
......
......@@ -44,12 +44,14 @@ namespace im
Z_DISCONN_IM_SRV_OK,
Z_CONN_IM_KICK_OUT, //被踢 不需要重连
}OImEventCode;
class OImCoreObserver
{
public:
virtual void OnOImCoreEvent(int code, const char *context) = 0;
virtual void OnOImCoreEvent(OImEventCode code, const char *context) = 0;
virtual void OnOImCoreMessage(const char *message, int len) = 0;
};
}
......
......@@ -7,16 +7,15 @@
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
#import "oim_types.h"
using namespace offcn::im;
@protocol OIMCoreDelegate <NSObject>
-(void)OnOImCoreMessageWithMessage:(const char *_Nonnull)message msgLength:(int)len;
-(void)OnOImCoreEventWithCode:(int)code context:(const char *_Nonnull)context;
-(void)OnOImCoreEventWithCode:(OImEventCode)code context:(const char *_Nonnull)context;
@end
typedef NS_ENUM(NSInteger, OImMsgType) {
kMsg_Type_Normal, //正常的聊天消息
kMsg_Type_Recv_Confirm, //收到服务端发来的消息确认消息
};
NS_ASSUME_NONNULL_BEGIN
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment