private static void ProcessChat(WhatsApp wa, string dst) { var thRecv = new Thread(t => { try { while (wa != null) { wa.PollMessages(); Thread.Sleep(100); continue; } } catch (ThreadAbortException) { } }) {IsBackground = true}; thRecv.Start(); WhatsUserManager usrMan = new WhatsUserManager(); var tmpUser = usrMan.CreateUser(dst, "User"); while (true) { string line = Console.ReadLine(); if (line == null && line.Length == 0) continue; string command = line.Trim(); switch (command) { case "/query": //var dst = dst//trim(strstr($line, ' ', FALSE)); Console.WriteLine("[] Interactive conversation with {0}:", tmpUser); break; case "/accountinfo": Console.WriteLine("[] Account Info: {0}", wa.GetAccountInfo().ToString()); break; case "/lastseen": Console.WriteLine("[] Request last seen {0}", tmpUser); wa.RequestLastSeen(tmpUser.GetFullJid()); break; case "/exit": wa = null; thRecv.Abort(); return; case "/start": wa.WhatsSendHandler.SendComposing(tmpUser.GetFullJid()); break; case "/pause": wa.WhatsSendHandler.SendPaused(tmpUser.GetFullJid()); break; default: Console.WriteLine("[] Send message to {0}: {1}", tmpUser, line); wa.Message(tmpUser.GetFullJid(), line); break; } } }
private static void Main(string[] args) { var tmpEncoding = Encoding.UTF8; System.Console.OutputEncoding = Encoding.Default; System.Console.InputEncoding = Encoding.Default; string nickname = "WhatsAPI Test"; string sender = "3526********"; // Mobile number with country code (but without + or 00) string password = "******";//v2 password string target = "316********";// Mobile number to send the message to WhatsApp wa = new WhatsApp(sender, password, nickname, true); wa.Connect(); wa.Login(); wa.PollMessages(); wa.Message(target, "Hi this is sent using WhatsApiNet"); wa.PollMessages(); ProcessChat(wa, ""); Console.ReadKey(); }