Пример #1
0
 public void Process()
 {
     try
     {
         string message;
         Stream = client.GetStream();
         do
         {
             message = GetMessage();
             //проверяем тип сообщения (регистрация , вход , файл , видео )
             string[] RegInput = message.Split(' ');
             if (RegInput[1] == "_Enter")
             {
                 dbCheck(RegInput);
             }
             else if (RegInput[1] == "_Registration")
             {
                 Registration(message);
             }
         } while (!registered);
         message = userName;
         Console.WriteLine($"{userName}: вошел в чат");
         // в бесконечном цикле получаем сообщения от клиента
         while (true)
         {
             try
             {
                 message = GetMessage();
                 // Добавить реализацию действия пользователя
                 Commands(message);
             }
             catch (Exception e)
             {
                 message = String.Format($"{userName}: покинул чат");
                 Console.WriteLine(message);
                 break;
             }
         }
     }
     catch (Exception e)
     {
         Console.WriteLine(e.Message);
     }
     finally
     {
         // в случае выхода из цикла закрываем ресурсы
         server.RemoveConnection(this.Id);
         Close();
     }
 }
Пример #2
0
        public void Process()
        {
            try
            {
                Stream = client.GetStream();
                // получаем имя пользователя
                string message = GetMessage();
                userName = message;

                message = userName + " вошел в чат";
                // посылаем сообщение о входе в чат всем подключенным пользователям
                server.BroadcastMessage(message, this.Id);
                Console.WriteLine(message);
                // в бесконечном цикле получаем сообщения от клиента
                while (true)
                {
                    try
                    {
                        message = GetMessage();
                        message = String.Format("{0}: {1}", userName, message);
                        Console.WriteLine(message);
                        server.BroadcastMessage(message, this.Id);
                    }
                    catch
                    {
                        message = String.Format("{0}: покинул чат", userName);
                        Console.WriteLine(message);
                        server.BroadcastMessage(message, this.Id);
                        break;
                    }
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
            finally
            {
                // в случае выхода из цикла закрываем ресурсы
                server.RemoveConnection(this.Id);
                Close();
            }
        }