@ExtensionPointMethod
    @Override
    public Mono<CreateMeetingResult> createMeeting(
            @NotNull Long requesterId,
            @NotNull Meeting meeting,
            @NotNull CreateMeetingOptions options) {
        String roomName = getRoomName(meeting.getId());
        Long idleTimeoutMillis = options.idleTimeoutMillis();
        return liveKitClient.getRoomService()
                // TODO: support configuring these parameters.
                .createRoom(roomName,
                        idleTimeoutMillis == null
                                ? null
                                : MathUtil.toInt(idleTimeoutMillis / 1000),
                        options.maxParticipants(),
                        null,
                        null,
                        null,
                        null,
                        null,
                        null)
                .map(room -> new CreateMeetingResult(
                        liveKitClient.generateRoomAccessToken(roomName)));
    }
The class is an bridge between Turms and LiveKit.

@author James Chen
turms-plugins/turms-plugin-livekit/src/main/java/im/turms/plugin/livekit/LiveKitConferenceServiceProvider.java