aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIrving Gonzalez <ialexis93@gmail.com>2015-07-27 20:13:17 -0600
committerIrving Gonzalez <ialexis93@gmail.com>2015-07-27 20:13:17 -0600
commit526ec985c8d48d588511bddff22eaee53f4bdfc1 (patch)
treee85a56a7171d8dc6ab94f5cc31fa1d3437d51fd8
parenta1b042162c4dd6f3adb1e505dd85e9854a5913f9 (diff)
downloadtraccar-server-526ec985c8d48d588511bddff22eaee53f4bdfc1.tar.gz
traccar-server-526ec985c8d48d588511bddff22eaee53f4bdfc1.tar.bz2
traccar-server-526ec985c8d48d588511bddff22eaee53f4bdfc1.zip
Implement Totem commands support
-rw-r--r--src/org/traccar/model/Command.java3
-rw-r--r--src/org/traccar/protocol/TotemProtocol.java4
-rw-r--r--src/org/traccar/protocol/TotemProtocolEncoder.java37
3 files changed, 43 insertions, 1 deletions
diff --git a/src/org/traccar/model/Command.java b/src/org/traccar/model/Command.java
index f7702dbd0..90e4ba767 100644
--- a/src/org/traccar/model/Command.java
+++ b/src/org/traccar/model/Command.java
@@ -26,7 +26,8 @@ public class Command implements Factory {
public static final String TYPE_POSITION_FIX = "positionFix";
public static final String TYPE_ENGINE_STOP = "engineStop";
public static final String TYPE_ENGINE_RESUME = "engineResume";
-
+ public static final String TYPE_IMEI = "imei";
+
public static final String KEY_UNIQUE_ID = "uniqueId";
public static final String KEY_FREQUENCY = "frequency";
diff --git a/src/org/traccar/protocol/TotemProtocol.java b/src/org/traccar/protocol/TotemProtocol.java
index cbc35a664..1c0d21380 100644
--- a/src/org/traccar/protocol/TotemProtocol.java
+++ b/src/org/traccar/protocol/TotemProtocol.java
@@ -22,11 +22,14 @@ import org.traccar.BaseProtocol;
import org.traccar.TrackerServer;
import java.util.List;
+import org.traccar.model.Command;
public class TotemProtocol extends BaseProtocol {
public TotemProtocol() {
super("totem");
+ setSupportedCommands(
+ Command.TYPE_IMEI);
}
@Override
@@ -37,6 +40,7 @@ public class TotemProtocol extends BaseProtocol {
pipeline.addLast("frameDecoder", new TotemFrameDecoder());
pipeline.addLast("stringDecoder", new StringDecoder());
pipeline.addLast("objectDecoder", new TotemProtocolDecoder(TotemProtocol.this));
+ pipeline.addLast("objectEncoder", new TotemProtocolEncoder());
}
});
}
diff --git a/src/org/traccar/protocol/TotemProtocolEncoder.java b/src/org/traccar/protocol/TotemProtocolEncoder.java
new file mode 100644
index 000000000..02dabc5fb
--- /dev/null
+++ b/src/org/traccar/protocol/TotemProtocolEncoder.java
@@ -0,0 +1,37 @@
+/*
+ * Copyright 2015 alexis.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.traccar.protocol;
+
+import org.traccar.StringProtocolEncoder;
+import org.traccar.model.Command;
+
+/**
+ *
+ * @author Irving Gonzalez [ialexis93@gmail.com]
+ */
+public class TotemProtocolEncoder extends StringProtocolEncoder{
+
+ @Override
+ protected Object encodeCommand(Command command) {
+
+ switch (command.getType()) {
+ case Command.TYPE_IMEI:
+ return "*000000,801#";
+ }
+
+ return null;
+ }
+}