import com.enqualcomm.support.utils.ICLogger;
import com.enqualcomm.support.utils.TimeUtil;
import com.enqualcomm.support.utils.Util;
+import com.enqualcomm.support.utils.VibrateUtil;
import com.ic.protocols.protocolAPIHelper;
import com.ic.work.IHeartRateSensorCallback;
import com.ic.work.IHeartRateSensorService;
//发出警告
createWarningNotification(context.getString(R.string.oxygen_exception_tips_text) + oxygenValue + "%)",
NOTIFICATION_TYPE_BLOOD_OXYGEN, Constants.WARNING_MSG_TYPE_BLOOD_OXYGEN);
+ VibrateUtil.getInstance(context).vibrateOn(true);
}
if (heartRateValue != 0 && Config.LIMIT_VALUE_PPGH != 0 && heartRateValue > Config.LIMIT_VALUE_PPGH) {
//判断是否超出阀值,上限
createWarningNotification(context.getString(R.string.heart_rate_exception_tips_text) + heartRateValue + ")",
NOTIFICATION_TYPE_HEART_RATE, Constants.WARNING_MSG_TYPE_HEART_RATE);
+ VibrateUtil.getInstance(context).vibrateOn(true);
}
if (heartRateValue != 0 && Config.LIMIT_VALUE_PPGH != 0 && heartRateValue < Config.LIMIT_VALUE_PPGL) {
//判断是否超出阀值,下限
createWarningNotification(context.getString(R.string.heart_rate_exception_tips_text) + heartRateValue + ")",
NOTIFICATION_TYPE_HEART_RATE, Constants.WARNING_MSG_TYPE_HEART_RATE);
+ VibrateUtil.getInstance(context).vibrateOn(true);
}
if (bloodHeightValue != 0 && Config.LIMIT_VALUE_BPH_H != 0 && Config.LIMIT_VALUE_BPH_L != 0) {
//警报,血压高值超出范围
createWarningNotification(context.getString(R.string.blood_presure_exception_tips_text) + bloodHeightValue + "/100mmHg)",
NOTIFICATION_TYPE_BLOOD_PRESSURE, Constants.WARNING_MSG_TYPE_BLOOD_PRESSURE);
+ VibrateUtil.getInstance(context).vibrateOn(true);
}
}
//警报,血压低值超出范围
createWarningNotification(context.getString(R.string.blood_presure_exception_tips_text) + bloodHeightValue + "/100mmHg)",
NOTIFICATION_TYPE_BLOOD_PRESSURE, Constants.WARNING_MSG_TYPE_BLOOD_PRESSURE);
+ VibrateUtil.getInstance(context).vibrateOn(true);
}
}
}
public static StringMessage AP88(String index) {
//设备响应: IWAP88, 080835#
//080835:指令流水号
- return genStringMessage("AP88", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP88))
- .append(CMDSPLIT).append(index)
- .append(CMDEND).toString());
+ return genStringMessage("AP88",
+ new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP88))
+ .append(CMDSPLIT).append(index)
+ .append(CMDEND).toString());
}
public static void handleBP88(String cmd, Connection connection) {
// IWBP88,080835#
String[] list = cmd.split(CMDSPLIT);
-
- if (list.length == 2) {
- String index = list[1];
+ if (list.length == 3) {
+ String index = list[2];
connection.send(AP88(index));
ICLogger.i("收到服务器消息:查询设备");
-
} else {
ICLogger.i("BP88 format error!");
}
//18.18.设置心率/血压阀值(下行协议号:BP89,响应:AP89)
public static StringMessage AP89(String index) {
-
//设备响应: IWAP89, 080835#
//080835:指令流水号
- return genStringMessage("AP89", new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP89))
+ return genStringMessage("AP89",
+ new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP89))
.append(CMDSPLIT).append(index)
.append(CMDEND).toString());
}
String wifiName = split[3];
String password = split[4];
String encyptType = split[5];
+ //1:表示设备接受数据成功,0表示设备接受数据失败
+ responseWithId(cmdMap.get(CMD_TYPE.APWF), id, "1");
+ //返回数据再连接WIFI,否则断网
Context context = mRuntime.getContextProxy().context;
Config.setWiFiSSID(context, wifiName);
Config.setWiFiPasswd(context, password);
//回复内容
//IWAPWF,080835,1#
//080835:指令流水号
- //1:表示设备接受数据成功,0表示设备接受数据失败
- responseWithId(cmdMap.get(CMD_TYPE.APWF), id, "1");
} else {
ICLogger.d("parse error==> " + cmd);
}
String id = split[2];
String type = split[3];
String ipAndPort = split[4];
- if (ipAndPort.contains(":")) {
- String[] ipAndPortArray = ipAndPort.split(":");
- String ip = ipAndPortArray[0];
- String port = ipAndPortArray[1];
- Config.setCustomServer(mRuntime.getContextProxy().context, true, ip,
- Integer.parseInt(port));
- //172.128.20.111:9999: IP(域名):端口
- //响应IWAPIP,080835,1,172.128.20.111:9999
- //1:表示设备接受数据成功,0表示设备接受数据失败.
- responseWithId(cmdMap.get(CMD_TYPE.APIP), id, type, ipAndPort);
- //以下内容必须在后回复的后面,否则就发送不了。
- Config.loadServerSettings(mRuntime);
- CoreService.getInstance().disconnect_server();
- CoreService.getInstance().ReConnectToServer();
+ ICLogger.d("id==> " + id);
+ ICLogger.d("type==> " + type);
+ ICLogger.d("ipAndPort==> " + ipAndPort);
+ if ("1".equals(type)) {
+ if (ipAndPort.contains(":")) {
+ String[] ipAndPortArray = ipAndPort.split(":");
+ String ip = ipAndPortArray[0];
+ String port = ipAndPortArray[1];
+ Config.setCustomServer(mRuntime.getContextProxy().context, true, ip,
+ Integer.parseInt(port));
+ //172.128.20.111:9999: IP(域名):端口
+ //响应IWAPIP,080835,1,172.128.20.111:9999
+ //1:表示设备接受数据成功,0表示设备接受数据失败.
+ responseWithId(cmdMap.get(CMD_TYPE.APIP), id, type, ipAndPort);
+ //以下内容必须在后回复的后面,否则就发送不了。
+ Config.loadServerSettings(mRuntime);
+ CoreService.getInstance().disconnect_server();
+ CoreService.getInstance().ReConnectToServer();
+ }
}
} else {
ICLogger.d("parse failed==> " + cmd);