aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnton Tananaev <anton.tananaev@gmail.com>2014-11-14 12:30:58 +1300
committerAnton Tananaev <anton.tananaev@gmail.com>2014-11-14 12:30:58 +1300
commit74f88cf2cc40680869233bcdb97cece139985f96 (patch)
tree9fbd74242d353b0ff2d646e6ef3f3c4371c6e1cd
parentedc4c0bee03a9f170eafc3a14503203aab39c527 (diff)
downloadtrackermap-server-74f88cf2cc40680869233bcdb97cece139985f96.tar.gz
trackermap-server-74f88cf2cc40680869233bcdb97cece139985f96.tar.bz2
trackermap-server-74f88cf2cc40680869233bcdb97cece139985f96.zip
Update Haicom decoder
-rw-r--r--src/org/traccar/protocol/HaicomProtocolDecoder.java8
-rw-r--r--test/org/traccar/protocol/HaicomProtocolDecoderTest.java3
2 files changed, 7 insertions, 4 deletions
diff --git a/src/org/traccar/protocol/HaicomProtocolDecoder.java b/src/org/traccar/protocol/HaicomProtocolDecoder.java
index 3531ce0d0..078ee9ae6 100644
--- a/src/org/traccar/protocol/HaicomProtocolDecoder.java
+++ b/src/org/traccar/protocol/HaicomProtocolDecoder.java
@@ -48,12 +48,12 @@ public class HaicomProtocolDecoder extends BaseProtocolDecoder {
"(\\d+)," + // Speed
"(\\d+)," + // Course
"(\\d+)," + // Status
- "(\\d*)," + // GPRS counting value
- "(\\d*)," + // GPS power saving counting value
+ "(\\d+)?," + // GPRS counting value
+ "(\\d+)?," + // GPS power saving counting value
"(\\d+)," + // Switch status
"(\\d+)" + // Relay status
- "[LH]{0,2}" + // Power status
- "\\#V(\\d+)"); // Battery
+ "(?:[LH]{2})?" + // Power status
+ "\\#V(\\d+).*"); // Battery
@Override
protected Object decode(
diff --git a/test/org/traccar/protocol/HaicomProtocolDecoderTest.java b/test/org/traccar/protocol/HaicomProtocolDecoderTest.java
index 342d6204b..47468ffda 100644
--- a/test/org/traccar/protocol/HaicomProtocolDecoderTest.java
+++ b/test/org/traccar/protocol/HaicomProtocolDecoderTest.java
@@ -13,6 +13,9 @@ public class HaicomProtocolDecoderTest {
verify(decoder.decode(null, null,
"$GPRS123456789012345,602S19A,100915,063515,7240649312041079,0019,3156,111000,10004,0000,11111,00LH#V037"));
+
+ verify(decoder.decode(null, null,
+ "$GPRS123456789012345,T100001,141112,090751,7240649312041079,0002,1530,000001,,,1,00#V039*"));
}