aboutsummaryrefslogtreecommitdiff
path: root/src/org/traccar/protocol
diff options
context:
space:
mode:
authorAnton Tananaev <anton.tananaev@gmail.com>2015-07-09 13:51:51 +1200
committerAnton Tananaev <anton.tananaev@gmail.com>2015-07-09 13:51:51 +1200
commitfde6001ce081dad7976a96246b8eca50ed62fa22 (patch)
tree6cca84ec8c56ead4f646716002f8937b2dbaf230 /src/org/traccar/protocol
parent58c407feec28c66062b21d7a93fb8b491a255ca4 (diff)
downloadtrackermap-server-fde6001ce081dad7976a96246b8eca50ed62fa22.tar.gz
trackermap-server-fde6001ce081dad7976a96246b8eca50ed62fa22.tar.bz2
trackermap-server-fde6001ce081dad7976a96246b8eca50ed62fa22.zip
Extend EV603 protocol support
Diffstat (limited to 'src/org/traccar/protocol')
-rw-r--r--src/org/traccar/protocol/Ev603ProtocolDecoder.java15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/org/traccar/protocol/Ev603ProtocolDecoder.java b/src/org/traccar/protocol/Ev603ProtocolDecoder.java
index 36a08f394..8686088cb 100644
--- a/src/org/traccar/protocol/Ev603ProtocolDecoder.java
+++ b/src/org/traccar/protocol/Ev603ProtocolDecoder.java
@@ -34,13 +34,13 @@ public class Ev603ProtocolDecoder extends BaseProtocolDecoder{
}
private static final Pattern pattern = Pattern.compile(
- "!A," + // Type
+ "!.," + // Type
"(\\d{2})\\/(\\d{2})\\/(\\d{2})," + // Date dd/mm/YY
"(\\d{2}):(\\d{2}):(\\d{2})," + // Time hh:mm:ss
- "(-?\\d+\\.\\d+)," + // Latitude (DDMM.MMMM)
- "(-?\\d+\\.\\d+)," + // Longitude (DDDMM.MMMM)
- "(\\d+\\.\\d+)," + // Speed
- "(\\d+\\.?\\d+)," + // Course
+ "(-?\\d+\\.\\d+)," + // Latitude
+ "(-?\\d+\\.\\d+)," + // Longitude
+ "(\\d+\\.?\\d*)," + // Speed
+ "(\\d+\\.?\\d*)," + // Course
".*");
@Override
@@ -52,10 +52,11 @@ public class Ev603ProtocolDecoder extends BaseProtocolDecoder{
// Detect device ID
if (sentence.startsWith("!1,")) {
+
identify(sentence.substring(3), channel);
- }
- else if (sentence.startsWith("!A,")) {
+ } else {
+
// Parse message
Matcher parser = pattern.matcher(sentence);
if (!hasDeviceId() || !parser.matches()) {