diff options
author | Anton Tananaev <anton.tananaev@gmail.com> | 2020-12-09 20:03:20 -0800 |
---|---|---|
committer | Anton Tananaev <anton.tananaev@gmail.com> | 2020-12-09 20:03:20 -0800 |
commit | 8e41d3c5eb9d7bfe288ef950b4ac3e4c33c6f1e7 (patch) | |
tree | a5ca89c4a46e9a6bb8da7c8ae7abcc5386f3aa45 /src/main/java/org | |
parent | 207f6dbd254cef5f3b70f4725f1d5042d5726fd1 (diff) | |
download | traccar-server-8e41d3c5eb9d7bfe288ef950b4ac3e4c33c6f1e7.tar.gz traccar-server-8e41d3c5eb9d7bfe288ef950b4ac3e4c33c6f1e7.tar.bz2 traccar-server-8e41d3c5eb9d7bfe288ef950b4ac3e4c33c6f1e7.zip |
Fix decoding
Diffstat (limited to 'src/main/java/org')
-rw-r--r-- | src/main/java/org/traccar/protocol/MobilogixProtocolDecoder.java | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/main/java/org/traccar/protocol/MobilogixProtocolDecoder.java b/src/main/java/org/traccar/protocol/MobilogixProtocolDecoder.java index edce2d52f..8677ba9ec 100644 --- a/src/main/java/org/traccar/protocol/MobilogixProtocolDecoder.java +++ b/src/main/java/org/traccar/protocol/MobilogixProtocolDecoder.java @@ -45,10 +45,13 @@ public class MobilogixProtocolDecoder extends BaseProtocolDecoder { .expression("([^,]+),") // serial number .number("(xx),") // status .number("(d+.d+),") // battery + .number("(d)") // valid + .number("(d)") // rssi + .number("(d),") // satellites .number("(-?d+.d+),") // latitude .number("(-?d+.d+),") // longitude - .number("(d+.d+),") // speed - .number("(d+.d+)") // course + .number("(d+.?d*),") // speed + .number("(d+.?d*)") // course .any() .compile(); @@ -92,7 +95,11 @@ public class MobilogixProtocolDecoder extends BaseProtocolDecoder { position.set(Position.KEY_BATTERY, parser.nextDouble()); - position.setValid(true); + position.setValid(parser.nextInt() > 0); + + position.set(Position.KEY_RSSI, parser.nextInt()); + position.set(Position.KEY_SATELLITES, parser.nextInt()); + position.setLatitude(parser.nextDouble()); position.setLongitude(parser.nextDouble()); position.setSpeed(UnitsConverter.knotsFromKph(parser.nextDouble())); |