using System; using System.Threading; using System.Diagnostics; using Lumpio.Net.MSN; namespace Lumpio.Tests { public class MSNTest { private bool go; MSNConversation convo = null; MSNClient msn = null; public static void Main(String[] args) { new MSNTest(args); } public MSNTest(String[] args) { Debug.Listeners.Add( new TextWriterTraceListener(System.Console.Out)); //System.Diagnostics.Debug.AutoFlush = true; //Debug.WriteLine("BLAH!"); msn = new MSNClient(); msn.Connected += new MSNConnectEventHandler(connected); msn.Invited += new MSNInviteEventHandler(invite); Console.WriteLine("Connecting..."); // Put passport and password HERE: msn.Passport = "passport"; msn.Password = "password"; msn.Connect(); msn.BeginRun(); while (go) { //msn.Run(); Thread.Sleep(100); } } private void connected(object sender, EventArgs args) { if (sender == msn) { Console.WriteLine("Connected, starting conversation"); convo = msn.StartConversation(); convo.Connected += new MSNConnectEventHandler(connected); convo.UserJoined += new MSNConversation.JoinEventHandler(join); convo.UserLeft += new MSNConversation.LeaveEventHandler(leave); convo.MessageReceived += new MSNConversation.MessageEventHandler(message); } else if (sender == convo) { convo.Invite(msn.ContactList.GetByPassport("lumpio2@hotmail.com")); } else if (sender is MSNConversation) { Console.WriteLine("Conversation has been synced"); } } private void invite(object sender, MSNInviteEventArgs args) { Console.WriteLine(args.Inviter.NickName + " invites you to a conversation"); args.Conversation.Connected += new MSNConnectEventHandler(connected); args.Conversation.UserJoined += new MSNConversation.JoinEventHandler(join); args.Conversation.UserLeft += new MSNConversation.LeaveEventHandler(leave); } private void join(object sender, MSNConversation.JoinEventArgs args) { ((MSNConversation)sender).PlainTextMessage("Yarr matey!"); Console.WriteLine(args.User.NickName + " has joined the conversation"); } private void leave(object sender, MSNConversation.LeaveEventArgs args) { Console.WriteLine(args.User.NickName + " has left the conversation" + (args.Timeout ? " due to inactivity" : "")); } private void message(object sender, MSNConversation.MessageEventArgs args) { if (args.Message.MessageType == MSNMessageType.PlainText) { //((MSNConversation)sender).PlainTextMessage("\r\nYou said:\r\n" + args.Message.Body); Console.WriteLine(args.Message.From.NickName + " says:\r\n" + args.Message.Body + "\r\n"); } } } }