|
@@ -1,18 +1,20 @@
|
|
package cn.org.bjca.trust.android.lib.im.manager;
|
|
package cn.org.bjca.trust.android.lib.im.manager;
|
|
|
|
|
|
import android.content.Context;
|
|
import android.content.Context;
|
|
-import android.util.Log;
|
|
|
|
|
|
|
|
import cn.org.bjca.trust.android.lib.im.BuildConfig;
|
|
import cn.org.bjca.trust.android.lib.im.BuildConfig;
|
|
import cn.org.bjca.trust.android.lib.im.SZYXDbHelper;
|
|
import cn.org.bjca.trust.android.lib.im.SZYXDbHelper;
|
|
import cn.org.bjca.trust.android.lib.im.cfg.Constant;
|
|
import cn.org.bjca.trust.android.lib.im.cfg.Constant;
|
|
import cn.org.bjca.trust.android.lib.im.common.DeviceHelper;
|
|
import cn.org.bjca.trust.android.lib.im.common.DeviceHelper;
|
|
import cn.org.bjca.trust.android.lib.im.http.HttpManage;
|
|
import cn.org.bjca.trust.android.lib.im.http.HttpManage;
|
|
|
|
+import cn.org.bjca.trust.android.lib.im.im.IMHelper;
|
|
|
|
+import cn.org.bjca.trust.android.lib.im.im.opt.ImConnectOptions;
|
|
import cn.org.bjca.trust.android.lib.im.kit.IMSDKCallback;
|
|
import cn.org.bjca.trust.android.lib.im.kit.IMSDKCallback;
|
|
import cn.org.bjca.trust.android.lib.im.kit.IMSDKListener;
|
|
import cn.org.bjca.trust.android.lib.im.kit.IMSDKListener;
|
|
import cn.org.bjca.trust.android.lib.im.kit.MsgListener;
|
|
import cn.org.bjca.trust.android.lib.im.kit.MsgListener;
|
|
import cn.org.bjca.trust.android.lib.im.kit.SdkInterface;
|
|
import cn.org.bjca.trust.android.lib.im.kit.SdkInterface;
|
|
import cn.org.bjca.trust.android.lib.im.repository.Service;
|
|
import cn.org.bjca.trust.android.lib.im.repository.Service;
|
|
|
|
+import cn.org.bjca.trust.android.lib.im.repository.bean.LoginBean;
|
|
import cn.org.bjca.trust.android.lib.im.repository.data.LoginData;
|
|
import cn.org.bjca.trust.android.lib.im.repository.data.LoginData;
|
|
import io.reactivex.android.schedulers.AndroidSchedulers;
|
|
import io.reactivex.android.schedulers.AndroidSchedulers;
|
|
import io.reactivex.disposables.Disposable;
|
|
import io.reactivex.disposables.Disposable;
|
|
@@ -23,12 +25,14 @@ public class SZYXImManager implements SdkInterface {
|
|
private IMSDKListener imsdkListener;
|
|
private IMSDKListener imsdkListener;
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public void addIMSDKListener(IMSDKListener listener) {
|
|
|
|
|
|
+ public void setIMSDKListener(IMSDKListener listener) {
|
|
this.imsdkListener = listener;
|
|
this.imsdkListener = listener;
|
|
|
|
+ IMHelper.getInstance().setStatusListener(listener);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public void removeIMSDKListener(IMSDKListener listener) {
|
|
public void removeIMSDKListener(IMSDKListener listener) {
|
|
|
|
+ IMHelper.getInstance().removeStatusListener(listener);
|
|
this.imsdkListener = null;
|
|
this.imsdkListener = null;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -50,25 +54,31 @@ public class SZYXImManager implements SdkInterface {
|
|
if (httpResult.getCode() == 200) {
|
|
if (httpResult.getCode() == 200) {
|
|
if (null != callback) callback.success();
|
|
if (null != callback) callback.success();
|
|
if (null != imsdkListener) imsdkListener.onConnecting();
|
|
if (null != imsdkListener) imsdkListener.onConnecting();
|
|
|
|
+ LoginBean bean = httpResult.getData();
|
|
|
|
+ imLogin(bean.getHost(), bean.getPort(), bean.getClientId(), bean.getToken());
|
|
} else if (null != callback) callback.failed(1001, httpResult.getMsg());
|
|
} else if (null != callback) callback.failed(1001, httpResult.getMsg());
|
|
}, throwable -> {
|
|
}, throwable -> {
|
|
if (null != callback) callback.failed(1001, throwable.getMessage());
|
|
if (null != callback) callback.failed(1001, throwable.getMessage());
|
|
});
|
|
});
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ private void imLogin(String host, String port, String clientId, String token) {
|
|
|
|
+ IMHelper.getInstance().login(new ImConnectOptions(host, port, clientId, token));
|
|
|
|
+ }
|
|
|
|
+
|
|
@Override
|
|
@Override
|
|
public void logout(IMSDKCallback callback) {
|
|
public void logout(IMSDKCallback callback) {
|
|
-
|
|
|
|
|
|
+ IMHelper.getInstance().logout();
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public void addMsgListener(MsgListener listener) {
|
|
public void addMsgListener(MsgListener listener) {
|
|
-
|
|
|
|
|
|
+ IMHelper.getInstance().addMsgListener(listener);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public void removeMsgListener(MsgListener listener) {
|
|
public void removeMsgListener(MsgListener listener) {
|
|
-
|
|
|
|
|
|
+ IMHelper.getInstance().removeMsgListener(listener);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|