From: snickersun Date: Sat, 18 Jan 2020 10:28:01 +0000 (+0800) Subject: 添加AP05 语音查询协议,在每次心跳都会查询一次。 X-Git-Url: http://git.snicker.com.cn/?a=commitdiff_plain;h=a756371163a11b1da6b6d0d0fd6f1ffd0a7374ec;p=icsupport.git 添加AP05 语音查询协议,在每次心跳都会查询一次。 --- diff --git a/app/src/main/java/com/ic/protocol/adapter/protocolAPIHelper.java b/app/src/main/java/com/ic/protocol/adapter/protocolAPIHelper.java index 3f9f04d5..5004d6eb 100644 --- a/app/src/main/java/com/ic/protocol/adapter/protocolAPIHelper.java +++ b/app/src/main/java/com/ic/protocol/adapter/protocolAPIHelper.java @@ -428,7 +428,23 @@ public class protocolAPIHelper { + public static String AP05(boolean recvFlag){ +// IWAP05,1# + return new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP05)) + .append(CMDSPLIT).append(recvFlag?1:0) + .append(CMDEND).toString(); + + } + + + public void handleBP05(String cmd){ +// IWBP05,6# + String[] cmdlist=cmd.split(CMDSPLIT); + if (cmdlist.length>1){ + Logger.i(" 服务器有 " +cmdlist[1]+" 条语音未接收!"); + } + } public static String AP85(Runtime ds,String cmddata){ //示例数据:IWAP49,68## return new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP85)) diff --git a/app/src/main/java/com/ic/protocol/service/Initialize.java b/app/src/main/java/com/ic/protocol/service/Initialize.java index 329b0a7e..260c9577 100644 --- a/app/src/main/java/com/ic/protocol/service/Initialize.java +++ b/app/src/main/java/com/ic/protocol/service/Initialize.java @@ -86,7 +86,7 @@ public class Initialize extends AbstractConnectionService { public boolean onReceive(StringMessage paramStringMessage, Connection paramConnection, Runtime paramRuntime) { if (this.initOK) return false; - if (paramStringMessage.cmd().equals("AP00")) { + if (paramStringMessage.cmd().equals("BP00")) { this.initOK = true; // try { // paramRuntime.setKey(((JSONObject)(new JSONTokener(paramStringMessage.all()[1])).nextValue()).getString("KEY")); diff --git a/app/src/main/java/com/ic/protocol/service/KeepAlive.java b/app/src/main/java/com/ic/protocol/service/KeepAlive.java index 984433b0..922f37c3 100644 --- a/app/src/main/java/com/ic/protocol/service/KeepAlive.java +++ b/app/src/main/java/com/ic/protocol/service/KeepAlive.java @@ -196,7 +196,10 @@ public class KeepAlive extends AbstractConnectionService { if ("heart".equals(paramStringMessage.cmd())) AlarmWakeUp.isNeedWakeUpAlarm(paramRuntime); return true; - } + } else if ("BP03".equals(paramStringMessage.cmd())){ + //每次心跳,查询一下 是否有语音消息需要接收。 + paramConnection.send(protocolAPIHelper.genStringMessage("AP05",protocolAPIHelper.AP05(true))); + } return false; } diff --git a/app/src/main/java/com/ic/protocol/utils/AlarmWakeUp.java b/app/src/main/java/com/ic/protocol/utils/AlarmWakeUp.java index b115ded7..57b20e82 100644 --- a/app/src/main/java/com/ic/protocol/utils/AlarmWakeUp.java +++ b/app/src/main/java/com/ic/protocol/utils/AlarmWakeUp.java @@ -6,7 +6,9 @@ import android.content.Intent; import android.os.SystemClock; import android.util.Log; +import com.ic.protocol.bean.Contact; import com.ic.protocol.bean.Runtime; +import com.ic.protocol.service.protocolMainServer; public class AlarmWakeUp { private static long lastAlarmTime; @@ -16,7 +18,7 @@ public class AlarmWakeUp { int i = SharPreferenceUtil.getPrefInt((dev.getContextProxy()).context, "lacation_cycle", 3); if (l - lastAlarmTime > ((i + 1) * 60 * 1000)) { ComponentName componentName = new ComponentName("com.ic.protocol", "com.ic.protocol.service.protocolMainServer"); - Intent intent = (new Intent("com.enqualcomm.support.ACTION_ALARM")).setComponent(componentName); + Intent intent = (new Intent(protocolMainServer.ACTION_ALARM)).setComponent(componentName); (dev.getContextProxy()).context.startService(intent); Context context = (dev.getContextProxy()).context; StringBuilder stringBuilder = new StringBuilder(); diff --git a/app/src/main/java/com/ic/protocol/utils/NettyConnection.java b/app/src/main/java/com/ic/protocol/utils/NettyConnection.java index 8adfe43e..926c4591 100644 --- a/app/src/main/java/com/ic/protocol/utils/NettyConnection.java +++ b/app/src/main/java/com/ic/protocol/utils/NettyConnection.java @@ -53,7 +53,7 @@ public class NettyConnection implements Connection { case BP00: API.handleBP00(cmd); Logger.i("服务器收到心跳AP00"); - DeliverCMDMessageToSystem("AP00",cmd);//通知下面线程状态变化 + DeliverCMDMessageToSystem("BP00",cmd);//通知下面线程状态变化 break; case BP01: API.handleBP01(cmd); @@ -62,7 +62,8 @@ public class NettyConnection implements Connection { case BP03: API.handleBP03(cmd); Logger.i("服务器收到心跳AP03"); - DeliverCMDMessageToSystem("AP03",cmd);//通知下面线程状态变化 + DeliverCMDMessageToSystem("BP03",cmd);//通知下面线程状态变化 + break; // case BP28: // API.handleBP28(NettyConnection.this ,cmd); @@ -92,6 +93,11 @@ public class NettyConnection implements Connection { API.handleBP16(NettyConnection.this,runtime,cmd); DeliverCMDMessageToSystem("StartLocate",cmd);//通知下面线程状态变化 break; + + case BP05: + //查询服务器语音 返回信息 + API.handleBP05(cmd); + break; } return ret;