diff options
author | Anton Tananaev <anton@traccar.org> | 2023-10-05 16:10:18 +0800 |
---|---|---|
committer | Anton Tananaev <anton@traccar.org> | 2023-10-05 16:10:18 +0800 |
commit | fa2a61f6487c9ad8a338cdacf18f15be9c299cfd (patch) | |
tree | e7c30c35a2c5a1d6200d0a6506f2046d3843a3fe | |
parent | b569b3467d214d1cab8f38dfdf43679e5fd8c592 (diff) | |
download | trackermap-server-fa2a61f6487c9ad8a338cdacf18f15be9c299cfd.tar.gz trackermap-server-fa2a61f6487c9ad8a338cdacf18f15be9c299cfd.tar.bz2 trackermap-server-fa2a61f6487c9ad8a338cdacf18f15be9c299cfd.zip |
Fix Seeworld cell decoding
-rw-r--r-- | src/main/java/org/traccar/protocol/Gt06ProtocolDecoder.java | 4 | ||||
-rw-r--r-- | src/test/java/org/traccar/protocol/Gt06ProtocolDecoderTest.java | 4 |
2 files changed, 5 insertions, 3 deletions
diff --git a/src/main/java/org/traccar/protocol/Gt06ProtocolDecoder.java b/src/main/java/org/traccar/protocol/Gt06ProtocolDecoder.java index e9bdaf194..f676e7363 100644 --- a/src/main/java/org/traccar/protocol/Gt06ProtocolDecoder.java +++ b/src/main/java/org/traccar/protocol/Gt06ProtocolDecoder.java @@ -358,7 +358,7 @@ public class Gt06ProtocolDecoder extends BaseProtocolDecoder { long cid; if (type == MSG_LBS_ALARM || type == MSG_GPS_LBS_7) { cid = buf.readLong(); - } else if (type == MSG_GPS_LBS_6) { + } else if (type == MSG_GPS_LBS_6 || variant == Variant.SEEWORLD) { cid = buf.readUnsignedInt(); } else { cid = buf.readUnsignedMedium(); @@ -1485,6 +1485,8 @@ public class Gt06ProtocolDecoder extends BaseProtocolDecoder { variant = Variant.SL4X; } else if (header == 0x7878 && type == MSG_GPS_LBS_2 && length == 0x2f) { variant = Variant.SEEWORLD; + } else if (header == 0x7878 && type == MSG_GPS_LBS_STATUS_1 && length == 0x26) { + variant = Variant.SEEWORLD; } else { variant = Variant.STANDARD; } diff --git a/src/test/java/org/traccar/protocol/Gt06ProtocolDecoderTest.java b/src/test/java/org/traccar/protocol/Gt06ProtocolDecoderTest.java index a2ee4d1bc..d573957b3 100644 --- a/src/test/java/org/traccar/protocol/Gt06ProtocolDecoderTest.java +++ b/src/test/java/org/traccar/protocol/Gt06ProtocolDecoderTest.java @@ -18,8 +18,8 @@ public class Gt06ProtocolDecoderTest extends ProtocolTest { "78780D01086471700328358100093F040D0A")); verifyAttribute(decoder, binary( - "78782f22170a020b2737cf02c568a8089fc0dc125c4d01369a371b0a6967020000000007327a00000000001500260074544c0d0a"), - "humidity", 53.76); + "78782f221709130f3a32cc02c55f2a089f9afc005c2101360481fe066d9b03000000000025d4000000000020002d036049d70d0a"), + Position.PREFIX_TEMP + 1, 0.32); verifyAttribute(decoder, binary( "78785995ffff01170719152013df0163d45f041ee52018be002f00876900004556454e545f3836323739383035303137353131325f30303030303030305f323032335f30375f32355f31385f33325f30355f31342e6d70340119d15a0d0a"), |