Reference17:Apps/PbxManager/App Translations
Jump to navigation
Jump to search
There are also other versions of this article available:
Reference14r2 | Reference15r1 | Reference16r1 | Reference17 (this version)
With the translations PBX-Manager plugin, the needed app object can be created and configured. In addition, the app object can be assigned to specific config templates, if any exist.
Add an app object
- Name
- The name displayed for the app object which must be unique.
- SIP
- The sip from the app object which must be unique.
- Config Templates
- Enabled config templates where the App should be available.
- If config templates exist, they will be listed with a checkbox.
- The app object will be assigned to the config templates if a checkbox is checked.
- Be Aware: Every user who should be able to use the translation service needs to have it assigned (by using a config template, for example).
Translations Service
Select the active translation backend.
DeepL
Specific https://www.deepl.com configuration
- URL
- The URL API Endpoint for the translation backend.
- If the field is empty, which is the default, the API endpoint will be selected automatically depending on the type of the key. If key ends with ":fx" the URL
https://api-free.deepl.comis used, otherwisehttps://api.deepl.com
- API-Key
- The secret api-key
eTranslation
Specific https://translation.ec.europa.eu/tools-and-resources/ai-translation-and-language-tools_en configuration
- Application Name
- The secret Application Name
- Password
- The secret Password
Custom LLM
Connects to any OpenAI API-compatible server, such as Ollama, vLLM, LM Studio, or a self-hosted model and interact with the endpoint POST /v1/chat/completions.
- Hostname
- The base URL of the server. The protocol prefix
https://is assumed if omitted. - Example:
https://ollama.example.comorollama.example.com - Once a hostname is entered, the plugin automatically queries
{hostname}/v1/modelsand populates the Model dropdown.
- Token
- Optional Bearer token sent as
Authorization: Bearer {token}with every request to the inference server, including the model list query. Leave empty if the server does not require authentication.
- System Prompt
- The system prompt sent to the model with every translation request. Use
{LANG}as a placeholder - it is replaced at runtime with the ISO target language code (e.g.DE,EN-GB). - If left empty, the following default prompt is used:
You are a translation engine. Translate the user input into {LANG}.
Strictly follow all output rules:
- Return ONLY the translated content. No preamble, no explanations, no surrounding text of any kind.
- If the input contains HTML: preserve all tags, attributes, and structure unchanged; translate text nodes only.
- Never translate attribute values (href, src, class, id, style, data-*, etc.).
- Preserve proper nouns, brand names, and technical identifiers exactly as-is.
- Preserve whitespace, line breaks, and formatting exactly.
- Maintain the original tone and register (formal/informal).
- If the input is already in {LANG}, return it unchanged.
- Model
- Dropdown populated automatically from the models available on the configured host. Select the model to be used for translation requests.
- Temperature
- Define the parameter "temperature" in the LLM request. (Default 0.3)
- Max. Tokens
- Define the parameter "max_tokens" in the LLM request. (Default 65536)
- Enable Thinking
- Define the parameter "chat_template_kwargs.enable_thinking" in the LLM request. (Default false)