diff options
author | Anton Tananaev <anton.tananaev@gmail.com> | 2017-03-25 20:27:43 +1300 |
---|---|---|
committer | Anton Tananaev <anton.tananaev@gmail.com> | 2017-03-25 20:27:43 +1300 |
commit | 511a7adb8bb39d1523b2f366c2288b2d0cb8b9a9 (patch) | |
tree | 4dec908eabbee8c5dc6ad50562b96f37ed10282b /src/org/traccar | |
parent | f940d94548f45de9ece8195028abf4bafb979135 (diff) | |
download | traccar-server-511a7adb8bb39d1523b2f366c2288b2d0cb8b9a9.tar.gz traccar-server-511a7adb8bb39d1523b2f366c2288b2d0cb8b9a9.tar.bz2 traccar-server-511a7adb8bb39d1523b2f366c2288b2d0cb8b9a9.zip |
Adjustments to Telic decoder
Diffstat (limited to 'src/org/traccar')
-rw-r--r-- | src/org/traccar/protocol/TelicProtocolDecoder.java | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/org/traccar/protocol/TelicProtocolDecoder.java b/src/org/traccar/protocol/TelicProtocolDecoder.java index f6be15cce..bbd4b0574 100644 --- a/src/org/traccar/protocol/TelicProtocolDecoder.java +++ b/src/org/traccar/protocol/TelicProtocolDecoder.java @@ -50,11 +50,11 @@ public class TelicProtocolDecoder extends BaseProtocolDecoder { .number("(d),") // validity .number("(d+),") // speed .number("(d+),") // course - .number("(d+),") // satellites + .number("(d+)?,") // satellites .expression("(?:[^,]*,){7}") .number("(d+),") // battery .expression("[^,]*,") - .number("(d+),") // external + .number("(d+)") // external .any() .compile(); @@ -125,9 +125,12 @@ public class TelicProtocolDecoder extends BaseProtocolDecoder { position.setSpeed(UnitsConverter.knotsFromKph(parser.nextDouble())); position.setCourse(parser.nextDouble()); - position.set(Position.KEY_SATELLITES, parser.next()); - position.set(Position.KEY_BATTERY, 3.4 + parser.nextInt() * 0.00345); - position.set(Position.KEY_POWER, 6.0 + parser.nextInt() * 0.125); + if (parser.hasNext()) { + position.set(Position.KEY_SATELLITES, parser.nextInt()); + } + + position.set(Position.KEY_BATTERY, parser.nextInt()); + position.set(Position.KEY_POWER, parser.nextInt()); return position; } |