How do I configure SMPP?

How do I configure SMPP?

The short message peer-to-peer protocol (SMPP) is a telecommunications industry protocol for exchanging SMS messages between SMS peer entities such as short message service centers. It is often used to allow third parties (for example, value-added service providers like news organizations) to submit messages, sometimes in bulk.

The protocol is based on pairs of request/response PDUs (protocol data units, or packets) exchanged over OSI layer 4 (TCP/IP session or X.25 SVC3) connections. PDUs are binary encoded for efficiency.

The most commonly used versions of SMPP are v3.3 (the most widely supported standard) and v3.4, which adds transceiver support (single connections that can send and receive messages). Data exchange can be synchronous, (each peer waits for a response for each PDU being sent) or asynchronous (messages are received and transmitted in independent threads with the use of buffers and timers). The latest version of SMPP is v5.0.

Configuring SMPP

To configure SMPP parameters, add an additional SMS configuration.

  1. Select Manage System > Notification Settings > SMS Channel.
  2. Click Add SMS channel.
    The Add SMS Channel page appears.
  3. Type the key name and appropriate value from the table below, or as supplied by your SMS provider.

SMPP Keys

Use these SMPP keys when you configure WatchGuard Administrator.

Key Used at Possible Values Default Value Description
smpp-version Bind 51 – 3.3
52 – 3.4
51 This parameter is used to indicate the version of the SMPP protocol. The following interface version values are defined, 0-51 (0x00-0x33) Indicates that the EMSE supports version 3.3 or earlier of the SMPP protocol. 52 (0x34) Indicates that the ESME is supporting SMPP version 3.4
smpp-timeout Connect Integer 10000 Timeout used when trying to communicate with SMPP server. Defined in milliseconds.
smpp-bind-system-type Bind String   The system_type parameter is used to categorize the type of ESME that is binding to the SMSC. Examples include “VMS” (voice mail system) and “OTA” (over-the-air activation system). Specification of the system_type is optional - some SMSCs may not require ESMEs to provide this detail. In this case, the ESME can set the system_type to NULL.
smpp-bind-addr-ton Bind 0 – Unknown
1 – International
2 – National
3 – Network Specific
4 – Subscriber Number
5 – Alphanumeric
6 - Abbreviated
0 Indicates Type of Number of the ESME address. If not known set to Unknown.
smpp-bind-addr-npi Bind 0 – Unknown
1 – ISDN
3 – Data
4 – Telex
6 – Land Mobile
8 – National
9 – Private
10 – ERMES
14 – Internet
18 – WAP Client Id
0 Numbering Plan Indicator for ESME address. If not known set to Unknown.
smpp-submit-service-type Submit String   The service_type parameter can be used to indicate the SMS Application service associated with the message. “” (NULL) Default, “CMT” Cellular Messaging, “CPT” Cellular Paging, “VMN” Voice Mail Notification, “VMA” Voice Mail Alerting, “WAP” Wireless Application Protocol, “USSD” Unstructured Supplementary Services Data
smpp-submit-dest-addr-ton Submit 0 – Unknown
1 – International
2 – National
3 – Network Specific
4 – Subscriber Number
5 – Alphanumeric
6 - Abbreviated
1 Destination Address TON. Type of Number for destination.
smpp-submit-dest-addr-npi Submit 0 – Unknown
1 – ISDN
3 – Data
4 – Telex
6 – Land Mobile
8 – National
9 – Private
10 – ERMES
14 – Internet
18 – WAP Client Id
0 Destination Address NPI. Numbering Plan Indicator for destination.
smpp-submit-esm-class Submit Integer 0 The esm_class parameter is used to indicate special message attributes associated with the short message.
smpp-submit-protocol-id Submit Integer 0 GSM: Set according to GSM 03.40 [GSM 03.40], ANSI-136 (TDMA): For mobile terminated messages, this field is not used and is therefore ignored by the SMSC. For ANSI-136 mobile originated messages, the SMSC should set this value to NULL. IS-95 (CDMA): For mobile terminated messages, this field is not used and is therefore ignored by the SMSC. For IS-95 mobile originated messages, the SMSC should set this value to NULL.
smpp-submit-source-addr-ton Submit 0 – Unknown
1 – International
2 – National
3 – Network Specific
4 – Subscriber Number
5 – Alphanumeric
6 - Abbreviated
0 Source Address TON. Type of Number for source address. If not known, set to 0 (Unknown).
smpp-submit-source-addr-npi Submit 0 – Unknown
1 – ISDN
3 – Data
4 – Telex
6 – Land Mobile
8 – National
9 – Private
10 – ERMES
14 – Internet
18 – WAP Client Id
0 Source Address NPI. Numbering Plan Indicator for source address. If not known, set to 0 (Unknown).
smpp-submit-source-addr Submit     Specifies the address of SME which originated this message. An ESME which is implemented as a single SME address, may set this field to NULL to allow the SMSC to default the source address of the submitted message.
smpp-submit-data-coding Submit Integer 3 Encoding of data according the SMPP 3.4 specification, section 5.2.19. Example data encodings are “SMSC Default Alphabet” (0), IA5/ASCII (1), Octet unspecified (2), Latin 1/ISO-8859-1 (3), Cyrllic/ISO-8859-5 (6), Latin/Hebrew/ISO-8859-8 (7).
smpp-submit-data-charset Submit String ISO8859-1 Character set to use in conjunction with Data Coding when converting from Unicode to output format.

Error Codes

If you receive an SMPP error, you can use this information to help you determine the source of the error.

Error Error Code Description
ESME_ROK 0x00000000 No Error
ESME_RINVMSGLEN 0x00000001 Message Length is invalid
ESME_RINVCMDLEN 0x00000002 Command Length is invalid
ESME_RINVCMDID 0x00000003 Invalid Command ID
ESME_RINVBNDSTS 0x00000004 Incorrect BIND Status for given command
ESME_RALYBND 0x00000005 ESME Already in Bound State
ESME_RINVPRTFLG 0x00000006 Invalid Priority Flag
ESME_RINVREGDLVFLG 0x00000007 Invalid Registered Delivery Flag
ESME_RSYSERR 0x00000008 System Error
Reserved 0x00000009 Reserved
ESME_RINVSRCADR 0x0000000A Invalid Source Address
ESME_RINVDSTADR 0x0000000B Invalid Dest Addr
ESME_RINVMSGID 0x0000000C Message ID is invalid
ESME_RBINDFAIL 0x0000000D Bind Failed
ESME_RINVPASWD 0x0000000E Invalid Password
ESME_RINVSYSID 0x0000000F Invalid System ID
Reserved 0x00000010 Reserved
ESME_RCANCELFAIL 0x00000011 Cancel SM Failed
Reserved 0x00000012 Reserved
ESME_RREPLACEFAIL 0x00000013 Replace SM Failed
ESME_RMSGQFUL 0x00000014 Message Queue Full
ESME_RINVSERTYP 0x00000015 Invalid Service Type
Reserved 0x00000016-0x00000032 Reserved
ESME_RINVNUMDESTS 0x00000033 Invalid number of destinations
ESME_RINVDLNAME 0x00000034 Invalid Distribution List name
Reserved 0x00000035-0x0000003F Reserved
ESME_RINVDESTFLAG 0x00000040 Destination flag is invalid (submit_multi)
Reserved 0x00000041 Reserved
ESME_RINVSUBREP 0x00000042 Invalid ‘submit with replace’ request (i.e. submit_sm with replace_if_present_flag set)
ESME_RINVESMCLASS 0x00000043 Invalid esm_class field data
ESME_RCNTSUBDL 0x00000044 Cannot Submit to Distribution List
ESME_RSUBMITFAIL 0x00000045 submit_sm or submit_multi failed
Reserved 0x00000046-0x00000047 Reserved
ESME_RINVSRCTON 0x00000048 Invalid Source address TON
ESME_RINVSRCNPI 0x00000049 Invalid Source address NPI
ESME_RINVDSTTON 0x00000050 Invalid Destination address TON
Error Error Code Description
ESME_RINVDSTNPI 0x00000051 Invalid Destination address NPI
Reserved 0x00000052 Reserved
ESME_RINVSYSTYP 0x00000053 Invalid system_type field
ESME_RINVREPFLAG 0x00000054 Invalid replace_if_present flag
ESME_RINVNUMMSGS 0x00000055 Invalid number of messages
Reserved 0x00000056-0x00000057 Reserved
ESME_RTHROTTLED 0x00000058 Throttling error (ESME has exceeded allowed message limits)
Reserved 0x00000059-0x00000060 Reserved
ESME_RINVSCHED 0x00000061 Invalid Scheduled Delivery Time
ESME_RINVEXPIRY 0x00000062 Invalid message validity period (Expiry time)
ESME_RINVDFTMSGID 0x00000063 Predefined Message Invalid or Not Found
ESME_RX_T_APPN 0x00000064 ESME Receiver Temporary App Error Code
ESME_RX_P_APPN 0x00000065 ESME Receiver Permanent App Error Code
ESME_RX_R_APPN 0x00000066 ESME Receiver Reject Message Error Code
ESME_RQUERYFAIL 0x00000067 query_sm request failed
Reserved 0x00000068-0x000000BF Reserved
ESME_RINVOPTPARSTREAM 0x000000C0 Error in the optional part of the PDU Body.
ESME_ROPTPARNOTALLWD 0x000000C1 Optional Parameter not allowed
ESME_RINVPARLEN 0x000000C2 Invalid Parameter Length.
ESME_RMISSINGOPTPARAM 0x000000C3 Expected Optional Parameter missing
ESME_RINVOPTPARAMVAL 0x000000C4 Invalid Optional Parameter Value
Reserved 0x000000C5-0x000000FD Reserved
ESME_RDELIVERYFAILURE 0x000000FE Delivery Failure (used for data_sm_resp)
ESME_RUNKNOWNERR 0x000000FF Unknown Error
Reserved for SMPP extension 0x00000100-0x000003FF Reserved for SMPP extension
Reserved for SMSC vendor specific errors 0x00000400-0x000004FF Reserved for SMSC vendor specific errors
Reserved 0x00000500-0xFFFFFFFF Reserved

Troubleshooting

To see what packets are sent to and received from the SMPP gateway, select Monitor System > Logging > Manage Global Logging Settings and select Enable debug logging. Search the debug log for SMPP.

If an error occurs when communicating, the System log may echo something like: SMPP command failed with error code 0xd.

你可能感兴趣的:(network)