Example #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)
Example #2
0
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)
Example #3
0
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
Example #4
0
 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()
Example #5
0
        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()