I have a matchmaking configuration setup with a SNS topic, subscribed to a lambda function which places tickets into dynamodb.
I poll this ticket on the client, but run into an issue with auto-backfill tickets.
The poll returns PotentialMatchCreated but when i describe the ticket, using ‘DecribeMatchmaking’ it comes back as ‘COMPLETED’. Therefor it thinks i get placed into the game but I actually don’t because i never receive MatchmakingSucceeded on the poll.
Any thoughts as to why this happens?
DescribeMatchmaking returns tickets with the status COMPLETED, then that means not only did players get matched but also a game session was found to host those players. You can double-check this by looking at the GameSessionConnectionInfo field in each ticket to see if an IP address and port were also returned. If that’s the case, then a MatchmakingSucceeded event should have been sent to your SNS topic/lambda function. Perhaps your lambda function is crashing on MatchmakingSucceeded events or isn’t writing anything to DynamoDb, specifically in the case of backfill? What do your Cloudwatch logs for that function say? It may be worth adding some more print/log statements temporarily for debugging purposes.
Thanks a bunch for getting back to me with some suggestions, and sorry for the late response!
It turned out, adding AcceptMatch, AcceptMatchCompleted and PotentialMatchCreated to the lambda function that was tracking the events caused some strange behaviour to happen, and wrong events were being shown. Removing these and getting them from a separate call seems to have solved the problem.