Разделы документации

Как переключать язык виджета, переопределять строки и совмещать настройки кабинета с JS API.

Язык и тексты

Виджет говорит на семи языках: русском (ru), английском (en), испанском (es), португальском (pt), немецком (de), французском (fr) и турецком (tr).

Как выбирается язык при загрузке

  1. Параметр locale в конфигурации страницы.
  2. Язык, выбранный в панели: Настройки → Виджет.
  3. Адрес сервера: app.svyazio.ru — русский, app.svyazio.com — английский.
  4. Язык браузера посетителя, если он среди поддерживаемых; иначе английский.

locale в конфигурации и setLanguage — в чём разница

  • locale: 'en' в конфигурации переводит виджет целиком. Заголовок, приветствие и подписи формы контактов из панели заменяются стандартными переводами — иначе на английской странице остался бы русский заголовок. Это происходит для любого языка, в том числе для русского.
  • Svyazio('setLanguage', 'en') на лету меняет только встроенные надписи: подсказку в поле ввода, подписи кнопок, строку «Работает на Связио». Тексты из панели остаются как есть.

Чтобы задать язык и сохранить свои тексты, передайте их параметрами рядом с locale — они главнее переводов. Пример для многоязычного сайта, где язык берётся из <html lang>:

JavaScript
// Внутри кода установки, вместо строки w.SvyazioConfig = {…}
var lang = document.documentElement.lang.slice(0, 2);   // "ru", "en", "de"…

var texts = {
  ru: { headerText: "Поддержка",  welcomeText: "Ответим в течение пары минут." },
  en: { headerText: "Support",    welcomeText: "We usually reply within minutes." }
};

w.SvyazioConfig = Object.assign({
  orgId: "ВАШ_ORG_ID",
  serverUrl: "https://app.svyazio.ru",
  locale: lang
}, texts[lang] || {});

Какие надписи можно заменить

Объект в locale или в Svyazio('setLocale', …) меняет отдельные надписи. Можно писать полным путём или коротким ключом — это равнозначно.

ПутьКороткий ключЧто меняет
chat.header.titleheaderTextЗаголовок окна
chat.header.onlineTitleonlineTitleПодзаголовок в рабочее время
chat.header.offlineTitleofflineTitleПодзаголовок в нерабочее время
chat.welcomewelcomeTextПриветствие в пустом чате
chat.offlineofflineTextТекст в пустом чате вне рабочего времени
chat.input.placeholderplaceholderПодсказка в поле ввода
JavaScript
// в коде установки
w.SvyazioConfig = {
  orgId: "ВАШ_ORG_ID",
  serverUrl: "https://app.svyazio.ru",
  locale: {
    chat: {
      header: { title: "Отдел продаж" },
      input: { placeholder: "Спросите про доставку…" }
    }
  }
};

// то же короткими ключами — на лету
Svyazio('setLocale', { headerText: "Отдел продаж", placeholder: "Спросите про доставку…" });

Замена действует на уже нарисованный виджет. После setLanguage подсказка в поле ввода вернётся к переводу — если нужна своя, вызовите setLocale ещё раз.

Обновлено 22 сентября 2026