This project is read-only.

How to use get delivery reports event?

Mar 29, 2012 at 3:25 PM

Hi guys,

I am a newbie to SMPP however, I have managed to be able to Bind, Send  Messages, and Unbind. However, I do not know how to get delivery reports event? I read the documentation on delivery reports but I am using "SubmitSm" and I have not seen any examples of caching dr's using it. In one of the examples  I found the creation of report.  "mSubmitSM.RegisteredDelivery = RegisteredDelivery.DeliveryReceipt;". I have included my sending code below.

Does anyone know how to catch a dr event?


private void send_click(object sender, EventArgs e)

	DateTime start = DateTime.Now;
	SubmitSm mSubmitSM = new SubmitSm(); // init the submitsm method
	//Populate SubmitSm properties as required
	mSubmitSM.SourceAddress.Address = sourceaddess; // alphanumeric sender
	mSubmitSM.DestinationAddress.Npi = NumberingPlanIndicator.ISDN; // destionation NPI 
	mSubmitSM.DestinationAddress.Ton = TypeOfNumber.National; // destionation TON
	mSubmitSM.SourceAddress.Npi = NumberingPlanIndicator.ISDN; // source NPI
	mSubmitSM.SourceAddress.Ton = TypeOfNumber.National; // and here the important setting: TON - 5 (alphanumeric) - works for me :-)
	mSubmitSM.EsmClass = EsmClass.Default; // esm class
	mSubmitSM.RegisteredDelivery = RegisteredDelivery.DeliveryReceipt; //reg_del to 1
	mSubmitSM.ServiceType = servicetype; // service type cellular messaging, - not mandatory to set, you can leave it
	mSubmitSM.SetMessageText("test message. ", DataCoding.SMSCDefault); // send msg - all OK, message 

	//Send messages to all numbers 
	for (int i = 0; i < numbers.Length; i++)
		mSubmitSM.DestinationAddress.Address = numbers[i];
		ResponsePDU resp = mmSession.SendPdu(mSubmitSM);







Mar 29, 2012 at 7:02 PM

Please disregard my last post I was able to use the wrapper and it works perfectly!!


Apr 30, 2012 at 10:43 PM

Hi Cam, Pls how were you able to get the delivery reports using the wrapper. I have not been able to get anything using this:

void client_MessageDelivered(object sender, MessageEventArgs e)
            TextMessage msg = e.ShortMessage as TextMessage;
            Console.WriteLine("Delivered: " + msg);