Accounting callbacks PreAuth=Deny problem when sms submit from smpp...

Accounting callbacks PreAuth=Deny problem when sms submit from smpp... SearchSearch
Author Message
KKW
New member
Username: Kkw

Post Number: 5
Registered: 01-2009
Posted on Wednesday, February 11, 2009 - 11:26 am:   

Hi,

today we tested the accounting callbacks feature of the NowSMS 2009RC, the sms was submit from a smpp connection. If our application reply PreAuth=Deny then NowSMS reply ESME_RTHROTTLED instead of reject to the smpp peer.

since NowSMS return ESME_RTHROTTLE to the smpp peer, it keep retry to submit the sms again and again..... is it possible NowSMS reply ESME_RX_R_APPN instead of ESME_RTHROTTLED when PreAuth=Deny that the peer will not keep retry ?

thx
kk
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 456
Registered: 08-2008
Posted on Wednesday, February 11, 2009 - 04:46 pm:   

Hi KK,

That is the default behaviour ... and I agree that error code does not necessarily make sense in this context.

HOWEVER ... there is an ability to specify any SMPP error code that you want to be returned.

In the text of the response, in addition to PreAuth=Deny, add SMPPErrorCode=###### where ###### is the error code that you want to be returned to the submitting client.

By default ####### is assumed to be a decimal value. If you want to use hex (like in the spec definitions), preface it with 0x.

For example, a more appropriate error code to return might be ESME_RX_R_APPN (reciever reject message), which you could return by including SMPPErrorCode=0x66 in the PreAuth=Deny response.

--
Des
NowSMS Support
KKW
New member
Username: Kkw

Post Number: 7
Registered: 01-2009
Posted on Thursday, February 12, 2009 - 05:42 am:   

Hi Des,

thx for yr info, we testing with successfull result

however we have another scenario that want to use the callback feature.

currently the sms flow is sender connect to our NowSMS using smpp as a user:

sender ---smpp:submit_sm---> NowSMS account callback process with routing selection ---smpp:submit_sm---> mobile operator

is it possible NowSMS connect to send as a user using smpp and the sms flow as below ?

sender ---smpp:deliver_sm---> NowSMS account callback process with routing selection ---smpp:submit_sm---> mobile operator

thx & regards
kk
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 460
Registered: 08-2008
Posted on Thursday, February 12, 2009 - 02:39 pm:   

Hi kk,

Yes ... there is some information about this type of configuration in the following thread:

http://support.nowsms.com/discus/messages/1/22643.html

--
Des
NowSMS Support
KKW
New member
Username: Kkw

Post Number: 8
Registered: 01-2009
Posted on Friday, February 13, 2009 - 03:19 am:   

Hi Des,

thx for yr info, we just do a testing per yr advise. once i put ReRouteReceived=xxxxx in the config file, the delivery_sm directly re-route to the outbound smpp connection but didn't go PreAuth and we need the PreAuth for backend billing checking and outbound route selection. any suggestion ?

thx & regards,
kk
KKW
New member
Username: Kkw

Post Number: 9
Registered: 01-2009
Posted on Friday, February 13, 2009 - 08:28 am:   

Hi Des,

i also see that when delivery_sm from smpp connection, the accounting callback will generate http request with Type=SMSIN, is any parameters in the repone can do the sms route selection or deny the sms like "PreAuth=Deny", "SMSCRoute=xxxxx" and "SMPPErrorCode=######" ?

thx
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 468
Registered: 08-2008
Posted on Friday, February 13, 2009 - 02:17 pm:   

Hi kk,

The "SMSIN" callback does not allow the message to be rejected.

Allowing this would be a good idea. I had a preliminary discussion with one of our engineers, and from what he sees, the "SMSIN" could be extended to support "PreAuth=Deny" and "SMPPErrorCode=#######" without much difficulty.

However, the "SMSCRoute=xxxxx" implementation would be more difficult.

I'm going to leave it with engineering and see if they can make a change. But right now, the "SMSIN" callback is informational only.

--
Des
NowSMS Support
KKW
New member
Username: Kkw

Post Number: 10
Registered: 01-2009
Posted on Friday, February 13, 2009 - 03:04 pm:   

Hi Des,

thx for update, how about ReRouteReceived=xxxxx, can it run like submit_sm after re-route ?

currently NowSMS receive the delivery_sm then just re-route to the outbound connection without accounting callback.

if it can process like submit_sm that have accounting callback then can get the same result.

kk
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 484
Registered: 08-2008
Posted on Tuesday, February 17, 2009 - 07:19 pm:   

Hi kk,

That would make sense. Instead of checking the response to the "SMSIN" callback, if the message is being re-routed because of a ReRouteReceived=xxxx setting ... then as the message is re-routed, we could add the normal outbound message routing callbacks.

The only caveat is that if we did this, and the PreAuth response was PreAuth=Deny, we could not return an error back (because we've already accepted the message).

We're working on implementing it this way, because this makes the most sense. Once this update is complete ... after the "SMSIN" callback, you will then receive the normal PreAuth and SmsSend accounting callbacks.

--
Des
NowSMS Support
KKW
New member
Username: Kkw

Post Number: 11
Registered: 01-2009
Posted on Thursday, February 19, 2009 - 05:33 am:   

Hi Des,

thx for yr update and looking forward to see the feature added in NowSMS.

For PreAuth response for deny cannot return an error back, understand this cuz sms already inside the system, how about adding "PreAuth=Deny" and "SMPPErrorCode=#######" for Type=SMSIN ? cuz this is the entry point of the sms comming into the system ?

thx
kk
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 606
Registered: 08-2008
Posted on Wednesday, March 18, 2009 - 07:12 pm:   

Hi KK,

I wanted to follow-up with you to let you know that these callbacks have been implemented.

When a message is rerouted in this manner, you will now receive both the "PreAuth" and "SMSSend" callbacks.

The "PreAuth=Deny" can be used to reject the message ... however, in this case, the message is silently rejected ... with no error message being reported.

The update that implements this functionality is currently available for testing at http://www.nowsms.com/download/nowsms20090317.zip.

--
Des
NowSMS Support
KKW
New member
Username: Kkw

Post Number: 12
Registered: 01-2009
Posted on Thursday, March 19, 2009 - 05:26 am:   

Hi Des,

thx a lot for yr update , will download and test it

kk
KKW
New member
Username: Kkw

Post Number: 13
Registered: 01-2009
Posted on Friday, March 20, 2009 - 10:35 am:   

Hi Des,

tested, "PreAuth=Deny" ok can reject the message thx .

however "SMSSend" seems just informational, when i put SMSCRoute=XXXX as response the sms still going to the defined sms route in ReRouteReceived=xxxxx

eg. ReReouteReceived=SMPP_A but some sms we need to route to SMPP_B, even we put SMSCRoute=SMPP_B in the response to "SMSSend" it still goto SMPP_A
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 624
Registered: 08-2008
Posted on Friday, March 20, 2009 - 07:00 pm:   

Hi kk,

It's working for me.

I tried a couple of different tests. In one test, I had ReRouteReceived=any in the SMSGW.INI file ... and SMSCRoute= in the response was able to specify an explicit route.

In another test, I had ReRouteReceived=route1, and the SMSCRoute= in the response was able to override the route.

I must be missing a scenario, but I can't see one. Try enabling SMSDEBUG.LOG and verify that the SMSCRoute= is coming back in the response just like you expect.

--
Des
NowSMS Support
KKW
New member
Username: Kkw

Post Number: 14
Registered: 01-2009
Posted on Friday, May 08, 2009 - 11:40 am:   

Hi Des,

tested ok by setting ReRouteReceived=Any and the SMSCRoute= in response was able to override the route.

thx
kk