コード例 #1
0
class Client:
    def __init__(self):
        self.client = SteamClient(api_key)

    def login(self):
        self.client.login(username, password, dumps(secrets))

        if self.client.was_login_executed:
            log.info(f'Logged into Steam as {f.GREEN + username}')
        else:
            log.error('Login was not executed')

    def logut(self):
        log.info('Logging out...')
        self.client.logout()

    def get_offers(self):
        return self.client.get_trade_offers(merge=True)['response']['trade_offers_received']

    def get_offer(self, offer_id):
        return self.client.get_trade_offer(offer_id, merge=True)['response']['offer']

    def get_receipt(self, trade_id):
        return self.client.get_trade_receipt(trade_id)

    def accept(self, offer_id: str):
        log.trade('Trying to accept offer', offer_id)
        self.client.accept_trade_offer(offer_id)

    def decline(self, offer_id: str):
        log.trade('Trying to decline offer', offer_id)
        self.client.decline_trade_offer(offer_id)
コード例 #2
0
def post_confirmation(steamid, api, val, trade_id):
    user = user_conf(steamid)
    try:
        try:
            client = steam_session[steamid]
            print("use steampy cache")
        except:
            print("use steampy login")
            g = user["guard"]
            g["steamid"] = steamid
            Sguard = json.dumps(g)
            client = SteamClient(api)
            client.login(user["name"], user["password"], Sguard)
            globals()["steam_session"][steamid] = client
        if (val):
            try:
                client._confirm_transaction(trade_id)
            except:
                client.accept_trade_offer(trade_id)
        else:
            client.cancel_trade_offer(trade_id)
            client.decline_trade_offer(trade_id)

        return {"success": True}
    except Exception as e:
        exc_type, exc_obj, exc_tb = sys.exc_info()
        return {
            "success": False,
            "err_type": e.__class__.__name__,
            "err_info": e.args[0],
            "err_line": str(exc_tb.tb_lineno)
        }
コード例 #3
0
ファイル: client.py プロジェクト: offish/tf2-express
class Client:
    def __init__(self, bot: dict):
        self.log = Log(bot["name"])
        self.username = bot["username"]
        self.password = bot["password"]
        self.secrets = bot["secrets"]
        self.client = SteamClient(bot["api_key"])

    def login(self) -> None:
        try:
            self.client.login(self.username, self.password,
                              dumps(self.secrets))

            if self.client.was_login_executed:
                self.log.info(
                    f"Logged into Steam as {f.GREEN + self.username}")
            else:
                self.log.error("Login was not executed")

        except InvalidCredentials as e:
            self.log.error(e)

    def logout(self) -> None:
        self.log.info("Logging out...")
        self.client.logout()

    def get_offers(self) -> dict:
        try:
            return self.client.get_trade_offers(
                merge=True)["response"]["trade_offers_received"]
        except KeyError:
            return {}

    def get_offer(self, offer_id: str) -> dict:
        try:
            return self.client.get_trade_offer(offer_id,
                                               merge=True)["response"]["offer"]
        except KeyError:
            return {}

    def get_receipt(self, trade_id: str) -> dict:
        return self.client.get_trade_receipt(trade_id)

    def accept(self, offer_id: str) -> None:
        self.log.trade("Trying to accept offer", offer_id)
        self.client.accept_trade_offer(offer_id)

    def decline(self, offer_id: str) -> None:
        self.log.trade("Trying to decline offer", offer_id)
        self.client.decline_trade_offer(offer_id)
コード例 #4
0
 def test_decline_trade_offer(self):
     client = SteamClient(self.credentials.api_key)
     client.login(self.credentials.login, self.credentials.password,
                  self.steam_guard_file)
     trade_offer_id = '1449530707'
     response_dict = client.decline_trade_offer(trade_offer_id)
     self.assertEqual(response_dict['response'], {})