This is my outline for using the fleet manager (note: not using the amazon gamelift implementation, custom implementation for Unity Game Services)
On unity side, a single instance can host multiple matches.
Using the nakama matchmaker flow.
During “MatchMakerMatched” a call to fleetmanager to either get or create the required server (according to available space for players on the server).
Here is my problem.
If I call fm.Join during MatchMakerMatched I make sure that the operation is atomic and the next match will not try to reuse the free spots on a unity instance. But now, at least according to the fm interface, I do not have access to the generated session ids later in the match flow when i want to broadcast them to the users
If i call fm.Join during MatchLoop, i have access to the session ids and broadcast them to the players, but now the operation is not atomic and i cannot guarantee that i reserve the correct number of players on each server.
What am I missing here ?