aboutsummaryrefslogtreecommitdiff
path: root/src/org/traccar/smpp/ClientSmppSessionHandler.java
diff options
context:
space:
mode:
authorAnton Tananaev <anton.tananaev@gmail.com>2018-11-02 16:05:31 +1300
committerAnton Tananaev <anton.tananaev@gmail.com>2018-11-02 16:05:31 +1300
commitfb5e953f90f0bf48593feb88138a5ee1706b6989 (patch)
treec90ca8228c5436fe6f462d8cc5730df4d0388e16 /src/org/traccar/smpp/ClientSmppSessionHandler.java
parentf6fa77c3e2e63dbfa14884ee8fe448c467c9f592 (diff)
downloadtrackermap-server-fb5e953f90f0bf48593feb88138a5ee1706b6989.tar.gz
trackermap-server-fb5e953f90f0bf48593feb88138a5ee1706b6989.tar.bz2
trackermap-server-fb5e953f90f0bf48593feb88138a5ee1706b6989.zip
Implement universal HTTP SMS manager
Diffstat (limited to 'src/org/traccar/smpp/ClientSmppSessionHandler.java')
-rw-r--r--src/org/traccar/smpp/ClientSmppSessionHandler.java82
1 files changed, 0 insertions, 82 deletions
diff --git a/src/org/traccar/smpp/ClientSmppSessionHandler.java b/src/org/traccar/smpp/ClientSmppSessionHandler.java
deleted file mode 100644
index 4c5522c14..000000000
--- a/src/org/traccar/smpp/ClientSmppSessionHandler.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * Copyright 2017 Anton Tananaev (anton@traccar.org)
- * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org)
- *
- * 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.smpp;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.traccar.events.TextMessageEventHandler;
-
-import com.cloudhopper.commons.charset.CharsetUtil;
-import com.cloudhopper.smpp.SmppConstants;
-import com.cloudhopper.smpp.impl.DefaultSmppSessionHandler;
-import com.cloudhopper.smpp.pdu.DeliverSm;
-import com.cloudhopper.smpp.pdu.PduRequest;
-import com.cloudhopper.smpp.pdu.PduResponse;
-import com.cloudhopper.smpp.util.SmppUtil;
-
-public class ClientSmppSessionHandler extends DefaultSmppSessionHandler {
-
- private static final Logger LOGGER = LoggerFactory.getLogger(ClientSmppSessionHandler.class);
-
- private SmppClient smppClient;
-
- public ClientSmppSessionHandler(SmppClient smppClient) {
- this.smppClient = smppClient;
- }
-
- @Override
- public void firePduRequestExpired(PduRequest pduRequest) {
- LOGGER.warn("PDU request expired: " + pduRequest);
- }
-
- @Override
- public PduResponse firePduRequestReceived(PduRequest request) {
- PduResponse response;
- try {
- if (request instanceof DeliverSm) {
- String sourceAddress = ((DeliverSm) request).getSourceAddress().getAddress();
- String message = CharsetUtil.decode(((DeliverSm) request).getShortMessage(),
- smppClient.mapDataCodingToCharset(((DeliverSm) request).getDataCoding()));
- LOGGER.info("SMS Message Received: " + message.trim() + ", Source Address: " + sourceAddress);
-
- boolean isDeliveryReceipt;
- if (smppClient.getDetectDlrByOpts()) {
- isDeliveryReceipt = request.getOptionalParameters() != null;
- } else {
- isDeliveryReceipt = SmppUtil.isMessageTypeAnyDeliveryReceipt(((DeliverSm) request).getEsmClass());
- }
-
- if (!isDeliveryReceipt) {
- TextMessageEventHandler.handleTextMessage(sourceAddress, message);
- }
- }
- response = request.createResponse();
- } catch (Exception error) {
- LOGGER.warn("SMS receiving error", error);
- response = request.createResponse();
- response.setResultMessage(error.getMessage());
- response.setCommandStatus(SmppConstants.STATUS_UNKNOWNERR);
- }
- return response;
- }
-
- @Override
- public void fireChannelUnexpectedlyClosed() {
- LOGGER.warn("SMPP session channel unexpectedly closed");
- smppClient.scheduleReconnect();
- }
-}