0
我一直在嘗試使用SteamTrade庫自動交易工作,但我似乎無法在啓動線程時獲得正確的會話(或任何會話)。使用SteamTrade交易 - 如何獲取SteamWeb會話?
var steamWeb = new SteamTrade.SteamWeb();
steamWeb.DoLogin(account.AccountName, bot.Password);
var tradeMgr = new SteamTrade.TradeManager(Settings.steamApiKey, steamWeb);
var botSteamID = new SteamKit2.SteamID(bot.SteamID);
var userSteamID = new SteamKit2.SteamID(Data.UserAccounts.Get(bot.CurrentTransaction.UserAccountID.Value).SteamID);
if (bot.CurrentTransaction.Status == 0) // outgoing
{
tradeMgr.InitializeTrade(botSteamID, userSteamID);
var trade = tradeMgr.CreateTrade(botSteamID, userSteamID);
trade.AddItem(Conversion.toULong(bot.CurrentTransaction.SkinType.ID, 0), bot.CurrentTransaction.SkinType.GameID, 2);
trade.OnError += Trade_OnError; trade.OnStatusError += Trade_OnStatusError; trade.OnSuccess += Trade_OnSuccess;
tradeMgr.StartTradeThread(trade);
while (!trade.HasTradeEnded)
{
System.Threading.Thread.Sleep(100);
}
}
如果var trade = tradeMgr.CreateTrade(botSteamID, userSteamID);
失敗,這就是貿易會話不能初始化 sessionIdEsc = Uri.UnescapeDataString(SteamWeb.SessionId);
該會話ID爲空(其餘也爲空)。 我該如何強制登錄 - 甚至更好,有沒有關於如何做的例子? (是的,該thread.sleep是醜陋的,但現在我想它首先工作:))=任何幫助表示讚賞!
也許,因爲他在使用C#? –