Accessing Optional Parameter in evDeliverSm
Posted: Tue May 20, 2014 7:51 am
				
				I am assigning Optional Paramter in the below method, how i am not able to get in "evDeliverSm" completed method.
Code snippet of client constructor 
evDeliverSM Completed Method
			Code: Select all
  public static void SendSMS(string pin, string msisdn)
        {
            try
            {
                _client.SendSpeedLimit = 0;
                DataCodings coding = (DataCodings)Enum.Parse(typeof(DataCodings), "Default");
                byte srcTon = byte.Parse("0");
                byte srcNpi = byte.Parse("0");
                string srcAdr = "2378";
                byte dstTon = byte.Parse("1");
                byte dstNpi = byte.Parse("1");
                string dstAdr = msisdn;                                
                
                //Sending request to SMPP Server
                IList<SubmitSmResp> resp = _client.Submit(
                     SMS.ForSubmit()
                    .From(srcAdr, srcTon, srcNpi)
                    .To(dstAdr, dstTon, dstNpi)
                    .Coding(coding)
                    .Text("This is your pin code" + " " + pin)
                    .ExpireIn(TimeSpan.FromDays(2))
                    .DeliveryReceipt()
                   [color=#4000FF] .AddParameter(1, GetBytes("PREP"))[/color]
                );
                
                Logging.WriteLog("Message Sent to SMPP Server: "
                            + "Date : " + DateTime.Now 
                            + " SourceAddr : " + srcAdr
                            + " DestAddr : " + dstAdr
                            + " Coding : " + coding);
                       
            }
            catch (Exception ex)
            {
                Logging.WriteException(ex);
            }  
        }
Code: Select all
                _client.evConnected += new Inetlab.SMPP.Common.ConnectedEventHandler(client_evConnected);
                _client.evDisconnected += new Inetlab.SMPP.Common.DisconnectedEventHandler(client_evDisconnected);
                _client.evBindComplete += new Inetlab.SMPP.Common.BindRespEventHandler(client_evBindComplete);
                _client.evDeliverSm += new Inetlab.SMPP.Common.DeliverSmEventHandler(client_evDeliverSm);
                _client.evEnquireLink += new Inetlab.SMPP.Common.EnquireLinkEventHandler(client_evEnquireLink); 
Code: Select all
        private static  void client_evDeliverSm(object sender, DeliverSm data)
        {
                var obj = data.Client.GetMessageText(data.Optional[0].Value, data.DataCoding);
         }