FlowCastle/Docs/Мультиязычные боты: один бот, много языков

Мультиязычные боты: один бот, много языков

Пишете сообщение один раз, добавляете переводы для нужных языков — и FlowCastle сам отправляет каждому человеку нужный текст.

3 минуты чтения·Обновлено: 2026-08-21
Пишете сообщение один раз, добавляете переводы для нужных языков — и FlowCastle сам отправляет каждому человеку нужный текст.

Гайд

  1. 1

    Что это такое

    Бот может говорить на нескольких языках. Вы пишете текст один раз — на исходном языке. Для остальных языков добавляете переводы. FlowCastle сам отправляет каждому человеку текст на его языке — и подписи на кнопках тоже. Это работает во всех сценариях и в рассылках.

  2. 2

    Включите языки

    Откройте Настройки → Общие → Языки. Укажите исходный язык — тот, на котором уже написаны ваши сценарии. Добавьте любые дополнительные языки — подойдёт любой язык, список не ограничен.

    Включите «Определять язык пользователя в Telegram автоматически», и FlowCastle будет брать язык из настроек Telegram каждого человека. Если оставить выключенным, все получают исходный язык, пока не выберут другой сами.

    Под каждым добавленным языком — строка со статусом: сколько текстов ещё не переведено, сколько устарело, и ссылка, которая сразу открывает редактор на этом языке.

  3. 3

    Перевод через AI-чат

    Быстрее всего перевести бота — просто попросить. В редакторе сценария нажмите ✨ Перевести всё рядом с переключателем языка. Или откройте AI-чат и напишите что-то вроде «переведи бота на русский».

    Перед началом чат покажет карточку со стоимостью: 0,2 кредита за блок за язык. Блоки, которые уже переведены и не устарели, ничего не стоят. Подтвердите — и чат переведёт всё, что отсутствует или устарело. По завершении появятся кнопки Опубликовать и Отменить, как после обычной сборки.

    Формулировка не важна. «переведи бота на испанский» сработает так же, как и «translate the bot to Spanish». Если хотите просто узнать, как это работает, спросите в режиме вопросов: «как перевести моего бота?»

  4. 4

    Отредактируйте перевод вручную

    Откройте сценарий. Если в приложении есть дополнительные языки, вверху холста появится переключатель языка: 🇬🇧 EN · исходный, 🇷🇺 RU и так далее. Выберите язык — и весь холст покажет текст на нём.

    Блоки без перевода получают маленькую метку: RU ○ — перевода нет, RU ◐ — перевод устарел. Рядом с переключателем — счётчик: «RU: 3 нет · 2 устарело».

    Откройте блок сообщения при выбранном RU — вы редактируете русский текст и подписи русских кнопок. Английский исходник остаётся виден над каждым полем, серым цветом, только для справки. Добавлять и убирать кнопки, менять медиа и настройки здесь нельзя — эта структура общая для всех языков. Чтобы изменить её, переключитесь на исходный язык.

  5. 5

    Дайте пользователю выбрать язык (действие «Установить язык»)

    Некоторые боты дают человеку выбрать язык самому, а не угадывают его. Добавьте меню «Выберите язык» с кнопкой на каждый язык. У каждой кнопки в качестве действия поставьте Установить язык и укажите нужный язык. Как только человек нажмёт кнопку, FlowCastle запомнит выбор и будет использовать его дальше.

  6. 6

    Как бот выбирает язык

    Для каждого сообщения FlowCastle выбирает язык в таком порядке:

    1. Человек уже выбрал язык через действие «Установить язык»? Используется он.
    2. Автоопределение включено, и Telegram сообщает язык человека? Используется он.
    3. Иначе — используется исходный язык.

    Если язык человека не входит в добавленные, он получает исходный язык — так же, как если бы ничего не было выбрано.

    Две переменные помогают использовать это в сценариях. {{sysvar|language}} — язык, который FlowCastle реально выбрал, после всех трёх правил; используйте его в условиях, чтобы разветвлять сценарий по языку. {{sysvar|languageCode}} — сырой язык, который прислал Telegram, до применения этой логики.

  7. 7

    Устаревшие переводы

    Если вы позже измените исходный текст, все его переводы становятся устаревшими — они не пропадают и не удаляются. FlowCastle продолжает отправлять устаревший перевод, пока вы его не обновите: старый перевод лучше, чем никакого.

    Запустите «Перевести всё» ещё раз — и оно переделает всё отсутствующее и устаревшее. Переводы, которые вы написали вручную, сохраняются: «Перевести всё» перезапишет их только если вы явно выберете переделать всё, а не только недостающее и устаревшее.

  8. 8

    Ограничения

    Кое-что намеренно не переводится:

    • Нет перевода → бот отправляет исходный текст. Пустое сообщение не уйдёт никогда.
    • Подписи динамических кнопок — тех, чей текст берётся из переменной, — не переводятся. Этот текст и так под вашим контролем.
    • Текст, который собирает свой код или CEL-выражение, тоже не переводится.
    • Рассылки используют те же переводы, что и обычные сценарии — настраивать отдельно не нужно.
    • Перевод сам по себе ничего не публикует. После перевода нажмите Опубликовать, чтобы новый текст попал к пользователям.

Следующий гайд

Продолжите с
Основы узла Message
Руководство по узлу Message в FlowCastle: пишите понятные сообщения, добавляйте кнопки и персонализируйте ответы переменными.

Похожие гайды

Ещё гайды, чтобы продолжить с этой темы.