private static final String CMD_HEADER_SPLIT = "*";
private static final String CMD_SPLIT = ",";
private static final boolean doEncryption = Util.getSystemProperties("persist.sys.encrypt_fzd", "true").equals("true");
- public static final String defaultServerIP = "api.xcloudtech.com";
+ public static final String defaultServerIP = "fzd.xcloudtech.com";
public static final int defaultServerPort = 9000;
private final SharedPreferences sharedPreferences;
private final Handler mHandler;
heart,//心率上传
PRACTICE,//自由锻炼数据上传
BRREG,//获取佰锐的ID
+ AGREG,//获取声网ID
MEMBERS,//获取联系人列表
RTALK,//视频通话佰锐:对方拒接音视频聊天(服务器下发指令)
CALLING,//有人向你发起音视频聊天(服务器下发)
cmdMap.put(CMD_TYPE.heart, "heart");
cmdMap.put(CMD_TYPE.PRACTICE, "PRACTICE");
cmdMap.put(CMD_TYPE.BRREG, "BRREG");
+ cmdMap.put(CMD_TYPE.AGREG, "AGREG");
cmdMap.put(CMD_TYPE.MEMBERS, "MEMBERS");
cmdMap.put(CMD_TYPE.RTALK, "RTALK");
cmdMap.put(CMD_TYPE.RCALLING, "RCALLING");
return genFZDCMD(cmdMap.get(CMD_TYPE.BRREG));
}
+ public static StringMessage AGREG() {
+ return genFZDCMD(cmdMap.get(CMD_TYPE.AGREG));
+ }
public static StringMessage PHL() {
return genFZDCMD(cmdMap.get(CMD_TYPE.PHL));
if (Config.LOG_TOFILE) ICLogger.logToFile("APILog", " recv " + cmd + " " + data);
switch (type) {
case BRREG:
- ICLogger.i("收到本设备的声网或佰锐Id == > " + data);
+ ICLogger.i("收到本设备的佰锐Id == > " + data);
//保存一份到sp里
//通知一callback
handleBRREG(mRuntime, data);
mConnection.DeliverCMDMessageToSystem(cmdMap.get(CMD_TYPE.BRREG), cmd);
break;
+ case AGREG:
+ ICLogger.i("收到本设备的声网Id == > " + data);
+ //保存一份到sp里
+ //通知一callback
+ handleAGREG(mRuntime, data);
+ mConnection.DeliverCMDMessageToSystem(cmdMap.get(CMD_TYPE.AGREG), cmd);
+ break;
case MEMBERS:
ICLogger.i("收到群成员数据 ==> " + data);
//处理一下数据
}
}
+ /**
+ * 处理佰锐ID结果
+ *
+ * @param runtime
+ * @param data
+ */
+ private void handleAGREG(Runtime runtime, String data) {
+ RemoteCallbackList<IFZDCallback> fzdCallback = runtime.getFZDCallback();
+ int i = fzdCallback.beginBroadcast();
+ try {
+ while (i > 0) {
+ i--;
+ IFZDCallback broadcastItem = fzdCallback.getBroadcastItem(i);
+ if (TextUtils.isEmpty(data)) {
+ ICLogger.i("声网ID为空...");
+ broadcastItem.onBRIdEmpty();
+ } else {
+ broadcastItem.onBRIdLoaded(data);
+ }
+ }
+ //保存到sp里面
+ sharedPreferences.edit().putString(BRREG_ID, data).apply();
+ } catch (Exception e) {
+ e.printStackTrace();
+ } finally {
+ fzdCallback.finishBroadcast();
+ }
+ }
+
private static final String STATE_ENV = "env_state";
private boolean needResponseCalling = false;