aboutsummaryrefslogtreecommitdiff
path: root/src/org/traccar/protocol
diff options
context:
space:
mode:
authorAnton Tananaev <anton.tananaev@gmail.com>2015-07-31 10:49:32 +1200
committerAnton Tananaev <anton.tananaev@gmail.com>2015-07-31 10:49:32 +1200
commitc354057c1e887e73159a4c28ce038c35370df5b6 (patch)
tree9b6736089235c6147c3b3cf16779753d265799a4 /src/org/traccar/protocol
parentaa7e7dfed63515350dd30cd14fb173b5a5fe52ac (diff)
downloadtrackermap-server-c354057c1e887e73159a4c28ce038c35370df5b6.tar.gz
trackermap-server-c354057c1e887e73159a4c28ce038c35370df5b6.tar.bz2
trackermap-server-c354057c1e887e73159a4c28ce038c35370df5b6.zip
Implement Box ACK response
Diffstat (limited to 'src/org/traccar/protocol')
-rw-r--r--src/org/traccar/protocol/BoxProtocol.java2
-rw-r--r--src/org/traccar/protocol/BoxProtocolDecoder.java10
2 files changed, 11 insertions, 1 deletions
diff --git a/src/org/traccar/protocol/BoxProtocol.java b/src/org/traccar/protocol/BoxProtocol.java
index 7e5f83ebe..ae8207002 100644
--- a/src/org/traccar/protocol/BoxProtocol.java
+++ b/src/org/traccar/protocol/BoxProtocol.java
@@ -18,6 +18,7 @@ package org.traccar.protocol;
import org.jboss.netty.bootstrap.ServerBootstrap;
import org.jboss.netty.channel.ChannelPipeline;
import org.jboss.netty.handler.codec.string.StringDecoder;
+import org.jboss.netty.handler.codec.string.StringEncoder;
import org.traccar.BaseProtocol;
import org.traccar.CharacterDelimiterFrameDecoder;
import org.traccar.TrackerServer;
@@ -37,6 +38,7 @@ public class BoxProtocol extends BaseProtocol {
protected void addSpecificHandlers(ChannelPipeline pipeline) {
pipeline.addLast("frameDecoder", new CharacterDelimiterFrameDecoder(1024, '\r'));
pipeline.addLast("stringDecoder", new StringDecoder());
+ pipeline.addLast("stringEncoder", new StringEncoder());
pipeline.addLast("objectDecoder", new BoxProtocolDecoder(BoxProtocol.this));
}
});
diff --git a/src/org/traccar/protocol/BoxProtocolDecoder.java b/src/org/traccar/protocol/BoxProtocolDecoder.java
index 2230b1356..7f915824d 100644
--- a/src/org/traccar/protocol/BoxProtocolDecoder.java
+++ b/src/org/traccar/protocol/BoxProtocolDecoder.java
@@ -61,8 +61,16 @@ public class BoxProtocolDecoder extends BaseProtocolDecoder {
String id = sentence.substring(index, sentence.indexOf(',', index));
identify(id, channel);
}
+
+ else if (sentence.startsWith("E,")) {
+
+ if (channel != null) {
+ channel.write("A," + sentence.substring(2) + "\r");
+ }
+
+ }
- else if (hasDeviceId() && sentence.startsWith("L,")) {
+ else if (sentence.startsWith("L,") && hasDeviceId()) {
// Parse message
Matcher parser = pattern.matcher(sentence);