From 6749d8093bbd67531ed355ba53bd6e6d8da64e4d Mon Sep 17 00:00:00 2001 From: "k.liang" Date: Tue, 29 Jun 2021 19:55:38 +0800 Subject: [PATCH] =?utf8?q?=E4=BF=AE=E6=94=B9=E4=B8=BA=E5=8E=9F=E6=9D=A5?= =?utf8?q?=E7=9A=84=E7=99=BE=E9=94=90=E4=B8=BA=E5=A3=B0=E7=BD=91=E6=8E=A5?= =?utf8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../com/enqualcomm/support/IFZDCallback.aidl | 1 + .../com/ic/work/IHeartRateSensorCallback.aidl | 4 - .../com/ic/work/IHeartRateSensorService.aidl | 3 - .../aidl/com/ic/work/ITempSensorCallback.aidl | 4 - .../aidl/com/ic/work/ITempSensorService.aidl | 4 - .../com/enqualcomm/support/CoreService.java | 2 +- .../java/com/ic/protocols/protocol_fzd.java | 86 +++++++++++++++---- app/version_code.properties | 7 +- local.properties | 2 +- 9 files changed, 76 insertions(+), 37 deletions(-) diff --git a/app/src/main/aidl/com/enqualcomm/support/IFZDCallback.aidl b/app/src/main/aidl/com/enqualcomm/support/IFZDCallback.aidl index 4bcaaef3..4d3e7f68 100644 --- a/app/src/main/aidl/com/enqualcomm/support/IFZDCallback.aidl +++ b/app/src/main/aidl/com/enqualcomm/support/IFZDCallback.aidl @@ -5,6 +5,7 @@ interface IFZDCallback { void onContractsLoaded(); void onBRIdLoaded(in String brId); void onCallRequestResult(int result); + void onAGCallRequestResult(in int result,in String token,in String roomName); void onBRIdEmpty(); void onRemoteReject(in String remoteUserId,in int type); void onFriendsMakeResult(in int result,String friendName,String id,String phoneNum); diff --git a/app/src/main/aidl/com/ic/work/IHeartRateSensorCallback.aidl b/app/src/main/aidl/com/ic/work/IHeartRateSensorCallback.aidl index a7273792..88ce873a 100644 --- a/app/src/main/aidl/com/ic/work/IHeartRateSensorCallback.aidl +++ b/app/src/main/aidl/com/ic/work/IHeartRateSensorCallback.aidl @@ -5,12 +5,8 @@ package com.ic.work; import com.ic.work.domain.HeartRate; interface IHeartRateSensorCallback { - //获取到了数据,最终数据 void onHeartRateGet(in HeartRate heartRate); - //数据更新中 void onHeartRateUpdate(in HeartRate heartRate); - //正在获取数据 void onGettingData(); - //等待中 void onWaiting(); } \ No newline at end of file diff --git a/app/src/main/aidl/com/ic/work/IHeartRateSensorService.aidl b/app/src/main/aidl/com/ic/work/IHeartRateSensorService.aidl index ed7c10a3..32476d65 100644 --- a/app/src/main/aidl/com/ic/work/IHeartRateSensorService.aidl +++ b/app/src/main/aidl/com/ic/work/IHeartRateSensorService.aidl @@ -5,11 +5,8 @@ import com.ic.work.IHeartRateSensorCallback; interface IHeartRateSensorService { - //注册接口 void registerCallback(in IHeartRateSensorCallback callback,in String callbackTag); - //取消接口注册 void unRegisterCallback(in IHeartRateSensorCallback callback); - //获取心率相关数据0表示Alarm,1表示客户端用户发出的,3表示服务端发出的单次获取指令 oneway void getHeartRateInfo(int from,in String callbackTag); oneway void getJustOxygenInfo(in int from,in String callbackTag); oneway void getJustHeartRateInfo(in int from,in String callbackTag); diff --git a/app/src/main/aidl/com/ic/work/ITempSensorCallback.aidl b/app/src/main/aidl/com/ic/work/ITempSensorCallback.aidl index f002d23c..d8cdca8a 100644 --- a/app/src/main/aidl/com/ic/work/ITempSensorCallback.aidl +++ b/app/src/main/aidl/com/ic/work/ITempSensorCallback.aidl @@ -4,12 +4,8 @@ package com.ic.work; import com.ic.work.domain.Temperature; interface ITempSensorCallback { - //获取到了温度数据,这个是最终数据 void onTemperatureGet(in Temperature temperature); - //温度数据更新中 void onTemperatureUpdating(in Temperature temperature); - //正在获取数据 void onGettingData(); - //等待中 void onWaiting(); } \ No newline at end of file diff --git a/app/src/main/aidl/com/ic/work/ITempSensorService.aidl b/app/src/main/aidl/com/ic/work/ITempSensorService.aidl index 8a210e67..156a8517 100644 --- a/app/src/main/aidl/com/ic/work/ITempSensorService.aidl +++ b/app/src/main/aidl/com/ic/work/ITempSensorService.aidl @@ -3,11 +3,7 @@ package com.ic.work; import com.ic.work.ITempSensorCallback; interface ITempSensorService { - //注册接口 void registerCallback(in ITempSensorCallback callback,in String callbackTag); - //取消接口注册 void unRegisterCallback(in ITempSensorCallback callback); - //获取体温:0表示Alarm,1表示客户端用户发出的,3表示服务端发出的单次获取指令 - //callbackTag,可以使用报名+类名的字符串组合 void getTemperatureInfo(int from,in String callbackTag); } \ No newline at end of file diff --git a/app/src/main/java/com/enqualcomm/support/CoreService.java b/app/src/main/java/com/enqualcomm/support/CoreService.java index b06d3c89..55643269 100644 --- a/app/src/main/java/com/enqualcomm/support/CoreService.java +++ b/app/src/main/java/com/enqualcomm/support/CoreService.java @@ -1674,7 +1674,7 @@ public class CoreService extends Service { @Override public void requireCall(int type, int remoteUserId) { //请求与对方通话 - StringMessage talk = protocol_fzd.TALK(type, remoteUserId); + StringMessage talk = protocol_fzd.AGTALK(type, remoteUserId); connection.send(talk); ICLogger.d("require call == > type is " + type + " remote user id is == > " + remoteUserId); } diff --git a/app/src/main/java/com/ic/protocols/protocol_fzd.java b/app/src/main/java/com/ic/protocols/protocol_fzd.java index 921c4f35..4a920611 100644 --- a/app/src/main/java/com/ic/protocols/protocol_fzd.java +++ b/app/src/main/java/com/ic/protocols/protocol_fzd.java @@ -430,6 +430,7 @@ public class protocol_fzd { CALLING,//有人向你发起音视频聊天(服务器下发) RCALLING,//拒绝对方的发起的通话请求 TALK,//向对方发起音视频聊天 + AGTALK,//向对方发起音视频聊天 声网 UNKNOWN_CMD, MESSAGE/*文字消息*/, profile,//情景模式 @@ -505,6 +506,7 @@ public class protocol_fzd { cmdMap.put(CMD_TYPE.RTALK, "RTALK"); cmdMap.put(CMD_TYPE.RCALLING, "RCALLING"); cmdMap.put(CMD_TYPE.TALK, "TALK"); + cmdMap.put(CMD_TYPE.AGTALK, "AGTALK"); cmdMap.put(CMD_TYPE.CALLING, "CALLING"); } @@ -1489,19 +1491,19 @@ public class protocol_fzd { ICLogger.i("handleCmd " + type.name() + " strLen=" + data.length()); if (Config.LOG_TOFILE) ICLogger.logToFile("APILog", " recv " + cmd + " " + data); switch (type) { -// case BRREG: -// ICLogger.i("收到本设备的佰锐Id == > " + data); -// //保存一份到sp里 -// //通知一callback -// handleBRREG(mRuntime, data); -// mConnection.DeliverCMDMessageToSystem(cmdMap.get(CMD_TYPE.BRREG), cmd); -// break; -// case MEMBERS: -// ICLogger.i("收到群成员数据 ==> " + data); -// //处理一下数据 -// handleMEMBERS(mRuntime, data); -// mConnection.DeliverCMDMessageToSystem(cmdMap.get(CMD_TYPE.MEMBERS), cmd); -// break; + case BRREG: + ICLogger.i("收到本设备的声网或佰锐Id == > " + data); + //保存一份到sp里 + //通知一callback + handleBRREG(mRuntime, data); + mConnection.DeliverCMDMessageToSystem(cmdMap.get(CMD_TYPE.BRREG), cmd); + break; + case MEMBERS: + ICLogger.i("收到群成员数据 ==> " + data); + //处理一下数据 + handleMEMBERS(mRuntime, data); + mConnection.DeliverCMDMessageToSystem(cmdMap.get(CMD_TYPE.MEMBERS), cmd); + break; case RTALK: //拒绝通话请求,当我们通过TALK向对方发起通话请求的时候,如果对方拒绝,则会收到此指令 //此指令由平台发送。 @@ -1511,9 +1513,15 @@ public class protocol_fzd { case TALK: //0 表示可正常通话,-1 表示余额不足,不能通话,1 表示对方不在线或未登陆成功 ICLogger.i("收到向对方请求音视频通话的结果 ==> " + data); - handlerTalkRequestResult(mConnection, mRuntime, data); + handlerAGTalkRequestResult(mConnection, mRuntime, data); mConnection.DeliverCMDMessageToSystem(cmdMap.get(CMD_TYPE.TALK), cmd); break; + case AGTALK: + //0 表示可正常通话,-1 表示余额不足,不能通话,1 表示对方不在线或未登陆成功 + ICLogger.i("声网 收到向对方请求音视频通话的结果 ==> " + data); + handlerAGTalkRequestResult(mConnection, mRuntime, data); + mConnection.DeliverCMDMessageToSystem(cmdMap.get(CMD_TYPE.AGTALK), cmd); + break; case CALLING: //有音视频聊天请求,此指令由平台发送,也就是被动通知 ICLogger.i("收到平台发送的音视频聊天请求 == > " + data); @@ -2598,7 +2606,7 @@ public class protocol_fzd { while (i > 0) { i--; if (split.length == 3) { - fzdCallback.getBroadcastItem(i).onRemoteReject(split[0], Integer.parseInt(split[1])); + fzdCallback.getBroadcastItem(i).onRemoteReject(split[0], Integer.parseInt(split[2])); } } } catch (Exception e) { @@ -2625,6 +2633,20 @@ public class protocol_fzd { return genFZDCMD(cmdMap.get(CMD_TYPE.TALK), data); } + /** + * 向对方发起音视频通话 + * + * @param type 通话类型 1 表示语音通话,2 表示视频通话 + * @param remoteAccount 对方账号 + * @return + */ + public static StringMessage AGTALK(int type, int remoteAccount) { + //准备数据 + String data = type + CMD_SPLIT + remoteAccount + CMD_SPLIT; + ICLogger.d("request AGtalk == > " + data); + return genFZDCMD(cmdMap.get(CMD_TYPE.AGTALK), data); + } + public static StringMessage TKQ() { return genFZDCMD(cmdMap.get(CMD_TYPE.TKQ)); } @@ -2686,6 +2708,40 @@ public class protocol_fzd { } } + /** + * 声网 当向对方发起通话请求的时候,结果会从此方法回来。 + *

+ * 0 表示可正常通话,-1 表示余额不足,不能通话,1 表示对方不在线或未登陆成功 + * @param mConnection + * @param mRuntime + * @param data + */ + private void handlerAGTalkRequestResult(Connection mConnection, Runtime mRuntime, String data) { + ICLogger.d("handlerAGTalkRequestResult == > " + data); + //可以正常通话,可以不处理 + //如果不能正常通话,则要提示用户了 + RemoteCallbackList fzdCallback = mRuntime.getFZDCallback(); + int i = fzdCallback.beginBroadcast(); + try { + while (i > 0) { + i--; + if (fzdCallback != null) { + String[] str = data.split(","); + int result = Integer.parseInt(str[0]); + String token = str[1]; + String roomName = str[2]; + ICLogger.i("0 表示可正常通话,-1 表示余额不足,不能通话,1 表示对方不在线或未登陆成功 === > " + data); + ICLogger.i("result = "+result+", token = "+token+", roomName = "+roomName); + fzdCallback.getBroadcastItem(i).onAGCallRequestResult(result,token,roomName); + } + } + } catch (Exception e) { + e.printStackTrace(); + } finally { + fzdCallback.finishBroadcast(); + } + } + /** * 处理联系人列表 * 文档说明: diff --git a/app/version_code.properties b/app/version_code.properties index 710ffd2b..b3fe9943 100644 --- a/app/version_code.properties +++ b/app/version_code.properties @@ -1,5 +1,2 @@ -#Tue Jun 22 23:50:33 CST 2021 ->>>>>>>=b405d1184f3616d4e894d199cee0eb91613a68db -VERSION_CODE=837 -=\=\=\=\=\=\= -<<<<<<<=HEAD +#Tue Jun 29 18:09:20 CST 2021 +VERSION_CODE=840 diff --git a/local.properties b/local.properties index 70301e17..0f779753 100644 --- a/local.properties +++ b/local.properties @@ -5,4 +5,4 @@ # For customization when using a Version Control System, please read the # header note. #Sat Jun 19 18:18:09 CST 2021 -sdk.dir=E\:\\Android\\Sdk +sdk.dir=D\:\\android\\Android\\sdk -- 2.17.1