Jasmin handling of Deliver_sm response

576 views
Skip to first unread message

FF-Tech

unread,
Feb 1, 2017, 4:11:33 AM2/1/17
to Jasmin SMS Gateway
We've come across some "undesired" behaviour of Jasmin in the way it responds to the delivery_sm after an SMS is received from one of its SMPP connections.

Our setup is as follows:

jcli : smppccm -l
#Connector id              Service Session          Starts Stops
#SMPP_rx                   started BOUND_RX         2      1

jcli : morouter -l
Total MO Routes: 0

As you can see we have a receiver bound SMPP connection and no MO routes in our MO routing table. The SMPP connection is set up with our SMSC, the SMSC is configured to send all SMS's that are sent to a specific number, towards the SMPP bind shown above.

What I would expect in this case, is that Jasmin DOES NOT send back a ESME_ROK in response to the deliver_sm from the SMSC, but some error that the route is not available. Since this will cause the SMSC to think that the message has been delivered successfully.

Log:

2017-02-01 09:47:53 DEBUG    28032 Intercepting deliver_sm event in smppc SMPP_rx
2017-02-01 09:47:53 DEBUG    28032 Handling deliver_sm_event_post_interception event for smppc: SMPP_rx
2017-02-01 09:47:53 DEBUG    28032 Publishing DeliverSmContent[7919b38e-ff63-41b9-9316-2c4801873452] with routing_key[deliver.sm.SMPP_rx]
2017-02-01 09:47:53 INFO     28032 SMS-MO [cid:SMPP_rx] [queue-msgid:7919b38e-ff63-41b9-9316-2c4801873452] [status:ESME_ROK] [prio:LEVEL_0] [validity:None] [from:4474XXXXXXXX] [to:XXXX] [content:'Test']

Similar behaviour happens for when routing is actually configured but the http or smpp endpoint to which it is routing to does not exist, or does not respond.

Could someone please explain if there is a way to conditionally acknowledge deliver_sm messages based on end point delivery?

Thanks

Bruno C

unread,
Mar 5, 2017, 11:23:19 AM3/5/17
to Jasmin SMS Gateway
Hi,

Jasmin implements a store&forward algo, that's why it ACKs to upstream to say message is stored, the forward may not take place (you dont have a route), that will be another NACK.

It is possible to reply back to upstream SMSC with different status, you may use the interceptor for this, go to the Interceptor documentation and checkout "Controlling response" paragraph.

Bruno
Reply all
Reply to author
Forward
0 new messages