public void OnStartGameSession(GameSession gameSession)
        {
            Log.DebugFormat("ServerState got the startGameSession signal. GameSession : {0}", gameSession);

            if (!processReady)
            {
                Log.Debug("Got a game session on inactive process. Ignoring.");
                return;
            }
            gameSessionId = gameSession.GameSessionId;

            Task.Run(() => {
                processParameters.OnStartGameSession(gameSession);
            });
        }
        public void OnStartGameSession(string rawGameSession, IAck ack)
        {
            log.DebugFormat("ServerState got the startGameSession signal. rawGameSession : {0}", rawGameSession);
            if (!processReady)
            {
                log.Debug("Got a game session on inactive process. Sending false ack.");
                ack.Call(false);
                return;
            }
            log.Debug("OnStartGameSession: Sending true ack.");
            ack.Call(true);

            Task.Run(() =>
            {
                GameSession gameSession = GameSessionParser.Parse(rawGameSession);
                gameSessionId           = gameSession.GameSessionId;
                processParameters.OnStartGameSession(gameSession);
            });
        }