コード例 #1
0
        internal async Task <string> GetTradeToken()
        {
            if (!Client.IsConnected)
            {
                return(null);
            }

            CEcon_GetTradeOfferAccessToken_Request request = new CEcon_GetTradeOfferAccessToken_Request();

            SteamUnifiedMessages.ServiceMethodResponse response;

            try {
                response = await UnifiedEconService.SendMessage(x => x.GetTradeOfferAccessToken(request));
            } catch (Exception e) {
                ArchiLogger.LogGenericWarningException(e);

                return(null);
            }

            if (response == null)
            {
                ArchiLogger.LogNullError(nameof(response));

                return(null);
            }

            if (response.Result != EResult.OK)
            {
                return(null);
            }

            CEcon_GetTradeOfferAccessToken_Response body = response.GetDeserializedResponse <CEcon_GetTradeOfferAccessToken_Response>();

            return(body.trade_offer_access_token);
        }
コード例 #2
0
        internal async Task <string?> GetTradeToken()
        {
            if (Client == null)
            {
                throw new InvalidOperationException(nameof(Client));
            }

            if (!Client.IsConnected)
            {
                return(null);
            }

            CEcon_GetTradeOfferAccessToken_Request request = new();

            SteamUnifiedMessages.ServiceMethodResponse response;

            try {
                response = await UnifiedEconService.SendMessage(x => x.GetTradeOfferAccessToken(request)).ToLongRunningTask().ConfigureAwait(false);
            } catch (Exception e) {
                ArchiLogger.LogGenericWarningException(e);

                return(null);
            }

            if (response.Result != EResult.OK)
            {
                return(null);
            }

            CEcon_GetTradeOfferAccessToken_Response body = response.GetDeserializedResponse <CEcon_GetTradeOfferAccessToken_Response>();

            return(body.trade_offer_access_token);
        }