From c97958c10d9a1b9973d6278527c943f29c5a80a8 Mon Sep 17 00:00:00 2001 From: Anton Tananaev Date: Tue, 3 Nov 2015 23:14:43 +1300 Subject: Handle non-decimal GPSMTA ids --- src/org/traccar/protocol/GpsmtaProtocolDecoder.java | 2 +- test/org/traccar/protocol/GpsmtaProtocolDecoderTest.java | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) 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 @@ -10,6 +10,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")); -- cgit v1.2.3