From 2e26ae581062ca636dd02718e7cbbf71e022b04a Mon Sep 17 00:00:00 2001 From: notoraptor Date: Mon, 26 Aug 2019 15:02:44 -0400 Subject: Client sends a 'UnknownToken' request when it receives a notification for an unknown token. --- diplomacy/server/request_managers.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'diplomacy/server/request_managers.py') diff --git a/diplomacy/server/request_managers.py b/diplomacy/server/request_managers.py index cedff5f..259147a 100644 --- a/diplomacy/server/request_managers.py +++ b/diplomacy/server/request_managers.py @@ -1126,6 +1126,21 @@ def on_synchronize(server, request, connection_handler): timestamp_created=level.game.timestamp_created, request_id=request.request_id) +def on_unknown_token(server, request, connection_handler): + """ Manage notification request UnknownToken. + :param server: server which receives the request. + :param request: request to manage. + :param connection_handler: connection handler from which the request was sent. + :return: NoResponse. No responses are sent back to the server + :type server: diplomacy.Server + :type request: diplomacy.communication.requests.UnknownToken + """ + del connection_handler # Unused - Not sending any responses back + LOGGER.debug('Removing token %s', request.token) + if server.users.has_token(request.token): + server.remove_token(request.token) + return responses.NoResponse() + def on_vote(server, request, connection_handler): """ Manage request Vote. :param server: server which receives the request. @@ -1185,6 +1200,7 @@ MAPPING = { requests.SetWaitFlag: on_set_wait_flag, requests.SignIn: on_sign_in, requests.Synchronize: on_synchronize, + requests.UnknownToken: on_unknown_token, requests.Vote: on_vote, } -- cgit v1.2.3