private void CheckUserName(IrcClient client, IIrcMessageSource source, IList<IIrcMessageTarget> targets, string command, IList<string> parameters) { NormalisedUser normuser = new NormalisedUser(source.Name.ToString()); client.LocalUser.SendNotice(source.Name, normuser.normalised_username()); }
private void MyVisits(IrcClient client, IIrcMessageSource source, IList<IIrcMessageTarget> targets, string command, IList<string> parameters) { NormalisedUser normaliseduser = new NormalisedUser(); normaliseduser.orig_username = source.Name; IEnumerable<User> joineduser = LUserList.Where(x => x.isUser(normaliseduser.normalised_username())); if (joineduser.Count() > 0) { client.LocalUser.SendMessage(source.Name, joineduser.First().VisitCounter + " visits"); } }
protected override void OnChannelUserLeft(IrcChannel channel, IrcChannelUserEventArgs e) { ReconnectInbound = false; NormalisedUser normaliseduser = new NormalisedUser(); normaliseduser.orig_username = e.ChannelUser.User.ToString(); IEnumerable<User> joineduser = LUserList.Where(x => x.isUser(normaliseduser.normalised_username())); if(joineduser.Count() > 0) { joineduser.First().leave(); } }
private void AddAlias(IrcClient client, IIrcMessageSource source, IList<IIrcMessageTarget> targets, string command, IList<string> parameters) { if (parameters.Count() > 0) { if (parameters[0].ToString() == "help") { client.LocalUser.SendNotice(source.Name, "!addalias AliasName [Password]"); client.LocalUser.SendNotice(source.Name, "This adds the Alias to your User if possible"); client.LocalUser.SendNotice(source.Name, "Passwort is only essential if set"); return; } string password = ""; if(parameters.Count() == 2) { password = parameters[1]; } NormalisedUser normuser = new NormalisedUser(source.Name.ToString()); NormalisedUser alias = new NormalisedUser(parameters[0]); User user = getUser(normuser.normalised_username().ToLower()); if (user != null) if (user.AddAlias(alias.normalised_username(),LUserList)) { client.LocalUser.SendNotice(source.Name, "Alias Added"); } else { client.LocalUser.SendNotice(source.Name, "Error"); } } SaveUserList(); }
private void ToggleUserLogging(IrcClient client, IIrcMessageSource source, IList<IIrcMessageTarget> targets, string command, IList<string> parameters) { NormalisedUser normuser = new NormalisedUser(source.Name.ToString()); User user = getUser(normuser.normalised_username().ToLower()); if (user != null) client.LocalUser.SendNotice(source.Name, getUser(normuser.normalised_username()).toggleLoggingOp().ToString()); }
protected override void OnChannelUserJoined(IrcChannel channel, IrcChannelUserEventArgs e) { if (Properties.Settings.Default.SilentMode.ToString() != "true") { if (xmlprovider == null) { xmlprovider = new XMLProvider(); } ReconnectInbound = false; if (!e.ChannelUser.User.ToString().ToLower().Contains("andchat")) { #region whisperstatsonjoin NormalisedUser normaliseduser = new NormalisedUser(); normaliseduser.orig_username = e.ChannelUser.User.ToString(); IEnumerable<User> joineduser = LUserList.Where(x => x.isUser(normaliseduser.normalised_username())); if (joineduser.Count() > 0) { Tuple<DateTime, int> VisitData = joineduser.First().visit(); string visitstring = ""; switch (VisitData.Item2) { case 1: visitstring = VisitData.Item2 + "st"; break; case 2: visitstring = VisitData.Item2 + "nd"; break; case 3: visitstring = VisitData.Item2 + "rd"; break; default: visitstring = VisitData.Item2 + "th"; break; } String days_since_last_visit = DateTime.Now.Subtract(Convert.ToDateTime(VisitData.Item1)).ToString("d' days 'h':'mm':'ss"); String output = "This is " + normaliseduser.normalised_username() + "'s " + visitstring + " visit. Their last visit was on " + VisitData.Item1.ToString("dd-MM-yyyy HH:mm:ss") + " (" + days_since_last_visit + " ago)"; foreach (var loggingOp in LUserList.Where(x => x.bIsLoggingOp)) thisclient.LocalUser.SendNotice(loggingOp.Name, output); } else { String output = "This is " + normaliseduser.normalised_username() + "'s first visit."; foreach (var loggingOp in LUserList.Where(x => x.bIsLoggingOp)) thisclient.LocalUser.SendNotice(loggingOp.Name, output); User newUser = new User(); XDocument Streams = XDocument.Load(Directory.GetCurrentDirectory() + "/XML/Streams.xml"); IEnumerable<XElement> streamchildren = from streams in Streams.Root.Elements() select streams; foreach (var stream in streamchildren) { newUser.addStream(stream.Attribute("Channel").Value, true); } newUser.Name = normaliseduser.normalised_username(); newUser.bIsLoggingOp = false; newUser.password = ""; newUser.bMessages = false; newUser.visit(); LUserList.Add(newUser); // TODO: Suscribe to all streams; } #endregion SaveUserList(); foreach (string streamname in xmlprovider.OnlineStreamList()) { string _streamname = streamname.Replace(",", ""); User user = getUser(normaliseduser.normalised_username().ToLower()); if(user != null) if (user.isSubscribed(_streamname)) { thisclient.LocalUser.SendNotice(e.ChannelUser.User.ToString(), String.Format( "Stream running: _{0}_ ({1}) at {2}", _streamname, xmlprovider.StreamInfo(_streamname, "game"), xmlprovider.StreamInfo(_streamname, "URL") )); } } normaliseduser = null; } } }
private void RemoveAlias(IrcClient client, IIrcMessageSource source, IList<IIrcMessageTarget> targets, string command, IList<string> parameters) { if (parameters.Count() > 0) { if (parameters[0].ToString() == "help") { client.LocalUser.SendNotice(source.Name, "!removealias AliasName [Password]"); client.LocalUser.SendNotice(source.Name, "This removes the Alias from your User if possible"); client.LocalUser.SendNotice(source.Name, "Passwort is only essential if set"); return; } string password = ""; if (parameters.Count() == 2) { password = parameters[1]; } NormalisedUser normuser = new NormalisedUser(source.Name.ToString()); NormalisedUser alias = new NormalisedUser(parameters[0]); User user = getUser(normuser.normalised_username()).RemoveAlias(alias.normalised_username()); XDocument Streams = XDocument.Load(Directory.GetCurrentDirectory() + "/XML/Streams.xml"); IEnumerable<XElement> streamchildren = from streams in Streams.Root.Elements() select streams; foreach (var stream in streamchildren) { user.addStream(stream.Attribute("Channel").Value, true); } LUserList.Add(user); if (user != null) { client.LocalUser.SendNotice(source.Name, "Alias Removed"); } else { client.LocalUser.SendNotice(source.Name, "Error"); } } SaveUserList(); }
private void StreamCheck(IrcClient client, IIrcMessageSource source, IList<IIrcMessageTarget> targets, string command, IList<string> parameters) { foreach (var stream in xmlprovider.OnlineStreamList()) { string[] streamprovidersplit = stream.Split(','); //TODO add provider link completion bool userfound = false; foreach (var user in thisclient.Channels.First().Users) { if (user.User.NickName.ToLower() == source.Name.ToLower()) { userfound = true; } } List<NormalisedUser> UsersinChannel = new List<NormalisedUser>(); NormalisedUser normuser = new NormalisedUser(source.Name.ToString()); User userUser = getUser(normuser.normalised_username().ToLower()); if (userUser != null) if (userUser.isSubscribed(stream)) { client.LocalUser.SendNotice(source.Name, streamprovidersplit[0] + " is currently streaming " + xmlprovider.StreamInfo(streamprovidersplit[0], "game") + " at " + xmlprovider.StreamInfo(streamprovidersplit[0], "URL")); } else { client.LocalUser.SendNotice(source.Name, "No Stream is currently running."); } } if (xmlprovider.OnlineStreamList().Count() == 0) { client.LocalUser.SendNotice(source.Name, "No Stream is currently running."); } }
private void MyVisits(object sender, MessageEventArgs e, List<string> parameters) { NormalisedUser normaliseduser = new NormalisedUser(); normaliseduser.orig_username = e.User.Name; IEnumerable<DataFiles.User> joineduser = LUserList.Where(x => x.isUser(normaliseduser.normalised_username())); if (joineduser.Count() > 0) { e.User.SendMessage(joineduser.First().VisitCounter + " visits"); } }
private void CheckUserName(object sender, MessageEventArgs e, List<string> parameters) { NormalisedUser normuser = new NormalisedUser(e.User.Name.ToString()); e.User.SendMessage(normuser.normalised_username()); }
private void AddAlias(object sender, MessageEventArgs e, List<string> parameters) { if (parameters.Count() > 0) { if (parameters[0].ToString() == "help") { e.User.SendMessage("!addalias AliasName [Password]"); e.User.SendMessage("This adds the Alias to your User if possible"); e.User.SendMessage("Passwort is only essential if set"); return; } string password = ""; if (parameters.Count() == 2) { password = parameters[1]; } NormalisedUser normuser = new NormalisedUser(e.User.Name.ToString()); NormalisedUser alias = new NormalisedUser(parameters[0]); DataFiles.User user = getUser(normuser.normalised_username().ToLower()); if (user != null) if (user.AddAlias(alias.normalised_username(), LUserList)) { e.User.SendMessage("Alias Added"); } else { e.User.SendMessage("Error"); } } SaveUserList(); }
private void StreamCheck(object sender, MessageEventArgs e, List<string> parameters) { foreach (var stream in xmlprovider.OnlineStreamList()) { string[] streamprovidersplit = stream.Split(','); List<NormalisedUser> UsersinChannel = new List<NormalisedUser>(); NormalisedUser normuser = new NormalisedUser(e.User.Name.ToString()); DataFiles.User userUser = getUser(normuser.normalised_username().ToLower()); if (userUser != null) if (userUser.isSubscribed(stream)) { e.User.SendMessage(streamprovidersplit[0] + " is currently streaming " + xmlprovider.StreamInfo(streamprovidersplit[0], "game") + " at " + xmlprovider.StreamInfo(streamprovidersplit[0], "URL")); } else { e.User.SendMessage("No Stream is currently running."); } } if (xmlprovider.OnlineStreamList().Count() == 0) { e.User.SendMessage("No Stream is currently running."); } }
private void RemoveAlias(object sender, MessageEventArgs e, List<string> parameters) { if (parameters.Count() > 0) { if (parameters[0].ToString() == "help") { e.User.SendMessage("!removealias AliasName [Password]"); e.User.SendMessage("This removes the Alias from your User if possible"); e.User.SendMessage("Passwort is only essential if set"); return; } string password = ""; if (parameters.Count() == 2) { password = parameters[1]; } NormalisedUser normuser = new NormalisedUser(e.User.Name.ToString()); NormalisedUser alias = new NormalisedUser(parameters[0]); DataFiles.User user = getUser(normuser.normalised_username()).RemoveAlias(alias.normalised_username()); XDocument Streams = XDocument.Load(Directory.GetCurrentDirectory() + "/XML/Streams.xml"); IEnumerable<XElement> streamchildren = from streams in Streams.Root.Elements() select streams; foreach (var stream in streamchildren) { user.addStream(stream.Attribute("Channel").Value, true); } LUserList.Add(user); if (user != null) { e.User.SendMessage("Alias Removed"); } else { e.User.SendMessage("Error"); } } SaveUserList(); }