handle

fun handle(params: IPluginServletActionParams, serverManager: WhisperServerManager, isExternalMode: Boolean, externalUrl: String?, externalApiKey: String?, externalModel: String?, modelUrl: String, ffmpegAvailable: Boolean, autoDetectLanguage: Boolean = false, pluginProperties: Properties): IPluginServletActionRetVal

Processes a servlet request for speech-to-text transcription.

Return

JSON response with transcribed text or an error message.

Parameters

params

Servlet action parameters containing headers, request parameters, and uploads.

serverManager

The server manager providing readiness and resource state.

isExternalMode

true when using an external OpenAI-compatible API.

externalUrl

Base URL of the external API (if external mode).

externalApiKey

Bearer token for the external API (if external mode).

externalModel

Model identifier for the external API.

modelUrl

The URL of the loaded model (used in health-check response).

ffmpegAvailable

Whether ffmpeg is available for audio conversion.

autoDetectLanguage

When true, skip browser language and let whisper auto-detect.

pluginProperties

Plugin properties for customization.