SMPP
We offer support for SMPP version 3.4 which is the industry standard protocol for sms communication. Our setup provides redundant connection options with an endpoint pointing at two different locations.
Connecting
In order to connect, you need the following:
Parameter
Value
system_id
Individual per account
password
Individual per account
hosts
smpp-dk1.inmobile.dk
smpp-dk2.inmobile.dk
port
2775 (ssl is required for all connections - no support for non-ssl)
ConnectionMode
Individual per account
In order to get an SMPP system id, please contact us at [email protected].
Encryption over ssl/tls
As stated previously, all communication must happen on encrypted connections. This requires for the applications to download and use the certificate used at https://mm.inmobile.dk (The certificate is a wildcard certificate for *.inmobile.dk).
Supported messages types
- bind_transmitter
- bind_receiver
- bind_transceiver
- unbind
- submit_sm
- deliver_sm
- enquire_link
DataCodings
Data coding
Hex value
Binary encoding
Default
0x0
GSM7
Default Class 0
0x10
GSM7
UCS2
0x8
UTF-16 (big endian byte order)
UCS2 Class 0
0x18
UTF-16 (big endian byte order)
Data codings are mapped to binary encodings according to the table above, e.g. when using data coding UCS2 the binary data must be UTF-16 encoded. In some languages, e.g. C#, this is known as "Big endian unicode". UCS2 is a subset of UTF-16, so using UCS2 specifically on the client side will also work just fine.
Delivery reports
The error code in this example (005) is the absolute value of the message status code -5 defined here:
Status code
Description
1
xxxx
2
xxxx
3
xxxx
4
xxxx
5
xxxx
Example of our delivery report formats
id:ble50673-f8b8-41e8-a143-07a43bb8c86b sub:001 dlvrd:001 submit
date:1911121314 done date:1911121314 stat:DELIVRD err:000
Incoming messages
To get deliver_sm or incoming messages via SMPP, you’ll have to log in to your inMobile account, and set up PDU forwarding to your system_id.
Contact support for further help, with setting this up.
Limitations
The source_addr parameter has a max length of 15 characters. If the source_addr parameter is any longer, anything after the 15th character, will be discarded.
Timed/delayed delivery is not supported and the message will be processed as an immediate message.
Maintenance
SMPP is an async protocol meaning that multiple requests and replies may be transported over the wire at a given time. In order to avoid losing any data in case of maintenance or updating our SMPP server, we have taken measures ensuring controlled shutdown and restart.
In the event of an SMPP server system restart, any newly sent submitSm-message will be rejected with the reply ESME_RSUBMITFAIL and clients will be sent an unbind message. Right after, the connection will be disconnected. In case a client tries to rebind at the exact time, that a server is about to restart, the bind attempt will be replied with a generic ESME_RBINDFAIL reply.
A typical restart of an SMPP server takes a couple of minutes.
Prøv inMobile gratis i 14 dage
Du får gratis SMS-beskeder til at teste med og adgang til alle funktioner i inMobile.