aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnton Tananaev <anton.tananaev@gmail.com>2016-06-23 12:28:37 +1200
committerAnton Tananaev <anton.tananaev@gmail.com>2016-06-23 12:28:37 +1200
commitf7f3b191e79d61887126c5883b5ece84d134d0a3 (patch)
tree7a26baa7d286236f46cb4b3c47d0c75163db0532
parent36f04b88fc965a2f31e5d98f95cb37af15e8dc05 (diff)
downloadtrackermap-server-f7f3b191e79d61887126c5883b5ece84d134d0a3.tar.gz
trackermap-server-f7f3b191e79d61887126c5883b5ece84d134d0a3.tar.bz2
trackermap-server-f7f3b191e79d61887126c5883b5ece84d134d0a3.zip
Extend T55 decoder to support hex ids
-rw-r--r--src/org/traccar/protocol/T55ProtocolDecoder.java2
-rw-r--r--test/org/traccar/protocol/T55ProtocolDecoderTest.java3
2 files changed, 4 insertions, 1 deletions
diff --git a/src/org/traccar/protocol/T55ProtocolDecoder.java b/src/org/traccar/protocol/T55ProtocolDecoder.java
index 0a86e46a7..87c7a60c3 100644
--- a/src/org/traccar/protocol/T55ProtocolDecoder.java
+++ b/src/org/traccar/protocol/T55ProtocolDecoder.java
@@ -240,7 +240,7 @@ public class T55ProtocolDecoder extends BaseProtocolDecoder {
this.position = null;
return position;
}
- } else if (sentence.length() == 15 && Character.isDigit(sentence.charAt(0))) {
+ } else if (sentence.matches("^[0-9A-F]+$")) {
identify(sentence, channel, remoteAddress);
} else if (sentence.startsWith("$GPRMC")) {
return decodeGprmc(sentence, remoteAddress, channel);
diff --git a/test/org/traccar/protocol/T55ProtocolDecoderTest.java b/test/org/traccar/protocol/T55ProtocolDecoderTest.java
index e8e5ba90e..753b4f689 100644
--- a/test/org/traccar/protocol/T55ProtocolDecoderTest.java
+++ b/test/org/traccar/protocol/T55ProtocolDecoderTest.java
@@ -11,6 +11,9 @@ public class T55ProtocolDecoderTest extends ProtocolTest {
T55ProtocolDecoder decoder = new T55ProtocolDecoder(new T55Protocol());
verifyNothing(decoder, text(
+ "086415031C20"));
+
+ verifyNothing(decoder, text(
"358244017671308"));
verifyNotNull(decoder, text(