public GetTradeOffers ( string>.Dictionary |
||
data | string>.Dictionary | A dictionary containing the URL params found here: https://developer.valvesoftware.com/wiki/Steam_Web_API/IEconService at GetTradeOffers (v1). /// ex: [leftarrow]"get_sent_offers","1"[rightarrow]. Please note, [leftarrow] and [rightarrow] correspond to the keys on the keyboard. |
return | CSharpTradeOffers.Trading.TradeOffersList |
private static void PollOffers() { Console.WriteLine("Polling offers every ten seconds."); bool isPolling = true; var offerHandler = new EconServiceHandler(_apiKey); var marketHandler = new MarketHandler(); marketHandler.EligibilityCheck(_account.SteamId, _account.AuthContainer); //required to perform trades (?). Checks to see whether or not we're allowed to trade. // ReSharper disable once ConditionIsAlwaysTrueOrFalse // ReSharper disable once LoopVariableIsNeverChangedInsideLoop while (isPolling) //permanent loop, can be changed { Thread.Sleep(10000); var recData = new Dictionary<string, string> { {"get_received_offers", "1"}, {"active_only", "1"}, {"time_historical_cutoff", "999999999999"} //arbitrarily high number to retrieve latest offers }; var offers = offerHandler.GetTradeOffers(recData).TradeOffersReceived; if (offers == null) continue; foreach (CEconTradeOffer cEconTradeOffer in offers) { if (cEconTradeOffer.ItemsToGive == null) { offerHandler.AcceptTradeOffer(cEconTradeOffer.TradeOfferId, cEconTradeOffer.AccountIdOther, _account.AuthContainer, "1"); Console.WriteLine("Accepted a donation!"); } else { offerHandler.DeclineTradeOffer(Convert.ToUInt64(cEconTradeOffer.TradeOfferId)); Console.WriteLine("Refused a \"donation\" that would have taken items from us."); } } } }
private static void PollOffers() { Console.WriteLine("Polling offers every ten seconds."); bool isPolling = true; var offerHandler = new EconServiceHandler(_config.ApiKey); var marketHandler = new MarketHandler(); Inventory csgoInventory = new Inventory(_account.SteamId, 730); marketHandler.EligibilityCheck(_account.SteamId, _account.AuthContainer); //required to perform trades (?). Checks to see whether or not we're allowed to trade. // ReSharper disable once ConditionIsAlwaysTrueOrFalse // ReSharper disable once LoopVariableIsNeverChangedInsideLoop while (isPolling) //permanent loop, can be changed { Thread.Sleep(10000); var recData = new Dictionary<string, string> { {"get_received_offers", "1"}, {"active_only", "1"}, {"time_historical_cutoff", "999999999999"} //arbitrarily high number to retrieve latest offers }; var offers = offerHandler.GetTradeOffers(recData).TradeOffersReceived; if (offers == null) continue; foreach (CEconTradeOffer cEconTradeOffer in offers) { TradeOffer offer = new TradeOffer(); offer.Them.Assets = cEconTradeOffer.ItemsToReceive; offer.Me.Assets.Add(csgoInventory.Items.First().Value.Items.First().ToCEconAsset(730)); offerHandler.ModifyTradeOffer(IdConversions.AccountIdToUlong(cEconTradeOffer.AccountIdOther), "Here you go!", "1", cEconTradeOffer.TradeOfferId, offer, _account.AuthContainer); } } }