Про копіювання сценарію існуючого бота
Kwizbot підтримує багатомовність, що дозволяє створювати сценарії для різних мов. При створенні сценарію на одній мові можна перекласти його на інші мови, зберігаючи структуру та логіку сценарію.
Контекст і проблема
У багатьох випадках потрібно створити багатомовні сценарії:
- Різні мови для різних регіонів
- Локалізація контенту для кращого розуміння
- Підтримка кількох мов в одному боті
- Збереження структури при перекладі
Багатомовність вирішує цю задачу, дозволяючи створювати сценарії для різних мов зі збереженням структури та логіки.
Основні концепції
Перемикання між мовами
В лівому нижньому куті сценарію розташована іконка перемикання між мовними версіями бота. Додати/видалити мову можна в налаштуваннях бота.
Процес перекладу
- Створити сценарій на одній мові
- Перейти на наступну мовну версію бота
- Внести зміни у відповідні блоки, що потребують перекладу
- Зберегти сценарій
Візуальні індикатори
- Червоний колір — неперекладений текст в блоках сценарію
- Сірий колір — перекладений текст після заповнення полів
- Порожні поля — при відкритті редагування блоку в новій мовній версії
Варіанти підходів
Переклад вручну vs автоматичний переклад
Переклад вручну:
- ✅ Плюси: Точність, контроль якості, врахування контексту
- ❌ Мінуси: Повільність, потребує знання мов
Автоматичний переклад:
- ✅ Плюси: Швидкість
- ❌ Мінуси: Можливі помилки, відсутність контексту
Чому використовуємо ручний переклад: Ручний переклад забезпечує кращу якість та врахування контексту, що важливо для ефективної комунікації з користувачами.
Прийняті рішення
Що потрібно перекладати
Потрібно перекладати:
- Текст повідомлень
- Текст кнопок
- Назви блоків (якщо використовуються в повідомленнях)
- Текст в action блоках (якщо містить текст для користувача)
Не потрібно перекладати:
- Назви action блоків
- JSON конфігурації (крім тексту для користувача)
- Alias блоків
- Технічні параметри
Використання плейсхолдерів
Плейсхолдери (наприклад, {{user_name}}) працюють однаково для всіх мов. Перекладати потрібно тільки текст навколо плейсхолдерів.
Наслідки для користувачів і імплементації
Для інтеграторів
При перекладі сценарію важливо:
- Перевірити всі блоки — на наявність неперекладених текстів (червоний колір)
- Перекласти текст навколо плейсхолдерів — зберігаючи самі плейсхолдери
- Зберегти структуру — не змінювати логіку та alias блоків
- Перевірити переклад — на коректність та відповідність контексту
Типові помилки
Помилка: Деякі блоки не перекладені
Проблема: Забуто перекласти текст у деяких блоках
Рішення: Перевірити всі блоки на червоний колір та перекласти неперекладений текст
Помилка: Плейсхолдери не працюють після перекладу
Проблема: Випадково видалено або змінено плейсхолдери
Рішення: Перевірити збереження плейсхолдерів у перекладених текстах
Помилка: Структура сценарію зламалася після перекладу
Проблема: Змінено alias або структуру блоків
Рішення: Перевірити збереження alias та структури при перекладі
Приклади використання
Переклад з плейсхолдерами
Українська версія:
Привіт, {{user_name}}! Як справи?
Англійська версія:
Hello, {{user_name}}! How are you?
Автоматичне визначення мови
Система може автоматично визначати мову користувача на основі:
- Налаштувань месенджера
- Першого повідомлення користувача
- Налаштувань бота
Пов'язані документи
- How-to: Додати переклади — детальна інструкція по додаванню перекладів