server dlr

.NET library for SMPP protocol
Locked
stevemilt
Posts: 1
Joined: Thu Jan 21, 2016 4:45 am

server dlr

Post by stevemilt » Thu Jan 21, 2016 4:49 am

Hi all,
the following code submits dlr reports to a connected client.

Code: Select all

 client.DeliverAsync(
                     SMS.ForDeliver()
                    .From(message.SourceAddr, message.SourceAddrTon, message.SourceAddrNpi)
                    .To(message.DestAddr, message.DestAddrTon, message.DestAddrNpi)
                    .Receipt(new Receipt
                             {
                                 DoneDate = DateTime.Now,
                                 State = MessageState.Delivered,
                                 MessageId = message.MessageId,
                                 ErrorCode = "0",
                                 SubmitDate = message.SubmitDate,
                                 Text = message.Text
                             })
                    );
how can i get sequence number to match with the one in the evDeliverComplete event.

Thanks
alt
Site Admin
Posts: 985
Joined: Tue Apr 25, 2006 9:45 am

Re: server dlr

Post by alt » Fri Jan 29, 2016 6:00 pm

Hi

Following code does the same. Here you can get sequence number.

Code: Select all

IList<DeliverSm> list = SMS.ForDeliver()
                    .From(message.SourceAddr, message.SourceAddrTon, message.SourceAddrNpi)
                    .To(message.DestAddr, message.DestAddrTon, message.DestAddrNpi)
                    .Receipt(new Receipt
                             {
                                 DoneDate = DateTime.Now,
                                 State = MessageState.Delivered,
                                 MessageId = message.MessageId,
                                 ErrorCode = "0",
                                 SubmitDate = message.SubmitDate,
                                 Text = message.Text
                             })
					.Create(client);
					
foreach (DeliverSm sm in list)
{
    sm.Sequence = client.SequenceGenerator.NextSequenceNumber();
}		

client.DeliverAsync(list);
Locked