MX Telecom SMS Server SMPP Interface - Details

Overview

The MX Telecom SMPP interface supports a subset of the SMS Forum's SMPP v3.4 Specification (http://smsforum.net). It is backwards compatible with Logica's SMPP v3.3.

The following PDUs are supported:

  • BIND_TRANSMITTER
  • BIND_RECEIVER
  • BIND_TRANSCEIVER
  • UNBIND
  • SUBMIT_SM
  • ENQUIRE_LINK
  • DELIVER_SM (initiated by MX Telecom)

  • (any other PDUs will be responded with a GENERIC_NACK reply)

The server's inactivity timeout is set at 5 minutes. It is recommended that SMPP clients send ENQUIRE_LINK every minute.

The SMSC Default Alphabet for 7bit messages is ISO-8859-15 (Latin9); the GSM character set is also supported when data_coding=1. Please note this is different to Logica's Telepath implementation which ignores their specification and treats all 7bit messages as HP Roman-8. MX Telecom recomends binding as transceiver rather than transmitter and reciever if possible.

SMPP v3.4 TLV Parameters

To date, MX Telecom's SMPP interface has been kept as simple as possible, without the need for any proprietary TLV extensions to the protocol. In order to do this whilst still being able to support Premium Rate Short Code services, MX Telecom has configured one BIND per network, so that you are always aware of the originating network for a message sent to a Short Code. You are required to send responses down the appropriate BIND.

The interface mimicks the Logica Telepath implementation where possible. MO messages are passed to clients using the SMPP bind appropriate to the source network. MT messages are mapped to the appropriate MX Telecom MT account using a mapping from the SMPP SystemID and message originator. Most partners using SMPP in the UK for premium rate services therefore have 5 Premium Rate BINDs for two-way traffic using their Short Codes and a single bulk BIND for sending free-to-receive messages.

As the capabilities offered by MX Telecom increase - particularly with newer territories such as the USA, where a single Short Code can have any number of tariffs associated with it - more flexible SMPP connectivity is required.

MX Telecom has therefore introduced some SMPP v3.4 TLV parameters in addition to what is already offered. This allows you to have a single BIND on which you can do everything you could previously do with multiple BINDs.

Note that for Partner -> MX TLVs which have a value specified to be of type C-Octet String, terminating the string with a null byte is optional. For MX -> Partner TLVs which have a value specified to be of type C-Octet String, the SMS Gateway will always add the terminating null byte.

The SMPP v3.4 TLV parameters are detailed below:

  • MT Username
    • ID: 0x3000
      Name: MT Username
      Direction: Partner -> MX
      Length: Variable
      Value: C-Octet String.

    This parameter, used for MT messages, encompasses the destination operator for the message, the tariff and any other information that might be relevant (age verification requirements, subscription status etc).

  • Operator code
    • ID: 0x3010
      Name: Operator code
      Direction: MX -> Partner
      Length: Variable
      Value: String (not null terminated). See Network Codes.

    This signifies which operator the originating MSISDN belongs to for MO messages, rather than relying on one pipe per operator.

  • Report reason
    • ID: 0x3020
      Name: Report reason
      Direction: MX -> Partner
      Length: 4 bytes
      Value: Unsigned 32bit Integer, as defined on the Delivery Report Reasons page.

    This is an extension of the delivery report status; the information that is available varies from operator to operator.

  • receipted_message_id
    • ID: 0x001E
      Name: receipted_message_id
      Direction: MX -> Partner
      Length: Variable
      Value: C-Octet String.

    The receipted_message_id is a standard SMPP TLV parameter passed in delivery reports. This is the SMS ID used to uniquely identify an SMS message as it passes through the SMS Gateway. It is a positive 64 bit integer that, when sent as a receipted_message_id value, is formatted as a hexadecimal number and null terminated. The SMS ID in the delivery report will match the ID returned by the SMS Gateway when the message was originally submitted.

  • Message ID
    • ID: 0x3040
      Name: Message ID
      Direction: MX -> Partner
      Length: Variable
      Value: String (not null terminated).

    This is an optional parameter that can be included with MO messages. It is the SMS ID used to uniquely identify an SMS message as it passes through the SMS Gateway. It is a positive 64 bit integer that, when sent as a Message ID value, is formatted into a decimal and passed as a string. In our billing records, the SMS ID appears against the message.

  • AV Status
    • ID: 0x3050
      Name: AV Status
      Direction: MX -> Partner
      Length: 2
      Value: 0 if Age verification failed; 1 if it passed. Other values are reserved and should be ignored.

    This optional parameter is passed if Age Verification is enabled for MO messages to a particular Short Code.

  • Subaccount
    • ID: 0x3030
      Name: Subaccount
      Direction: Partner -> MX
      Length: Variable 1-30 bytes + optional null byte
      Value: C-Octet String.

    This TLV allows you to specify the sub-account to be stored in the transaction log. The MX Telecom Partner Center can provide reporting based on this field. Sub-accounts do not need to be preconfigured.

  • Note
    • ID: 0x3031
      Name: Note
      Direction: Partner -> MX
      Length: Variable 1-160 bytes + optional null byte
      Value: C-Octet String.

    This TLV allows you to specify a "note" for the message that is stored in the billing record. This has no effect on the delivery of the message but can be used as opaque data.

    Account Setup

    Please contact us for further information.

    For more information, please contact us at 1-877-698-3532 or via email at sales@mxtelecom.com.