public static void Main(string[] args) { var threadActorDispatcher = new ThreadActorDispatcher(); IQQClient client = null; start: Console.Write("请输入QQ号:"); var username = Console.ReadLine(); Console.Write("请输入QQ密码:"); var password = Console.ReadLine(); client = new WebQQClient(username, password, handler, threadActorDispatcher); //测试同步模式登录 var future = client.Login(QQStatus.ONLINE, null); Console.WriteLine(client.Account.Username + "-登录中......"); var Event = future.WaitFinalEvent(); if (Event.Type == QQActionEventType.EVT_OK) { Console.WriteLine(client.Account.Username + "-登录成功!!!!"); var getUserInfoEvent = client.GetUserInfo(client.Account, null).WaitFinalEvent(); if (getUserInfoEvent.Type == QQActionEventType.EVT_OK) { Console.WriteLine(client.Account.QQ + "-用户信息:" + getUserInfoEvent.Target); client.GetBuddyList(null).WaitFinalEvent(); Console.WriteLine(client.Account.QQ + "-Buddy count: " + client.GetBuddyList().Count); foreach (var buddy in client.GetBuddyList()) { var f = client.GetUserQQ(buddy, null); var e = f.WaitFinalEvent(); var name = string.IsNullOrEmpty(buddy.MarkName) ? buddy.Nickname : buddy.MarkName; Console.WriteLine("{0}, {1}", buddy.QQ, name); } } //所有的逻辑完了后,启动消息轮询 client.BeginPollMsg(); } else if (Event.Type == QQActionEventType.EVT_ERROR) { var ex = (QQException)Event.Target; Console.WriteLine(ex.Message); client.Destroy(); goto start; } else { Console.WriteLine(client.Account.Username + "-登录失败"); client.Destroy(); goto start; } Console.WriteLine("按任意键退出"); Console.ReadLine(); }
private static async Task TestQQ() { var client = new WebQQClient(m => new QQConsoleLogger(m, LogLevel.Debug), _qqListener); if ((await client.Login()).IsOk()) { client.BeginPoll(); } }
public static void Main(string[] args) { #if NETCORE Encoding.RegisterProvider(CodePagesEncodingProvider.Instance); #endif // 获取二维码 var qq = new WebQQClient(Listener); qq.Login().Wait(); Console.Read(); }
public static void Main(string[] args) { #if NETCORE Encoding.RegisterProvider(CodePagesEncodingProvider.Instance); #endif var client = new WebQQClient(m => new QQConsoleLogger(m, LogLevel.Debug), Listener); client.Login().Wait(); client.BeginPoll(); Console.Read(); }
public static void Main2(string[] args) { var threadActorDispatcher = new SimpleActorDispatcher(); IQQClient client = null; start: Console.Write("请输入QQ号:"); var username = Console.ReadLine(); Console.Write("请输入QQ密码:"); var password = Console.ReadLine(); client = new WebQQClient(username, password, Listener, threadActorDispatcher); //测试同步模式登录 var future = client.Login(QQStatus.ONLINE, null); client.Logger.LogInformation(client.Account.Username + "-登录中......"); var Event = future.WaitFinalEvent(); if (Event.Type == QQActionEventType.EvtOK) { client.Logger.LogInformation(client.Account.Username + "-登录成功!!!!"); var getUserInfoEvent = client.GetUserInfo(client.Account, null).WaitFinalEvent(); if (getUserInfoEvent.Type == QQActionEventType.EvtOK) { client.Logger.LogInformation(client.Account.QQ + "-用户信息:" + getUserInfoEvent.Target); client.GetBuddyList(null).WaitFinalEvent(); client.Logger.LogInformation(client.Account.QQ + "-Buddy count: " + client.GetBuddyList().Count); foreach (var buddy in client.GetBuddyList()) { var f = client.GetUserQQ(buddy, null); var e = f.WaitFinalEvent(); var name = string.IsNullOrEmpty(buddy.MarkName) ? buddy.Nickname : buddy.MarkName; client.Logger.LogInformation($"{buddy.QQ}, {name}"); } } //所有的逻辑完了后,启动消息轮询 client.BeginPollMsg(); } else if (Event.Type == QQActionEventType.EvtError) { var ex = (QQException)Event.Target; client.Logger.LogInformation(ex.Message); client.Destroy(); goto start; } else { client.Logger.LogInformation(client.Account.Username + "-登录失败"); client.Destroy(); goto start; } client.Logger.LogInformation("按任意键退出"); Console.ReadLine(); }