Гайд
- 1
Что это такое
Бот может говорить на нескольких языках. Вы пишете текст один раз — на исходном языке. Для остальных языков добавляете переводы. FlowCastle сам отправляет каждому человеку текст на его языке — и подписи на кнопках тоже. Это работает во всех сценариях и в рассылках.
- 2
Включите языки
Откройте Настройки → Общие → Языки. Укажите исходный язык — тот, на котором уже написаны ваши сценарии. Добавьте любые дополнительные языки — подойдёт любой язык, список не ограничен.
Включите «Определять язык пользователя в Telegram автоматически», и FlowCastle будет брать язык из настроек Telegram каждого человека. Если оставить выключенным, все получают исходный язык, пока не выберут другой сами.
Под каждым добавленным языком — строка со статусом: сколько текстов ещё не переведено, сколько устарело, и ссылка, которая сразу открывает редактор на этом языке.
- 3
Перевод через AI-чат
Быстрее всего перевести бота — просто попросить. В редакторе сценария нажмите ✨ Перевести всё рядом с переключателем языка. Или откройте AI-чат и напишите что-то вроде «переведи бота на русский».
Перед началом чат покажет карточку со стоимостью: 0,2 кредита за блок за язык. Блоки, которые уже переведены и не устарели, ничего не стоят. Подтвердите — и чат переведёт всё, что отсутствует или устарело. По завершении появятся кнопки Опубликовать и Отменить, как после обычной сборки.
Формулировка не важна. «переведи бота на испанский» сработает так же, как и «translate the bot to Spanish». Если хотите просто узнать, как это работает, спросите в режиме вопросов: «как перевести моего бота?»
- 4
Отредактируйте перевод вручную
Откройте сценарий. Если в приложении есть дополнительные языки, вверху холста появится переключатель языка: 🇬🇧 EN · исходный, 🇷🇺 RU и так далее. Выберите язык — и весь холст покажет текст на нём.
Блоки без перевода получают маленькую метку: RU ○ — перевода нет, RU ◐ — перевод устарел. Рядом с переключателем — счётчик: «RU: 3 нет · 2 устарело».
Откройте блок сообщения при выбранном RU — вы редактируете русский текст и подписи русских кнопок. Английский исходник остаётся виден над каждым полем, серым цветом, только для справки. Добавлять и убирать кнопки, менять медиа и настройки здесь нельзя — эта структура общая для всех языков. Чтобы изменить её, переключитесь на исходный язык.
- 5
Дайте пользователю выбрать язык (действие «Установить язык»)
Некоторые боты дают человеку выбрать язык самому, а не угадывают его. Добавьте меню «Выберите язык» с кнопкой на каждый язык. У каждой кнопки в качестве действия поставьте Установить язык и укажите нужный язык. Как только человек нажмёт кнопку, FlowCastle запомнит выбор и будет использовать его дальше.
- 6
Как бот выбирает язык
Для каждого сообщения FlowCastle выбирает язык в таком порядке:
- Человек уже выбрал язык через действие «Установить язык»? Используется он.
- Автоопределение включено, и Telegram сообщает язык человека? Используется он.
- Иначе — используется исходный язык.
Если язык человека не входит в добавленные, он получает исходный язык — так же, как если бы ничего не было выбрано.
Две переменные помогают использовать это в сценариях. {{sysvar|language}} — язык, который FlowCastle реально выбрал, после всех трёх правил; используйте его в условиях, чтобы разветвлять сценарий по языку. {{sysvar|languageCode}} — сырой язык, который прислал Telegram, до применения этой логики.
- 7
Устаревшие переводы
Если вы позже измените исходный текст, все его переводы становятся устаревшими — они не пропадают и не удаляются. FlowCastle продолжает отправлять устаревший перевод, пока вы его не обновите: старый перевод лучше, чем никакого.
Запустите «Перевести всё» ещё раз — и оно переделает всё отсутствующее и устаревшее. Переводы, которые вы написали вручную, сохраняются: «Перевести всё» перезапишет их только если вы явно выберете переделать всё, а не только недостающее и устаревшее.
- 8
Ограничения
Кое-что намеренно не переводится:
- Нет перевода → бот отправляет исходный текст. Пустое сообщение не уйдёт никогда.
- Подписи динамических кнопок — тех, чей текст берётся из переменной, — не переводятся. Этот текст и так под вашим контролем.
- Текст, который собирает свой код или CEL-выражение, тоже не переводится.
- Рассылки используют те же переводы, что и обычные сценарии — настраивать отдельно не нужно.
- Перевод сам по себе ничего не публикует. После перевода нажмите Опубликовать, чтобы новый текст попал к пользователям.
