I have an existential doubt, I know how is the flow to request and get a delivery report from SMSC when the ESME send a submit. But, how should be the behavior when the registered_delivery is requested by the SMSC (to an ESME)?
Should ESME send deliver_sm? According smpp 3.4 (specification that I'm using) deliver_sm is not issued by the ESME. So, What I should do to send delivery report to SMSC?
I will quote SMPP 3.4:
4.6.1 (“DELIVER_SM” Syntax):
2.11 (Message types)
You will have to communicate your question to the SMSC owner in order to clarify what exactly is the information that they request. For example, if the deliver_sm packet with registered_delivery is an MO message, you could send back some event notification upon delivering this MO to its final recipient.
In any case, you should never use deliver_sm for SME acknowledgement notifications (as you well pointed — deliver_sm is not issued by the ESME). There is a special esm_class flag that you can set in submit_sm that should be used for this:
5.2.12 (esm_class)