diff options
author | Anton Tananaev <anton@traccar.org> | 2022-11-03 20:29:36 -0700 |
---|---|---|
committer | Anton Tananaev <anton@traccar.org> | 2022-11-03 20:29:36 -0700 |
commit | 9c03a0505f46a92f645dc927dba2da6458facfb1 (patch) | |
tree | abd2af42f986c5c47cbebdecb5259f4f7b663fba /src/main/java/org | |
parent | 9280355123ee13f7f7d8bf7076a39dcab57ab1cd (diff) | |
download | trackermap-server-9c03a0505f46a92f645dc927dba2da6458facfb1.tar.gz trackermap-server-9c03a0505f46a92f645dc927dba2da6458facfb1.tar.bz2 trackermap-server-9c03a0505f46a92f645dc927dba2da6458facfb1.zip |
Reuse checksum code
Diffstat (limited to 'src/main/java/org')
-rw-r--r-- | src/main/java/org/traccar/protocol/MeitrackProtocolDecoder.java | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/src/main/java/org/traccar/protocol/MeitrackProtocolDecoder.java b/src/main/java/org/traccar/protocol/MeitrackProtocolDecoder.java index 8a58ebc5e..8e5269ec8 100644 --- a/src/main/java/org/traccar/protocol/MeitrackProtocolDecoder.java +++ b/src/main/java/org/traccar/protocol/MeitrackProtocolDecoder.java @@ -363,17 +363,13 @@ public class MeitrackProtocolDecoder extends BaseProtocolDecoder { positions.add(position); } - if (channel != null) { + if (channel == null) { StringBuilder command = new StringBuilder("@@"); command.append(flag).append(27 + positions.size() / 10).append(","); command.append(imei).append(",CCC,").append(positions.size()).append("*"); - int checksum = 0; - for (int i = 0; i < command.length(); i += 1) { - checksum += command.charAt(i); - } - command.append(String.format("%02x", checksum & 0xff).toUpperCase()); + command.append(Checksum.sum(command.toString())); command.append("\r\n"); - channel.writeAndFlush(new NetworkMessage(command.toString(), remoteAddress)); // delete processed data + channel.writeAndFlush(new NetworkMessage(command.toString(), remoteAddress)); } return positions; |