def run(self): logging.basicConfig(format="%(asctime)s | %(message)s", level=logging.INFO) LOG = logging.getLogger() global client client = SteamClient() client.set_credential_location( ".") # where to store sentry files and other stuff @client.on("error") def handle_error(result): LOG.info("Logon result: %s", repr(result)) if result == EResult.RateLimitExceeded: self.loginInfo.emit(996, '') self.needlogin = False @client.on("channel_secured") def send_login(): if client.relogin_available: client.relogin() @client.on("connected") def handle_connected(): LOG.info("Connected to %s", client.current_server_addr) @client.on("reconnect") def handle_reconnect(delay): LOG.info("Reconnect in %ds...", delay) @client.on("disconnected") def handle_disconnect(): LOG.info("Disconnected.") if client.relogin_available: LOG.info("Reconnecting...") client.reconnect(maxdelay=30) # main bit LOG.info("Persistent logon recipe") LOG.info("-" * 30) while True: self.msleep(10) self.run_num = 0 if self.needlogin: self.login() if self.needlogout: self.logout() if self.needredeem: self.redeem()
import logging from steam import SteamClient from steam.enums import EResult # setup logging logging.basicConfig(format="%(asctime)s | %(message)s", level=logging.INFO) LOG = logging.getLogger() client = SteamClient() client.set_credential_location(".") # where to store sentry files and other stuff @client.on("error") def handle_error(result): LOG.info("Logon result: %s", repr(result)) @client.on("channel_secured") def send_login(): if client.relogin_available: client.relogin() @client.on("connected") def handle_connected(): LOG.info("Connected to %s", client.current_server_addr) @client.on("reconnect") def handle_reconnect(delay): LOG.info("Reconnect in %ds...", delay) @client.on("disconnected") def handle_disconnect(): LOG.info("Disconnected.")