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)
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) }
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)
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'], {})