From b97a5a7764710cfa6744715555b6a3395ec3bf58 Mon Sep 17 00:00:00 2001 From: Gábor Somogyi Date: Sat, 23 Apr 2016 17:33:23 +0200 Subject: H02 engine start/stop and periodic update commands --- src/org/traccar/protocol/H02ProtocolEncoder.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src/org') diff --git a/src/org/traccar/protocol/H02ProtocolEncoder.java b/src/org/traccar/protocol/H02ProtocolEncoder.java index 0b41b9c93..ba362f88e 100644 --- a/src/org/traccar/protocol/H02ProtocolEncoder.java +++ b/src/org/traccar/protocol/H02ProtocolEncoder.java @@ -22,11 +22,13 @@ import org.traccar.helper.Log; import org.traccar.model.Command; public class H02ProtocolEncoder extends StringProtocolEncoder { + private static final String MARKER = "HQ"; private Object formatCommand(DateTime dt, String uniqueId, String cmd, String... params) { String result = String.format( - "*HQ,%s,%s,%02d%02d%02d", + "*%s,%s,%s,%02d%02d%02d", + MARKER, uniqueId, cmd, dt.getHourOfDay(), @@ -51,6 +53,12 @@ public class H02ProtocolEncoder extends StringProtocolEncoder { return formatCommand(dt, uniqueId, "SCF", "0", "0"); case Command.TYPE_ALARM_DISARM: return formatCommand(dt, uniqueId, "SCF", "1", "1"); + case Command.TYPE_ENGINE_STOP: + return formatCommand(dt, uniqueId, "S20", "1", "3", "10", "3", "5", "5", "3", "5", "3", "5", "3", "5"); + case Command.TYPE_ENGINE_RESUME: + return formatCommand(dt, uniqueId, "S20", "0", "0"); + case Command.TYPE_POSITION_PERIODIC: + return formatCommand(dt, uniqueId, "S71", "22", command.getAttributes().get(Command.KEY_FREQUENCY).toString()); default: Log.warning(new UnsupportedOperationException(command.getType())); break; -- cgit v1.2.3