diff options
author | Erez Ninio <ninioe@gmail.com> | 2019-09-11 16:43:10 +0300 |
---|---|---|
committer | Erez Ninio <ninioe@gmail.com> | 2019-09-19 08:51:41 +0300 |
commit | 8a5e7d351ad1e0708655cc11dc07ac29a8e89e35 (patch) | |
tree | c25df53fd254d6c67d7ee08a7b1cd7d6e0d89f11 /src/main/java/org/traccar/protocol | |
parent | d33a48db3bdefd6bf3772432aaa26b0eb2f70d44 (diff) | |
download | trackermap-server-8a5e7d351ad1e0708655cc11dc07ac29a8e89e35.tar.gz trackermap-server-8a5e7d351ad1e0708655cc11dc07ac29a8e89e35.tar.bz2 trackermap-server-8a5e7d351ad1e0708655cc11dc07ac29a8e89e35.zip |
watch protocol case fix
Diffstat (limited to 'src/main/java/org/traccar/protocol')
-rw-r--r-- | src/main/java/org/traccar/protocol/WatchProtocolDecoder.java | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/main/java/org/traccar/protocol/WatchProtocolDecoder.java b/src/main/java/org/traccar/protocol/WatchProtocolDecoder.java index 70b207e9b..3f2156dc2 100644 --- a/src/main/java/org/traccar/protocol/WatchProtocolDecoder.java +++ b/src/main/java/org/traccar/protocol/WatchProtocolDecoder.java @@ -267,7 +267,10 @@ public class WatchProtocolDecoder extends BaseProtocolDecoder { sendResponse(channel, id, index, "TKQ"); - } else if (type.equals("PULSE") || type.equals("heart") || type.equals("bphrt")) { + } else if (type.equalsIgnoreCase("PULSE") + || type.equalsIgnoreCase("HEART") + || type.equalsIgnoreCase("BLOOD") + || type.equalsIgnoreCase("BPHRT")) { if (buf.isReadable()) { @@ -279,11 +282,14 @@ public class WatchProtocolDecoder extends BaseProtocolDecoder { String[] values = buf.toString(StandardCharsets.US_ASCII).split(","); int valueIndex = 0; - if (type.equals("bphrt")) { + if (type.equalsIgnoreCase("BPHRT") || type.equalsIgnoreCase("BLOOD")) { position.set("pressureHigh", values[valueIndex++]); position.set("pressureLow", values[valueIndex++]); } - position.set(Position.KEY_HEART_RATE, Integer.parseInt(values[valueIndex])); + + if (valueIndex <= values.length - 1) { + position.set(Position.KEY_HEART_RATE, Integer.parseInt(values[valueIndex])); + } return position; |