diff --git a/mpmaster/src/main/java/com/xypower/mpmaster/sms/SimUtil.java b/mpmaster/src/main/java/com/xypower/mpmaster/sms/SimUtil.java index 1823f3e7..79e976a4 100644 --- a/mpmaster/src/main/java/com/xypower/mpmaster/sms/SimUtil.java +++ b/mpmaster/src/main/java/com/xypower/mpmaster/sms/SimUtil.java @@ -85,6 +85,61 @@ public class SimUtil { if (StringUtils.isEmpty(content)) { return; } + if (content.toLowerCase().contains(SmsTypeEnum.CFG.value().toLowerCase())) { + String[] cmdSpilt = StringUtils.splitString2(content); + if (cmdSpilt != null && cmdSpilt.length > 1) { + + String actType = null; + String cfgFile = null; + HashMap map = new HashMap(); + for (int i = 0; i < cmdSpilt.length; i++) { + if (i == 0) { + String act = cmdSpilt[i]; + String[] actSpilt = StringUtils.splitString1(act); + if (actSpilt != null && actSpilt.length > 1) { + actType = actSpilt[1]; + if (StringUtils.isNotEmpty(actType) && (actType.toLowerCase().contains(SmsTypeEnum.SET.value().toLowerCase()) || actType.toLowerCase().contains(SmsTypeEnum.GET.value().toLowerCase()) || actType.toLowerCase().contains(SmsTypeEnum.SETFILE.value().toLowerCase()) || actType.toLowerCase().contains(SmsTypeEnum.GETFILE.value().toLowerCase()))) { + } else { + break; + } + } + } + if (i == 1) { + if (actType.equals(SmsTypeEnum.SET.value())) { + String cfg = cmdSpilt[i]; + if (StringUtils.isEmpty(cfg)) { + + } + if (cfg.toLowerCase().contains(SmsTypeEnum.CFG.value().toLowerCase())) { + String[] cfgSpilt = StringUtils.splitString1(cfg); + if (cfgSpilt != null && cfgSpilt.length > 1) { + String cfgStr = cfgSpilt[1]; + if (StringUtils.isEmpty(cfgStr)) { + + } + cfgFile = cfgStr; + } + } else if (cfg.toLowerCase().contains(SmsTypeEnum.RESTART.value().toLowerCase())) { + break; + } + + } else if (actType.equals(SmsTypeEnum.GET.value())) { + } else if (actType.equals(SmsTypeEnum.SETFILE.value())) { + } else if (actType.equals(SmsTypeEnum.GETFILE.value())) { + } + } + String cmd = cmdSpilt[i]; + if (StringUtils.isEmpty(cmd)) { + + } + String[] strings = StringUtils.splitString1(cmd); + map.put(strings[0], strings[1]); + + } + } + } + + if (content.contains(SmsTypeEnum.REBOOT1.value())) { ifmessageCorrect = true; sendtype = SmsTypeEnum.REBOOT1.value(); diff --git a/mpmaster/src/main/java/com/xypower/mpmaster/sms/SmsTypeEnum.java b/mpmaster/src/main/java/com/xypower/mpmaster/sms/SmsTypeEnum.java index 951ad2b3..f2d54980 100644 --- a/mpmaster/src/main/java/com/xypower/mpmaster/sms/SmsTypeEnum.java +++ b/mpmaster/src/main/java/com/xypower/mpmaster/sms/SmsTypeEnum.java @@ -1,15 +1,34 @@ package com.xypower.mpmaster.sms; public enum SmsTypeEnum { + /* + * act=set //修改配置文件参数 + * get //获取配置文件参数 + * getfile//获取配置文件 + * //修改配置文件 + * + * cfg=Master //修改Master.json + * App //修改App.json + * + * + * + * + * */ +//命令类型 + ACT("act="),// + CFG("cfg="), //获取配置 + RESTART("restart="), //重启命令 + SET("set"), //获取配置 + GET("get"), //获取配置 + SETFILE("setfile"), //获取配置 + GETFILE("getfile"), //获取配置 + + + MASTER("Master"), //获取配置 + APP("App"), //获取配置 REBOOT1("yw+at+stw21"), REBOOT2("at+stw21"), //重启命令 REBOOT3("at-stw21"), //重启命令 - RESTART_MP("at+restart=mpapp"), - RESTART_MP2("at-restart=mpapp"), - RESTART_MPMST("at+restart=mpmaster"), - RESTART_MPMST2("at-restart=mpmaster"), - RESTART_BOTH_APPS("at+restart=both"), - RESTART_BOTH_APPS2("at-restart=both"), - SET_YW_SCHEDULE("yw+at+stw51"), //拍照时间表设置 + RESTART_MP("at+restart=mpapp"), RESTART_MP2("at-restart=mpapp"), RESTART_MPMST("at+restart=mpmaster"), RESTART_MPMST2("at-restart=mpmaster"), RESTART_BOTH_APPS("at+restart=both"), RESTART_BOTH_APPS2("at-restart=both"), SET_YW_SCHEDULE("yw+at+stw51"), //拍照时间表设置 GET_YW_SCHEDULE("yw+at+str51"), //查询拍照时间表 SET_OPERATE("yw+at+stw52"), //设置运维开关 GET_OPERATE("yw+at+str52"), //查询运维开关 @@ -44,8 +63,7 @@ public enum SmsTypeEnum { CLEAR_LOG("yw+at+clearLog"), //删除日志 CLEAR_ALL("yw+at+clearAll"), //清除图片、视频、日志 RESTORE("yw+at+Restore"), //恢复出厂设置 - SIMCARD("at+str=sim"), - SET_AUTO_TIME("at-auto-time"), // act=[on/off] type=[net/gps] + SIMCARD("at+str=sim"), SET_AUTO_TIME("at-auto-time"), // act=[on/off] type=[net/gps] UPD_CFG_FILE("at-updcfg"), // f=[1/2/91-99] c=[field count] n1=[field name] t1=[0/1/2] v1= GET_CFG_FILE("at-getcfg"), // f=[0/1/2/91-99] p=[Absolute Path] GET_GPS("yw+at+getGPS");//GPS数据获取