aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnton Tananaev <anton.tananaev@gmail.com>2015-11-03 23:14:43 +1300
committerAnton Tananaev <anton.tananaev@gmail.com>2015-11-03 23:14:43 +1300
commitc97958c10d9a1b9973d6278527c943f29c5a80a8 (patch)
tree129d14c4ca3df512b1268f2950691bf8812545aa
parentf8a3f9e444b0c3d489635fccdbf6f8939068bba5 (diff)
downloadtrackermap-server-c97958c10d9a1b9973d6278527c943f29c5a80a8.tar.gz
trackermap-server-c97958c10d9a1b9973d6278527c943f29c5a80a8.tar.bz2
trackermap-server-c97958c10d9a1b9973d6278527c943f29c5a80a8.zip
Handle non-decimal GPSMTA ids
-rw-r--r--src/org/traccar/protocol/GpsmtaProtocolDecoder.java2
-rw-r--r--test/org/traccar/protocol/GpsmtaProtocolDecoderTest.java3
2 files changed, 4 insertions, 1 deletions
diff --git a/src/org/traccar/protocol/GpsmtaProtocolDecoder.java b/src/org/traccar/protocol/GpsmtaProtocolDecoder.java
index 37023181e..0ee207219 100644
--- a/src/org/traccar/protocol/GpsmtaProtocolDecoder.java
+++ b/src/org/traccar/protocol/GpsmtaProtocolDecoder.java
@@ -32,7 +32,7 @@ public class GpsmtaProtocolDecoder extends BaseProtocolDecoder {
}
private static final Pattern PATTERN = new PatternBuilder()
- .number("(d+) ") // uid
+ .expression("([^ ]+) ") // uid
.number("(d+) ") // time
.number("(d+.d+) ") // latitude
.number("(d+.d+) ") // longitude
diff --git a/test/org/traccar/protocol/GpsmtaProtocolDecoderTest.java b/test/org/traccar/protocol/GpsmtaProtocolDecoderTest.java
index cd1257de7..8d7b6ab0f 100644
--- a/test/org/traccar/protocol/GpsmtaProtocolDecoderTest.java
+++ b/test/org/traccar/protocol/GpsmtaProtocolDecoderTest.java
@@ -11,6 +11,9 @@ public class GpsmtaProtocolDecoderTest extends ProtocolDecoderTest {
GpsmtaProtocolDecoder decoder = new GpsmtaProtocolDecoder(new GpsmtaProtocol());
verifyPosition(decoder, text(
+ "3085a94ef459 1446536867 49.81621 24.054207 1 0 22 0 10 12 24 0 0"));
+
+ verifyPosition(decoder, text(
"864528021249771 1446116686 49.85073 24.004438 0 217 6 338 00 59 27 0 0"));
verifyPosition(decoder, text(