Exemplo n.º 1
0
    def logon_response(self, msg):
        message = msg_base.ProtobufMessage(steammessages_clientserver_pb2.CMsgClientLogonResponse)
        message.parse(msg)

        if message.body.eresult == EResult.OK:
            self.session_id = message.proto_header.client_sessionid
            self.steamid = SteamID(message.proto_header.steamid)

            delay = message.body.out_of_game_heartbeat_seconds
            self.heartbeat = gevent.spawn(self._heartbeat, delay)
Exemplo n.º 2
0
    def login_anonymous(self):
        message = msg_base.ProtobufMessage(steammessages_clientserver_pb2.CMsgClientLogon, EMsg.ClientLogon)

        message.proto_header.client_sessionid = 0
        message.proto_header.steamid = SteamID.make_from(0, 0, EUniverse.Public, EAccountType.AnonUser).steamid
        message.body.protocol_version = 65575
        message.body.client_os_type = 10
        message.body.machine_id = "OK"

        self.connection.send_message(message)

        logonResponse = self.wait_for_message(EMsg.ClientLogOnResponse)
        return logonResponse.body
Exemplo n.º 3
0
    def login(self,
              username=None,
              password=None,
              login_key=None,
              auth_code=None,
              steamid=0,
              two_factor_code=None):
        self.username = username

        message = msg_base.ProtobufMessage(
            steammessages_clientserver_pb2.CMsgClientLogon, EMsg.ClientLogon)

        message.proto_header.client_sessionid = 0
        if steamid > 0:
            message.proto_header.steamid = steamid
        else:
            message.proto_header.steamid = SteamID.make_from(
                0, 0, EUniverse.Public, EAccountType.Individual).steamid
        message.body.protocol_version = 65575
        message.body.client_package_version = 1771
        message.body.client_os_type = 10
        message.body.client_language = "english"
        message.body.machine_id = "OK"

        message.body.account_name = username
        message.body.password = password
        if login_key:
            message.body.login_key = login_key
        if auth_code:
            message.body.auth_code = auth_code
        if two_factor_code:
            message.body.two_factor_code = two_factor_code

        sentryfile = self.callback.get_sentry_file(username)
        if sentryfile:
            message.body.sha_sentryfile = Util.sha1_hash(sentryfile)
            message.body.eresult_sentryfile = EResult.OK
        else:
            message.body.eresult_sentryfile = EResult.FileNotFound

        localip = self.connection.get_bound_address()
        message.body.obfustucated_private_ip = 1111

        self.connection.send_message(message)

        logonResponse = self.wait_for_message(EMsg.ClientLogOnResponse)

        if self.steamid:
            self.account_type = self.steamid.accounttype

        return logonResponse.body
Exemplo n.º 4
0
    def login_anonymous(self):
        message = msg_base.ProtobufMessage(
            steammessages_clientserver_pb2.CMsgClientLogon, EMsg.ClientLogon)

        message.proto_header.client_sessionid = 0
        message.proto_header.steamid = SteamID.make_from(
            0, 0, EUniverse.Public, EAccountType.AnonUser).steamid
        message.body.protocol_version = 65575
        message.body.client_os_type = 10
        message.body.machine_id = "OK"

        self.connection.send_message(message)

        logonResponse = self.wait_for_message(EMsg.ClientLogOnResponse)
        return logonResponse.body
Exemplo n.º 5
0
    def login(self, username=None, password=None, login_key=None, auth_code=None, steamid=0, two_factor_code=None):
        self.username = username

        message = msg_base.ProtobufMessage(steammessages_clientserver_pb2.CMsgClientLogon, EMsg.ClientLogon)

        message.proto_header.client_sessionid = 0
        if steamid > 0:
            message.proto_header.steamid = steamid
        else:
            message.proto_header.steamid = SteamID.make_from(0, 0, EUniverse.Public, EAccountType.Individual).steamid
        message.body.protocol_version = 65575
        message.body.client_package_version = 1771
        message.body.client_os_type = 10
        message.body.client_language = "english"
        message.body.machine_id = "OK"

        message.body.account_name = username
        message.body.password = password
        if login_key:
            message.body.login_key = login_key
        if auth_code:
            message.body.auth_code = auth_code
        if two_factor_code:
            message.body.two_factor_code = two_factor_code

        sentryfile = self.callback.get_sentry_file(username)
        if sentryfile:
            message.body.sha_sentryfile = Util.sha1_hash(sentryfile)
            message.body.eresult_sentryfile = EResult.OK
        else:
            message.body.eresult_sentryfile = EResult.FileNotFound

        localip = self.connection.get_bound_address()
        message.body.obfustucated_private_ip = 1111

        self.connection.send_message(message)

        logonResponse = self.wait_for_message(EMsg.ClientLogOnResponse)

        if self.steamid:
            self.account_type = self.steamid.accounttype

        return logonResponse.body