Example #1
0
        private void client_PrivateMessage(Client sender, PrivateMessage privateMessage)
        {
            if (Channel.IsChannel(privateMessage.Recipient))
            {
                Channel channel = Chats.SingleOrDefault(chat => chat.Name == privateMessage.Recipient) as Channel;
                if (channel == null)
                {
                    channel = new Channel(privateMessage.Recipient);
                    Chats.Add(channel);
                }

                channel.Messages.Add(privateMessage);

                User user = users.SingleOrDefault(usr => usr.Complete == privateMessage.User);
                if (user == null)
                {
                    user = new User(privateMessage.User, true);
                    users.Add(user);
                }

                if (user.IsNickServIdentified == null)
                {
                    user.RequestNickServAuthentication(client);
                }
            }
            else
            {
            }
        }
Example #2
0
 /// <summary>
 /// Dispatches the right events for the line.
 /// </summary>
 /// <param name="line">The line.</param>
 private void dispatchEventsFor(string line)
 {
     if (Messages.Message.IsCorrectFormat(line))
     {
         //Tryed to order them by how often they appear.
         if (Messages.Server.PrivateMessage.IsCorrectFormat(line))
         {
             var privateMessage = new Messages.Server.PrivateMessage(line);
             onPrivateMessage(privateMessage);
             onMessage(privateMessage);
         }
         else if (Messages.Server.NumericalMessage.IsCorrectFormat(line))
         {
             var numericalMessage = new Messages.Server.NumericalMessage(line);
             onNumericalMessage(numericalMessage);
             onMessage(numericalMessage);
         }
         else if (Messages.Server.Notice.IsCorrectFormat(line))
         {
             var notice = new Messages.Server.Notice(line);
             onNotice(notice);
             onMessage(notice);
         }
         else if (Messages.Server.NickMessage.IsCorrectFormat(line))
         {
             var nickMessage = new Messages.Server.NickMessage(line);
             onNickMessage(nickMessage);
             onMessage(nickMessage);
         }
         else if (Messages.Server.JoinMessage.IsCorrectFormat(line))
         {
             var joinMessage = new Messages.Server.JoinMessage(line);
             onJoinMessage(joinMessage);
             onMessage(joinMessage);
         }
         else if (Messages.Server.PartMessage.IsCorrectFormat(line))
         {
             var partMessage = new Messages.Server.PartMessage(line);
             onPartMessage(partMessage);
             onMessage(partMessage);
         }
         else if (Messages.Server.QuitMessage.IsCorrectFormat(line))
         {
             var quitMessage = new Messages.Server.QuitMessage(line);
             onQuitMessage(quitMessage);
             onMessage(quitMessage);
         }
     }
 }
Example #3
0
 /// <summary>
 /// Fires the PrivateMessage event.
 /// </summary>
 /// <param name="privateMessage">The private message.</param>
 protected void onPrivateMessage(PrivateMessage privateMessage)
 {
     if (PrivateMessage != null)
         PrivateMessage(this, privateMessage);
 }
Example #4
0
        public void PrivateMessageParses()
        {
            var message = ":Banane9 PRIVMSG #banane9 :Hello, channel!";

            Assert.IsTrue(PrivateMessage.IsCorrectFormat(message));

            var privateMessage = new PrivateMessage(message);

            Assert.AreEqual<string>("Banane9", privateMessage.User);
            Assert.AreEqual<string>("#banane9", privateMessage.Recipient);
            Assert.AreEqual<string>("Hello, channel!", privateMessage.Message);
        }