// Main method, initiates all events and makes the connection public static void Main() { Button.OnInterrupt += new NativeEventHandler(Button_OnInterrupt); Client = new IRC_Client(new IntegratedSocket("irc.netmftoolbox.com", 6667), "Guest"); Client.OnAuthenticated += new IRC_Client.OnStringReceived(Client_OnAuthenticated); Client.OnMessage += new IRC_Client.OnStringReceived(Client_OnMessage); Client.Connect(); }
public void Connect(string channel) { Channel = channel; MessageCount = 0; IRC_Client?.Dispose(); IRC_Client = new IRC_Client.IRC(channel); IRC_Client.ConnectionComplete += IRC_Client_ConnectionComplete; IRC_Client.ConnectAsync(); }
public void Dispose() { Channel = ""; if (IRC_Client != null) { IRC_Client.Dispose(); IRC_Client.ConnectionComplete -= IRC_Client_ConnectionComplete; IRC_Client.RawMessageRecieved -= Irc_RawMessageRecieved; IRC_Client.NetworkError -= Irc_NetworkError; IRC_Client = null; } }
// We got a message. If it's a channel message, we're going to respond to it static void Client_OnMessage(string Sender, string Target, string Data) { if (Target.ToLower() == Channel) { Debug.Print(IRC_Client.SplitName(Sender)[0] + ": " + Data); string[] Commandline = Data.ToUpper().Split(new char[] { ' ' }, 2); if (Commandline[0] == "LED" && Commandline[1] == "ON") { Led.Write(true); Client.Message(Channel, "LED just turned ON"); } else if (Commandline[0] == "LED" && Commandline[1] == "OFF") { Led.Write(false); Client.Message(Channel, "LED just turned OFF"); } else if (Commandline[0] == "LED" && Commandline[1] == "STATUS") { Client.Message(Channel, "The LED is currently " + (Led.Read() ? "ON" : "OFF")); } } }