Donutgramплагины
На этой страницеAPI translation

Перевод текста

Переводите выбранный текст через именованный сервис Telegram.

API translation

Нужна возможность translation.request / selectedText. Перевод работает с точным текущим выбором и собственным нативным подтверждением обращения к сервису Telegram.

Запросить перевод

const translated = await api.translation.request({
  targetLanguage: "en"
});

await api.ui.toast(translated.text);

Результат содержит text, service: "telegram" и targetLanguage.

Передать текст явно

Необязательное поле text не превращает метод в произвольную внешнюю пересылку. Переданный текст должен соответствовать текущему выбранному нативному контексту.

const selection = await api.selection.get();
if (!selection) return;

const result = await api.translation.request({
  targetLanguage: "en",
  text: selection.text
});

Чтение selection в таком варианте требует отдельной возможности чтения выбранного текста.

Пользователь отменил

При отмене завершите операцию. Не отправляйте текст через другой сервис и не повторяйте запрос автоматически без нового действия пользователя.

Работа с результатом

Перевод можно показать на своей странице или предложить вставить в черновик через отдельный разрешённый composer-сценарий. Сам вызов перевода не редактирует сообщение и не отправляет результат в чат.