Delivery recipt (short DLR) - service message, used in SMPP protocol.
This message is sent by terminating SMSC (SMS-center), directly connected to network to which end user (MTA) is connected.
The nodes of message transmit chain pass this message back to sender.
The difference of this message from SMPP RESP - is that it could arrive after big amount of time (for example, after 3 days).
An example of delivery receipt contents:
Delivery receipt is sent in next cases:
As far as end user could be not reachable for a long time, or could turn his phone off, terminating SMSC periodically tries to deliver a message, and when a period elapses (usually 3 days) sends back a message about failure to deliver.
To successfully deliver a DLR back to originating end user, all nodes of message transmit chain should be connected in TRX mode.
TX - to send message from originating user, RX - to receive back delivery receipt.
Delivery receipt is not billed (see Billing).
When Smartswitch receives delivery receipt from terminator, it forwards it to originator from which he has received original message.
To perform this operation, Smartswitch maintains SMPP cache in local database - a table, which is used to find the accordance of message ID to originator from whom Smartswitch received a message, and original numbers of sender and receiver.
SMPP cache is periodically truncated (see Tasks scheduling).
The period of SMPP cache truncation is configured in System -> Tasks -> Clear SMPP cache.
When clearing SMPP cache, Smartswitch leaves data for the last N days, to perform forwarding of Delivery receipts.
N value is configured in System -> Cluster settings -> leave SMPP cache for last N days.