- Newest
- Most votes
- Most comments
To my understanding is yes, the RequestTimeoutSeconds in a FlexMatch matchmaking configuration can terminate a ticket if the timeout expires before the ticket reaches a final state. It applies while the ticket is in QUEUED, PLACING, or REQUIRES_ACCEPTANCE. Once a ticket is in COMPLETED, it is no longer subject to termination by request timeout.
The RequestTimeoutSeconds can only time out tickets in QUEUED and SEARCHING status. There is a distinctly different timeout for tickets in REQUIRES_ACCEPTANCE and for PLACING. It's easier to think about this property as how long a process can be looking for a match. While a match is found, the tickets are not considered for this timeout.
AcceptanceTimeoutSeconds determines how long REQUIRES_ACCEPTANCE tickets can be waiting for all players to accept the match. If that times out the players will either re-enter the queue and be subject to the original timeout from RequestTimeoutSeconds or will be CANCELLED because they rejected the match or didn't respond.
PLACING indicates that the match was found and is placing via the configured GameSessionQueue. The queue has it's own timeout, TimeoutInSeconds which is used instead of RequestTimeoutSeconds at this point in the process.
You can test this yourself by creating a configuration with a small RequestTimeoutSeconds (ex: 10 seconds) and large AcceptanceTimeoutSeconds (ex: 5 minutes). A single ticket by itself will time out after 10 seconds, but multiple tickets matched together will wait for acceptance for 5 minutes before being canceled.
Relevant content
- asked 4 years ago
