Message Rejection | Search |
NowSMS Support Forums ⬆ NowSMS Support - SMS Issues ⬆ Archive through June 21, 2007 ⬆ |
◄ ► |
Author | Message | |||
Shiby Varghese New member Username: Shiby Post Number: 4 Registered: 01-2007 |
Sir, Can you tell me how to handle the following scenario.. Verify that if a message is answered with a submit_sm_response with some other error besides a throttling error, said message shall be discarded by ESME. It shall not be resent. thanks and regards Shiby | |||
Malcolm - Now Support Moderator Username: Malcolm Post Number: 127 Registered: 12-2006 |
The default behaviour for NowSMS with an SMPP connection is as follows: For most SMPP error codes, NowSMS will assume that the error is temporary, and retry message delivery. The exceptions to this are detailed below. The following error conditions cause NowSMS to record a failure and NOT retry sending: ESME_RINVDSTADDR (0x0B, invalid destination/recipient address) ESME_RINVSRCADDR (0x0A, invalid source/sender address) ESME_RX_R_APPN (0x66, receiver reject message) The following error codes cause NowSMS to retry more times than the RetryMaxAttempts setting (default=20) allows: ESME_RTHROTTLED (0x58, throttle error, slow down) ESME_RMSGQFUL (0x14, message queue full) For all other errors, NowSMS will retry sending the message up to RetryMaxAttempts times (default=20). However, if you have particular error codes from your SMS provider that you need to treat as failure, you can add them to the SMPPRejectErrorCodes setting. For example, to treat the 0xFE error as a permanent error, you would edit SMSGW.INI, and under the [SMSGW] header, add: SMPPRejectErrorCodes=FE The above is a general reply (cut & paste) regarding how NowSMS handles SMPP error conditions, not necessarily a direct reply to your query. If your SMPP provider does not want you to retry message submission for any conditions other than a throttling error, then you would do the following: [SMSGW] RetryMaxAttempts=0 SMPPRejectErrorCodes=14 Why would I recommend those settings? RetryMaxAttempts=0 tells NowSMS that it should not retry any message submissions if there is an error. However, NowSMS will still perform retries for the following two conditions: ESME_RTHROTTLED (0x58, throttle error, slow down) ESME_RMSGQFUL (0x14, message queue full) So, SMPPRejectErrorCodes=14 tells NowSMS that error 0x14 (ESME_RMSGQFUL) should be treated as a permanent error rather than an infinite retry error. Please note that I do not recommend the above settings for general use. I only recommend them for the specific requirement outlined by the SMPP provider as detailed in the first posting in this thread. -- Malcolm Now Wireless Support |