public void OnChannelModeChange( UserInfo who, string channel, ChannelModeInfo[] modes) { //+h bob +b -i *!*@* +e *!*@*.fi Assertion.AssertEquals("OnChannelModeChange: userInfo.Nick","Scurvy", who.Nick ); Assertion.AssertEquals("OnChannelModeChange: userInfo.User","~Scurvy", who.User ); Assertion.AssertEquals("OnChannelModeChange: userInfo.Host","pcp825822pcs.nrockv01.md.comcast.net", who.Hostname ); Assertion.AssertEquals("OnChannelModeChange: channel", "#sharktest", channel ); Assertion.AssertEquals("OnChannelModeChange: action", ModeAction.Add, modes[0].Action ); Assertion.AssertEquals("OnChannelModeChange: size", 4, modes.Length ); Assertion.AssertEquals("OnChannelModeChange: halfop", ChannelMode.HalfChannelOperator, modes[0].Mode ); Assertion.AssertEquals("OnChannelModeChange: halfop", "bob", modes[0].Parameter ); Assertion.AssertEquals("OnChannelModeChange: ban", ChannelMode.Ban, modes[1].Mode ); Assertion.AssertEquals("OnChannelModeChange: param", "*!*@*", modes[1].Parameter ); Assertion.AssertEquals("OnChannelModeChange: invite action", ModeAction.Remove, modes[2].Action ); Assertion.AssertEquals("OnChannelModeChange: invite mode", ChannelMode.InviteOnly, modes[2].Mode ); Assertion.AssertEquals("OnChannelModeChange: exception action", ModeAction.Add, modes[3].Action ); Assertion.AssertEquals("OnChannelModeChange: exception mode", ChannelMode.Exception, modes[3].Mode ); Assertion.AssertEquals("OnChannelModeChange: exception param", "*!*@*.fi", modes[3].Parameter ); Console.WriteLine("OnChannelModeChange"); }
private void SetMode(bool set, string channel, ChannelMode mode, string nickname) { ChannelModeInfo modeInfo = new ChannelModeInfo(); modeInfo.Mode = mode; modeInfo.Parameter = nickname; modeInfo.Set = set; Bot.IRC.Command.SendMode(channel, modeInfo); }
/// <summary> /// Sends a Mode command for either a channel mode or user mode /// </summary> /// <param name="channel"></param> /// <param name="mode"></param> public void SendMode(string channel, ChannelModeInfo modeInfo) { string mode_set = modeInfo.Set ? "+" : "-"; _IRC.SendTCPMessage(string.Format("MODE {0} {1} {2}", channel, mode_set + modeInfo.Mode, modeInfo.Parameter)); if (ChannelModeCommandEvent != null) { ChannelModeCommandEvent(this, new ChannelModeCommand { Channel = channel, Mode = modeInfo }); } }
private void SetMode(bool set, string channel, ChannelMode mode, List <string> nicknames) { List <ChannelModeInfo> modeInfos = new List <ChannelModeInfo>(); foreach (var nickname in nicknames) { ChannelModeInfo modeInfo = new ChannelModeInfo(); modeInfo.Mode = mode; modeInfo.Parameter = nickname; modeInfo.Set = set; modeInfos.Add(modeInfo); } Bot.IRC.Command.SendMode(channel, modeInfos); }
public void OnChannelModeRequest( string channel, ChannelModeInfo[] modes ) { //":irc.sventech.com 324 deltabot #sharktest +tpl 10" Assertion.AssertEquals("OnChannelModeRequest: channel", "#sharktest", channel ); Assertion.AssertEquals("OnChannelModeRequest: size", 3, modes.Length ); Assertion.AssertEquals("OnChannelModeRequest: topic", ChannelMode.TopicSettable, modes[0].Mode ); Assertion.AssertEquals("OnChannelModeRequest: private", ChannelMode.Private, modes[1].Mode ); Assertion.AssertEquals("OnChannelModeRequest: limited", ChannelMode.UserLimit, modes[2].Mode ); Assertion.AssertEquals("OnChannelModeRequest: param", "10", modes[2].Parameter ); Console.WriteLine("OnChannelModeRequest"); }
public ChannelModeCommand() { Channel = string.Empty; Mode = new ChannelModeInfo(); }