Hi Oded,
In accordance to my tests I found out and suggest you a new temporary nack
for SMPP. I've seen this in smsc_smpp.c:
------------------------------------------
/*
* Some SMPP error messages we come across
*/
enum {
SMPP_ESME_RMSGQFUL = 0x00000014,
SMPP_ESME_RTHROTTLED = 0x00000058
} SMPP_ERROR_MESSAGES;
------------------------------------------
The new temporary that should be enumerated is 0x00000045 (form SMPP3.4
espec: ESME_RSUBMITFAIL - submit_sm or submit_multi failed). It could be
named "SMPP_ESME_RSUBMITFAIL"
Why? This error happens when ESME does submit_sm a well-formed message but
for some reason the bind has been timed out by the SMSC. Usually,
SMPP_ENQUIRE_LINK_INTERVAL (defaulted to 30 seconds) only prevent this
situation when SMSC is configured to timeout the connection in a period
greater than SMPP_ENQUIRE_LINK_INTERVAL. I know I could increase
SMPP_ENQUIRE_LINK_INTERVAL but I wouldn't allways know "bind timeout period"
of the target SMSC.
Unfortunatelly I'm still not able to write a patch (and do prefer not to be
yet) but I'm very pleased to contribute suggesting and testing.
what do you think about this?
Regards.
> -----Original Message-----
> From: Oded Arbel [mailto:[EMAIL PROTECTED]]
>
> > -----Original Message-----
> > From: Mauricio Ramos [mailto:[EMAIL PROTECTED]]
>
> > but I
> > got a little bit confused how Kannel DOES behave CURRENTLY.
> > Please confirm
> > these statements:
> >
> > 1) Current Kannel CVS ALLWAYS removes message from store when
> > he got ANY
> > NACK from a SMPP SMSC, either temporary failure (ex.
> > Throttling) or not (ex.
> > Message Lenght).
>
> No. assuming current CVS, Kannel only removes messages from
> store (and send DLR_SMSC_FAIL) for a non-temporary error.
>
> > 2) Current Kannel CVS NEVER resend messages when ANY failure
> > occurs, either
> > temporary failure or not.
>
> No. Kannel will resend messages if receiving a NACK of a type
> which is defined as "termporary". there is a very simple
> switch case, almost at the top of the SMPP module code which
> sorts the NACK reasons to 'temporary' or 'malformed'. check it out.
>
> --
> Oded Arbel
>