SMPP servers (Short Message Peer to Peer) are open protocols for exchanging messages between peer-to-peer SMS centers. These are binary protocols that, like HTTP, are used over TCP / IP. They allow sending and receiving messages from GSM, UMTS, iDEN, CDMA and TDMA mobile phones.
The main advantage of these protocols is the mode of continuous connection to the Atomic SMS gateway which provides the high speed of SMS transmission
It works in the following way:
The software interacts with SMPP and SMS are sent automatically via SMPP protocol.
Then you receive delivery reports via AtomPark SMPP.
SMPP is capable of transmitting any type of message, including UCP / EMI. SMPP supports messages written in different encodings, including Unicode. Some SMPP servers require a single, long message from the sender, while others need the message to be segmented based on the message type.
There are three different types of connections that can be supported by an SMPP server.
"Sender" or "send only" — only message transmission works and the server cannot receive any messages.
"Recipient" or "receive only" — communication through the message transfer connection is not allowed, the server can only receive messages. Any attempt to receive messages through this connection usually results in an error.
"Transceiver" — it is allowed to send and transmit messages through the same connection.
The type of connection you use will depend on the preferences and policies of your SMPP services.
Also, the SMPP service allows you to enter any information under 11 characters into the line of the Sender ID. Numbers, latin letters, punctuation marks, and spaces are supported. The entered information will appear in the recipient's line "Message from:" and can be changed by the sender at any time. Thus, you have the opportunity to use your own SMS center with the help of the SMPP protocol.
The SMPP protocol is extensible, which allows providers to add their own additional criteria. They are known as TLV parameters. They are named so because of their format: tag (label), length, cost. Some TLV parameters are defined in the specification but are optional. Others are given by the provider.
It is possible to use the SMS service as an SMPP server for other applications. Other clients or applications connect to the SMS service and their SMPP server, and the SMS service communicates with one or more other SMS centers to send and receive SMS messages, using SMPP, or, possibly, other protocols.
The transfer of messages between the SMS-server and the SMS Center of the GSM service provider over IP communication can be through a dedicated line (gateway) via the Internet. In this case, the IP connection between the PC and the SMS Center can be protected.
Before starting to use AtomPark SMPP, it is necessary to install the Kannel gateway first. Here is the step-by-step instruction on Kannel Gateway Installation:
Download the archive with a source code: wget https://redmine.kannel.org/attachments/download/199/gateway-1.5.0.zip
Unzip the archive:unzip gateway-1.5.0.zip
Compile and install the gateway:cd gateway-1.5.0./configure –with-mysql –enable-start-stop-daemonNote: You MUST install all required libraries (usually this is libxml2-dev or mysql-dev).Example for Ubuntu:sudo apt-get install libmysqlclient-dev
sudo apt-get install libxml2-dev
After installing all required packages the gateway is compiled
The last command will install Kannel executables to your default directory ( /usr/local/sbin/ )
After installation, download and unzip the archive.
The archive contains the following files:
smskannel.conf – configuration file.
kannel.sh – start / stop system script.
kannel-install.txt – system installation description.
kannel-setup.sh – optional script, creates work directories.
To complete the installation, launch kannel-setup.sh. This will create work directories, write configuration, and start script into /etc/kannel.
Use . /etc/kannel/kannel.sh command to start.
First, though, you need to open and edit the configuration file /etc/kannel/smskannel.conf.
Edit parameters that are required to be changed:
smsc-username – use the received login
smsc-password – use the received password
It is highly recommended that you “uncomment” any lines that relate to logging, and that you change ports and passwords.
You can find settings and advanced settings descriptions in the formal documentation at http://kannel.org/download/kannel-userguide-snapshot/userguide.html, or contact our customer support.
After you edit and run the system, check its status by putting these links in your browser:
host – IP-address of the server
port – admin-port from Kannel settings
defined_password – admin-password or status-password from Kannel settings.
SMS is sent by sending a GET-request to the port specified in the smsbox section. See detailed information in the documentation at http://kannel.org/download/kannel-userguide-snapshot/userguide.html#AEN4952, You can also use this PHP script example (download)