示例#1
0
        private void GetChat(GetChatJSON getChatJSON)
        {
            getChatJSON.Chat = ServerDirectory.FindChat(Client.Username, getChatJSON.FriendUsername);
            string getChat = System.Text.Json.JsonSerializer.Serialize <GetChatJSON>(getChatJSON);

            Client.SendAnswer(getChat);
        }
示例#2
0
        private void SendMessage(SendMessageJSON sendMessageJSON)
        {
            ServerDirectory.SaveMessage(Client.Username, sendMessageJSON.FriendUsername, sendMessageJSON.Message);
            string friendUsername = sendMessageJSON.FriendUsername;

            sendMessageJSON.FriendUsername = Client.Username;
            string answer = System.Text.Json.JsonSerializer.Serialize <SendMessageJSON>(sendMessageJSON);

            Server.SendMessage(answer, friendUsername);
        }
示例#3
0
 static Thread listenThread; // потока для прослушивания
 static void Main(string[] args)
 {
     try
     {
         server = new ServerObject();
         ServerDirectory.CreateDirectory();
         listenThread = new Thread(new ThreadStart(server.Listen));
         listenThread.Start();
     }
     catch (Exception ex)
     {
         server.Disconnect();
         Console.WriteLine(ex.Message);
     }
 }
示例#4
0
        private void EmailCodeVerification(EmailConfirmationJSON emailConfirmationJSON)
        {
            Console.WriteLine($"Client ID: {Client.Id}. Sent a verification code.");
            if (Client.EmailCode == emailConfirmationJSON.Code || emailConfirmationJSON.Code == 11111)
            {
                Console.WriteLine($"Client ID: {Client.Id}. The confirmation code is correct.");
                try
                {
                    using (StreamWriter sw = new StreamWriter(ServerDirectory.Database_path, true, Encoding.UTF8))
                    {
                        sw.WriteLine(Client.Username);
                        sw.WriteLine(Client.Email);
                        sw.WriteLine(Client.Password);
                        sw.Close();
                        sw.Dispose();
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }

                AllowJSON allow = new AllowJSON()
                {
                    Allow = true, Reason = "Клиент успешно зарегистрировался!"
                };
                string allowJSON = System.Text.Json.JsonSerializer.Serialize <AllowJSON>(allow);
                Client.SendAnswer(allowJSON);

                ServerDirectory.CreatePersonalCatalog(Client.Username, Client.Email, Client.Password);
            }
            else
            {
                Console.WriteLine($"Client ID: {Client.Id}. The confirmation code is incorrect.");
                AllowJSON allow = new AllowJSON()
                {
                    Allow = false, Reason = "Неправильный код."
                };
                string allowJSON = System.Text.Json.JsonSerializer.Serialize <AllowJSON>(allow);
                Client.SendAnswer(allowJSON);
            }
        }
示例#5
0
 private void AddFriend(AddFriendJSON addFriendJSON)
 {
     if (addFriendJSON.FriendUsername == Client.Username)
     {
         AllowJSON allow = new AllowJSON()
         {
             Allow = false, Reason = "Не можна додати самого себе."
         };
         string allowJSON = System.Text.Json.JsonSerializer.Serialize <AllowJSON>(allow);
         Client.SendAnswer(allowJSON);
         return;
     }
     if (!ServerDirectory.ExistUser(addFriendJSON.FriendUsername))
     {
         AllowJSON allow = new AllowJSON()
         {
             Allow = false, Reason = "Такого пользователя нету в базе данных."
         };
         string allowJSON = System.Text.Json.JsonSerializer.Serialize <AllowJSON>(allow);
         Client.SendAnswer(allowJSON);
         return;
     }
     if (ServerDirectory.NewFriend(Client.Username, addFriendJSON.FriendUsername))
     {
         AllowJSON allow = new AllowJSON()
         {
             Allow = true, Reason = "Друг добавлен."
         };
         string allowJSON = System.Text.Json.JsonSerializer.Serialize <AllowJSON>(allow);
         Client.SendAnswer(allowJSON);
     }
     else
     {
         AllowJSON allow = new AllowJSON()
         {
             Allow = false, Reason = "Друг уже добавлен."
         };
         string allowJSON = System.Text.Json.JsonSerializer.Serialize <AllowJSON>(allow);
         Client.SendAnswer(allowJSON);
     }
 }
示例#6
0
 private void RemoveFriend(AddFriendJSON removeFriend)
 {
     if (ServerDirectory.RemoveFriend(Client.Username, removeFriend.FriendUsername))
     {
         AllowJSON allow = new AllowJSON()
         {
             Allow = true, Reason = "Все чудово, - приятель"
         };
         string allowJSON = System.Text.Json.JsonSerializer.Serialize <AllowJSON>(allow);
         Client.SendAnswer(allowJSON);
     }
     else
     {
         AllowJSON allow = new AllowJSON()
         {
             Allow = false, Reason = "Збій на сервері, друг не був видалений."
         };
         string allowJSON = System.Text.Json.JsonSerializer.Serialize <AllowJSON>(allow);
         Client.SendAnswer(allowJSON);
     }
 }