public RoomListAsyncOp GetRoomList(string roomType, Action <RoomListAsyncOp> callback = null)
        {
            Debug.Log($"[HOLONET] ROOMS - GetRoomList for version {PhotonNetwork.AppVersion}");
            if (!canExecuteOperation)
            {
                return(CreateFail(HoloNetError.ANOTHER_ROOM_OPERATION_IN_PRORESS, callback));
            }
            if (!PhotonNetwork.GetCustomRoomList(new TypedLobby("Default", LobbyType.SqlLobby),
                                                 $"C0 = '{roomType}'"))
            {
                return(CreateFail(HoloNetError.PROVIDER_NOT_READY, callback));
            }

            _getRoomsAsyncOp          = new RoomListAsyncOp();
            _getRoomsAsyncOp.callback = callback;
            _getRoomsAsyncOp.rooms    = new List <HoloNetRoom>();
            return(_getRoomsAsyncOp);
        }
        public void OnRoomListUpdate(List <RoomInfo> roomList)
        {
            if (_getRoomsAsyncOp == null)
            {
                return;
            }
            Debug.Log($"[HOLONET] ROOMS - OnRoomListUpdate");
            foreach (var roomInfo in roomList)
            {
                Debug.Log($"[HOLONET] ROOMS - OnRoomListUpdate {roomInfo.Name} {roomInfo.MaxPlayers}");
            }

            foreach (var photonRoomInfo in roomList)
            {
                _getRoomsAsyncOp.rooms.Add(ConvertToHolonetRoom(photonRoomInfo));
            }

            _getRoomsAsyncOp.isDone = true;
            _getRoomsAsyncOp.InvokeCallback();
            _getRoomsAsyncOp = null;
        }