From: snickersun Date: Mon, 31 Aug 2020 03:44:04 +0000 (+0800) Subject: release V510 X-Git-Url: http://git.snicker.com.cn/?a=commitdiff_plain;h=bede5e377be1ab15ef607c167417dfb6726f0eb0;p=protocol_srv.git release V510 protocol jiai 添加 BP93、AP94命令。 --- diff --git a/app/release/ICSer_V509_2008291532_release.apk b/app/release/ICSer_V510_2008311141_release.apk similarity index 78% rename from app/release/ICSer_V509_2008291532_release.apk rename to app/release/ICSer_V510_2008311141_release.apk index a5ce4477..eec1ecf3 100644 Binary files a/app/release/ICSer_V509_2008291532_release.apk and b/app/release/ICSer_V510_2008311141_release.apk differ diff --git a/app/release/output.json b/app/release/output.json index be2bcce2..e2d596d7 100644 --- a/app/release/output.json +++ b/app/release/output.json @@ -1 +1 @@ -[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":509,"versionName":"2008291532","enabled":true,"outputFile":"ICSer_V509_2008291532_release.apk","fullName":"release","baseName":"release"},"path":"ICSer_V509_2008291532_release.apk","properties":{}}] \ No newline at end of file +[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":510,"versionName":"2008311141","enabled":true,"outputFile":"ICSer_V510_2008311141_release.apk","fullName":"release","baseName":"release"},"path":"ICSer_V510_2008311141_release.apk","properties":{}}] \ No newline at end of file diff --git a/app/src/main/java/com/enqualcomm/support/bean/Runtime.java b/app/src/main/java/com/enqualcomm/support/bean/Runtime.java index 99088f0b..a3576b6d 100644 --- a/app/src/main/java/com/enqualcomm/support/bean/Runtime.java +++ b/app/src/main/java/com/enqualcomm/support/bean/Runtime.java @@ -22,6 +22,8 @@ public class Runtime { public int temp_test_Cycle=60*60; public int anti_test_cycle=30; + public static String PushtxtMsg_srv_index=""; + public int SignalStrength; public long lastLoginSuccessTime=0; public TemperatureInfo tempInfo=new TemperatureInfo(); diff --git a/app/src/main/java/com/enqualcomm/support/utils/ProcessReceiver.java b/app/src/main/java/com/enqualcomm/support/utils/ProcessReceiver.java index 35eb9a44..d4876605 100644 --- a/app/src/main/java/com/enqualcomm/support/utils/ProcessReceiver.java +++ b/app/src/main/java/com/enqualcomm/support/utils/ProcessReceiver.java @@ -197,6 +197,9 @@ public class ProcessReceiver extends BroadcastReceiver { public void onClick(DialogInterface var1, int var2) { var1.dismiss(); VibrateUtil.getInstance(context).VibrateOn(false); + if(CoreService.getInstance()!=null) { + CoreService.getInstance().getConnection().send(protocolAPIHelper.getPushTxtReadFlagToSrvMSG()); + } } }).create(); mCustomDialog.getWindow().setType(WindowManager.LayoutParams.TYPE_TOAST); diff --git a/app/src/main/java/com/ic/protocols/protocolAPIHelper.java b/app/src/main/java/com/ic/protocols/protocolAPIHelper.java index f1d52dec..2f570dd4 100644 --- a/app/src/main/java/com/ic/protocols/protocolAPIHelper.java +++ b/app/src/main/java/com/ic/protocols/protocolAPIHelper.java @@ -494,4 +494,28 @@ public class protocolAPIHelper { } return ret; } + + public static StringMessage getPushTxtReadFlagToSrvMSG( ){ + if (is_protocol_not_Initialled()) return null; + StringMessage ret=null; + switch(Config.protocol_no) + { + case Config.PROTOCOL_JIAI: + ret=protocoljiai_handler.AP94(); + break; + case Config.PROTOCOL_BEEHOME: + ret=null; + break; + case Config.PROTOCOL_IC: + ret=null; + break; + case Config.PROTOCOL_FZD: + ret=null; + break; + case Config.PROTOCOL_MQTT: + ret=null; + break; + } + return ret; + } } diff --git a/app/src/main/java/com/ic/protocols/protocol_jiai.java b/app/src/main/java/com/ic/protocols/protocol_jiai.java index 77a92fe0..e253d683 100644 --- a/app/src/main/java/com/ic/protocols/protocol_jiai.java +++ b/app/src/main/java/com/ic/protocols/protocol_jiai.java @@ -65,6 +65,8 @@ public class protocol_jiai { BPHT, APTM,//基站校时及获取定位 BPTM, + AP94,//消息已读 + BP94, /* 服务器发起*/ AP12, BP12,//SOS 号码设置 @@ -102,6 +104,8 @@ public class protocol_jiai { BP86,//心率血压测试周期 AP89, BP89,//心率血压阀值设置 + AP93, + BP93,//服务器下发文本 UNKNOWN_CMD, } @@ -131,6 +135,8 @@ public class protocol_jiai { cmdMap.put(CMD_TYPE.BPHT, "BPHT"); cmdMap.put(CMD_TYPE.APTM, "APTM"); cmdMap.put(CMD_TYPE.BPTM, "BPTM"); + cmdMap.put(CMD_TYPE.AP94, "AP94"); + cmdMap.put(CMD_TYPE.BP94, "BP94"); cmdMap.put(CMD_TYPE.AP12, "AP12"); cmdMap.put(CMD_TYPE.BP12, "BP12"); cmdMap.put(CMD_TYPE.AP14, "AP14"); @@ -167,6 +173,8 @@ public class protocol_jiai { cmdMap.put(CMD_TYPE.BP86, "BP86"); cmdMap.put(CMD_TYPE.AP89, "AP89"); cmdMap.put(CMD_TYPE.BP89, "BP89"); + cmdMap.put(CMD_TYPE.AP93, "AP93"); + cmdMap.put(CMD_TYPE.BP93, "BP93"); } private NettyConnection mConnection=null; @@ -1459,6 +1467,99 @@ public class protocol_jiai { } } + + public static StringMessage AP93(String index){ + /*** + * 20.发送文字到手环(下行协议号:BP93,响应:AP93) + * 示例: + * IWBP93, 353456789012345, 080835,123456, 8fd9662f4f8b5b50,2,3# + * 说明: + * IW:标识符 + * BP93 : 命令字符 + * 353456789012345:IMEI号,设备唯一ID + * 080835 :指令流水号 + * 123456:文字来源系统流水号 + * 8fd9662f4f8b5b50: 这是例子(文字内容) + * 2:语音播报次数,取值范围0-3,0为不播报 + * 3:震动次数,取值范围为0-4, 0为不震动 + * 设备响应: IWAP93,080835# + * 080835: 设备响应的时候带上响应流水号 + * 说明: 本消息适用所有终端 + */ + return genStringMessage("AP93",new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP93)) + .append(CMDSPLIT).append(index) + .append(CMDEND).toString()); + + } + + public void handleBP93(Connection connection,Runtime runtime , String cmd){ + /*** + * 20.发送文字到手环(下行协议号:BP93,响应:AP93) + * 示例: + * IWBP93, 353456789012345, 080835,123456, 8fd9662f4f8b5b50,2,3# + * 说明: + * IW:标识符 + * BP93 : 命令字符 + * 353456789012345:IMEI号,设备唯一ID + * 080835 :指令流水号 + * 123456:文字来源系统流水号 + * 8fd9662f4f8b5b50: 这是例子(文字内容) + * 2:语音播报次数,取值范围0-3,0为不播报 + * 3:震动次数,取值范围为0-4, 0为不震动 + * 设备响应: IWAP93,080835# + * 080835: 设备响应的时候带上响应流水号 + * 说明: 本消息适用所有终端 + */ + String[] cmdlist=cmd.split(","); + if (cmdlist.length == 7){ + String cmdindex=cmdlist[2]; + String msg_index_no=cmdlist[3]; + String txtmsg=cmdlist[4]; + String play_time=cmdlist[5]; + String vib_time=cmdlist[6]; + ICLogger.i("收到服务器文本 "+txtmsg+" 序号 "+msg_index_no+" , 播放 "+play_time+" 次,震动 "+vib_time+" 次!"); + txtmsg=Util.UrlGB2312ToUTF8(txtmsg); + StringMessage msg=AP93(cmdindex); + //设定当前工作模式及循环频率 + connection.send(msg); + runtime.PushtxtMsg_srv_index=msg_index_no;//给回复AP94用 + ICLogger.i("received Txt Msg "+txtmsg); + runtime.getContextProxy().sendMsgBroadcast(txtmsg,0); + runtime.getContextProxy().saveMstToSMSDB(txtmsg); + + }else{ + ICLogger.i("BP40 format error!"); + } + + } + + public static StringMessage AP94( ){ + /*** + * 15确认已读文字(上行协议号:AP94,响应:BP94) + * 示例: + * IWAP94,123456,1# + * 说明: + * IWAP94:标识符 + * APHCI: 命令字符 + * 123456: 文字来源系统流水号 + * 1:确认阅读、0:取消阅读 + * 平台响应: IWBP94# + * 表示平台已接收,可不作响应 + * 说明: 本消息适用所有终端 + */ + + //在UI逻辑中,只要有处理就都是已经阅读。所以不存在取消阅读的说法。 + return genStringMessage(cmdMap.get(CMD_TYPE.AP94),new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP94)) + .append(CMDSPLIT).append(Runtime.PushtxtMsg_srv_index) + .append(CMDSPLIT).append("1") + .append(CMDEND).toString()); + + } + + public void handleBP94(){ + + } + public boolean handleCmd(CMD_TYPE type, String cmd) { //普通非二进制命令用此函数处理 @@ -1595,6 +1696,14 @@ public class protocol_jiai { //心率/血压阀值 handleBP89(cmd,mConnection); break; + + case BP94: + handleBP94(); + break; + case BP93: + //服务器下发文版 + handleBP93(mConnection,mRuntime,cmd); + break; } return ret; diff --git a/app/version_code.properties b/app/version_code.properties index 702d1cab..b82f7c78 100644 --- a/app/version_code.properties +++ b/app/version_code.properties @@ -1,2 +1,2 @@ -#Sat Aug 29 15:32:52 CST 2020 -VERSION_CODE=509 +#Mon Aug 31 11:41:01 CST 2020 +VERSION_CODE=510