Page 1 of 1
					
				Delivery Status Problem
				Posted: Sat Sep 10, 2011 12:19 pm
				by tamer
				hi,
my company is welling to buy the InetLab.SMPP so, we made some tests on the demo dll - but we found a strange problem when making a deliversm() package
when the satus is anything but MessageState.Delivered - it is delivered right to the client but when it is MessageState.Delivered the status is not written in the delivery report in the client side
we made the test using different smpp clients including your smpp client demo but the result is the same
could you please review this problem - and respond as soon as possible
thanks
			 
			
					
				Re: Delivery Status Problem
				Posted: Sat Sep 10, 2011 2:23 pm
				by tamer
				This is also  a capture from the dlr received for three different cases -
			
		
				
			 
- Capture.PNG (5.61 KiB) Viewed 54422 times
 
note: the delived status is not shown
 
			
					
				Re: Delivery Status Problem
				Posted: Sun Sep 11, 2011 11:17 am
				by AhmedShabana
				I have the Same problem Please help
			 
			
					
				Re: Delivery Status Problem
				Posted: Sun Sep 11, 2011 12:32 pm
				by alt
				What version do you test?
			 
			
					
				Re: Delivery Status Problem
				Posted: Sun Sep 11, 2011 12:49 pm
				by tamer
				version 1.0.11.0
			 
			
					
				Re: Delivery Status Problem
				Posted: Sun Sep 11, 2011 12:55 pm
				by alt
				As far as I understood you are sending delivery receipt to the client.
How do you create Receipt class instance? Could you post here your code?
			 
			
					
				Re: Delivery Status Problem
				Posted: Sun Sep 11, 2011 1:04 pm
				by tamer
				Code: Select all
                            Inetlab.SMPP.PDU.DeliverSm dsm = new Inetlab.SMPP.PDU.DeliverSm();
                            dsm.SourceAddr = "0770700";
                            dsm.DestAddr = "20103695478";
                            dsm.DataCoding = Inetlab.SMPP.Common.DataCodings.ASCII;
                            dsm.UserDataPdu = new Inetlab.SMPP.Common.UserData();
                            dsm.Receipt = new Inetlab.SMPP.Common.Receipt();
                            dsm.Receipt.DoneDate = DateTime.Now;
                            dsm.Receipt.State = MessageState.Delivered;
                            dsm.Receipt.MessageId = "32569874";
                            dsm.Receipt.ErrorCode = "000";
                            dsm.Receipt.SubmitDate = DateTime.Now;
                            Inetlab.SMPP.PDU.DeliverSmResp response = client.Deliver(dsm);
and notice when I put any state other than Delivered - it works as in the snapshot I sent before
 
			
					
				Re: Delivery Status Problem
				Posted: Sun Sep 11, 2011 1:20 pm
				by alt
				it looks like in version 1.0.11.1 this bug doesn't exist anymore
Please download library again. I just uploaded.
			 
			
					
				Re: Delivery Status Problem
				Posted: Mon Sep 12, 2011 9:40 am
				by tamer
				It works fine now but the client no more receives sub and dlrvd in the delivery Receipt 
Whether I am using custom values or let the default values it appears blank to the client
I attached a snapshot of the delivery and you can compare it to the one I sent before
			
		
				
			 
- Capture.PNG (2.93 KiB) Viewed 54393 times
  
			
					
				Re: Delivery Status Problem
				Posted: Tue Sep 13, 2011 12:27 pm
				by alt
				could you try with code 
Code: Select all
dsm.Receipt.Submitted =1;
dsm.Receipt.Delivered =1;
 
			
					
				Re: Delivery Status Problem
				Posted: Tue Sep 13, 2011 1:27 pm
				by tamer
				I did add the code as u mentioned and this was the result
			
		
				
			 
- dlr.PNG (1.92 KiB) Viewed 54380 times
 
the standard smpp protocol says that the size of sub and delvrd is 3 octets while it is here one only
the format of this delivery is very important for our clients, please review this issue
 
			
					
				Re: Delivery Status Problem
				Posted: Wed Sep 14, 2011 12:24 pm
				by alt
				i see, i'm in journey now and can fix it after September 18.
You can try to use NameValueCollection that contains all strings
dsm.Receipt.Items["sub"]="001";
I'm writing this message from smartphone.
			 
			
					
				Re: Delivery Status Problem
				Posted: Wed Sep 14, 2011 3:05 pm
				by tamer
				Thx, it worked.
this is the code i used.
Code: Select all
                            dsm.Receipt.Items["sub"]="001";
                            dsm.Receipt.Items["dlvrd"]="001";
plz mail me when u return or make a new version.
have a nice time.