From a9fbc36ba173573aabd581e7a14f32ce0af69cb6 Mon Sep 17 00:00:00 2001 From: Anton Tananaev Date: Wed, 24 Jul 2013 19:00:01 +1200 Subject: Improve Xexun2 decoder --- src/org/traccar/protocol/Xexun2ProtocolDecoder.java | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) (limited to 'src/org/traccar/protocol') diff --git a/src/org/traccar/protocol/Xexun2ProtocolDecoder.java b/src/org/traccar/protocol/Xexun2ProtocolDecoder.java index 900315d20..098647499 100644 --- a/src/org/traccar/protocol/Xexun2ProtocolDecoder.java +++ b/src/org/traccar/protocol/Xexun2ProtocolDecoder.java @@ -38,22 +38,22 @@ public class Xexun2ProtocolDecoder extends BaseProtocolDecoder { "(\\d+)," + // Serial "(\\+?\\d+)," + // Number "GPRMC," + - "(\\d{2})(\\d{2})(\\d{2})\\.(\\d{3})," + // Time (HHMMSS.SSS) + "(\\d{2})(\\d{2})(\\d{2})\\.(\\d+)," + // Time (HHMMSS.SSS) "([AV])," + // Validity - "(\\d{2})(\\d{2}\\.\\d{4})," + // Latitude (DDMM.MMMM) + "(\\d{2})(\\d{2}\\.\\d+)," + // Latitude (DDMM.MMMM) "([NS])," + - "(\\d{3})(\\d{2}\\.\\d{4})," + // Longitude (DDDMM.MMMM) + "(\\d{3})(\\d{2}\\.\\d+)," + // Longitude (DDDMM.MMMM) "([EW])," + "(\\d+\\.\\d+)," + // Speed "(\\d+\\.\\d+)?," + // Course "(\\d{2})(\\d{2})(\\d{2})," + // Date (DDMMYY) - ",,.\\*..," + // Checksum + "[^,]*,[^,]*,.\\*..," + // Checksum "([FL])," + // Signal - "(.*)," + // Alarm + "(?:([^,]*),)?" + // Alarm ".*imei:" + "(\\d+)," + // IMEI "(\\d+)," + // Satellites - "(-?\\d+\\.\\d+)," + // Altitude + "(-?\\d+\\.\\d+)?," + // Altitude "[FL]:(\\d+\\.\\d+)V," + // Power ".*" + "[\r\n]*"); @@ -141,7 +141,12 @@ public class Xexun2ProtocolDecoder extends BaseProtocolDecoder { extendedInfo.set("satellites", parser.group(index++).replaceFirst ("^0*(?![\\.$])", "")); // Altitude - position.setAltitude(Double.valueOf(parser.group(index++))); + String altitude = parser.group(index++); + if (altitude != null) { + position.setAltitude(Double.valueOf(altitude)); + } else { + position.setAltitude(0.0); + } // Power position.setPower(Double.valueOf(parser.group(index++))); -- cgit v1.2.3