/// <summary>
 /// Sends the data to all outgoing client.
 /// </summary>
 /// <param name="data">The data.</param>
 public void SendData(object msg)
 {
     try
     {
         IMessage message = msg as IMessage;
         if (OutgoingClientCount > 0)
         {
             byte[] data  = ASCIIEncoding.ASCII.GetBytes(PortServiceHelper.GetSendCallDetailString(message));
             int    count = OutgoingClientCount;
             foreach (TcpClient client in OutGoingClients)
             {
                 if (CheckClientConnection(client) && !isdisconnect)
                 {
                     try
                     {
                         NetworkStream stream = client.GetStream();
                         stream.Write(data, 0, data.Length);
                         Thread.Sleep(10);
                         //stream.Close();
                     }
                     catch (Exception ex)
                     {
                         logger.Error("Error occurred while sending data as " + ex.Message);
                     }
                 }
             }
         }
     }
     catch (Exception ex)
     {
         logger.Error("SendData() : " + ex.Message);
     }
 }
 void MultiClienTCPPort_DataReadEvent(object sender, byte[] data)
 {
     try
     {
         string         message = ASCIIEncoding.ASCII.GetString(data);
         PortDataParser parser  = new PortDataParser();
         if (parser.GetRequestType(message) == RequestType.HTTPGet)
         {
             message = parser.ParseGetMethodData(message);
             int dataIndex = message.IndexOf("?");
             if (dataIndex >= 0)
             {
                 dataIndex++;
             }
             if (dataIndex > 0)
             {
                 message = message.Substring(dataIndex);
             }
             if (!message.Equals("/favicon.ico"))
             {
                 message = message.Replace("%20", " ");
             }
             TcpClient     client  = sender as TcpClient;
             NetworkStream stream  = client.GetStream();
             byte[]        respons = ASCIIEncoding.ASCII.GetBytes("+OK");
             stream.Write(respons, 0, respons.Length);
             stream.Close();
         }
         if (message != null && !message.Equals("/favicon.ico"))
         {
             logger.Info("Data received : " + message);
         }
         PortServiceHelper.UpdateCallDetails(message);
     }
     catch (Exception ex)
     {
         logger.Error("Error Occurred as " + ex.Message);
     }
 }