aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/org/traccar/protocol/Tk103Protocol.java17
-rw-r--r--src/org/traccar/protocol/Tk103ProtocolEncoder.java34
2 files changed, 50 insertions, 1 deletions
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;