From e1cdc322966993d00b0a1796075c9c90d6476dd3 Mon Sep 17 00:00:00 2001 From: Pablo Neira Ayuso Date: Mon, 7 Aug 2017 14:01:30 +0100 Subject: libmsc: add support for SMPP delivery receipts If the mobile phone requests a status report via SMS, send a DELIVER_SM with esm_class = Delivery Receipt to ESME to indicate that the SMS has been already delivered to its destination. MS GSM 03.40 SMSC SMPP 3.4 ESME | | | | SMS-DELIVER | | |<----------------------------| | | GSM 04.11 RP-ACK | | |---------------------------->| | | | DELIVER-SM | | | esm_class = Delivery Receipt | | |------------------------------->| | | DELIVER-SM-RESP | | |<-------------------------------| | | | This patch implements "Appendix B. Delivery Receipt Format" as specified in the SMPP 3.4 specs. This string is conveyed in the SMS message as data, and it is only meaningful to the ESME, for logging purposes. The "submit date" and "done date" are not yet set, and other fields are just sent with dummy values, so they are left to be finished as future work. The new SMPP TLV tag TLVID_user_message_reference is added to the SMPP messages inconditionally now since this information is required by delivery-reports to associate the status-report with the original SMS. Change-Id: Ic1a9023074bfa938099377980b6aff9b262fab2a --- src/libmsc/smpp_smsc.h | 1 + 1 file changed, 1 insertion(+) (limited to 'src/libmsc/smpp_smsc.h') diff --git a/src/libmsc/smpp_smsc.h b/src/libmsc/smpp_smsc.h index 0f1d35cc1..755e68577 100644 --- a/src/libmsc/smpp_smsc.h +++ b/src/libmsc/smpp_smsc.h @@ -92,6 +92,7 @@ struct osmo_smpp_cmd { uint32_t sequence_nr; uint32_t gsm411_msg_ref; uint8_t gsm411_trans_id; + bool is_report; struct osmo_timer_list response_timer; }; -- cgit v1.2.3