Advertisement
DerSkythe

Untitled

Sep 16th, 2013
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.11 KB | None | 0 0
  1. [HandleProcessCorruptedStateExceptions]
  2.         private void ServerEvClientSubmitSm(object sender, SmppServerClient client, SubmitSm data)
  3.         {
  4.             try
  5.             {
  6.                 byte[] payload = data.Optional[OptionalTags.MessagePayload];
  7.  
  8.                 if (data.RegisteredDelivery != (byte)(SMSCDeliveryReceipt.NotRequested))
  9.                 {
  10.                     var deliver = new DeliverSm
  11.                                       {
  12.                                           Receipt = new Receipt
  13.                                                         {
  14.                                                             Delivered = 1,
  15.                                                             DoneDate = DateTime.Now,
  16.                                                             MessageId = data.Response.MessageId,
  17.                                                             State = MessageState.Delivered
  18.                                                         },
  19.                                           Sequence = data.Sequence,
  20.                                           Command = CommandSet.DeliverSm,
  21.                                           SourceAddrTon = data.SrcTon,
  22.                                           SourceAddrNpi = data.SrcNpi,
  23.                                           SourceAddr = data.DestAddr,
  24.                                           DestAddrTon = data.DestTon,
  25.                                           DestAddrNpi = data.DestNpi,
  26.                                           DestAddr = data.SrcAddr,
  27.                                           ProtocolId = data.ProtocolId,
  28.                                           PriorityFlag = data.PriorityFlag,
  29.                                           RegisteredDelivery = (byte)SMSCDeliveryReceipt.NotRequested,
  30.                                           DataCoding = data.DataCoding,
  31.                                           EsmClass = (byte)MessageTypes.SMSCDeliveryReceipt
  32.                                       };
  33.  
  34.                     client.DeliverAsync(deliver);
  35.                 }
  36.  
  37.                 var userId = GetClientDbId(client.SystemID);
  38.  
  39.                 if (payload != null)
  40.                 {
  41.                     string text = client.GetMessageText(payload, data.DataCoding);
  42.                     Log.Info(string.Format("UserId: {0}, Client {1}:{2} Received message Src:{3}, Dst:{4}, Text: {5}",
  43.                         userId, client.RemoteIP, client.RemotePort, data.DestAddr, data.SrcAddr, text));
  44.  
  45.                     UpdateDataInDb(userId, text, data);
  46.                 }
  47.                 else
  48.                 {
  49.                     Log.Info(string.Format("UserId: {0}, Client {1}:{2} Received message Src:{3}, Dst:{4}, Text: {5}",
  50.                                            userId, client.RemoteIP, client.RemotePort, data.DestAddr, data.SrcAddr,
  51.                                            data.ShortMessage));
  52.                     UpdateDataInDb(userId, data.ShortMessage, data);
  53.                 }
  54.             }
  55.             catch (Exception exp)
  56.             {
  57.                 Log.ErrorException(exp.Message, exp);
  58.             }
  59.         }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement