예제 #1
0
        private static void HandleEventLoop(IrcDotNet.IrcClient client)
        {
            bool isExit = false;

            while (!isExit)
            {
                Console.Write("> ");
                var command = Console.ReadLine();
                switch (command)
                {
                case "exit":
                    isExit = true;
                    break;

                default:
                    if (!string.IsNullOrEmpty(command))
                    {
                        if (command.StartsWith("/") && command.Length > 1)
                        {
                            client.SendRawMessage(command.Substring(1));
                        }
                        else
                        {
                            Console.WriteLine("unknown command '{0}'", command);
                        }
                    }
                    break;
                }
            }
            client.Disconnect();
        }
 internal void Disconnect()
 {
     if (_irc != null && _irc.IsConnected)
     {
         _irc.Disconnect();
         _irc.ErrorMessageReceived -= _irc_ErrorMessageReceived;
         _irc.Connected            -= _irc_Connected;
         _irc.Disconnected         -= _irc_Disconnected;
         _irc.ClientInfoReceived   -= _irc_ClientInfoReceived;
         _irc.RawMessageReceived   -= _irc_RawMessageReceived;
         _irc.Registered           -= _irc_Registered;
     }
 }