Exemplo n.º 1
0
        internal async Task <bool> JoinGroup(ulong groupID)
        {
            if (groupID == 0)
            {
                Logging.LogNullError(nameof(groupID), Bot.BotName);
                return(false);
            }

            if (!await RefreshSessionIfNeeded().ConfigureAwait(false))
            {
                return(false);
            }

            string sessionID = WebBrowser.CookieContainer.GetCookieValue(SteamCommunityURL, "sessionid");

            if (string.IsNullOrEmpty(sessionID))
            {
                Logging.LogNullError(nameof(sessionID), Bot.BotName);
                return(false);
            }

            string request = SteamCommunityURL + "/gid/" + groupID;
            Dictionary <string, string> data = new Dictionary <string, string>(2)
            {
                { "sessionID", sessionID },
                { "action", "join" }
            };

            return(await WebBrowser.UrlPostRetry(request, data).ConfigureAwait(false));
        }
        internal async Task <bool> AcceptGift(ulong gid)
        {
            if (gid == 0)
            {
                Logging.LogNullError(nameof(gid), Bot.BotName);
                return(false);
            }

            if (!await RefreshSessionIfNeeded().ConfigureAwait(false))
            {
                return(false);
            }

            string sessionID = WebBrowser.CookieContainer.GetCookieValue(SteamCommunityURL, "sessionid");

            if (string.IsNullOrEmpty(sessionID))
            {
                Logging.LogNullError(nameof(sessionID), Bot.BotName);
                return(false);
            }

            string request = SteamCommunityURL + "/gifts/" + gid + "/acceptunpack";
            Dictionary <string, string> data = new Dictionary <string, string>(1)
            {
                { "sessionid", sessionID }
            };

            return(await WebBrowser.UrlPostRetry(request, data).ConfigureAwait(false));
        }
        internal async Task AcceptTradeOffer(ulong tradeID)
        {
            if (tradeID == 0)
            {
                Bot.ArchiLogger.LogNullError(nameof(tradeID));
                return;
            }

            if (!await RefreshSessionIfNeeded().ConfigureAwait(false))
            {
                return;
            }

            string sessionID = WebBrowser.CookieContainer.GetCookieValue(SteamCommunityURL, "sessionid");

            if (string.IsNullOrEmpty(sessionID))
            {
                Bot.ArchiLogger.LogNullError(nameof(sessionID));
                return;
            }

            string referer = SteamCommunityURL + "/tradeoffer/" + tradeID;
            string request = referer + "/accept";

            Dictionary <string, string> data = new Dictionary <string, string>(3)
            {
                { "sessionid", sessionID },
                { "serverid", "1" },
                { "tradeofferid", tradeID.ToString() }
            };

            await WebBrowser.UrlPostRetry(request, data, referer).ConfigureAwait(false);
        }