public void Handle(IncomingMessage msg)
        {
            IRCServer server  = msg.Server;
            string    ourNick = server.Nick;

            if (msg.Command.Equals("NICK"))
            {
                string whoChanging = msg.Sender;
                string changingTo  = msg.Target;
                if (whoChanging.Equals(ourNick))
                {
                    server.Nick = changingTo;
                    server.SetAttemptNickChange(false);
                }
                else
                {
                    // update user nick list
                }
            }
            else if (msg.Command.Equals("ERROR"))
            {
                server.Dispose();
            }
            else
            {
                string raw = msg.Raw;
                switch (msg.Command)
                {
                // nick change
                case "433":
                    if (server.Connected)
                    {
                        // are we attempting a nick name change?
                        if (server.IsAttemptNickChange())
                        {
                            server.Nick = server.LastNick;
                            server.SetAttemptNickChange(false);
                        }
                    }
                    else
                    {
                        string nick;
                        if (server.Nick.Equals(server.AltNick))
                        {
                            nick = server.AltNick + 1;
                        }
                        else
                        {
                            nick = server.AltNick;
                        }
                        server.Nick = nick;
                    }
                    break;
                }
            }
        }
Exemple #2
0
 public void HandleCommand(IRCServer server, string command, IncomingMessage msg)
 {
     if (msg.HasMessage())
     {
         server.Write("QUIT :" + msg.Message);
     }
     else
     {
         server.Write("QUIT :Bye!");
     }
     server.Flush();
     server.Dispose();
 }
Exemple #3
0
 public void HandleCommand(IRCServer server, string command, IncomingMessage msg)
 {
     if (msg.HasMessage())
     {
         server.Write("QUIT :" + msg.Message);
     }
     else
     {
         server.Write("QUIT :Bye!");
     }
     server.Flush();
     server.Dispose();
 }
        public void Handle(IncomingMessage msg)
        {
            IRCServer server = msg.Server;

            if (msg.Command.Equals("001"))
            {
                foreach (IRCChannel chan in server.GetChannels())
                {
                    server.Write("JOIN " + chan.Channel);
                }

                server.Write("PRIVMSG NICKSERV :IDENTIFY " + server.Pass);
                server.Flush();
                server.Connected = true;
            }
            else if (msg.Raw.Contains("No more connections allowed from your host via this connect class"))
            {
                server.Dispose();
            }
        }