public static void Main (string[] args) { #region SteamRE Init AllArgs = args; //Hacking around https ServicePointManager.CertificatePolicy = new MainClass (); Console.ForegroundColor = ConsoleColor.Magenta; Console.WriteLine ("\n\tSteamBot Beta\n\tCreated by Jessecar96.\n\n"); Console.ForegroundColor = ConsoleColor.White; steamClient = new SteamClient (); steamTrade = steamClient.GetHandler<SteamTrading>(); SteamUser steamUser = steamClient.GetHandler<SteamUser> (); steamFriends = steamClient.GetHandler<SteamFriends>(); steamClient.Connect (); #endregion while (true) { CallbackMsg msg = steamClient.WaitForCallback (true); //Console Debug printConsole (msg.ToString(),ConsoleColor.Blue,true); #region Logged Off Handler msg.Handle<SteamUser.LoggedOffCallback> (callback => { printConsole("Logged Off: "+callback.Result,ConsoleColor.Red); }); #endregion #region Steam Disconnect Handler msg.Handle<SteamClient.DisconnectedCallback> (callback => { printConsole("Disconnected.",ConsoleColor.Red); }); #endregion #region Steam Connect Handler /** * --Steam Connection Callback * * It's not needed to modify this section */ msg.Handle<SteamClient.ConnectedCallback> (callback => { //Print Callback printConsole("Steam Connected Callback: "+callback.Result, ConsoleColor.Cyan); //Validate Result if(callback.Result==EResult.OK){ //Get Steam Login Details printConsole("Username: "******"Password: "******"Getting Web Cookies...",ConsoleColor.Yellow); //Get Web Cookies SteamWeb web = new SteamWeb(); WebCookies = web.DoLogin (user,pass); if(WebCookies!=null){ printConsole ("SteamWeb Cookies retrived.",ConsoleColor.Green); //Do Login steamUser.LogOn (new SteamUser.LogOnDetails{ Username = user, Password = pass }); }else{ printConsole ("Error while getting SteamWeb Cookies.",ConsoleColor.Red); } }else{ //Failure printConsole ("Failed to Connect to steam.",ConsoleColor.Red); } }); #endregion #region Steam Login Handler //Logged in (or not) msg.Handle<SteamUser.LoggedOnCallback>( callback => { printConsole("Logged on callback: "+callback.Result, ConsoleColor.Cyan); if(callback.Result != EResult.OK){ printConsole("Login Failed!",ConsoleColor.Red); }else{ printConsole("Successfulyl Logged In!\nWelcome "+steamUser.SteamID,ConsoleColor.Green); //Set community status steamFriends.SetPersonaName(BotPersonaName); steamFriends.SetPersonaState(BotPersonaState); } }); #endregion #region Steam Trade Start /** * * Steam Trading Handler * */ msg.Handle<SteamTrading.TradeStartSessionCallback>(call => { //Trading trade = null; trade = new TradeSystem(); trade.initTrade(steamUser.SteamID,call.Other,WebCookies); }); #endregion #region Trade Requested Handler //Don't modify this msg.Handle<SteamTrading.TradeProposedCallback>( thing => { //Trade Callback printConsole ("Trade Proposed Callback. Other: "+thing.Other+"\n"); //Accept It steamTrade.RequestTrade(thing.Other); }); #endregion msg.Handle<SteamFriends.PersonaStateCallback>(callback => { if (callback.FriendID == steamUser.SteamID) return; EFriendRelationship relationship = steamFriends.GetFriendRelationship(callback.FriendID); if (!(relationship == EFriendRelationship.RequestRecipient)) return; if(steamFriends.GetFriendRelationship(callback.FriendID)==EFriendRelationship.PendingInvitee){ printConsole("[Friend] Friend Request Pending: " + callback.FriendID + "(" + steamFriends.GetFriendPersonaName(callback.FriendID) + ") - Accepted", ConsoleColor.Yellow); steamFriends.AddFriend(callback.FriendID); } }); #region Steam Chat Handler /** * * Steam Chat Handler * */ msg.Handle<SteamFriends.FriendMsgCallback>(callback => { //Type (emote or chat) EChatEntryType type = callback.EntryType; if(type == EChatEntryType.ChatMsg){ //Message is a chat message //Reply with the same message steamFriends.SendChatMessage(callback.Sender,EChatEntryType.ChatMsg,callback.Message); //Chat API coming soon }else if(type == EChatEntryType.Emote){ //Message is emote //Do nothing yet } }); #endregion } //end while loop } //end Main method
public static void Main(string[] args) { #region SteamRE Init AllArgs = args; //Hacking around https ServicePointManager.CertificatePolicy = new MainClass(); Console.ForegroundColor = ConsoleColor.Magenta; Console.WriteLine("\n\tSteamBot Beta\n\tCreated by Jessecar96.\n\n"); Console.ForegroundColor = ConsoleColor.White; steamClient = new SteamClient(); steamTrade = steamClient.GetHandler <SteamTrading>(); SteamUser steamUser = steamClient.GetHandler <SteamUser> (); steamFriends = steamClient.GetHandler <SteamFriends>(); steamClient.Connect(); #endregion while (true) { CallbackMsg msg = steamClient.WaitForCallback(true); //Console Debug printConsole(msg.ToString(), ConsoleColor.Blue, true); #region Logged Off Handler msg.Handle <SteamUser.LoggedOffCallback> (callback => { printConsole("Logged Off: " + callback.Result, ConsoleColor.Red); }); #endregion #region Steam Disconnect Handler msg.Handle <SteamClient.DisconnectedCallback> (callback => { printConsole("Disconnected.", ConsoleColor.Red); }); #endregion #region Steam Connect Handler /** * --Steam Connection Callback * * It's not needed to modify this section */ msg.Handle <SteamClient.ConnectedCallback> (callback => { //Print Callback printConsole("Steam Connected Callback: " + callback.Result, ConsoleColor.Cyan); //Validate Result if (callback.Result == EResult.OK) { //Get Steam Login Details printConsole("Username: "******"Password: "******"Getting Web Cookies...", ConsoleColor.Yellow); //Get Web Cookies SteamWeb web = new SteamWeb(); WebCookies = web.DoLogin(user, pass); if (WebCookies != null) { printConsole("SteamWeb Cookies retrived.", ConsoleColor.Green); //Do Login steamUser.LogOn(new SteamUser.LogOnDetails { Username = user, Password = pass }); } else { printConsole("Error while getting SteamWeb Cookies.", ConsoleColor.Red); } } else { //Failure printConsole("Failed to Connect to steam.", ConsoleColor.Red); } }); #endregion #region Steam Login Handler //Logged in (or not) msg.Handle <SteamUser.LoggedOnCallback>(callback => { printConsole("Logged on callback: " + callback.Result, ConsoleColor.Cyan); if (callback.Result != EResult.OK) { printConsole("Login Failed!", ConsoleColor.Red); } else { printConsole("Successfulyl Logged In!\nWelcome " + steamUser.SteamID, ConsoleColor.Green); //Set community status steamFriends.SetPersonaName(BotPersonaName); steamFriends.SetPersonaState(BotPersonaState); } }); #endregion #region Steam Trade Start /** * * Steam Trading Handler * */ msg.Handle <SteamTrading.TradeStartSessionCallback>(call => { //Trading trade = null; trade = new TradeSystem(); trade.initTrade(steamUser.SteamID, call.Other, WebCookies); }); #endregion #region Trade Requested Handler //Don't modify this msg.Handle <SteamTrading.TradeProposedCallback>(thing => { //Trade Callback printConsole("Trade Proposed Callback. Other: " + thing.Other + "\n"); //Accept It steamTrade.RequestTrade(thing.Other); }); #endregion msg.Handle <SteamFriends.PersonaStateCallback>(callback => { if (callback.FriendID == steamUser.SteamID) { return; } EFriendRelationship relationship = steamFriends.GetFriendRelationship(callback.FriendID); if (!(relationship == EFriendRelationship.RequestRecipient)) { return; } if (steamFriends.GetFriendRelationship(callback.FriendID) == EFriendRelationship.PendingInvitee) { printConsole("[Friend] Friend Request Pending: " + callback.FriendID + "(" + steamFriends.GetFriendPersonaName(callback.FriendID) + ") - Accepted", ConsoleColor.Yellow); steamFriends.AddFriend(callback.FriendID); } }); #region Steam Chat Handler /** * * Steam Chat Handler * */ msg.Handle <SteamFriends.FriendMsgCallback>(callback => { //Type (emote or chat) EChatEntryType type = callback.EntryType; if (type == EChatEntryType.ChatMsg) { //Message is a chat message //Reply with the same message steamFriends.SendChatMessage(callback.Sender, EChatEntryType.ChatMsg, callback.Message); //Chat API coming soon } else if (type == EChatEntryType.Emote) { //Message is emote //Do nothing yet } }); #endregion } //end while loop } //end Main method