aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/org/traccar/protocol/T55ProtocolDecoder.java10
-rw-r--r--test/org/traccar/protocol/T55ProtocolDecoderTest.java8
2 files changed, 18 insertions, 0 deletions
diff --git a/src/org/traccar/protocol/T55ProtocolDecoder.java b/src/org/traccar/protocol/T55ProtocolDecoder.java
index 0cd7ca1b7..72cb32816 100644
--- a/src/org/traccar/protocol/T55ProtocolDecoder.java
+++ b/src/org/traccar/protocol/T55ProtocolDecoder.java
@@ -107,6 +107,16 @@ public class T55ProtocolDecoder extends BaseProtocolDecoder {
Log.warning("Unknown device - " + id);
}
}
+
+ // Identification
+ else if (sentence.startsWith("IMEI")) {
+ String id = sentence.substring(5, sentence.length());
+ try {
+ deviceId = getDataManager().getDeviceByImei(id).getId();
+ } catch(Exception error) {
+ Log.warning("Unknown device - " + id);
+ }
+ }
// Identification
else if (Character.isDigit(sentence.charAt(0)) & sentence.length() == 15) {
diff --git a/test/org/traccar/protocol/T55ProtocolDecoderTest.java b/test/org/traccar/protocol/T55ProtocolDecoderTest.java
index 88e145cae..283a9c88e 100644
--- a/test/org/traccar/protocol/T55ProtocolDecoderTest.java
+++ b/test/org/traccar/protocol/T55ProtocolDecoderTest.java
@@ -16,6 +16,8 @@ public class T55ProtocolDecoderTest {
assertNull(decoder.decode(null, null, "$PGID,359853000144328*0F"));
assertNull(decoder.decode(null, null, "$PCPTI,CradlePoint Test,184453,184453.0,6F*57"));
+
+ assertNull(decoder.decode(null, null, "IMEI 351467108700000"));
verify(decoder.decode(null, null,
"$GPRMC,094907.000,A,6000.5332,N,03020.5192,E,1.17,60.26,091111,,*33"));
@@ -40,6 +42,12 @@ public class T55ProtocolDecoderTest {
verify(decoder.decode(null, null,
"$TRCCR,20140111000000.000,A,60.000000,60.000000,0.00,0.00,0.00,50,*3a"));
+
+ verify(decoder.decode(null, null,
+ "$GPRMC,125735.000,A,6010.34349,N,02445.72838,E,1.0,101.7,050509,6.9,W,A*1F"));
+
+ verify(decoder.decode(null, null,
+ "$GPGGA,000000.000,6010.34349,N,02445.72838,E,1,05,1.7,0.9,M,35.1,M,,*59"));
}