aboutsummaryrefslogtreecommitdiff
path: root/src/org/traccar/protocol/MeiligaoProtocolEncoder.java
diff options
context:
space:
mode:
authorAnton Tananaev <anton.tananaev@gmail.com>2018-05-14 06:27:55 +1200
committerAnton Tananaev <anton.tananaev@gmail.com>2018-05-14 06:27:55 +1200
commit849cfa52a907666241b58d988c9a3b324ac67ba0 (patch)
tree5db0d121a75f37d39e05f964d48a3ea9202ff04e /src/org/traccar/protocol/MeiligaoProtocolEncoder.java
parent662b774234298c38a38c172d1dcb4668996045ac (diff)
downloadtrackermap-server-849cfa52a907666241b58d988c9a3b324ac67ba0.tar.gz
trackermap-server-849cfa52a907666241b58d988c9a3b324ac67ba0.tar.bz2
trackermap-server-849cfa52a907666241b58d988c9a3b324ac67ba0.zip
Implement Meiligao photo capturing
Diffstat (limited to 'src/org/traccar/protocol/MeiligaoProtocolEncoder.java')
-rw-r--r--src/org/traccar/protocol/MeiligaoProtocolEncoder.java25
1 files changed, 10 insertions, 15 deletions
diff --git a/src/org/traccar/protocol/MeiligaoProtocolEncoder.java b/src/org/traccar/protocol/MeiligaoProtocolEncoder.java
index 340d947e3..1b444e90a 100644
--- a/src/org/traccar/protocol/MeiligaoProtocolEncoder.java
+++ b/src/org/traccar/protocol/MeiligaoProtocolEncoder.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2015 - 2017 Anton Tananaev (anton@traccar.org)
+ * Copyright 2015 - 2018 Anton Tananaev (anton@traccar.org)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -28,13 +28,6 @@ import java.util.TimeZone;
public class MeiligaoProtocolEncoder extends BaseProtocolEncoder {
- public static final int MSG_TRACK_ON_DEMAND = 0x4101;
- public static final int MSG_TRACK_BY_INTERVAL = 0x4102;
- public static final int MSG_MOVEMENT_ALARM = 0x4106;
- public static final int MSG_OUTPUT_CONTROL = 0x4115;
- public static final int MSG_TIME_ZONE = 0x4132;
- public static final int MSG_REBOOT_GPS = 0x4902;
-
private ChannelBuffer encodeContent(long deviceId, int type, ChannelBuffer content) {
ChannelBuffer buf = ChannelBuffers.dynamicBuffer();
@@ -65,25 +58,27 @@ public class MeiligaoProtocolEncoder extends BaseProtocolEncoder {
switch (command.getType()) {
case Command.TYPE_POSITION_SINGLE:
- return encodeContent(command.getDeviceId(), MSG_TRACK_ON_DEMAND, content);
+ return encodeContent(command.getDeviceId(), MeiligaoProtocolDecoder.MSG_TRACK_ON_DEMAND, content);
case Command.TYPE_POSITION_PERIODIC:
content.writeShort(command.getInteger(Command.KEY_FREQUENCY) / 10);
- return encodeContent(command.getDeviceId(), MSG_TRACK_BY_INTERVAL, content);
+ return encodeContent(command.getDeviceId(), MeiligaoProtocolDecoder.MSG_TRACK_BY_INTERVAL, content);
case Command.TYPE_ENGINE_STOP:
content.writeByte(0x01);
- return encodeContent(command.getDeviceId(), MSG_OUTPUT_CONTROL, content);
+ return encodeContent(command.getDeviceId(), MeiligaoProtocolDecoder.MSG_OUTPUT_CONTROL, content);
case Command.TYPE_ENGINE_RESUME:
content.writeByte(0x00);
- return encodeContent(command.getDeviceId(), MSG_OUTPUT_CONTROL, content);
+ return encodeContent(command.getDeviceId(), MeiligaoProtocolDecoder.MSG_OUTPUT_CONTROL, content);
case Command.TYPE_ALARM_GEOFENCE:
content.writeShort(command.getInteger(Command.KEY_RADIUS));
- return encodeContent(command.getDeviceId(), MSG_MOVEMENT_ALARM, content);
+ return encodeContent(command.getDeviceId(), MeiligaoProtocolDecoder.MSG_MOVEMENT_ALARM, content);
case Command.TYPE_SET_TIMEZONE:
int offset = TimeZone.getTimeZone(command.getString(Command.KEY_TIMEZONE)).getRawOffset() / 60000;
content.writeBytes(String.valueOf(offset).getBytes(StandardCharsets.US_ASCII));
- return encodeContent(command.getDeviceId(), MSG_TIME_ZONE, content);
+ return encodeContent(command.getDeviceId(), MeiligaoProtocolDecoder.MSG_TIME_ZONE, content);
+ case Command.TYPE_REQUEST_PHOTO:
+ return encodeContent(command.getDeviceId(), MeiligaoProtocolDecoder.MSG_TAKE_PHOTO, content);
case Command.TYPE_REBOOT_DEVICE:
- return encodeContent(command.getDeviceId(), MSG_REBOOT_GPS, content);
+ return encodeContent(command.getDeviceId(), MeiligaoProtocolDecoder.MSG_REBOOT_GPS, content);
default:
Log.warning(new UnsupportedOperationException(command.getType()));
break;