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)
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 executeTrade(u1, u2, item_ID): success = False MY_API_KEY = os.environ['MY_API_KEY'] PATH_TO_STEAMGUARD_FILE = os.environ['PATH_TO_STEAMGUARD_FILE'] OFFER_NAME = getTradeID(u1, u2, item_ID) u1_username = u1.steam u1_password = u1.pwd u1_id = u1.steam_ID u2_username = u2.steam u2_password = u2.pwd u2_id = u2.steam_ID steam_client_u1 = SteamClient(MY_API_KEY) steam_client_u1.login(u1_username, u1_password, PATH_TO_STEAMGUARD_FILE) steam_client_u2 = SteamClient(MY_API_KEY) steam_client_u2.login(u2_username, u2_password, PATH_TO_STEAMGUARD_FILE) game = GameOptions.CS my_items = steam_client_u1.get_my_inventory(game) partner_items = steam_client_u1.get_partner_inventory(u2_id, game) my_first_item = next(iter(my_items.values())) partner_first_item = next(iter(partner_items.values())) my_asset = Asset(my_first_item['id'], game) partner_asset = Asset(partner_first_item['id'], game) retDict = steam_client_u1.make_offer([my_asset], [partner_asset], partner_id, OFFER_NAME) if retDict: tradeofferid = retDict['tradeofferid'] steam_client_u2.accept_trade_offer(tradeofferid) success = True # return success steam_client_u1.logout() steam_client_u2.logout() return success
def test_logout(self): client = SteamClient(self.credentials.api_key) client.login(self.credentials.login, self.credentials.password, self.steam_guard_file) self.assertTrue(client.is_session_alive()) client.logout()
for line in lines: key, value = line.split(':') steamAuthCodes['steamMachineAuth' + key] = value #Your steam username username = '' #Path to steam guard file steam_guard_path = '' #Your steam password password = '' #Your steam api key (http://steamcommunity.com/dev/apikey) steam_key = '' loadAuthCodes() #Log into steam. First, we create the SteamClient object, then we login print("Logging into steam") steam_client = SteamClient(steam_key) try: steam_client.login(username, password, emailCallback, saveCallback, steamAuthCodes) except TypeError as e: print(e) exit(1) print("Finished! Logged into steam") steam_client.logout()