Protocol Considerations
Connection Monitoring
SMPP enquire_link
message are automatically handled by the internal connection management systems of the SMPP application.
- If configured to do so, SMPP clients will automatically send
enquire_link
requests regularly while bound to a server. If a response is not received within the configured time, the connection is considered dead and will be shut down. - Both SMPP servers and clients will always automatically respond to
enquire_link
requests as they are received.
SMPP Fields
The SMPP specification defines SMPP messages as having:
- A fixed length header.
- A fixed length fixed field section, whose field list and field sizes is dependent on the message and protocol version.
- An optional list of TLVs (tag/length/value).
Within the optional list of TLVs, many tags are defined by the protocol, however custom TLVs may also be used by vendors as required. If required, the JSLEE SMPP service may be made aware of any TLV that may be used as decoding the TLV requires application knowledge of the TLV type (the type is not encoded into the data sent within the protocol).
TLV Configuration
The list of TLVs are stored as text files in the resources/smpp
directory within the JSLEE JAR file.
There are two files present in this location:
smpp_v5.0_tlvs.csv
smpp_v5_fixed_fields.csv
The fixed fields file should not be changed, as the fixed fields within the protocol cannot change, however the TLV file may be adjusted as required.
TLV File Format
This file smpp_v5.0_tlvs.csv
is a simple CSV file, with the following columns:
-
Name - The name of the TLV field. This is important if code needs to look up the TLV by name.
-
Tag - The value of the TLV in decimal or hexidecimal.
-
Type - The data format to decode the TLV as. This must be one of the known SMPP data formats:
Unsigned8
for an SMPP integer type of length 1.Unsigned16
for an SMPP integer type of length 2.Unsigned32
for an SMPP integer type of length 4.COctetString
for an SMPP C-Octet String.OctetString
for an SMPP Octet String.