brainCloud currently offers two forms of matchmaking:
Offline matchmaking - for async match (i.e. words with friends) or one-way multiplayer (i.e. class of clans) style games. Both of those multiplayer types require you to have an opponent to play against when the match starts.
There is also online matchmaking - which uses our lobby system - which is suitable of any online / real-time sort of multiplayer.
(That one doesn't require you to have an opponent in mind when the lobby starts... and the lobby can start a match via a relay or room server session right away...)
That said - I get the feeling that you are talking about more of an async match scenario (i.e. not-necessarily-online multiplayer) - where the match can start before an opponent has been identified.
Am I correct that that is the scenario you are wanting to target?
It's an interesting approach - as there's a much lower chance of matching against another player who isn't going to respond in a timely manner.
Let me know if I've got the scenario right and we'll give it some more thought...
Yes, you are correct. When a user starts a new game, it'd essentially see if someone has already started a game but has no opponent, If a match is found the second player will be added to the game and can then make their move. If no match is found that is awaiting a player, it'll create a new game, let player 1 make their move and then go "dormant" until a player two is ready.
If you have ever used the turn based aspect of Apples Game Center turn based service, this is essentially how that works.