From 3ac49cd8e224887e9a5f8b7a1787183fbdb0e73f Mon Sep 17 00:00:00 2001 From: Valerii Vyshniak Date: Sat, 18 Nov 2017 00:56:52 +0100 Subject: T580W: Commands --- src/org/traccar/protocol/Tk103Protocol.java | 17 ++++++++++- src/org/traccar/protocol/Tk103ProtocolEncoder.java | 34 ++++++++++++++++++++++ 2 files changed, 50 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/org/traccar/protocol/Tk103Protocol.java b/src/org/traccar/protocol/Tk103Protocol.java index 07a68e2d8..b205e75f1 100644 --- a/src/org/traccar/protocol/Tk103Protocol.java +++ b/src/org/traccar/protocol/Tk103Protocol.java @@ -40,7 +40,22 @@ public class Tk103Protocol extends BaseProtocol { Command.TYPE_REBOOT_DEVICE, Command.TYPE_SET_ODOMETER, Command.TYPE_ENGINE_STOP, - Command.TYPE_ENGINE_RESUME); + Command.TYPE_ENGINE_RESUME, + //T580W commands: + "T580W_positionSingle", + "T580W_positionRealtime", + "T580W_positionRealtimeStop", + "T580W_modeDeepSleepInterval1Hour", + "T580W_modeDeepSleepInterval2Hour", + "T580W_modeDeepSleepInterval3Hour", + "T580W_modeDeepSleepInterval4Hour", + "T580W_modeDeepSleepMotion", + "T580W_modeDeepSleepOff", + "T580W_alarmSosOn", + "T580W_alarmSosOff", + "T580W_multiControllerOn", + "T580W_multiControllerOff", + "T580W_rebootDevice"); } @Override diff --git a/src/org/traccar/protocol/Tk103ProtocolEncoder.java b/src/org/traccar/protocol/Tk103ProtocolEncoder.java index 9e49b6ff1..dc9fc41a1 100644 --- a/src/org/traccar/protocol/Tk103ProtocolEncoder.java +++ b/src/org/traccar/protocol/Tk103ProtocolEncoder.java @@ -22,6 +22,11 @@ import org.traccar.model.Command; public class Tk103ProtocolEncoder extends StringProtocolEncoder { + protected String t580WFormatCommand(Command command, String format, String... keys) { + String content = super.formatCommand(command, format, keys); + return String.format("[begin]sms2,%s,[end]", content); + } + @Override protected Object encodeCommand(Command command) { @@ -43,6 +48,35 @@ public class Tk103ProtocolEncoder extends StringProtocolEncoder { return formatCommand(command, "({%s}AV011)", Command.KEY_UNIQUE_ID); case Command.TYPE_ENGINE_RESUME: return formatCommand(command, "({%s}AV010)", Command.KEY_UNIQUE_ID); + //T580W commands: + case "T580W_positionSingle": + return t580WFormatCommand(command, "*getposl*"); + case "T580W_positionRealtime": + return t580WFormatCommand(command, "*routetrack*99*"); + case "T580W_positionRealtimeStop": + return t580WFormatCommand(command, "*routetrackoff*"); + case "T580W_modeDeepSleepInterval1Hour": + return t580WFormatCommand(command, "*sleep*1*"); + case "T580W_modeDeepSleepInterval2Hour": + return t580WFormatCommand(command, "*sleep*2*"); + case "T580W_modeDeepSleepInterval3Hour": + return t580WFormatCommand(command, "*sleep*3*"); + case "T580W_modeDeepSleepInterval4Hour": + return t580WFormatCommand(command, "*sleep*4*"); + case "T580W_modeDeepSleepMotion": + return t580WFormatCommand(command, "*sleepv*"); + case "T580W_modeDeepSleepOff": + return t580WFormatCommand(command, "*sleepoff*"); + case "T580W_alarmSosOn": + return t580WFormatCommand(command, "*soson*"); + case "T580W_alarmSosOff": + return t580WFormatCommand(command, "*sosoff*"); + case "T580W_multiControllerOn": + return t580WFormatCommand(command, "*multiquery*"); + case "T580W_multiControllerOff": + return t580WFormatCommand(command, "*multiqueryoff*"); + case "T580W_rebootDevice": + return t580WFormatCommand(command, "88888888"); default: Log.warning(new UnsupportedOperationException(command.getType())); break; -- cgit v1.2.3