Issue when client connecting to Bolt server through Playfab Matchmaking

I have done the Playfab integration with bolt to my project and using Playfab matchmaking for filtering players to enter into a game. Now i cant able to connect to my bolt server. Playfab MatchMaking results callback provides me a serverdetails(UDP endpoint), But in Bolt latest release i dont have a udpendpoint paramater to connect with Boltserver.
instead of it requires session details. BoltNetwork.Connect(Session, port); , Playfab returns the port value but what about session info and where do i get? or Is there any other method to connect with Bolt server through playfab matchmaking?

Comments

  • Hello @Arunkumar ,

    Please, take a look at our dedicated page for the Bolt Matchmaking system: https://doc.photonengine.com/en-us/bolt/current/lobby-and-matchmaking/bolt-matchmaking

    It uses the Photon Cloud to create, organize, and join game sessions. By using Bolt Free, you need to use the session information originated by the Photon services in order to join a specific server.

    For your case, as you are using another system to make the matchmaking, you can follow the steps:

    1. Start your game server and create your game Session using "BoltMatchmaking.CreateSession";
    2. Store the Session ID that you've used to create the session, this ID needs to be shared via your current Matchmaking system. It's just a string, so it should be easy.
    3. On the clients, when listing for available sessions, you can use the ID of the session to start the connection process, just use the "BoltMatchmaking.JoinSession(sessionID)", passing the Session ID as argument.
    4. The client will try to connect the this session via the Photon Cloud and then join your game server.

    --
    Ramon Melo
    Photon Bolt Team
  • Thanks for your response @ramonmelo

    How do i share the SessionId to client which is created in a Server(which is running on a Separate machine). And I can't set a Constant value to sessionId for both server and client, because there will be many instance of our game need to run. So there will be a conflict between each session if the session id is same for all time.

    Im using a photon bolt dedicated server(Headless Build) which will be deployed and run on a Playfab virtual Machine (ThunderHead 2.0) and using Playfab MatchMaking API for clients to join with server. For every each Match, MatchMaking will result a different unique "MatchId and serverdetails which contains udpEndPoint" for all players(clients). But with these result i can't able to join the session with "BoltMatchMaking.JoinSession()";

    How to get or set the session Id in server (BoltMatchMaking.Createsession) which will be equal to MatchId generated by PlayfabMatchmaking for each Match instance.

    Hope you understand my problem and waiting for your response.
    Thanks in advance.
  • Hello @Arunkumar ,

    Please, take a look at the page I've linked on the other post: https://doc.photonengine.com/en-us/bolt/current/lobby-and-matchmaking/bolt-matchmaking

    The first argument of "BoltMatchmaking.CreateSession(string sessionID, IProtocolToken token, string sceneToLoad)" is your Match ID, that you can use to create a session on the Photon Cloud with the same name as you've created on the PlayFab Matchmaking System. On the client-side, just use this Match ID to join the session using the "BoltMatchmaking.JoinSession(string sessionID, IProtocolToken token)" method.

    --
    Ramon Melo
    Photon Bolt Team