diff options
author | Florian <florian@voit.li> | 2017-06-14 20:59:05 +0200 |
---|---|---|
committer | Florian <florian@voit.li> | 2017-06-15 10:04:56 +0200 |
commit | 36788f4eb8ef055c8409d744515de3ef4ef037c2 (patch) | |
tree | e16437d3e68e66c1689d9a6ed257e45a6f86671e | |
parent | e10e10fee9c96cbcd4e79d8616632654df2eed97 (diff) | |
download | trackermap-server-36788f4eb8ef055c8409d744515de3ef4ef037c2.tar.gz trackermap-server-36788f4eb8ef055c8409d744515de3ef4ef037c2.tar.bz2 trackermap-server-36788f4eb8ef055c8409d744515de3ef4ef037c2.zip |
Filter Invalid upgrade and Wondex fix
Filter invalid filters now impossible positions. And in Wondex protocol answers to messages are no longer marked as invalid and Sat over 2 check removed.
Wondex decoder test changed because of the removed Sat over 2 check
-rw-r--r-- | src/org/traccar/FilterHandler.java | 7 | ||||
-rw-r--r-- | src/org/traccar/protocol/WondexProtocolDecoder.java | 3 | ||||
-rw-r--r-- | test/org/traccar/protocol/WondexProtocolDecoderTest.java | 2 |
3 files changed, 8 insertions, 4 deletions
diff --git a/src/org/traccar/FilterHandler.java b/src/org/traccar/FilterHandler.java index 5e1214aba..da2562955 100644 --- a/src/org/traccar/FilterHandler.java +++ b/src/org/traccar/FilterHandler.java @@ -84,7 +84,12 @@ public class FilterHandler extends BaseDataHandler { } private boolean filterInvalid(Position position) { - return filterInvalid && !position.getValid(); + if (filterInvalid) { + return !position.getValid() || position.getLatitude() > 90 + || position.getLongitude() > 180 || position.getLatitude() < -90 + || position.getLongitude() < -180; + } + return false; } private boolean filterZero(Position position) { diff --git a/src/org/traccar/protocol/WondexProtocolDecoder.java b/src/org/traccar/protocol/WondexProtocolDecoder.java index 8249d2c68..b1e63e154 100644 --- a/src/org/traccar/protocol/WondexProtocolDecoder.java +++ b/src/org/traccar/protocol/WondexProtocolDecoder.java @@ -78,7 +78,6 @@ public class WondexProtocolDecoder extends BaseProtocolDecoder { position.setProtocol(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); getLastLocation(position, new Date()); - position.setValid(false); position.set(Position.KEY_RESULT, buf.toString(StandardCharsets.US_ASCII)); return position; @@ -107,7 +106,7 @@ public class WondexProtocolDecoder extends BaseProtocolDecoder { position.setAltitude(parser.nextDouble(0)); int satellites = parser.nextInt(0); - position.setValid(satellites >= 3); + position.setValid(true); position.set(Position.KEY_SATELLITES, satellites); position.set(Position.KEY_EVENT, parser.next()); diff --git a/test/org/traccar/protocol/WondexProtocolDecoderTest.java b/test/org/traccar/protocol/WondexProtocolDecoderTest.java index c68b41671..c7ccfb457 100644 --- a/test/org/traccar/protocol/WondexProtocolDecoderTest.java +++ b/test/org/traccar/protocol/WondexProtocolDecoderTest.java @@ -16,7 +16,7 @@ public class WondexProtocolDecoderTest extends ProtocolTest { verifyPosition(decoder, buffer( "2000000257,20151030145351,69.379976,53.283905,0,0,16,2,0,0,469.1,58.9,0.0"), - position("2015-10-30 14:53:51.000", false, 53.28390, 69.37998)); + position("2015-10-30 14:53:51.000", true, 53.28390, 69.37998)); verifyPosition(decoder, buffer( "2000000232,20151030145206,51.166900,43.651353,0,132,11,2,0,0,0.0,0.0,0.0")); |