experimental IRC changes, because it's friday, and I'm curious if this

will work.
0.6.0-stable
Sean Dague 2008-06-06 20:21:25 +00:00
parent be44969927
commit 2cfdfaeaa5
1 changed files with 21 additions and 8 deletions

View File

@ -250,6 +250,7 @@ namespace OpenSim.Region.Environment.Modules.Avatar.Chat
m_log.DebugFormat("[IRC] {0} logging on", clientName);
m_irc.PrivMsg(m_irc.Nick, "Sim",
String.Format("notices {0} logging on", clientName));
m_irc.NewUser(clientName);
}
m_last_new_user = clientName;
}
@ -287,6 +288,7 @@ namespace OpenSim.Region.Environment.Modules.Avatar.Chat
string clientName = String.Format("{0}{1}", presence.Firstname, presence.Lastname);
m_log.DebugFormat("[IRC] noticing {0} in {1}", clientName, regionName);
m_irc.PrivMsg(m_irc.Nick, "Sim", String.Format("notices {0} left {1}", clientName, regionName));
m_irc.RemoveUser(clientName);
}
}
catch (Exception)
@ -482,12 +484,8 @@ namespace OpenSim.Region.Environment.Modules.Avatar.Chat
listener.Start();
ThreadTracker.Add(listener);
m_writer.WriteLine(m_user);
m_writer.Flush();
m_writer.WriteLine(String.Format("NICK {0}", m_nick));
m_writer.Flush();
m_writer.WriteLine(String.Format("JOIN {0}", m_channel));
m_writer.Flush();
NewUser(m_user);
m_log.Info("[IRC]: Connection fully established");
m_connected = true;
}
@ -500,6 +498,21 @@ namespace OpenSim.Region.Environment.Modules.Avatar.Chat
}
}
public void NewUser(string nick)
{
m_writer.WriteLine(nick);
m_writer.Flush();
m_writer.WriteLine(String.Format("NICK {0}", m_nick));
m_writer.Flush();
m_writer.WriteLine(String.Format("JOIN {0}", m_channel));
m_writer.Flush();
}
public void RemoveUser(string nick)
{
m_writer.WriteLine(String.Format("QUIT :{0}", nick));
}
public void Reconnect()
{
m_connected = false;