diff options
Diffstat (limited to 'src/main/java/org/traccar/protocol')
3 files changed, 11 insertions, 2 deletions
diff --git a/src/main/java/org/traccar/protocol/AutoTrackProtocolDecoder.java b/src/main/java/org/traccar/protocol/AutoTrackProtocolDecoder.java index c072e55d0..938d170e6 100644 --- a/src/main/java/org/traccar/protocol/AutoTrackProtocolDecoder.java +++ b/src/main/java/org/traccar/protocol/AutoTrackProtocolDecoder.java @@ -101,10 +101,11 @@ public class AutoTrackProtocolDecoder extends BaseProtocolDecoder { int type = buf.readUnsignedByte(); buf.readUnsignedShortLE(); // length + DeviceSession deviceSession; switch (type) { case MSG_LOGIN_REQUEST: String imei = ByteBufUtil.hexDump(buf.readSlice(8)); - DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, imei); + deviceSession = getDeviceSession(channel, remoteAddress, imei); if (deviceSession == null) { return null; } diff --git a/src/main/java/org/traccar/protocol/HuabaoProtocolDecoder.java b/src/main/java/org/traccar/protocol/HuabaoProtocolDecoder.java index 0a8540543..2186fb91f 100644 --- a/src/main/java/org/traccar/protocol/HuabaoProtocolDecoder.java +++ b/src/main/java/org/traccar/protocol/HuabaoProtocolDecoder.java @@ -678,7 +678,8 @@ public class HuabaoProtocolDecoder extends BaseProtocolDecoder { buf.readUnsignedShort(), buf.readUnsignedInt())); position.setNetwork(network); break; - case 0xE1: + case 0x00A8: + case 0x00E1: position.set(Position.KEY_BATTERY_LEVEL, buf.readUnsignedByte()); break; default: diff --git a/src/main/java/org/traccar/protocol/Minifinder2ProtocolDecoder.java b/src/main/java/org/traccar/protocol/Minifinder2ProtocolDecoder.java index 64373e344..2d6bde89f 100644 --- a/src/main/java/org/traccar/protocol/Minifinder2ProtocolDecoder.java +++ b/src/main/java/org/traccar/protocol/Minifinder2ProtocolDecoder.java @@ -295,6 +295,13 @@ public class Minifinder2ProtocolDecoder extends BaseProtocolDecoder { position.set(Position.KEY_HEART_RATE, heartRate); } break; + case 0x41: + buf.readUnsignedIntLE(); // timestamp + int spO2 = buf.readUnsignedByte(); + if (spO2 > 1) { + position.set("spO2", spO2); + } + break; default: break; } |