SMPP PROTOCOL #
The SMPP standard is a protocol specifically developed for sending SMS via TCP/IP connections.
The types of connections (BIND) supported are:
- Transmitter (TX – sending messages only)
- Receiver (RX – receiving delivery notifications only)
- Transceiver (TRX – sending messages + receiving notifications)
By default, Agile Telecom’s policy allows up to 4 active connections, which can be considered as 4 TX + 4 RX or 4 TRX. If necessary, you can request additional connections.
The parameters for the connection are as follows:
HOST | smpp.agiletelecom.com |
PORT | 2776 (TLS) |
SYSTEM ID | username of the account |
PASSWORD | password of the account |
MODE | TX, RX o TRX |
Login-AddrRange | <leave empty> |
Login-SystemType | <leave empty> |
Login-TON | 1 |
Login-NPI | 1 |
Login-DCS | 0 |
SMPP ERRORS #
Following the possible errors managed by our SMPP server:
ERROR TYPE | ERROR NUMBER | VALORE HEX | DESCRIPTION |
ESME_RINMSGLEN | 1 | 0x01 | Invalid package length |
ESME_RINVCMDLEN | 2 | 0x02 | Invalid command |
ESME_RINVBNDSTS | 4 | 0x04 | Not yet logged in |
ESME_RSYERR | 8 | 0x08 | System error |
ESME_RINVSRCADR | 10 | 0x0A | Invalid sender |
ESME_RINVDSTADR | 11 | 0x0B | Invalid recipient |
ESME_RINVPASWD | 13 | 0x0E | Incorrect credentials |
ESME_RINVSERTYP | 21 | 0x15 | Invalid SYSTEM_TYPE |
ESME_RSUBMITFAIL | 69 | 0x45 | Text decoding failed |
ESME_RTHROTTLED | 88 | 0x58 | Throughput limit exceeded |
ESME_RINVSCHED | 97 | 0x61 | Scheduling date sent invalid |
ESME_RINVEXPIRY | 98 | 0x62 | invalid VALIDITY_PERIOD |
ESME_RSERTYPDENIED | 259 | 0x103 | Insufficient credit |
ERROR CODES IN STATUS REPORT #
Status reports include error codes as defined in the SMPP Protocol Specification v3.4 Issue 1.2, Appendix B.
ERROR CODE | CATEGORY | DESCRIPTION |
101 | ROUTING ERROR | No route found |
102 | ESME ERROR | ESME error |
201 | HLR ERROR | Absent subscriber. |
202 | HLR ERROR | Facility not supported. |
203 | HLR ERROR | System failure. |
204 | HLR ERROR | Unexpected data value. |
205 | HLR ERROR | Data missing. |
206 | HLR ERROR | Memory capacity exceeded. |
207 | HLR ERROR | Mobile subscriber not reachable. |
208 | HLR ERROR | Reject. |
209 | HLR ERROR | Local Cancel. |
210 | HLR ERROR | Abort. |
211 | HLR ERROR | Exception (internal). |
212 | HLR ERROR | Unknown subscriber. |
350 | HLR ERROR | Unknown error. |
401 | MSC ERROR | Unidentified subscriber. |
402 | MSC ERROR | Absent subscriber, IMSI detached. |
403 | MSC ERROR | Absent subscriber, no page response. |
404 | MSC ERROR | Subscriber busy for MT SMS. |
405 | MSC ERROR | Facility not supported. |
406 | MSC ERROR | Illegal subscriber. |
407 | MSC ERROR | Illegal equipment. |
408 | MSC ERROR | System failure. |
409 | MSC ERROR | Unexpected data value. |
410 | MSC ERROR | Data missing. |
411 | MSC ERROR | Memory capacity exceeded. |
412 | MSC ERROR | Equipment protocol error. |
413 | MSC ERROR | Device not short message equipped. |
414 | MSC ERROR | Reject. |
415 | MSC ERROR | Local Cancel. |
416 | MSC ERROR | Abort. |
417 | MSC ERROR | Exception (internal). |
550 | MSC ERROR | Unknown error. |
601 | SMSC ERROR | Unidentified Subscriber. |
602 | SMSC ERROR | Facility not supported. |
603 | SMSC ERROR | System failure. |
604 | SMSC ERROR | Unexpected data value. |
605 | SMSC ERROR | Data missing. |
606 | SMSC ERROR | Equipment protocol error. |
607 | SMSC ERROR | Unknown service center address. |
608 | SMSC ERROR | Service center congestion. |
609 | SMSC ERROR | Invalid short message entity address. |
610 | SMSC ERROR | Subscriber not service centre subscriber. |
611 | SMSC ERROR | Reject. |
612 | SMSC ERROR | Local cancel. |
613 | SMSC ERROR | Abort. |
614 | SMSC ERROR | Exception (internal). |
750 | SMSC ERROR | Unknown error. |
801 | SCREENING ERROR | Personal service barring. |
802 | SCREENING ERROR | Keyword blocked. |
803 | SCREENING ERROR | Terminating IMSI blocked. |
804 | SCREENING ERROR | Loop detected. |
805 | SCREENING ERROR | Originator blocked. |
950 | SCREENING ERROR | Destination blocked. |
SMS SENDER #
Max 16 characters for exclusively numeric sender (e.g. +391234567890123) or max 11 characters for alphanumeric sender (e.g. COMPANY ABC).
As of 10/16/2013, the resolution provides: no. 42/13/CIR of Agcom.
MESSAGE_ID FOR NOTIFICATION #
The message_id returned by the SUBMIT_SM_RESP package and used by the DELIVER_SM operation for delivery of notifications uses by default a UUID with the following format: AGILE-XXXXXXXX-XXXXXX-XXXXXX-XXXXXX
If the client’s platform does not support this format, the different format may be required to be agreed upon.
DATE FORMAT IN THE DELIVERY NOTIFICATION #
In the DELIVER_SM package, the string indicating the message delivery date also contains the seconds information and is in this format: yyMMddHHmmss
CONSTRAINT OF SENDING FROM IP #
By default, the platform is open to all IPs, but if necessary the client can request to bind the use of the account only from certain IP addresses or subnets.