aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnton Tananaev <anton@traccar.org>2023-08-21 21:09:46 -0700
committerAnton Tananaev <anton@traccar.org>2023-08-21 21:09:46 -0700
commitcadcd2676adbc1974265acb9ec6d43fc06932824 (patch)
treef8e2e4c7d6f3c8460c7e1a0d5a57e1c841496fd2
parent9df5d93ba0482b628d05b10c29100144beed5b5d (diff)
downloadtrackermap-server-cadcd2676adbc1974265acb9ec6d43fc06932824.tar.gz
trackermap-server-cadcd2676adbc1974265acb9ec6d43fc06932824.tar.bz2
trackermap-server-cadcd2676adbc1974265acb9ec6d43fc06932824.zip
Atelematics battery level
-rw-r--r--src/main/java/org/traccar/protocol/KhdProtocolDecoder.java3
-rw-r--r--src/test/java/org/traccar/protocol/KhdProtocolDecoderTest.java5
2 files changed, 8 insertions, 0 deletions
diff --git a/src/main/java/org/traccar/protocol/KhdProtocolDecoder.java b/src/main/java/org/traccar/protocol/KhdProtocolDecoder.java
index d7c236c4f..dd2e1dbfd 100644
--- a/src/main/java/org/traccar/protocol/KhdProtocolDecoder.java
+++ b/src/main/java/org/traccar/protocol/KhdProtocolDecoder.java
@@ -205,6 +205,9 @@ public class KhdProtocolDecoder extends BaseProtocolDecoder {
}
}
break;
+ case 0x20:
+ position.set(Position.KEY_BATTERY_LEVEL, buf.readUnsignedByte());
+ break;
case 0x23:
Network network = new Network();
int count = buf.readUnsignedByte();
diff --git a/src/test/java/org/traccar/protocol/KhdProtocolDecoderTest.java b/src/test/java/org/traccar/protocol/KhdProtocolDecoderTest.java
index b7e868077..7cc65002b 100644
--- a/src/test/java/org/traccar/protocol/KhdProtocolDecoderTest.java
+++ b/src/test/java/org/traccar/protocol/KhdProtocolDecoderTest.java
@@ -2,6 +2,7 @@ package org.traccar.protocol;
import org.junit.jupiter.api.Test;
import org.traccar.ProtocolTest;
+import org.traccar.model.Position;
public class KhdProtocolDecoderTest extends ProtocolTest {
@@ -10,6 +11,10 @@ public class KhdProtocolDecoderTest extends ProtocolTest {
var decoder = inject(new KhdProtocolDecoder(null));
+ verifyAttribute(decoder, binary(
+ "2929a3003e1680ba0a2304180759500000000000000000000000007b00000080001914000000000000000000162001641b0b0000249002bc58030001cc46020000e70d"),
+ Position.KEY_BATTERY_LEVEL, 100);
+
verifyPosition(decoder, binary(
"2929800028258b8c10210731035840031534240542120200000337fb000000ffff5a00000a0000000005005d0d"));