If you want to make sure that both players are in the same lobby, then let them choose where they want to join.
5 players (friends) want to play together. One of them creates lobby (send CreateLobby packet to server, create room there etc.), after successful creation, show lobby Identification Name (like number) on player screen (in lobby). Now, that player shares lobby name with others and they can go to Find Lobby screen and select from lobby list or manually tap in lobby name, and based on that, send SearchLobby packet to server, then send response to client if lobby found, if so, join and then wait for others to join in same way. Now, when every player sends ReadyState packet to server, lobby starts and every player is in the game. Now you are just updating game state based on Lobby Name/Index or whatever you used there. One player does something - send packet to server that will contain lobby id, do stuff on server-side and send response to every player that is in the same lobby (checking by lobby id).