aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/org/traccar/protocol/BoxProtocolDecoder.java15
-rw-r--r--test/org/traccar/protocol/BoxProtocolDecoderTest.java5
2 files changed, 12 insertions, 8 deletions
diff --git a/src/org/traccar/protocol/BoxProtocolDecoder.java b/src/org/traccar/protocol/BoxProtocolDecoder.java
index 9f3ce29b2..d7b401a2d 100644
--- a/src/org/traccar/protocol/BoxProtocolDecoder.java
+++ b/src/org/traccar/protocol/BoxProtocolDecoder.java
@@ -20,6 +20,7 @@ import org.traccar.BaseProtocolDecoder;
import org.traccar.DeviceSession;
import org.traccar.NetworkMessage;
import org.traccar.Protocol;
+import org.traccar.helper.BitUtil;
import org.traccar.helper.Parser;
import org.traccar.helper.PatternBuilder;
import org.traccar.helper.UnitsConverter;
@@ -84,16 +85,16 @@ public class BoxProtocolDecoder extends BaseProtocolDecoder {
position.setTime(parser.nextDateTime());
- position.setLatitude(parser.nextDouble(0));
- position.setLongitude(parser.nextDouble(0));
- position.setSpeed(UnitsConverter.knotsFromKph(parser.nextDouble(0)));
- position.setCourse(parser.nextDouble(0));
+ position.setLatitude(parser.nextDouble());
+ position.setLongitude(parser.nextDouble());
+ position.setSpeed(UnitsConverter.knotsFromKph(parser.nextDouble()));
+ position.setCourse(parser.nextDouble());
- position.set(Position.KEY_ODOMETER_TRIP, parser.nextDouble(0) * 1000);
+ position.set(Position.KEY_ODOMETER_TRIP, parser.nextDouble() * 1000);
position.set(Position.KEY_EVENT, parser.next());
- int status = parser.nextInt(0);
- position.setValid((status & 0x04) == 0);
+ int status = parser.nextInt();
+ position.setValid(!BitUtil.check(status, 2));
position.set(Position.KEY_STATUS, status);
return position;
diff --git a/test/org/traccar/protocol/BoxProtocolDecoderTest.java b/test/org/traccar/protocol/BoxProtocolDecoderTest.java
index f117d1ede..d661a10f2 100644
--- a/test/org/traccar/protocol/BoxProtocolDecoderTest.java
+++ b/test/org/traccar/protocol/BoxProtocolDecoderTest.java
@@ -10,7 +10,7 @@ public class BoxProtocolDecoderTest extends ProtocolTest {
public void testDecode() throws Exception {
BoxProtocolDecoder decoder = new BoxProtocolDecoder(null);
-
+
verifyNull(decoder, text(
"H,BT,358281002435893,081028142432,F5813D19,6D6E6DC2"));
@@ -18,6 +18,9 @@ public class BoxProtocolDecoderTest extends ProtocolTest {
"H,BT,N878123,080415081234,D63E6DD9,6D6E6DC2,8944100300825505377"));
verifyPosition(decoder, text(
+ "L,190227043304,G,25.68773,48.59788,71,53,261.42,1,23;A,0.03;D,0.06;I,0"));
+
+ verifyPosition(decoder, text(
"L,081028142429,G,52.51084,-1.70849,0,170,0,1,0"));
verifyPosition(decoder, text(