This document provides SMPP specification including connection to advance messaging systems server, bind options and specification for sending sms over SMPP. This document also provides HTTP API used to sending SMS, collecting delivery reports along with HTTP API specification.
The Short Message Peer-to-Peer (SMPP) is a protocol used by the telecommunications industry for exchanging SMS messages between Short Message Service Centers (SMSC) and External Short Messaging Entities (ESME). The protocol is a level-7 TCP/IP protocol, which allows fast delivery of SMS messages
The connection between application and AMS SMPP Server is SMPP version 3.4
The purpose of the SMPP bind operation is to register an instance of an ESME with the SMSC system and request an SMPP session over this network connection for the submission or delivery of messages. Thus, the Bind operation may be viewed as a form of SMSC login request to authenticate the ESME entity wishing to establish a connection.
User may bind as either Tx (Transmitter), Rx (Receiver) or TRx (Transceiver)
Tx: User bound as a Transmitter is authorized to send short messages and to receive the corresponding SMPP responses.
Rx:User bound as a Receiver is authorized to receive short messages and to return the corresponding SMPP message responses..
TRx: User bound as a Transceiver is allowed to send & receive messages over a single SMPP session.
Users are allowed to bound as only 1 TRx/Rx with multiple Tx Session.
Requested Parameters:
Name | Description |
---|---|
System id | Provided System Id |
Password | Provided Password |
IP | 78.108.164.69 |
Port | 8899 |
System type | Null |
The Hypertext Transfer Protocol (HTTP) is an application-level protocol for distributed, collaborative, hypermedia information systems. This is the foundation for data communication for the World Wide Web (i.e. internet)
HTTP is a generic and stateless protocol which can be used for other purposes as well using extensions of its request methods, error codes, and headers. This document provides developers with instructions for integrating SMS messaging services into various solutions using HTTP API.
This HTTP API can be used in sending SMS, collecting delivery reports along with HTTP API specification . This document also provide SMPP specification including connection to advance messaging systems server, bind options and specification for sending sms over SMPP
Users can Use Following Services via HTTP API:
1) Message Submission & Scheduling
2) Status Enquiry
3) Balance Enquiry
4) Coverage Download
HTTP API supports both GET and POST Methods. Using GET Method limit of up to 100 numbers is allowed in a single request. For POST Method limit of up to 10000 numbers is allowed in a single request.
Description:
URL for Message Submission:
http://78.108.xxx.xxx/websmpp/websms? user=xxxx&pass=xx&sid=xxxxx&mno=961xxxxx&type=x&text=xxx
URL for Message Scheduling:
http://78.108.xxx.xxx/websmpp/websms? user=xxxx&pass=xx&sid=xxxxx&mno=961xxxxx&type=x&text=xxx&gmt=xxxxx&schtime=xxxxxxxxxxxx
Requested Parameters (mandatory):
Name | Description |
---|---|
System id | Provided System Id |
Pass | Provided Password |
sid | Source Number (Numeric/Alphanumric) |
mno | Destination Number or Comma separated Destination Numbers(Including Country Code) |
type | Message Type (1,2,3,4) |
text | Message Content |
Optional Parameters (Scheduling):
Name | Description |
---|---|
gmt | GMT i.e. +0530 |
schtime | Schedule time (yyyyMMddhhmm) |
Message Type & Length:
Value | Message Type | Length(1 SMS) |
---|---|---|
1 | English | 160 |
2 | Unicode | 280 |
3 | Special Character | 160 |
4 | Arabic | 70 |
Examples:
http://78.108.xxx.xxx/websmpp/websms? user=testUser&pass=12345&sid=Test&mno=961xxxxx&type=1&text=testing English message
http://78.108.xxx.xxx/websmpp/websms?user=testUser&pass=12345&sid=Test&mno=961xxxxx&type=2&text=00740065007300740069006E006700200075006E00690063006F006400650020006D006500730073006100670065
http://78.108.xxx.xxx/websmpp/websms? user=testUser&pass=12345&sid=Test&mno=961xxxxx&type=3&text=testing $@ Character
http://78.108.xxx.xxx/websmpp/websms? user=testUser&pass=12345&sid=Test&mno=961xxxxx&type=4&text= اختبار رسالة عربية
http://78.108.xxx.xxx/websmpp/websms? user=testUser&pass=12345&sid=Test&mno=961xxxxx&type=1&text=testing Schedule &gmt=+0530&schtime=201605101422
Note: The characters [ ] { } | \ ~ ^ will be counted twice. The characters & and # are restricted in message content.
Response Format
On Successful Submission:
Response: 2541524
On Failed (Possible Errors):
ERROR - HTTP01 --> Invalid HTTP URL Format
ERROR - HTTP02 --> Invalid query string
ERROR - HTTP03 --> Message Submission Failed
ERROR - HTTP04 --> Invalid Password
ERROR - HTTP05 --> Invalid System ID
ERROR - HTTP06 --> Invalid Sender ID
ERROR - HTTP07 --> Invalid Type
ERROR - HTTP08 --> Invalid Message ID
ERROR - HTTP09 --> Invalid Destination Address
ERROR - HTTP10 --> Invalid number of messages
ERROR - HTTP11 --> Requested service is unavailable
ERROR - HTTP12 --> Submit Failed
ERROR - HTTP13 --> Query request failed
ERROR - HTTP14 --> Bind failed
ERROR - HTTP15 --> Not Authorized for the request
ERROR - HTTP16 --> Invalid Request
ERROR - HTTP17 --> Invalid Message Length
ERROR - HTTP18 --> INSUFFICIENT CREDITS/BALANCE
ERROR - HTTP19 --> Invalid DATA CODING SCHEME
ERROR - HTTP20 --> Invalid ESM
ERROR - HTTP21 --> Invalid HEADER
ERROR - HTTP22 --> Invalid Schedule Time
ERROR - HTTP23 --> Routing Error
ERROR - HTTP24 --> Exceeded number of Destination
ERROR - HTTP25 --> No Record Found
ERROR - HTTP26 --> Account Expired
After Successful Submission, User can get Message Status via Following URL:
http://78.108.xxx.xxx/websmpp/websmsstatus?respId=2541524
Resulting status would be one of them from the following table:
Name | Description |
---|---|
ATES | Pending |
DELIVRD | Delivered |
UNDELIV | Undelivered |
EXPIRED | Message Validity Period Expired |
REJECTD | Rejected |
ACCEPTD | Accepted |
DELETED | Deleted |
UNKNOWN | Unknown |
After Successful Submission, User can get Message Status via Following URL:
http://78.108.xxx.xxx/websmpp/balanceReport?userid=systemid&password=pwd
The parameters userid & password are mandatory. Failing any would result in a negative response.
User can get Coverage via Following URL:
http://78.108.xxx.xxx/websmpp/ downloadcoverage? userid=systemid&password=pwd&format=x
The parameters userid & password are mandatory.
Format is optional parameter. If not specified the default format will be 1.
Requested Formats:
Value | Downloaded Format |
---|---|
1 | XLS |
2 | |
3 | CSV |