Exemple #1
0
        public bool Execute()
        {

            Console.Write("Give name for new discussion: ");
            String name = Console.ReadLine();

            Console.Write("Give name of receiver: ");
            String userTo = Console.ReadLine();

            Console.Write("Write first message: ");
            String msg = Console.ReadLine();

            // serialize new chat
            ChatRoom c = new ChatRoom(nickName, userTo, name);
            c.addMessage(nickName, msg);
            String json = JsonConvert.SerializeObject(c, Formatting.None);

            // send query to server
            ChatCommand cmd = new ChatCommand("add", nickName, json);
            StreamWriter writer = new StreamWriter(tcpClient.GetStream());
            writer.WriteLine(cmd.ToJson());
            writer.Flush();

            return false;
        }
Exemple #2
0
        public bool Execute()
        {
            Console.Clear();

            if (r != null)
            {
                foreach (ChatMessage m in r.Messages)
                {
                    Console.WriteLine(m.Time + " " + m.UserFrom + ": " + m.Message);
                }

                Console.WriteLine();
                Console.Write("Enter new message: ");
                String msg = Console.ReadLine();

                if (msg.Length > 2)
                {

                    // simply clone chat room id
                    ChatRoom c = new ChatRoom();
                    c.Id = r.Id;
                    c.addMessage(nickName, msg);
                    String json = JsonConvert.SerializeObject(c, Formatting.None);

                    // send query to server
                    ChatCommand cmd = new ChatCommand("msg", nickName, json);
                    StreamWriter writer = new StreamWriter(tcpClient.GetStream());
                    writer.WriteLine(cmd.ToJson());
                    writer.Flush();
                }
                else
                {
                    Console.WriteLine("Too short message!");
                }
            }

            return false;
        }