def at_disconnect(self):
        if self.logged_in:
            player = self.player
            if self.puppet:
                player.unpuppet_object(self)
            uaccount = player
            uaccount.last_login = timezone.now()
            uaccount.save()
            # calling player hook
            player.at_disconnect()
            self.logged_in = False
            if not self.sessionhandler.sessions_from_player(player):
                # no more sessions connected to this player
                player.is_connected = False
            # this may be used to e.g. delete player after disconnection etc
            player.at_post_disconnect()
create a pagseguro checkout
dataset/ETHPy150Open evennia/evennia/evennia/server/serversession.py/ServerSession.at_disconnect--crossover with--dataset/ETHPy150Open rochacbruno/python-pagseguro/pagseguro/__init__.py/PagSeguro.checkout