2016-04-02 30 views
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是醜陋的,但現在我想它首先工作:))=任何幫助表示讚賞!

回答

-1

爲什麼你沒有使用蒸汽用戶或steamcommunity?

+0

也許,因爲他在使用C#? –