public static void ConnectToServers()
 {
     AppLog.WriteLine(5, "STATUS", "Entered IRCLogger.Program.ConnectToServers().");
     MySqlCommand Cmd = new MySqlCommand("SELECT * FROM " + Config.SQLTablePrefix + "networks", EnumeraterDBConn.Connection);
     MySqlDataReader DataReader = Cmd.ExecuteReader();
     DataTable NetworkTable = new DataTable();
     NetworkTable.Load(DataReader);
     DataReader.Close();
     bool ServerExists;
     foreach (DataRow CurNetwork in NetworkTable.Rows) {
         ServerExists = false;
         foreach (Server CurServer in Servers) {
             if (CurServer.ID == Convert.ToInt32(CurNetwork["id"])) {
                 ServerExists = true;
                 CurServer.JoinChannels();
             }
         }
         if (!ServerExists) {
             Server TempServer = new Server(Servers);
             TempServer.ID = Convert.ToInt32(CurNetwork["id"]);
             TempServer.Hostname = CurNetwork["server"].ToString();
             TempServer.Network = CurNetwork["name"].ToString();
             TempServer.Port = Convert.ToInt32(CurNetwork["port"]);
             TempServer.Pass = CurNetwork["password"].ToString();
             TempServer.RealName = CurNetwork["realname"].ToString();
             TempServer.Nick = CurNetwork["nickname"].ToString();
             TempServer.AltNick = CurNetwork["altnickname"].ToString();
             Servers.Add(TempServer);
             TempServer.Connect();
         }
     }
 }
Esempio n. 2
0
 public bool Send(string DataToSend)
 {
     if (ClientSock.Connected)
     {
         AppLog.WriteLine(5, "DATA", ParentServer.Network + ": OUT: " + DataToSend);
         DataToSend += "\n";
         byte[] NewData = new byte[DataToSend.Length];
         ClientSock.BeginSend(Encoding.UTF8.GetBytes(DataToSend), 0, DataToSend.Length, 0, new AsyncCallback(OnSendComplete), ClientSock);
         return(true);
     }
     else
     {
         ParentServer.Connect();
         return(false);
     }
 }
 public void Disconnected(object IRCServer)
 {
     AppLog.WriteLine(5, "TIMR", "No ping response or activity after " + Config.PingTimeout + " seconds. Disconnect Timer Executed...");
     AppLog.WriteLine(5, "TIMR", "Disconnect Timer Destroyed...");
     m_DetectDisconnectTimer.Dispose();
     AppLog.WriteLine(5, "TIMR", "Initiating reconnection...");
     m_IRCServer.Connect();
 }