mirror of
https://github.com/dartdavros/chatballs.git
synced 2026-10-05 09:14:58 +03:00
Сообщения сообщества ВКонтакте принимаются через Bots Long Poll: тот же способ, что у Telegram и MAX, поэтому подключению не нужен ни публичный адрес, ни доступ извне — установка за NAT работает наравне с остальными. Позиция потока живёт в poll_marker, адрес сервера и ключ — в памяти процесса: их выдают на несколько часов, и колонка под них означала бы запись в базу на каждом цикле опроса. Ответы failed 1-3 восстанавливаются в том же цикле, иначе подключение висело бы с протухшим ключом до перезапуска воркера. Идентификатор сообщества владелец не вводит: его называет сам ключ доступа, и проверка подключения кладёт его в конфигурацию — как имя бота у Telegram и MAX. Проверка заодно смотрит настройки сообщества: без Long Poll и события о входящем сообщении приём невозможен, и об этом честнее сказать сразу, а не молчать зелёным статусом. Настройки чужого сообщества при этом не меняются. Нехватка прав у ключа объясняется словами: ВКонтакте отвечает на неё английским «no access», из которого не видно, что включить. Имя, логин и фото отправителя ВКонтакте в апдейте не присылает — их забирает один users.get на пачку сообщений, а не на каждое: на оживлённом сообществе запрос на реплику упёрся бы в частоту обращений. Телефона и кнопки «поделиться контактом» у ВКонтакте нет, поэтому просьба уходит обычным сообщением, как и почтой. Голосовые принимаются, но не отправляются: провайдер ждёт ogg/opus, а композер пишет webm. Токен уходит строкой запроса — заголовка авторизации у ВКонтакте нет. Поэтому адрес больше нигде не печатается как есть: и журнал, и поле последней ошибки подключения, которое видно в интерфейсе, проходят через маскирование секретных параметров. Проверено на живом сообществе: проверка подключения, опрос Long Poll, приём текста, голосового и фото с подстановкой имени, логина и аватара. Тесты транспорта и проверки подключения, каталоги переводов, ruff из корня, tsc и vitest по internal-ui. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
1715 lines
146 KiB
TypeScript
1715 lines
146 KiB
TypeScript
// Словарь русского интерфейса.
|
||
//
|
||
// Русский — оригинал: он задаёт набор ключей, английский обязан его повторить.
|
||
// Пропущенный перевод — ошибка компиляции, а не пустая строка у клиента.
|
||
//
|
||
// Ключ собран из смысла, а не из самой фразы: строку переформулируют чаще, чем
|
||
// переименовывают, и «conversations.assign_to_me» переживает смену текста.
|
||
|
||
import type { Message } from "@chatballs/shared";
|
||
|
||
export const ru = {
|
||
"admin.30_days": "30 дней",
|
||
"admin.7_days": "7 дней",
|
||
"admin.90_days": "90 дней",
|
||
"admin.access": "Доступ",
|
||
"admin.access_block": "Блокировка доступа",
|
||
"admin.access_recovery": "Восстановление доступа",
|
||
"admin.account": "Учётная запись",
|
||
"admin.action_code": "Код действия",
|
||
"admin.action_recorded_audit_log": "Действие записано в аудит",
|
||
"admin.activate": "Активировать",
|
||
"admin.active_devices": "{count} устройств",
|
||
"admin.active_sessions_ended": "Активные сессии завершены",
|
||
"admin.add_operator": "Добавить сотрудника",
|
||
"admin.all_operators": "Все сотрудники",
|
||
"admin.all_time": "Всё время",
|
||
"admin.atomic_operation_organization_keeps_exactly": "Атомарная операция · в организации остаётся ровно один владелец",
|
||
"admin.audit_log_with_total": "Журнал действий в организации · {total}",
|
||
"admin.block": "Заблокировать",
|
||
"admin.block_operator": "Заблокировать сотрудника",
|
||
"admin.can_now_sign_with_new": "Теперь можно войти с новым паролем.",
|
||
"admin.cannot_scan_enter_key_manually": "Не получается отсканировать? Введите ключ вручную:",
|
||
"admin.change_address": "Изменить адрес",
|
||
"admin.change_temporary_password": "Смена временного пароля",
|
||
"admin.chat_only": "Только чат",
|
||
"admin.chatballs_mark_will_shown_menu": "Вместо него в меню снова будет показан знак Chatballs.",
|
||
"admin.check_email": "Проверьте почту",
|
||
"admin.checking_link": "Проверяем ссылку",
|
||
"admin.checking_password_reset_link": "Проверяем ссылку для сброса пароля…",
|
||
"admin.close_form": "Закрыть форму",
|
||
"admin.close_panel": "Закрыть панель",
|
||
"admin.code_did_not_match_try": "Код не совпал. Попробуйте ещё раз",
|
||
"admin.code_from_authenticator_app": "Код из приложения-аутентификатора",
|
||
"admin.code_refreshes": "Код обновится через",
|
||
"admin.confirm": "Подтвердить",
|
||
"admin.contact_support": "Связаться с поддержкой",
|
||
"admin.copied_close": "Скопировал, закрыть",
|
||
"admin.could_not_create_organization": "Не удалось создать организацию",
|
||
"admin.could_not_load_candidates": "Не удалось загрузить кандидатов",
|
||
"admin.could_not_load_data": "Не удалось загрузить данные",
|
||
"admin.could_not_load_log": "Не удалось загрузить журнал",
|
||
"admin.could_not_load_operator_card": "Не удалось загрузить карточку сотрудника",
|
||
"admin.could_not_load_operators": "Не удалось загрузить сотрудников",
|
||
"admin.could_not_save_changes": "Не удалось сохранить изменения",
|
||
"admin.could_not_save_password": "Не удалось сохранить пароль",
|
||
"admin.could_not_send_email": "Не удалось отправить письмо",
|
||
"admin.create_operator": "Создать сотрудника",
|
||
"admin.created": "Создан",
|
||
"admin.creating": "Создание",
|
||
"admin.creation_failed": "Ошибка создания",
|
||
"admin.credentials": "Учётные данные",
|
||
"admin.credentials_role_groups": "Учётные данные · роль · группы",
|
||
"admin.danger_zone": "Опасная зона",
|
||
"admin.e_g_operator": "напр. Оператор",
|
||
"admin.earlier": "Ранее",
|
||
"admin.elena_kuznetsova": "Елена Кузнецова",
|
||
"admin.email_sent": "Письмо отправлено",
|
||
"admin.end_all": "Завершить все",
|
||
"admin.end_sessions": "Завершить сессии",
|
||
"admin.ends_every_session_immediately_stops": "Немедленно завершит все сессии и прекратит HTTP и realtime actions. Аудит и авторство сохраняются. Требует подтверждения.",
|
||
"admin.enter_6_digit_code_from": "Введите 6-значный код из приложения-аутентификатора для",
|
||
"admin.enter_code_from_app": "Введите код из приложения",
|
||
"admin.enter_new_password": "Введите новый пароль",
|
||
"admin.enter_work_email_we_will": "Укажите рабочий email — пришлём ссылку для создания нового пароля.",
|
||
"admin.fair_password": "Средний пароль",
|
||
"admin.first_access_password": "Пароль первичного доступа",
|
||
"admin.first_last_name": "Имя и фамилия",
|
||
"admin.first_password_goes_to": "Пароль первичного доступа отправится на {email}",
|
||
"admin.first_run_create_organization_owner": "Первый запуск: создайте организацию и учётную запись владельца",
|
||
"admin.follow_link_email_set_new": "Перейдите по ссылке из письма, чтобы задать новый пароль.",
|
||
"admin.former_owner_s_new_role": "Новая роль прежнего владельца",
|
||
"admin.full_access_exactly_one_per": "Полный доступ. Ровно один в организации. Изменяется только через передачу владения.",
|
||
"admin.full_access_identical_owner_owner": "Полный доступ, идентичен владельцу. Единственное отличие владельца — его нельзя удалить.",
|
||
"admin.generate_show_me": "Сгенерировать и показать мне",
|
||
"admin.good_password": "Хороший пароль",
|
||
"admin.good_see": "Рады вас видеть!",
|
||
"admin.group_decides_which_conversations_visible": "Группа задаёт только видимость диалогов и не выдаёт прав.",
|
||
"admin.group_decides_which_conversations_visible_2": "Группа задаёт только видимость диалогов и не выдаёт прав",
|
||
"admin.group_will_be_deleted": "«{name}» будет удалена; её диалоги станут «Без группы».",
|
||
"admin.hide_password": "Скрыть пароль",
|
||
"admin.i_understand_consequences_confirm_transfer": "Я понимаю последствия и подтверждаю передачу владения организацией.",
|
||
"admin.if": "Если",
|
||
"admin.if_address_registered_we_will": "Если адрес зарегистрирован, отправим ссылку для сброса пароля. Ссылка действует 30 минут.",
|
||
"admin.install_demo_data": "Установить демо-данные",
|
||
"admin.last_password_change": "Последняя смена: {date} · новый можно отправить письмом или показать и скопировать",
|
||
"admin.last_sign": "Последний вход",
|
||
"admin.link_does_not_work": "Ссылка не подходит",
|
||
"admin.link_has_expired_or_has": "Срок действия ссылки истёк или она уже использована.",
|
||
"admin.link_not_valid": "Ссылка недействительна",
|
||
"admin.link_valid_30_minutes_one": "Ссылка действует 30 минут и только один раз. Запросите восстановление доступа ещё раз.",
|
||
"admin.list_holds_active_administrators_only": "В списке только активные администраторы. Чтобы передать владение сотруднику, сначала сделайте его администратором.",
|
||
"admin.log_actions_organization": "Журнал действий в организации",
|
||
"admin.logo": "Логотип",
|
||
"admin.logo_removed": "Логотип удалён",
|
||
"admin.logo_updated": "Логотип обновлён",
|
||
"admin.main_details": "Основные данные",
|
||
"admin.mark_all_as_read": "Прочитать всё",
|
||
"admin.member_count": "{count} сотр.",
|
||
"admin.name": "Ваше имя",
|
||
"admin.name_email_or_position": "Имя, почта или должность",
|
||
"admin.never_signed": "не входил",
|
||
"admin.new_operator": "Новый сотрудник",
|
||
"admin.new_owner_administrators_only": "Новый владелец · только администраторы",
|
||
"admin.new_owner_gains_full_access": "Новый владелец получит полный доступ. Вы потеряете права владельца, включая передачу владения и управление администраторами. Операция аудируется и необратима без повторной передачи.",
|
||
"admin.no_access_code": "Нет доступа к коду?",
|
||
"admin.no_email_after_couple_minutes": "Письмо не пришло за пару минут? Проверьте «Спам» или повторите запрос — ссылка действует 30 минут.",
|
||
"admin.no_events_yet": "Событий пока нет",
|
||
"admin.no_events_yet_2": "Событий пока нет.",
|
||
"admin.no_notifications": "Уведомлений нет",
|
||
"admin.no_operators_found": "Сотрудники не найдены",
|
||
"admin.nord_atelier": "Ателье Норд",
|
||
"admin.nothing_matched_filters": "Под фильтры ничего не подошло",
|
||
"admin.notifications": "Уведомления",
|
||
"admin.off_operator": "Отключена для этого сотрудника",
|
||
"admin.one_moment": "Подождите немного.",
|
||
"admin.open_card": "Открыть карточку",
|
||
"admin.resend_invitation": "Отправить приглашение ещё раз",
|
||
"admin.revoke_invitation": "Отозвать приглашение",
|
||
"admin.invitation_valid_until": "Приглашение до {date}",
|
||
"admin.operator_blocked": "Сотрудник заблокирован",
|
||
"admin.operator_blocked_cannot_sign_unblocking": "Сотрудник заблокирован и не может войти. Разблокировка восстановит доступ по активным назначениям.",
|
||
"admin.operator_created": "Сотрудник создан",
|
||
"admin.operator_details_changed": "Данные сотрудника изменены",
|
||
"admin.operator_gets_email_with_first": "Сотрудник получит письмо со ссылкой первого входа. Подходит, когда почта организации настроена и работает.",
|
||
"admin.operator_groups_changed": "Изменены группы сотрудника",
|
||
"admin.operator_password_reset": "Пароль сотрудника сброшен",
|
||
"admin.operator_s_active_sessions_were": "Активные сессии сотрудника завершены, при первом входе он задаст свой пароль.",
|
||
"admin.operator_unblocked": "Сотрудник разблокирован",
|
||
"admin.operators_agents_conversations_knowledge_fictional": "Сотрудники, агенты, диалоги и знания вымышленного ателье — посмотреть систему в работе. Удаляются в «Настройках» одной кнопкой.",
|
||
"admin.organization_details_saved": "Данные организации сохранены",
|
||
"admin.organization_logo_alt": "Логотип {name}",
|
||
"admin.organization_name": "Название организации",
|
||
"admin.organization_ownership_transferred": "Передано владение организацией",
|
||
"admin.owner": "→ Владелец",
|
||
"admin.owner_admin_have_identical_rights": "OWNER и ADMIN идентичны по правам; EMPLOYEE работает только в чате.",
|
||
"admin.owner_cannot_blocked_or_deleted": "Владельца нельзя заблокировать или удалить, поэтому других опасных действий на его карточке нет.",
|
||
"admin.owner_cannot_deleted_blocked_or": "Владельца нельзя удалить, заблокировать или сменить ему роль — единственный путь изменения роли владельца это передача владения.",
|
||
"admin.owner_s_role_changes_only": "Роль владельца меняется только через передачу владения.",
|
||
"admin.ownership_passes_administrator_only_they": "Владение передаётся только администратору: у него уже полный доступ, и после передачи он получит защищённые действия владельца. Операция атомарна, аудируется и требует подтверждения.",
|
||
"admin.ownership_transfer": "Передача владения",
|
||
"admin.ownership_transfer_failed": "Ошибка передачи владения",
|
||
"admin.password_appears_right_after_creation": "Пароль покажем сразу после создания — скопируйте его",
|
||
"admin.password_reset": "Пароль сброшен",
|
||
"admin.password_shown_once_after_creation": "Пароль покажется один раз после создания — скопируйте и передайте лично. Нужен, когда письма не доходят или ящик ещё не работает.",
|
||
"admin.password_shown_once_not_stored": "Пароль показывается один раз и на сервере не хранится в открытом виде. Скопируйте и передайте сотруднику лично — при первом входе он сменит его сам. Если окно закрыть, останется только сбросить пароль заново.",
|
||
"admin.password_was_changed_sign_chatballs": "Пароль успешно изменён. Войдите в Chatballs, используя новый пароль.",
|
||
"admin.password_was_generated_shown_once": "Пароль сгенерирован и показан один раз — скопируйте его сейчас.",
|
||
"admin.people_count": "{count} чел.",
|
||
"admin.period": "Период",
|
||
"admin.png_jpeg_or_webp_up": "PNG, JPEG, WebP или SVG · до 2 МБ. Виден в сайдбаре, виджете и письмах.",
|
||
"admin.position_groups": "Должность и группы",
|
||
"admin.qr_code_setting_up_totp": "QR-код для подключения TOTP",
|
||
"admin.recover_access": "Восстановить доступ",
|
||
"admin.registered_with_chatballs_email_with": "зарегистрирован в Chatballs, на него отправлено письмо со ссылкой для сброса пароля.",
|
||
"admin.rejected": "Отклонено",
|
||
"admin.remove_logo": "Удалить логотип?",
|
||
"admin.repeat_password": "Повторите пароль",
|
||
"admin.required_at_every_sign": "Включена · требуется при каждом входе",
|
||
"admin.reset_password": "Сбросить пароль",
|
||
"admin.result": "Результат",
|
||
"admin.roles_groups_showing": "Роли и группы · показано",
|
||
"admin.roles_groups_shown": "Роли и группы · показано {shown} из {total}",
|
||
"admin.save_sign": "Сохранить и войти",
|
||
"admin.scan_qr_code": "Отсканируйте QR-код",
|
||
"admin.scan_qr_code_authenticator_app": "Отсканируйте QR-код в приложении-аутентификаторе, затем подтвердите кодом",
|
||
"admin.search_by_action_object_or": "Поиск по действию, объекту или сотруднику…",
|
||
"admin.search_by_name_email_or": "Поиск по имени, email, должности…",
|
||
"admin.section": "Раздел",
|
||
"admin.secure_connection": "Защищённое соединение",
|
||
"admin.see_every_conversation_organization_operators": "Вы видите все диалоги организации. Сотрудники видят только диалоги своих групп, без группы и те, где они ответственные.",
|
||
"admin.send_by_email_instead": "Отправить на почту вместо этого",
|
||
"admin.send_email_again": "Отправить письмо ещё раз",
|
||
"admin.send_link": "Отправить ссылку",
|
||
"admin.send_work_email": "Отправить на рабочую почту",
|
||
"admin.set_new_password_sign_chatballs": "Задайте новый пароль для входа в Chatballs.",
|
||
"admin.setting_up_two_factor_authentication": "Подключение двухфакторной аутентификации",
|
||
"admin.show_password": "Показать пароль",
|
||
"admin.sign": "Войти",
|
||
"admin.sign_confirmation": "Подтверждение входа",
|
||
"admin.signed_with_temporary_password_set": "Вы вошли по временному паролю. Задайте постоянный пароль, чтобы продолжить.",
|
||
"admin.start": "Начать",
|
||
"admin.status_security": "Статус и безопасность",
|
||
"admin.strong_password": "Надёжный пароль",
|
||
"admin.succeeded": "Выполнено",
|
||
"admin.system_role": "Системная роль",
|
||
"admin.system_role_changed": "Изменена системная роль",
|
||
"admin.there_no_active_administrators_transfer": "Активных администраторов нет. Чтобы передать владение сотруднику, сначала сделайте его администратором.",
|
||
"admin.there_no_groups_yet_so": "Групп пока нет — сотрудник будет видеть все диалоги. Группы создаются в «Настройках».",
|
||
"admin.there_no_groups_yet_so_2": "Групп пока нет — все сотрудники видят все диалоги.",
|
||
"admin.time": "Время",
|
||
"admin.time_zone": "Часовой пояс",
|
||
"admin.toggle_totp": "Переключить TOTP",
|
||
"admin.transfer_ownership": "Передать владение",
|
||
"admin.transferring": "Передача…",
|
||
"admin.two_factor_authentication_totp": "Двухфакторная аутентификация (TOTP)",
|
||
"admin.unblock": "Разблокировать",
|
||
"admin.unblock_operator": "Разблокировать сотрудника",
|
||
"admin.view_only": "Только просмотр",
|
||
"admin.weak_password": "Слабый пароль",
|
||
"admin.with_no_groups_operator_sees": "Без групп сотрудник видит только диалоги без группы. Группы можно изменить позже.",
|
||
"admin.work_email": "рабочую почту",
|
||
"admin.work_email_2": "Рабочий email",
|
||
"admin.work_email_used_sign": "Рабочий email · используется для входа",
|
||
"admin.works_chat_sees_conversations_their": "Работает в чате. Видит диалоги своих групп, диалоги без группы и назначенные ему.",
|
||
"admin.wrong_code_attempts_left_2": "Неверный код. Осталось попыток: 2",
|
||
"admin.wrong_email_or_password_check": "Неверный email или пароль. Проверьте данные и попробуйте снова.",
|
||
"admin.yesterday": "Вчера",
|
||
"ai.action": "ДЕЙСТВИЕ",
|
||
"ai.active": "активен",
|
||
"ai.add_category": "Добавить категорию",
|
||
"ai.add_key_under_settings_ai": "Добавьте ключ в «Настройки → AI-провайдер» и выберите провайдера в блоке «Модель». До этого диалоги агента ждут человека.",
|
||
"ai.add_knowledge_item": "Добавить знание",
|
||
"ai.add_material_by_hand_or": "Добавьте материал вручную или загрузите пачкой из YAML. Пустую категорию без вложенных можно удалить в «Управлять».",
|
||
"ai.add_nested_one": "Добавить вложенную",
|
||
"ai.agent": "АГЕНТ",
|
||
"ai.agent_2": "Агент:",
|
||
"ai.agent_actions": "Действия агента",
|
||
"ai.agent_answers_customers_first_collects": "Агент отвечает клиентам первым и собирает диалоги в группу",
|
||
"ai.agent_answers_customers_first_create": "Агент отвечает клиентам первым. Создайте первого",
|
||
"ai.agent_answers_only_from_selected": "Агент отвечает только по выбранным материалам: знаниям библиотеки и опубликованным статьям порталов.",
|
||
"ai.agent_cannot_deleted_has_conversations": "Агента нельзя удалить: есть диалоги или подключения. Отвяжите подключения и закройте диалоги.",
|
||
"ai.agent_not_found": "Агент не найден",
|
||
"ai.agent_quotes_title_its_reply": "Заголовок цитируется агентом в ответе клиенту — пишите его как ответ, не как папку.",
|
||
"ai.agent_s_replies": "В ответах агента",
|
||
"ai.agent_will_be_deleted": "Агент «{name}» будет удалён безвозвратно. Диалоги и подключения не дают удалить агента.",
|
||
"ai.ai_cannot_reply_no_provider": "AI не может отвечать: провайдер не выбран",
|
||
"ai.ai_off_agent": "AI выключен у агента",
|
||
"ai.ai_replies_attached": "AI отвечает · {count} прикреплено",
|
||
"ai.all_categories_shown": "показаны все категории",
|
||
"ai.all_knowledge": "Все знания",
|
||
"ai.already_attached_agent": "уже прикреплён к этому агенту",
|
||
"ai.any": "Любой",
|
||
"ai.article_meta": "статья",
|
||
"ai.assignment": "Назначение",
|
||
"ai.attach_agent": "Прикрепить к агенту",
|
||
"ai.attach_detach_note": "Прикрепление и открепление — только через «Прикрепить к агенту»: операция атомарна и пишется в журнал.",
|
||
"ai.attachment_agent_hands_link_customer": "вложение · ссылку агент отдаёт клиенту",
|
||
"ai.attachments": "ВЛОЖЕНИЯ",
|
||
"ai.attachments_2": "Вложения",
|
||
"ai.available": "доступен",
|
||
"ai.bind": "Привязать",
|
||
"ai.bold": "Полужирный",
|
||
"ai.can_switched_off_without_deleting": "можно выключить, не удаляя",
|
||
"ai.cannot_delete_because": "Удалить нельзя: {reason}",
|
||
"ai.cannot_delete_named": "«{name}» удалить нельзя: {reason}. Сначала перенесите содержимое.",
|
||
"ai.categories": "КАТЕГОРИИ",
|
||
"ai.categories_do_not_nest_deeper": "Глубже трёх уровней категории не вкладываются",
|
||
"ai.collapse_category": "Свернуть «{name}»",
|
||
"ai.category": "Категория",
|
||
"ai.category_cannot_moved_inside_itself": "Категорию нельзя перенести внутрь себя.",
|
||
"ai.category_empty_will_delete": "Категория «{name}» пуста и будет удалена.",
|
||
"ai.expand_category": "Развернуть «{name}»",
|
||
"ai.category_file_matches_current_one": "категория в файле совпадает с текущей",
|
||
"ai.category_has_no_items": "В категории «{name}» пока нет знаний",
|
||
"ai.category_named": "категория «{name}»",
|
||
"ai.category_not_empty": "категория не пуста",
|
||
"ai.changed_by_bulk_action": "меняется массовым действием",
|
||
"ai.characters_and_chunks": "{characters} знаков · ≈{chunks}",
|
||
"ai.characters_count": "{count} знаков",
|
||
"ai.chunks": "ФРАГМЕНТЫ",
|
||
"ai.chunks_and_characters": "фрагментов · {characters} знаков",
|
||
"ai.chunks_rebuilt_at": "{chunks} · пересобраны {date}",
|
||
"ai.chunks_rebuilt_save_while_rebuild": "Фрагменты пересобираются при сохранении. Пока идёт пересборка, агент отвечает по прежней версии.",
|
||
"ai.clear_filters_or_change_query": "Снимите фильтры или измените запрос — материалы могли остаться в других категориях.",
|
||
"ai.clear_selection": "Снять выделение",
|
||
"ai.code": "Код",
|
||
"ai.connection_already_bound_another_agent": "Подключение уже привязано к другому агенту",
|
||
"ai.copy_as_markdown": "Копировать Markdown",
|
||
"ai.copy_snippet": "Скопировать код",
|
||
"ai.could_not_bind_connection": "Не удалось привязать подключение",
|
||
"ai.could_not_change_agent_s": "Не удалось изменить знания агента",
|
||
"ai.could_not_change_ai_status": "Не удалось изменить статус AI",
|
||
"ai.could_not_change_participation_replies": "Не удалось изменить участие в ответах",
|
||
"ai.could_not_create_agent": "Не удалось создать агента",
|
||
"ai.could_not_delete_agent": "Не удалось удалить агента",
|
||
"ai.could_not_delete_attachment": "Не удалось удалить вложение",
|
||
"ai.could_not_delete_knowledge_item": "Не удалось удалить знание",
|
||
"ai.could_not_detach_connection": "Не удалось отвязать подключение",
|
||
"ai.could_not_import": "Не удалось импортировать",
|
||
"ai.could_not_load_agents": "Не удалось загрузить агентов",
|
||
"ai.could_not_load_categories": "Не удалось загрузить категории",
|
||
"ai.could_not_load_categories_knowledge": "Не удалось загрузить категории и знания",
|
||
"ai.could_not_load_knowledge": "Не удалось загрузить знания",
|
||
"ai.could_not_load_knowledge_item": "Не удалось загрузить знание",
|
||
"ai.could_not_load_material_list": "Не удалось загрузить список материалов",
|
||
"ai.could_not_move_knowledge_item": "Не удалось переместить знание",
|
||
"ai.could_not_move_knowledge_items": "Не удалось переместить знания",
|
||
"ai.could_not_read_file": "Не удалось прочитать файл",
|
||
"ai.could_not_reindex_knowledge_item": "Не удалось переиндексировать знание",
|
||
"ai.could_not_save_knowledge_item": "Не удалось сохранить знание",
|
||
"ai.could_not_save_selection": "Не удалось сохранить выбор",
|
||
"ai.could_not_upload_file": "Не удалось загрузить {name}",
|
||
"ai.count_create": "создать {count}",
|
||
"ai.count_error": "ошибка {count}",
|
||
"ai.count_update": "обновить {count}",
|
||
"ai.create": "создать",
|
||
"ai.create_2": "Создать",
|
||
"ai.created": "Создано:",
|
||
"ai.created_on": "создан {date}",
|
||
"ai.creating": "Создание…",
|
||
"ai.customers_reach_agent_through_these": "Через них клиенты попадают к агенту. Одно подключение — один агент.",
|
||
"ai.delete_agent": "Удалить агента",
|
||
"ai.delete_agent_2": "Удалить агента?",
|
||
"ai.delete_attachment": "Удалить вложение",
|
||
"ai.delete_category": "Удалить категорию",
|
||
"ai.delete_knowledge_item": "Удалить знание",
|
||
"ai.delete_knowledge_item_2": "Удалить знание?",
|
||
"ai.delete_selected_knowledge_items": "Удалить выбранные знания?",
|
||
"ai.detach_from_agent": "Открепить от агента",
|
||
"ai.discard_edits": "Отменить правки",
|
||
"ai.document": "ДОКУМЕНТ",
|
||
"ai.document_category_path_empty_level": "Документ #{index}: в «categoryPath» есть пустой уровень",
|
||
"ai.document_category_path_list": "Документ #{index}: «categoryPath» должен быть непустым списком",
|
||
"ai.document_content_empty": "Документ #{index}: обязательное поле «content» пустое",
|
||
"ai.document_must_be_object": "Документ #{index}: должен быть объектом",
|
||
"ai.document_title_empty": "Документ #{index}: обязательное поле «title» пустое",
|
||
"ai.documents_must_non_empty_list": "documents должен быть непустым списком",
|
||
"ai.drag": "Перетащить",
|
||
"ai.drag_files_here": "Перетащите файлы",
|
||
"ai.drop_attach_item": "Отпустите, чтобы приложить к знанию",
|
||
"ai.editor_only": "Только редактор",
|
||
"ai.edits_not_saved_chunks_rebuilt": "Правки не сохранены — фрагменты пересоберутся после «Сохранить»",
|
||
"ai.empty": "пусто",
|
||
"ai.empty_item_never_reaches_replies": "Пустое знание в ответы не попадает.",
|
||
"ai.error": "ошибка",
|
||
"ai.everything_saved": "Всё сохранено",
|
||
"ai.example_calmly_politely_formal_address": "Например: спокойно и вежливо, на «вы»",
|
||
"ai.example_do_not_quote_prices": "Например: не называй цены, направляй к консультанту",
|
||
"ai.example_front_desk": "Например: Приёмная",
|
||
"ai.file_becomes_attachment_link_text": "Файл станет вложением и ссылкой в тексте — агент отдаёт её клиенту. PNG, JPG, PDF, DOCX, XLSX · до 25 МБ",
|
||
"ai.file_not_parsed": "{size} · файл не разобран",
|
||
"ai.file_parsed_before_anything_applied": "Файл разбирается до применения: видно, что создастся, что обновится и где ошибка.",
|
||
"ai.file_parsed_ok": "{size} · {count} · разобран без ошибок формата",
|
||
"ai.fragment_number": "Фрагмент {number}",
|
||
"ai.fragments_note": "Агент отвечает не текстом целиком, а подходящими фрагментами. Так знание разойдётся на {chunks} при сохранении.",
|
||
"ai.free": "Свободно",
|
||
"ai.free_connection": "Свободное подключение",
|
||
"ai.give_title_category": "Укажите заголовок и категорию",
|
||
"ai.group_decides_which_operators_see": "Группа определяет, кто из сотрудников видит диалоги агента; без группы — видны всем.",
|
||
"ai.has_nested_categories": "есть вложенные категории",
|
||
"ai.heading_1": "Заголовок 1",
|
||
"ai.heading_2": "Заголовок 2",
|
||
"ai.helps_search_agent": "· помогает поиску и агенту",
|
||
"ai.how_agent_quotes": "Как это цитирует агент",
|
||
"ai.how_agent_will_answer": "КАК ОТВЕТИТ АГЕНТ",
|
||
"ai.how_agent_will_answer_2": "Как ответит агент",
|
||
"ai.how_should_speak": "Как он должен говорить",
|
||
"ai.import_category_policy": "Недостающие категории из файла создаются автоматически. Без указания пути новый документ попадает в «Без категории», существующий сохраняет свою категорию.",
|
||
"ai.import_category_creation": "Недостающие категории будут созданы автоматически.",
|
||
"ai.import_documents": "Импортировать {count}",
|
||
"ai.import_finished": "Импорт завершён",
|
||
"ai.index_up_date": "Индекс актуален",
|
||
"ai.indexing": "ИНДЕКСАЦИЯ",
|
||
"ai.insert_link_into_text": "Вставить ссылку в текст",
|
||
"ai.instructions": "инструкции",
|
||
"ai.instructions_2": "Инструкции",
|
||
"ai.internal_material": "ВНУТРЕННИЙ МАТЕРИАЛ",
|
||
"ai.invalid_yaml": "Невалидный YAML",
|
||
"ai.invalid_yaml_reason": "Невалидный YAML: {reason}",
|
||
"ai.italic": "Курсив",
|
||
"ai.item_and_files_deleted": "«{title}» и его вложения будут удалены. У агентов, которым знание прикреплено, оно исчезнет из ответов.",
|
||
"ai.item_attached_no_agent_so": "Знание не прикреплено ни к одному агенту — в ответах оно не используется.",
|
||
"ai.items_and_files_deleted": "{count} и их вложения будут удалены. У агентов, которым они прикреплены, материалы исчезнут из ответов.",
|
||
"ai.knowledge": "Знания",
|
||
"ai.knowledge_item": "ЗНАНИЕ",
|
||
"ai.knowledge_item_title": "Название знания",
|
||
"ai.knowledge_item_title_2": "Заголовок знания",
|
||
"ai.knowledge_item_title_without_description": "Название знания без описания",
|
||
"ai.library_lead": "Материалы для AI-агентов: регламенты, прайсы, скрипты. Агент отвечает только по включённым знаниям, которые к нему прикреплены. Клиент их не видит — публичное живёт в порталах.",
|
||
"ai.library_note": "{count} · показаны {shown} · агент отвечает только по включённым и прикреплённым",
|
||
"ai.link": "Ссылка",
|
||
"ai.link_text": "· ссылка в тексте",
|
||
"ai.links_go_out_agent_s": "ссылки уходят в ответ агента",
|
||
"ai.list": "Список",
|
||
"ai.manage": "Управлять",
|
||
"ai.material_import": "Импорт материалов",
|
||
"ai.move": "Переместить",
|
||
"ai.model_of_integration": "Как в интеграции",
|
||
"ai.move_category": "Переместить в категорию",
|
||
"ai.name_group_all_takes_start": "Имя и группа — всё, что нужно для старта. Инструкции, знания и подключения настраиваются потом на карточке.",
|
||
"ai.name_unique_within_its_parent": "Имя уникально внутри родителя.",
|
||
"ai.no_agents_yet": "Пока ни одного агента.",
|
||
"ai.no_ai": "без AI",
|
||
"ai.no_ai_2": "Без AI",
|
||
"ai.no_ai_knowledge_not_used": "Без AI — знания не используются",
|
||
"ai.no_attachments": "Вложений нет.",
|
||
"ai.no_category_system_one_cannot": "«Без категории» системная: не переименовывается и не удаляется.",
|
||
"ai.no_conversations": "нет диалогов",
|
||
"ai.no_file_selected": "Файл не выбран",
|
||
"ai.no_knowledge_attached_so_agent": "Знания не прикреплены — агент отвечает только по инструкциям. Выберите статьи из библиотеки или портала поддержки.",
|
||
"ai.no_knowledge_item_selected": "Знание не выбрано",
|
||
"ai.no_knowledge_yet": "Знаний пока нет",
|
||
"ai.not_attached": "не прикреплено",
|
||
"ai.not_attached_agent": "не прикреплён к этому агенту",
|
||
"ai.not_checked": "Не проверено",
|
||
"ai.not_given": "не указана",
|
||
"ai.not_replies": "не в ответах",
|
||
"ai.not_selected": "Не выбран",
|
||
"ai.not_used_replies": "Не участвует в ответах",
|
||
"ai.note": "ЗАМЕЧАНИЕ",
|
||
"ai.nothing_selected": "ничего не выбрано",
|
||
"ai.numbered_list": "Нумерованный список",
|
||
"ai.off": "Выключен",
|
||
"ai.one_step_instructions_model_knowledge": "Один шаг. Инструкции, модель, знания и подключения — потом, на карточке агента.",
|
||
"ai.only_empty_category_with_nothing": "Удаление — только для пустой категории без вложенных.",
|
||
"ai.open": "Открытые",
|
||
"ai.open_knowledge_item": "Открыть знание",
|
||
"ai.open_settings": "Открыть настройки",
|
||
"ai.operation_atomic_if_any_identifier": "Операция атомарна: при недоступном идентификаторе не меняется ничего. Требуется право",
|
||
"ai.or": "или",
|
||
"ai.paste_before_lt_body_gt": "Вставьте перед </body> на сайте",
|
||
"ai.persona": "персонализация",
|
||
"ai.pick_another_file": "Выбрать другой файл",
|
||
"ai.pick_file": "Выбрать файл",
|
||
"ai.pick_provider": "выберите провайдера",
|
||
"ai.pick_them_from_disk": "выберите на диске",
|
||
"ai.other_knowledge": "Прочие знания",
|
||
"ai.portal_named": "Портал · {name}",
|
||
"ai.preview": "Просмотр",
|
||
"ai.preview_of": "ПРЕДПРОСМОТР · {what}",
|
||
"ai.preview_only": "Только предпросмотр",
|
||
"ai.provider": "Провайдер",
|
||
"ai.provider_key_lives_under_settings": "Ключ провайдера — в «Настройки → AI-провайдер». Модель выбирается из каталога провайдера.",
|
||
"ai.quote": "Цитата",
|
||
"ai.reindex": "Переиндексировать",
|
||
"ai.rename": "Переименовать",
|
||
"ai.replies": "В ответах:",
|
||
"ai.replies_2": "В ОТВЕТАХ",
|
||
"ai.rules": "Правила",
|
||
"ai.save_reindex": "Сохранить и переиндексировать",
|
||
"ai.same_as_answers": "Как у ответов",
|
||
"ai.saving": "Сохранение…",
|
||
"ai.search_by_title": "Поиск по названию",
|
||
"ai.search_by_title_description": "Поиск по заголовку и описанию",
|
||
"ai.select": "Выбрать",
|
||
"ai.select_all": "Выбрать все",
|
||
"ai.select_every_knowledge_item_page": "Выбрать все знания на странице",
|
||
"ai.select_item": "Выбрать «{title}»",
|
||
"ai.select_knowledge": "Выбрать знания",
|
||
"ai.selected": "выбран",
|
||
"ai.selected_category_note": "Выбрано {count}. Категория задаёт размещение в дереве, на ответы агента она не влияет.",
|
||
"ai.selected_one_agent_note": "Выбрано {count}. Один агент за операцию — так видно, что именно изменилось.",
|
||
"ai.short_description": "Краткое описание",
|
||
"ai.short_description_optional": "Короткое описание (необязательно)",
|
||
"ai.side_by_side": "Вместе",
|
||
"ai.skips_summary": "{skipped} из {total} будут пропущены:",
|
||
"ai.skips_tail": "Состав знаний агента по ним не изменится.",
|
||
"ai.start_ai": "Запустить AI",
|
||
"ai.stop_ai": "Остановить AI",
|
||
"ai.switch_off_replies": "Выключить в ответах",
|
||
"ai.switch_replies": "Включить в ответах",
|
||
"ai.switched_off_item_never_reaches": "выключенное знание не попадает в retrieval",
|
||
"ai.switched_off_replies": "выключен в ответах",
|
||
"ai.system": "системная",
|
||
"ai.system_category": "системная категория",
|
||
"ai.system_category_cannot_renamed": "Системную категорию нельзя переименовать",
|
||
"ai.system_prompt_assembled_from_three": "Системный промпт собирается из трёх частей в этом порядке",
|
||
"ai.table": "Таблица",
|
||
"ai.template": "Шаблон",
|
||
"ai.template_content": "Основной текст знания.",
|
||
"ai.template_description": "Короткое описание (необязательно)",
|
||
"ai.template_title": "Название знания",
|
||
"ai.template_title_no_description": "Название знания без описания",
|
||
"ai.text": "Текст",
|
||
"ai.text_preview": "Текст и предпросмотр",
|
||
"ai.there_no_agents_yet_create": "Агентов пока нет — создайте агента, чтобы прикреплять к нему знания.",
|
||
"ai.there_unsaved_changes_they_take": "Есть несохранённые изменения — применятся в runtime сразу",
|
||
"ai.there_unsaved_edits": "Есть несохранённые правки",
|
||
"ai.title_matched_text_will_replaced": "совпал заголовок — заменим текст и пересоберём фрагменты",
|
||
"ai.today": "сегодня",
|
||
"ai.tone": "тон",
|
||
"ai.top_level_category": "Категория верхнего уровня",
|
||
"ai.top_level_object_with_documents": "Ожидается объект верхнего уровня с ключом documents",
|
||
"ai.tree_up_three_levels_deep": "Дерево до трёх уровней. Перетащите строку, чтобы сменить родителя или порядок.",
|
||
"ai.turn": "Включить",
|
||
"ai.turn_agent": "Включить агента",
|
||
"ai.turn_agent_off": "Выключить агента",
|
||
"ai.turn_off": "Выключить",
|
||
"ai.unbind": "Отвязать",
|
||
"ai.unchanged": "· Без изменений:",
|
||
"ai.undo": "Отменить",
|
||
"ai.untitled": "Без заголовка",
|
||
"ai.up_25_mb": "· до 25 МБ",
|
||
"ai.update": "обновить",
|
||
"ai.updated": "· Обновлено:",
|
||
"ai.transcription_model": "Модель расшифровки",
|
||
"ai.transcription_provider": "Расшифровка голосовых",
|
||
"ai.updated_2": "ОБНОВЛЕНО",
|
||
"ai.updated_by_at": "обновил {name} · {date}",
|
||
"ai.updated_on": "обновлено {date}",
|
||
"ai.used_replies": "Участвует в ответах",
|
||
"ai.what_will_happen": "Что произойдёт",
|
||
"ai.who_what_does": "Кто он и что делает",
|
||
"ai.widget_embed_snippet": "Код вставки виджета",
|
||
"ai.will_attached_after_saving": "приложится после сохранения",
|
||
"ai.will_land_no_category": "попадёт в «Без категории»",
|
||
"ai.without_group_conversations_visible_everyone": "Без группы — диалоги видны всем",
|
||
"ai.working_rules": "Правила работы",
|
||
"ai.yaml_import": "Импорт YAML",
|
||
"ai.yaml_shaped_as_documents_title": "YAML вида documents: [{ title, description?, content, categoryPath? }]",
|
||
"common.action": "Действие",
|
||
"common.actions": "Действия",
|
||
"common.actions_for": "Действия: {name}",
|
||
"common.active_sessions": "Активные сессии",
|
||
"common.administrator": "Администратор",
|
||
"common.agent": "Агент",
|
||
"common.agents": "Агенты",
|
||
"common.agents_2": "АГЕНТЫ",
|
||
"common.all": "Все",
|
||
"common.appearance": "Оформление",
|
||
"common.archive": "В архив",
|
||
"common.assignee": "Ответственный",
|
||
"common.at_least_10_characters": "Минимум 10 символов",
|
||
"common.at_least_10_characters_long": "Не менее 10 символов",
|
||
"common.attach": "Прикрепить",
|
||
"common.attach_file": "Прикрепить файл",
|
||
"common.audit": "Аудит",
|
||
"common.back_sign": "Вернуться ко входу",
|
||
"common.cancel": "Отмена",
|
||
"common.categories": "Категории",
|
||
"common.category": "КАТЕГОРИЯ",
|
||
"common.channels": "Каналы",
|
||
"common.chat": "Чат",
|
||
"common.city": "Город",
|
||
"common.close": "Закрыть",
|
||
"common.company": "Компания",
|
||
"common.connected": "Подключено",
|
||
"common.connections": "Подключения",
|
||
"common.contact": "Контакт",
|
||
"common.enabled": "Включено",
|
||
"common.contacts": "Контакты",
|
||
"common.contains_digit": "Содержит цифру",
|
||
"common.conversations": "Диалоги",
|
||
"common.copied": "Скопировано",
|
||
"common.copy": "Копировать",
|
||
"common.copy_clipboard": "Скопировать",
|
||
"common.could_not_complete_action": "Не удалось выполнить действие",
|
||
"common.could_not_save": "Не удалось сохранить",
|
||
"common.delete": "Удалить",
|
||
"common.description": "Описание",
|
||
"common.detach": "Открепить",
|
||
"common.done": "Готово",
|
||
"common.download": "Скачать",
|
||
"common.draft": "Черновик",
|
||
"common.edit": "Изменить",
|
||
"common.edit_item": "Редактировать",
|
||
"common.emoji": "Эмодзи",
|
||
"common.error": "Ошибка",
|
||
"common.full_access": "Полный доступ",
|
||
"common.group": "Группа",
|
||
"common.groups": "Группы",
|
||
"common.hide": "Скрыть",
|
||
"common.history": "История",
|
||
"common.integrations": "Интеграции",
|
||
"common.just_now": "сейчас",
|
||
"common.knowledge_base": "База знаний",
|
||
"common.letters_special_character": "Буквы и спецсимвол",
|
||
"common.model": "Модель",
|
||
"common.more": "Ещё",
|
||
"common.move_archive": "Перенести в архив",
|
||
"common.n_of_m": "{selected} из {total}",
|
||
"common.name": "Имя",
|
||
"common.never_saved_yet": "Ещё не сохранялось",
|
||
"common.new_password": "Новый пароль",
|
||
"common.no_group": "Без группы",
|
||
"common.nothing_found": "Ничего не найдено",
|
||
"common.notifications": "Уведомления",
|
||
"common.object": "Объект",
|
||
"common.off": "Выключено",
|
||
"common.off_2": "Выкл",
|
||
"common.on": "Включено",
|
||
"common.on_2": "Вкл",
|
||
"common.operator": "Сотрудник",
|
||
"common.operators": "Сотрудники",
|
||
"common.owner": "Владелец",
|
||
"common.password": "Пароль",
|
||
"common.password_requirements": "ТРЕБОВАНИЯ К ПАРОЛЮ",
|
||
"common.passwords_do_not_match": "Пароли не совпадают",
|
||
"common.phone": "Телефон",
|
||
"common.photo": "Фото",
|
||
"common.portals": "Порталы",
|
||
"common.position": "Должность",
|
||
"common.profile": "Профиль",
|
||
"common.publish": "Опубликовать",
|
||
"common.range_of": "{from}–{to} из {total}",
|
||
"common.remove": "Убрать",
|
||
"common.remove_file": "Убрать файл",
|
||
"common.repeat_new_password": "Повторите новый пароль",
|
||
"common.reply": "Ответ",
|
||
"common.request_failed": "Ошибка запроса",
|
||
"common.reset": "Сбросить",
|
||
"common.role": "Роль",
|
||
"common.save": "Сохранить",
|
||
"common.saving": "Сохранение",
|
||
"common.selected_count": "Выбрано {count}",
|
||
"common.selected_of": "выбрано {selected} из {total}",
|
||
"common.sending": "Отправка…",
|
||
"common.settings": "Настройки",
|
||
"common.show": "Показать",
|
||
"common.shown_of": "Показано {shown} из {total}",
|
||
"common.shown_of_page": "Показано {shown} из {total} · по {size} на странице",
|
||
"common.sign_out": "Выйти",
|
||
"common.status": "Статус",
|
||
"common.status_2": "СТАТУС",
|
||
"common.title": "Название",
|
||
"common.today": "Сегодня",
|
||
"common.try_again": "Повторить",
|
||
"common.upload": "Загрузить",
|
||
"common.uploading_percent": "загружаем… {percent} %",
|
||
"common.web_widget": "Web-виджет",
|
||
"common.web_widget_2": "Веб-виджет",
|
||
"common.yesterday": "вчера",
|
||
"common.you": "· вы",
|
||
"common.you_suffix": " · вы",
|
||
"conversations.active_call": "Активный звонок",
|
||
"conversations.add": "Добавить",
|
||
"conversations.ai_handling_conversation_message_takes": "AI ведёт диалог. Ваше сообщение перехватит его — AI перестанет отвечать",
|
||
"conversations.ai_replying": "AI отвечает",
|
||
"conversations.ai_transcript": "Расшифровка AI ·",
|
||
"conversations.allow_device_access_browser_settings": "Разрешите доступ к устройствам в настройках браузера и повторите.",
|
||
"conversations.another_operator_handling": "Ведёт другой сотрудник",
|
||
"conversations.another_operator_handling_conversation": "Диалог ведёт другого сотрудника",
|
||
"conversations.audio_call": "Аудиозвонок",
|
||
"conversations.audio_call_2": "аудиозвонок",
|
||
"conversations.back_conversation_list": "К списку диалогов",
|
||
"conversations.by_last_message": "По последнему сообщению",
|
||
"conversations.by_waiting_time": "По времени ожидания",
|
||
"conversations.call_again": "Позвонить снова",
|
||
"conversations.call_back": "Перезвонить",
|
||
"conversations.call_cancelled": "Звонок отменён",
|
||
"conversations.call_declined": "Звонок отклонён",
|
||
"conversations.call_declined_by": "{name} отклонил(а) вызов.",
|
||
"conversations.call_ended": "Звонок завершён",
|
||
"conversations.call_unanswered_by": "{name} не ответил(а) на вызов.",
|
||
"conversations.camera_off": "Камера выключена",
|
||
"conversations.camera_unavailable": "Камера недоступна",
|
||
"conversations.cancel_recording": "Отменить запись",
|
||
"conversations.caption_file_optional": "Подпись к файлу (необязательно)…",
|
||
"conversations.check_again": "Повторить проверку",
|
||
"conversations.check_camera_microphone": "Проверьте камеру и микрофон",
|
||
"conversations.check_internet_connection_try_again": "Проверьте интернет-соединение и попробуйте снова.",
|
||
"conversations.close_conversation": "Закрыть диалог",
|
||
"conversations.close_esc": "Закрыть · Esc",
|
||
"conversations.closed_by": "Закрыт · {name}",
|
||
"conversations.collapse": "Свернуть",
|
||
"conversations.connecting": "Соединение",
|
||
"conversations.connecting_call": "Соединяем звонок",
|
||
"conversations.conversation": "Диалог",
|
||
"conversations.conversation_actions": "Действия диалога",
|
||
"conversations.conversation_and_history_gone_forever": "Диалог и вся переписка будут удалены безвозвратно. Клиент увидит пустой чат, уведомления по нему исчезнут.",
|
||
"conversations.conversation_closed": "Диалог закрыт",
|
||
"conversations.conversation_context": "Контекст диалога",
|
||
"conversations.conversation_has_ended": "Разговор завершён.",
|
||
"conversations.conversation_list_width": "Ширина списка диалогов",
|
||
"conversations.conversation_will_closed_replies_stay": "Диалог будет закрыт для ответов и останется в истории со статусом «Спам».",
|
||
"conversations.conversation_without_group_visible_every": "Диалог без группы видят все сотрудники.",
|
||
"conversations.conversations_appear_once_customers_write": "Диалоги появятся, когда клиенты напишут вашему агенту",
|
||
"conversations.could_not_add_label": "Не удалось добавить метку",
|
||
"conversations.could_not_cancel_call": "Не удалось отменить звонок",
|
||
"conversations.could_not_connect": "Не удалось соединиться",
|
||
"conversations.could_not_delete_conversation": "Не удалось удалить диалог",
|
||
"conversations.could_not_load_conversation": "Не удалось загрузить диалог",
|
||
"conversations.could_not_load_conversation_history": "Не удалось загрузить историю диалога",
|
||
"conversations.could_not_load_conversation_list": "Не удалось загрузить список диалогов",
|
||
"conversations.could_not_load_earlier_messages": "Не удалось загрузить предыдущие сообщения",
|
||
"conversations.could_not_load_more_conversations": "Не удалось загрузить следующие диалоги",
|
||
"conversations.could_not_play": "Не удалось воспроизвести",
|
||
"conversations.could_not_refresh_conversation_history": "Не удалось обновить историю диалога",
|
||
"conversations.could_not_refresh_conversation_list": "Не удалось обновить список диалогов",
|
||
"conversations.could_not_request_call": "Не удалось запросить звонок",
|
||
"conversations.could_not_send_message": "Не удалось отправить сообщение",
|
||
"conversations.could_not_send_voice_message": "Не удалось отправить голосовое",
|
||
"conversations.could_not_transcribe": "Не удалось расшифровать",
|
||
"conversations.customer": "Клиент",
|
||
"conversations.customer_waiting_message_assigns_conversation": "Клиент ждёт. Ваше сообщение возьмёт диалог на вас",
|
||
"conversations.delete_conversation": "Удалить диалог",
|
||
"conversations.delete_conversation_2": "Удалить диалог?",
|
||
"conversations.edit_note": "Редактировать заметку",
|
||
"conversations.email_content": "Содержимое письма",
|
||
"conversations.establishing_secure_connection": "Устанавливаем защищённое соединение…",
|
||
"conversations.file": "Файл",
|
||
"conversations.file_named": "Файл · {name}",
|
||
"conversations.file_over_20_mb": "Файл больше 20 МБ",
|
||
"conversations.file_unavailable": "Файл «{name}» недоступен",
|
||
"conversations.finish_current_call_first": "Сначала завершите текущий {kind}",
|
||
"conversations.g": "Г",
|
||
"conversations.go_ahead": "Говорите",
|
||
"conversations.guest": "Гость",
|
||
"conversations.guest_number": "Гость {id}",
|
||
"conversations.hand_back_ai": "Вернуть AI",
|
||
"conversations.handled_by": "Диалог ведёт {name}",
|
||
"conversations.handled_by_short": "Ведёт {name}",
|
||
"conversations.handling": "Ведёте вы",
|
||
"conversations.hide_list": "Скрыть список",
|
||
"conversations.high": "Высокий",
|
||
"conversations.history_kept_next_time_customer": "История сохранена. Новое обращение клиента создаст новый диалог.",
|
||
"conversations.incoming_call": "Входящий звонок",
|
||
"conversations.internal_note_customer_does_not": "Внутренняя заметка — клиент её не видит",
|
||
"conversations.invitation_was_cancelled": "Приглашение отменено.",
|
||
"conversations.labels": "Метки",
|
||
"conversations.low": "Низкий",
|
||
"conversations.mark_as_spam": "Пометить как спам",
|
||
"conversations.mark_conversation_as_spam": "Пометить диалог как спам?",
|
||
"conversations.medium": "Средний",
|
||
"conversations.message": "Сообщение…",
|
||
"conversations.microphone_off": "Ваш микрофон выключен",
|
||
"conversations.mine": "Мои",
|
||
"conversations.missed_call": "Пропущенный звонок",
|
||
"conversations.mode": "Режим",
|
||
"conversations.move_group": "Перенести в группу",
|
||
"conversations.name_cannot_empty": "Имя не может быть пустым",
|
||
"conversations.name_or_email": "Имя или почта",
|
||
"conversations.new_label": "Новая метка",
|
||
"conversations.no_access_camera_microphone": "Нет доступа к камере и микрофону",
|
||
"conversations.no_access_microphone": "Нет доступа к микрофону",
|
||
"conversations.no_conversations_found": "Диалоги не найдены",
|
||
"conversations.no_matching_templates": "Нет подходящих шаблонов",
|
||
"conversations.no_messages_yet": "Пока нет сообщений",
|
||
"conversations.no_notes": "Заметок нет",
|
||
"conversations.nobody_answered_time_try_calling": "Никто не ответил вовремя. Попробуйте позвонить снова.",
|
||
"conversations.not_set": "Не задан",
|
||
"conversations.note": "Заметка",
|
||
"conversations.only_assignee_can_reply_take": "Отвечать может ответственный. Возьмите диалог, чтобы продолжить самостоятельно.",
|
||
"conversations.outgoing_call": "Исходящий звонок",
|
||
"conversations.pause": "Пауза",
|
||
"conversations.pick_conversation": "Выберите диалог",
|
||
"conversations.play": "Воспроизвести",
|
||
"conversations.priority": "Приоритет",
|
||
"conversations.reconnecting": "Переподключение",
|
||
"conversations.record_voice_message": "Записать голосовое",
|
||
"conversations.recording_esc_cancels_enter_sends": "Идёт запись. Esc — отменить, Enter — отправить",
|
||
"conversations.remove_label": "Снять метку {name}",
|
||
"conversations.reply_templates": "Шаблоны ответов · /",
|
||
"conversations.return_queue": "Вернуть в очередь",
|
||
"conversations.search_by_contact_or_message": "Поиск по контакту, сообщению…",
|
||
"conversations.send": "Отправить",
|
||
"conversations.sending_invitation": "Отправляем приглашение",
|
||
"conversations.show_earlier_messages": "Показать предыдущие сообщения",
|
||
"conversations.show_list": "Показать список",
|
||
"conversations.sorting": "Сортировка",
|
||
"conversations.sorting_by_last_message": "Сортировка: по последнему сообщению",
|
||
"conversations.sorting_by_waiting_time": "Сортировка: по времени ожидания",
|
||
"conversations.started": "Начат",
|
||
"conversations.take_conversation": "Взять диалог",
|
||
"conversations.templates": "Шаблоны",
|
||
"conversations.transcribe": "Расшифровать",
|
||
"conversations.transcribing": "Расшифровываем…",
|
||
"conversations.type_message_shift_enter_line": "Введите сообщение… Shift+Enter — перенос строки, «/» — шаблон ответа",
|
||
"conversations.common_queue": "Общая очередь",
|
||
"conversations.on_me": "На мне",
|
||
"conversations.queue_tabs_note": "«Общая очередь» — диалоги без ответственного: взять может любой. «На мне» — назначены лично вам и ждут, пока вы их возьмёте.",
|
||
"conversations.on_you_returns_in": "на вас · вернётся через {count} мин",
|
||
"conversations.on_you": "на вас",
|
||
"conversations.waiting_for_person": "Ждёт человека {duration}",
|
||
"conversations.assigned_not_taken": "Назначен на {name}, не взят",
|
||
"conversations.returns_to_queue_in": "Если не возьмёт — через {duration} диалог вернётся в общую очередь.",
|
||
"conversations.in_queue_since": "В очереди с",
|
||
"conversations.presence_here": "На месте",
|
||
"conversations.presence_away": "Сейчас нет",
|
||
"conversations.presence_note": "«На месте» — приложение открыто. Признак приблизительный: назначить можно любого.",
|
||
"conversations.here": "на месте",
|
||
"conversations.here_owner": "на месте · владелец",
|
||
"conversations.away_minutes": "не в приложении · {count} мин",
|
||
"conversations.away_hours": "не в приложении · {count} ч",
|
||
"conversations.away_long": "не в приложении больше суток",
|
||
"conversations.never_in_app": "ещё не заходил",
|
||
"conversations.open_dialogs": "{count} диал.",
|
||
"conversations.unassigned": "Не назначен",
|
||
"conversations.update_browser_or_open_link": "Обновите браузер или откройте ссылку в Chrome, Safari или Edge.",
|
||
"conversations.video_call": "видеозвонок",
|
||
"conversations.video_calls_not_supported": "Видеозвонки не поддерживаются",
|
||
"conversations.voice_message_duration": "Голосовое сообщение · {duration}",
|
||
"conversations.wait_timed_out": "Время ожидания истекло",
|
||
"conversations.waiting_answer": "Ожидание ответа",
|
||
"conversations.waiting_for_operator": "Ждут оператора",
|
||
"conversations.waiting_for_person_since": "Ждёт человека · {waited}",
|
||
"conversations.waiting_person": "Ждёт человека",
|
||
"conversations.without_video": "Без видео",
|
||
"plural.agents": { one: "{count} агент", few: "{count} агента", many: "{count} агентов", other: "{count} агентов" },
|
||
"plural.articles": { one: "{count} статья", few: "{count} статьи", many: "{count} статей", other: "{count} статей" },
|
||
"plural.categories": { one: "{count} категория", few: "{count} категории", many: "{count} категорий", other: "{count} категорий" },
|
||
"plural.chunks": { one: "{count} фрагмент", few: "{count} фрагмента", many: "{count} фрагментов", other: "{count} фрагментов" },
|
||
"plural.conversations": { one: "{count} диалог", few: "{count} диалога", many: "{count} диалогов", other: "{count} диалогов" },
|
||
"plural.minutes": { one: "{count} минуту", few: "{count} минуты", many: "{count} минут", other: "{count} минут" },
|
||
"plural.devices": { one: "{count} устройство", few: "{count} устройства", many: "{count} устройств", other: "{count} устройств" },
|
||
"plural.documents": { one: "{count} документ", few: "{count} документа", many: "{count} документов", other: "{count} документов" },
|
||
"plural.events": { one: "{count} событие", few: "{count} события", many: "{count} событий", other: "{count} событий" },
|
||
"plural.knowledge": { one: "{count} знание", few: "{count} знания", many: "{count} знаний", other: "{count} знаний" },
|
||
"plural.knowledge_noun": { one: "знание", few: "знания", many: "знаний", other: "знаний" },
|
||
"plural.nested": { one: "{count} вложенная", few: "{count} вложенные", many: "{count} вложенных", other: "{count} вложенных" },
|
||
"plural.open_conversations": { one: "{count} открытый диалог", few: "{count} открытых диалога", many: "{count} открытых диалогов", other: "{count} открытых диалогов" },
|
||
"plural.paragraphs": { one: "{count} абзац", few: "{count} абзаца", many: "{count} абзацев", other: "{count} абзацев" },
|
||
"plural.portals": { one: "{count} портал", few: "{count} портала", many: "{count} порталов", other: "{count} порталов" },
|
||
"plural.sections": { one: "{count} раздел", few: "{count} раздела", many: "{count} разделов", other: "{count} разделов" },
|
||
"plural.sessions_ended": { one: "{count} сессия завершена", few: "{count} сессии завершены", many: "{count} сессий завершено", other: "{count} сессий завершено" },
|
||
"portals.add_section": "Добавить раздел",
|
||
"portals.address": "Адрес:",
|
||
"portals.address_domain": "Адрес и домен",
|
||
"portals.address_installation": "Адрес на этой установке",
|
||
"portals.address_installation_2": "адрес на этой установке",
|
||
"portals.administrator_has_not_set_installation": "IP этой установки не задан администратором",
|
||
"portals.all_material": "Все материалы",
|
||
"portals.all_sections": "Все разделы",
|
||
"portals.archive_note": "Архивный портал перестаёт открываться по публичному адресу, а его материалы исчезают из ответов агента. Ничего не удаляется: портал можно вернуть из архива.",
|
||
"portals.archived": "В архиве",
|
||
"portals.article": "СТАТЬЯ",
|
||
"portals.article_2": "В этой статье",
|
||
"portals.article_attachment": "· вложение статьи",
|
||
"portals.article_category_path_required": "Статья #{index}: обязательное поле «categoryPath» — непустой список разделов",
|
||
"portals.article_content_empty": "Статья #{index}: обязательное поле «content» пустое",
|
||
"portals.article_contents": "Содержание статьи",
|
||
"portals.article_files": "ФАЙЛЫ СТАТЬИ",
|
||
"portals.article_import": "Импорт статей",
|
||
"portals.article_must_be_object": "Статья #{index}: должна быть объектом",
|
||
"portals.article_not_found": "Статья не найдена",
|
||
"portals.article_section_empty": "Статья #{index}: раздел #{segment} пустой",
|
||
"portals.article_slug_empty": "Статья #{index}: обязательное поле «slug» пустое",
|
||
"portals.article_title": "Заголовок статьи",
|
||
"portals.article_title_empty": "Статья #{index}: обязательное поле «title» пустое",
|
||
"portals.article_will_disappear_from_public": "Статья исчезнет с публичного портала.",
|
||
"portals.articles_match_address_creates_new": "статей. Совпадение по адресу создаст новую версию.",
|
||
"portals.articles_must_non_empty_list": "articles должен быть непустым списком",
|
||
"portals.back_knowledge_base": "Вернуться в базу знаний",
|
||
"portals.base_domain_hint": "задан администратором при установке и одинаков для всех порталов этой инсталляции. Адрес входит в ссылки на статьи — после смены старые ссылки перестанут работать.",
|
||
"portals.base_help_center_look_light": "Базовое оформление Help Center: светлая подложка, чернильный акцент.",
|
||
"portals.basics": "Основные",
|
||
"portals.change": "изменить",
|
||
"portals.change_conflicts_with_current_data": "Изменение конфликтует с текущими данными",
|
||
"portals.changes_reach_public_pages_as": "Изменения применяются к публичным страницам сразу после сохранения.",
|
||
"portals.check_address_or_ask_organization": "Проверьте адрес или обратитесь к администратору организации.",
|
||
"portals.check_dns": "Проверить DNS",
|
||
"portals.check_portal_name_address": "Проверьте название и адрес портала.",
|
||
"portals.check_value": "Проверьте значение",
|
||
"portals.classic": "Классическая",
|
||
"portals.colour_scheme": "Цветовая схема",
|
||
"portals.copy_public_link": "Копировать публичную ссылку",
|
||
"portals.could_not_change_agent_s": "Не удалось изменить статьи агента",
|
||
"portals.could_not_change_article": "Не удалось изменить статью",
|
||
"portals.could_not_change_portal_status": "Не удалось изменить статус портала",
|
||
"portals.could_not_change_sections": "Не удалось изменить разделы",
|
||
"portals.could_not_check_domain": "Не удалось проверить домен",
|
||
"portals.could_not_create_portal_try": "Не удалось создать портал. Повторите попытку позже.",
|
||
"portals.could_not_delete_file": "Не удалось удалить файл",
|
||
"portals.could_not_import_articles": "Не удалось импортировать статьи",
|
||
"portals.could_not_load_article": "Не удалось загрузить статью",
|
||
"portals.could_not_load_articles": "Не удалось загрузить статьи",
|
||
"portals.could_not_load_portals": "Не удалось загрузить порталы",
|
||
"portals.could_not_move_portal_archive": "Не удалось перенести портал в архив",
|
||
"portals.could_not_publish_article": "Не удалось опубликовать статью",
|
||
"portals.could_not_save_appearance": "Не удалось сохранить оформление",
|
||
"portals.could_not_save_article": "Не удалось сохранить статью",
|
||
"portals.could_not_save_domain": "Не удалось сохранить домен",
|
||
"portals.could_not_save_settings": "Не удалось сохранить настройки",
|
||
"portals.could_not_save_web_widget": "Не удалось сохранить веб-виджет",
|
||
"portals.could_not_send_feedback_try": "Не удалось отправить отзыв. Попробуйте ещё раз.",
|
||
"portals.could_not_turn_domain_off": "Не удалось отключить домен",
|
||
"portals.could_not_upload_file": "Не удалось загрузить {name}",
|
||
"portals.create_article_first_files_attach": "Сначала создайте статью — файлы прикрепляются к существующей статье",
|
||
"portals.create_first_support_portal": "Создайте первый портал поддержки",
|
||
"portals.create_portal": "Создать портал",
|
||
"portals.create_section": "Создать раздел",
|
||
"portals.creating": "Создаём…",
|
||
"portals.current_state": "Текущее состояние",
|
||
"portals.custom_domain": "Свой домен",
|
||
"portals.custom_domain_2": "свой домен",
|
||
"portals.custom_domain_off": "Свой домен отключён",
|
||
"portals.custom_domain_state": "свой домен · {state}",
|
||
"portals.delete_file": "Удалить файл",
|
||
"portals.did_not_help": "не помогло",
|
||
"portals.dns_update_takes_up_24": "обновление DNS занимает до 24 часов",
|
||
"portals.do_not_show": "Не показывать",
|
||
"portals.domain": "Домен",
|
||
"portals.domain_has_not_been_checked": "Домен ещё не проверялся",
|
||
"portals.domain_no_extra_setup": "Больше ничего добавлять не нужно: домен ваш, установка ваша — проверка лишь смотрит, ведёт ли запись на этот сервер, и выписывает сертификат.",
|
||
"portals.domain_points_here": "Домен ведёт сюда",
|
||
"portals.domain_points_here_checked": "Домен ведёт сюда · проверено {date}",
|
||
"portals.domain_saved_add_record_check": "Домен сохранён. Добавьте A-запись и проверьте DNS.",
|
||
"portals.download_template": "Скачать шаблон",
|
||
"portals.draft": "черновик ·",
|
||
"portals.draft_autosaved_at": "Черновик сохранён автоматически в {time}",
|
||
"portals.draft_prefix": "черновик · ",
|
||
"portals.draft_revision": "черновая {revision}",
|
||
"portals.drop_add_article": "Отпустите, чтобы добавить в статью",
|
||
"portals.english": "английский",
|
||
"portals.example_help_centre": "Например, Центр помощи",
|
||
"portals.file": "ФАЙЛ",
|
||
"portals.files_article": "Файлы в статье",
|
||
"portals.files_article_2": "Файлы к статье",
|
||
"portals.help": "Помощь",
|
||
"portals.helpful": "полезно",
|
||
"portals.helps_make_knowledge_base_more": "Он поможет сделать базу знаний полезнее.",
|
||
"portals.how_looks_customer": "Как это выглядит у клиента",
|
||
"portals.image_goes_into_text_other": "Изображение встанет в текст, остальные файлы прикрепятся вложением к статье. PNG, JPG, WebP, PDF, DOCX · до 25 МБ",
|
||
"portals.immutable": "неизменяемые",
|
||
"portals.import": "К импорту:",
|
||
"portals.import_2": "Импорт",
|
||
"portals.import_articles_from_yaml": "Импорт статей из YAML",
|
||
"portals.importing": "Импорт…",
|
||
"portals.installation_domain_missing": "Адрес установки задан без домена — размещать портал негде. Укажите домен установки в «Настройках», затем вернитесь сюда.",
|
||
"portals.insert_image": "Вставить изображение",
|
||
"portals.insert_into_text": "Вставить в текст",
|
||
"portals.inserted_into_text": "· вставлен в текст",
|
||
"portals.invalid_yaml": "Невалидный YAML",
|
||
"portals.ip_of_installation": "{value} · IP этой установки",
|
||
"portals.knowledge_base_support": "База знаний и поддержка",
|
||
"portals.powered_by": "Работает на",
|
||
"portals.language": "Язык",
|
||
"portals.language_2": "Язык:",
|
||
"portals.language_3": "ЯЗЫК",
|
||
"portals.language_filled_new_articles_articles": "Язык, который подставляется новым статьям. Статьи на других языках остаются как есть.",
|
||
"portals.library_note": "{count} · показаны {shown} · агент отвечает только по опубликованным",
|
||
"portals.locale_created": "{locale} · создан {date}",
|
||
"portals.lowercase_latin_letters_digits_hyphens": "Строчные латинские буквы, цифры и дефис. Базовый домен",
|
||
"portals.manage_sections": "Управление разделами",
|
||
"portals.material": "Материалы",
|
||
"portals.material_2": "МАТЕРИАЛЫ",
|
||
"portals.move_article_archive": "Перенести статью в архив?",
|
||
"portals.move_portal_archive": "Перенести портал в архив?",
|
||
"portals.name": "ИМЯ",
|
||
"portals.navigation": "Навигация",
|
||
"portals.new_article": "Новая статья",
|
||
"portals.new_article_not_saved": "Новая статья · не сохранена",
|
||
"portals.new_support_portal": "Новый портал поддержки",
|
||
"portals.no_article_did_not_help": "Нет, статья не помогла",
|
||
"portals.no_reader_ratings_yet": "Читатели ещё не оценивали",
|
||
"portals.not_checked": "не проверен",
|
||
"portals.not_enough_rights_action": "Недостаточно прав для этого действия",
|
||
"portals.not_published": "не опубликована",
|
||
"portals.open": "Открыть",
|
||
"portals.open_as_visitor": "Открыть как посетитель",
|
||
"portals.open_material": "Открыть материалы",
|
||
"portals.open_portal": "Открыть портал",
|
||
"portals.open_portal_new_tab": "Открыть портал в новой вкладке",
|
||
"portals.portal": "ПОРТАЛ",
|
||
"portals.portal_address": "Адрес портала",
|
||
"portals.portal_its_material_become_unavailable": "Портал и его материалы станут недоступны посетителям до восстановления.",
|
||
"portals.portal_name": "Название портала",
|
||
"portals.portal_preview": "Предпросмотр портала",
|
||
"portals.portal_public_help_centre_with": "Портал — это публичный центр помощи с инструкциями и ответами для клиентов.",
|
||
"portals.portal_public_page_with_instructions": "Портал — публичная страница с инструкциями и ответами на частые вопросы. Клиент читает статью и, если не нашёл ответ, пишет в чат прямо со страницы.",
|
||
"portals.portal_s_name_public_address": "Название, публичный адрес и язык материалов портала.",
|
||
"portals.portal_will_open_at_company": "Портал будет открываться по адресу вашей компании. Адрес установки продолжит работать.",
|
||
"portals.portals_note": "{count} · архивные показываются последними",
|
||
"portals.preview_theme": "ПРЕДПРОСМОТР · ТЕМА ПОРТАЛА {theme}",
|
||
"portals.primary_language": "Основной язык",
|
||
"portals.public_address": "ПУБЛИЧНЫЙ АДРЕС",
|
||
"portals.public_chat_appears_every_portal": "Публичный чат отображается на всех страницах портала.",
|
||
"portals.public_knowledge_bases_customers": "Публичные базы знаний для клиентов.",
|
||
"portals.public_knowledge_bases_customers_every": "Публичные базы знаний для клиентов. Каждый портал — свой адрес, оформление и материалы.",
|
||
"portals.publish_portal": "Опубликовать портал",
|
||
"portals.publish_portal_2": "Опубликовать портал?",
|
||
"portals.publish_selected_version": "Опубликовать выбранную версию?",
|
||
"portals.published": "Опубликована",
|
||
"portals.published_2": "опубликована",
|
||
"portals.published_articles_will_become_available": "Опубликованные статьи станут доступны по публичному адресу.",
|
||
"portals.published_at_lower": "опубликован {date}",
|
||
"portals.publishing_archive": "Публикация и архив",
|
||
"portals.publishing_opens_material_visitors_archive": "Публикация открывает материалы посетителям, архив прячет портал целиком.",
|
||
"portals.publishing_picks_one_revision_visitors": "Публикация выбирает одну редакцию. Посетители видят только опубликованную.",
|
||
"portals.ratings": "ОЦЕНКИ",
|
||
"portals.reader_ratings": "ОЦЕНКИ ЧИТАТЕЛЕЙ",
|
||
"portals.record_at_domain_registrar": "Запись у регистратора домена",
|
||
"portals.record_not_found": "Запись не найдена",
|
||
"portals.restore_from_archive": "Вернуть из архива",
|
||
"portals.resulting_link": "Итоговая ссылка",
|
||
"portals.revision": "РЕДАКЦИЯ",
|
||
"portals.revision_draft": "Редакция {revision} · черновик",
|
||
"portals.revision_number": "Редакция {revision}",
|
||
"portals.revision_published": "Редакция {revision} · опубликована",
|
||
"portals.russian": "Русский",
|
||
"portals.russian_2": "русский",
|
||
"portals.save_appearance": "Сохранить оформление",
|
||
"portals.save_domain": "Сохранить домен",
|
||
"portals.save_draft": "Сохранить черновик",
|
||
"portals.save_settings": "Сохранить настройки",
|
||
"portals.save_widget": "Сохранить виджет",
|
||
"portals.saved_at_lower": "сохранено {date}",
|
||
"portals.search_articles": "Поиск по статьям",
|
||
"portals.search_articles_2": "Поиск по статьям...",
|
||
"portals.search_by_name_address": "Поиск по названию и адресу",
|
||
"portals.search_knowledge_base": "Поиск по базе знаний",
|
||
"portals.search_query": "Поиск: «{query}»",
|
||
"portals.search_results": "Результаты поиска",
|
||
"portals.section": "РАЗДЕЛ",
|
||
"portals.section_can_only_deleted_once": "Раздел можно удалить только после переноса вложенных разделов и статей.",
|
||
"portals.section_decides_where_articles_sit": "Раздел определяет расположение статей в публичном портале",
|
||
"portals.sections": "РАЗДЕЛЫ",
|
||
"portals.selected": "выбрана",
|
||
"portals.settings_saved": "Настройки сохранены",
|
||
"portals.show_more": "Показать ещё",
|
||
"portals.shown_header_public_pages_browser": "Показывается в шапке публичных страниц и в заголовке браузера.",
|
||
"portals.shown_list_search": "· показывается в списке и поиске",
|
||
"portals.soft_oceanic_look_blue_accent": "Мягкое океаническое оформление: синий акцент, крупные скругления.",
|
||
"portals.status": "Статус:",
|
||
"portals.support_agent_articles": "Статьи агента поддержки",
|
||
"portals.support_portal_not_found": "Портал поддержки не найден",
|
||
"portals.template_content": "Текст статьи в Markdown.",
|
||
"portals.template_content_no_summary": "Текст статьи без описания.",
|
||
"portals.template_section_returns": "Возврат",
|
||
"portals.template_title_return": "Как оформить возврат",
|
||
"portals.template_title_warranty": "Гарантия",
|
||
"portals.thank_feedback": "Спасибо за отзыв",
|
||
"portals.theme_colour_scheme_public_pages": "Тема публичных страниц и цветовая схема. Применяется до первого кадра — посетитель не видит смены оформления. Список тем — из сборки установки.",
|
||
"portals.theme_not_installation_build_pick": "Темы нет в этой сборке установки. Выберите другую, чтобы сохранить оформление.",
|
||
"portals.there_unsaved_edits_they_not": "Есть несохранённые правки — их ещё нет на портале",
|
||
"portals.too_many_requests_try_again": "Слишком много запросов. Повторите позже",
|
||
"portals.top_level_object_with_articles": "Ожидается объект верхнего уровня с ключом articles",
|
||
"portals.try_changing_query_or_opening": "Попробуйте изменить запрос или открыть другой раздел.",
|
||
"portals.try_reloading_page": "Попробуйте обновить страницу.",
|
||
"portals.turn_domain_off": "Отключить домен",
|
||
"portals.type": "ТИП",
|
||
"portals.unavailable": "недоступна",
|
||
"portals.unpublish": "Снять с публикации",
|
||
"portals.unpublish_2": "Снять",
|
||
"portals.unpublish_portal": "Снять портал с публикации?",
|
||
"portals.updated": "ОБНОВЛЁН",
|
||
"portals.updated_on": "Обновлено {date}",
|
||
"portals.use_lowercase_latin_letters_digits": "Используйте строчные латинские буквы, цифры и дефисы.",
|
||
"portals.value": "ЗНАЧЕНИЕ",
|
||
"portals.version_will_become_available_portal": "Эта версия станет доступна посетителям портала.",
|
||
"portals.versions": "ВЕРСИИ",
|
||
"portals.visitor_s_view": "Как у посетителя",
|
||
"portals.visitors_will_stop_seeing_material": "Посетители перестанут видеть материалы, адрес останется за порталом.",
|
||
"portals.votes_summary": "Полезно {helpful} · не помогло {unhelpful}",
|
||
"portals.was_article_helpful": "Эта статья была полезна?",
|
||
"portals.web_widget_updated": "Веб-виджет обновлён",
|
||
"portals.widget_available_anonymous_portal_visitors": "Виджет доступен только анонимным посетителям портала.",
|
||
"portals.working": "работает",
|
||
"portals.yaml_format_note": "Файл YAML · формат: articles: [{format}]",
|
||
"portals.yes_article_helped": "Да, статья полезна",
|
||
"onboarding.title": "Начало работы",
|
||
"onboarding.eyebrow": "Установка готова к настройке",
|
||
"onboarding.welcome_title_7": "Семь шагов до первого ответа клиенту",
|
||
"onboarding.welcome_title_8": "Восемь шагов до первого ответа клиенту",
|
||
"onboarding.welcome_lead": "Покажем по порядку, что и где настроить: ключ модели, агента, знания, точку входа и команду. На каждом шаге — точный путь в интерфейсе и подсветка нужного элемента на экране.",
|
||
"onboarding.fact_time": "≈ 25 минут",
|
||
"onboarding.fact_time_note": "Можно прерваться и вернуться",
|
||
"onboarding.fact_key": "Свой ключ модели",
|
||
"onboarding.fact_key_note": "Или демо-провайдер без ключа",
|
||
"onboarding.fact_data": "Данные у вас",
|
||
"onboarding.fact_data_note": "Всё на вашем сервере",
|
||
"onboarding.later": "Пройду позже",
|
||
"onboarding.start": "Начать настройку",
|
||
"onboarding.progress": "Готово {done} из {total}",
|
||
"onboarding.progress_short": "{done}/{total}",
|
||
"onboarding.step_of": "Шаг {index} из {total} · {time}",
|
||
"onboarding.close_and_self": "Закрыть и настроить самому",
|
||
"onboarding.back": "Назад",
|
||
"onboarding.show_where": "Показать где",
|
||
"onboarding.open_section": "Открыть раздел",
|
||
"onboarding.next": "Далее",
|
||
"onboarding.finish": "Завершить",
|
||
"onboarding.tour_eyebrow": "Шаг {index} · где это находится",
|
||
"onboarding.tour_ok": "Понятно, к шагам",
|
||
"onboarding.done_title": "Всё готово — можно принимать клиентов",
|
||
"onboarding.done_lead": "Агент отвечает по вашим знаниям, сложное передаёт команде. Вернуться к шагам можно в «Настройки → Начало работы».",
|
||
"onboarding.restart": "Пройти заново",
|
||
"onboarding.go_chat": "Перейти в чат",
|
||
"onboarding.settings_hint": "Пошаговая настройка установки. Открывается в любой момент.",
|
||
"onboarding.steps_list": "Шаги настройки",
|
||
"onboarding.s1.name": "AI-провайдер",
|
||
"onboarding.s1.time": "3 мин",
|
||
"onboarding.s1.title": "Подключите AI-провайдера",
|
||
"onboarding.s1.lead": "Без провайдера агент не ответит ни одному клиенту. Ключ ваш: расходы идут по вашему тарифу у провайдера.",
|
||
"onboarding.s1.path": "Настройки → AI-провайдер → Добавить провайдера",
|
||
"onboarding.s1.do_1": "В сайдбаре откройте «Настройки» и выберите раздел «AI-провайдер».",
|
||
"onboarding.s1.do_2": "Нажмите «Добавить провайдера»: OpenRouter, Custom (OpenAI-compatible) или локальная модель.",
|
||
"onboarding.s1.do_3": "Вставьте API-ключ и укажите модель по умолчанию — например openai/gpt-4o-mini.",
|
||
"onboarding.s1.do_4": "Нажмите «Проверить»: статус должен стать «Подключено».",
|
||
"onboarding.s1.warning": "Ключа ещё нет? Возьмите «Демо-провайдер без ключа» — он отвечает по знаниям агента, чтобы осмотреться, и меняется на настоящий в любой момент.",
|
||
"onboarding.s1.preview": "Настройки → AI-провайдер",
|
||
"onboarding.s1.row1_label": "Провайдер",
|
||
"onboarding.s1.row1_value": "OpenRouter",
|
||
"onboarding.s1.row2_label": "Секрет",
|
||
"onboarding.s1.row2_value": "sk-or-••••••••",
|
||
"onboarding.s1.row3_label": "Модель",
|
||
"onboarding.s1.row3_value": "openai/gpt-4o-mini",
|
||
"onboarding.s1.chip": "Подключено",
|
||
"onboarding.s1.tour_title": "Настройки → AI-провайдер",
|
||
"onboarding.s1.tour_text": "Раздел в субменю «Настроек». Здесь живут ключи организации: добавление, проверка и статус провайдера.",
|
||
"onboarding.s2.name": "AI-агент",
|
||
"onboarding.s2.time": "4 мин",
|
||
"onboarding.s2.title": "Создайте AI-агента",
|
||
"onboarding.s2.lead": "Агент — тот, кто говорит с клиентом: кто он, как отвечает и каким правилам подчиняется.",
|
||
"onboarding.s2.path": "Агенты → Создать агента",
|
||
"onboarding.s2.do_1": "Откройте «Агенты» в сайдбаре и нажмите «Создать агента».",
|
||
"onboarding.s2.do_2": "Опишите роль и тон: кто он для клиента, что можно обещать, чего делать нельзя.",
|
||
"onboarding.s2.do_3": "Выберите модель подключённого провайдера.",
|
||
"onboarding.s2.do_4": "Прикрепите статьи базы знаний — агент отвечает только из них.",
|
||
"onboarding.s2.do_5": "Переведите статус из «Черновик» в «Активен», иначе агент молчит.",
|
||
"onboarding.s2.warning": "Если данных для ответа нет, агент честно это скажет и предложит позвать сотрудника — придумывать он не станет.",
|
||
"onboarding.s2.preview": "Агенты → Консультант",
|
||
"onboarding.s2.row1_label": "Модель",
|
||
"onboarding.s2.row1_value": "openai/gpt-4o-mini",
|
||
"onboarding.s2.row2_label": "Знания",
|
||
"onboarding.s2.row2_value": "12 статей",
|
||
"onboarding.s2.row3_label": "Язык ответов",
|
||
"onboarding.s2.row3_value": "Как у клиента",
|
||
"onboarding.s2.chip": "Активен",
|
||
"onboarding.s2.tour_title": "Раздел «Агенты»",
|
||
"onboarding.s2.tour_text": "Список агентов организации. Карточка агента — это его роль, модель и прикреплённые знания.",
|
||
"onboarding.s3.name": "База знаний",
|
||
"onboarding.s3.time": "от 10 мин",
|
||
"onboarding.s3.title": "Наполните базу знаний",
|
||
"onboarding.s3.lead": "Это единственный источник ответов агента. Поиск идёт по смыслу, поэтому пишите так, как спрашивают клиенты.",
|
||
"onboarding.s3.path": "База знаний → Создать статью",
|
||
"onboarding.s3.do_1": "Откройте «База знаний» и создайте категории под темы обращений.",
|
||
"onboarding.s3.do_2": "Добавьте статьи: вопрос в заголовке, короткий однозначный ответ в тексте.",
|
||
"onboarding.s3.do_3": "Готовые материалы залейте через «Импорт» — файлами, без ручного переноса.",
|
||
"onboarding.s3.do_4": "Проверьте на карточке агента, что статьи к нему прикреплены.",
|
||
"onboarding.s3.warning": "Правка статьи меняет ответы бота сразу, и ту же статью читает публичный портал поддержки — держать два текста не нужно.",
|
||
"onboarding.s3.preview": "База знаний",
|
||
"onboarding.s3.row1_label": "Категории",
|
||
"onboarding.s3.row1_value": "Доставка · Оплата · Возврат",
|
||
"onboarding.s3.row2_label": "Статей",
|
||
"onboarding.s3.row2_value": "12",
|
||
"onboarding.s3.row3_label": "Поиск",
|
||
"onboarding.s3.row3_value": "Семантический",
|
||
"onboarding.s3.chip": "Прикреплено к агенту",
|
||
"onboarding.s3.tour_title": "Раздел «База знаний»",
|
||
"onboarding.s3.tour_text": "Статьи, категории и импорт. Отсюда агент берёт ответы, отсюда же их читает портал поддержки.",
|
||
"onboarding.s4.name": "Точка входа",
|
||
"onboarding.s4.time": "5 мин",
|
||
"onboarding.s4.title": "Подключите точку входа",
|
||
"onboarding.s4.lead": "Точка входа — канал, по которому приходит клиент: Telegram, MAX, почта или чат на сайте. Без неё писать некуда.",
|
||
"onboarding.s4.path": "Настройки → Интеграции → Добавить подключение",
|
||
"onboarding.s4.do_1": "Настройки → «Интеграции» → «Добавить подключение».",
|
||
"onboarding.s4.do_2": "Для бота вставьте токен: Telegram — от BotFather, MAX — из кабинета разработчика.",
|
||
"onboarding.s4.do_3": "Для почты укажите IMAP и SMTP ящика и пароль приложения.",
|
||
"onboarding.s4.do_4": "Привяжите подключение к созданному агенту — иначе сообщения некому обрабатывать.",
|
||
"onboarding.s4.do_5": "Нажмите «Проверить» и убедитесь в статусе «Подключено».",
|
||
"onboarding.s4.warning": "Сообщения из Telegram и MAX забирает фоновый рабочий. Если он остановлен, статус останется «Подключено», а переписки не появятся.",
|
||
"onboarding.s4.preview": "Настройки → Интеграции",
|
||
"onboarding.s4.row1_label": "Подключение",
|
||
"onboarding.s4.row1_value": "Telegram · @romashka_bot",
|
||
"onboarding.s4.row2_label": "Агент",
|
||
"onboarding.s4.row2_value": "Консультант",
|
||
"onboarding.s4.row3_label": "Секрет",
|
||
"onboarding.s4.row3_value": "78••••••••",
|
||
"onboarding.s4.chip": "Подключено",
|
||
"onboarding.s4.tour_title": "Настройки → Интеграции",
|
||
"onboarding.s4.tour_text": "Боты, почта и веб-виджет. Красная точка у пункта означает, что какое-то подключение отвалилось.",
|
||
"onboarding.s5.name": "Виджет на сайт",
|
||
"onboarding.s5.time": "3 мин",
|
||
"onboarding.s5.title": "Поставьте чат на сайт",
|
||
"onboarding.s5.lead": "Веб-виджет — один тег в вашем шаблоне. Чат открывается в изолированном окне поверх сайта.",
|
||
"onboarding.s5.path": "Настройки → Интеграции → Web-виджет",
|
||
"onboarding.s5.do_1": "Создайте подключение «Web-виджет» и оформите его: заголовок, акцент, приветствие.",
|
||
"onboarding.s5.do_2": "Заполните разрешённые домены — пустой список запрещает все сайты.",
|
||
"onboarding.s5.do_3": "Скопируйте сниппет и вставьте его перед закрывающим body на своём сайте.",
|
||
"onboarding.s5.do_4": "Переведите виджет в статус «Опубликован» и обновите страницу сайта.",
|
||
"onboarding.s5.warning": "Ключ в data-widget-key должен совпадать с ключом из настроек виджета — при несовпадении чат просто не появится.",
|
||
"onboarding.s5.preview": "Сниппет для сайта",
|
||
"onboarding.s5.row1_label": "Разрешённые домены",
|
||
"onboarding.s5.row1_value": "romashka.ru, *.romashka.ru",
|
||
"onboarding.s5.chip": "Опубликован",
|
||
"onboarding.s5.tour_title": "Настройки → Интеграции",
|
||
"onboarding.s5.tour_text": "Виджет живёт среди подключений: там его ключ, разрешённые домены и готовый тег для вставки.",
|
||
"onboarding.s6.name": "Сотрудники",
|
||
"onboarding.s6.time": "4 мин",
|
||
"onboarding.s6.title": "Пригласите команду",
|
||
"onboarding.s6.lead": "Сложные вопросы агент передаёт людям. Заведите тех, кому он будет их отдавать, и решите, кто что видит.",
|
||
"onboarding.s6.path": "Сотрудники → Пригласить",
|
||
"onboarding.s6.do_1": "Откройте «Сотрудники» и отправьте приглашения по email.",
|
||
"onboarding.s6.do_2": "Назначьте роли: владелец и администратор видят всё, сотрудник работает только в чате.",
|
||
"onboarding.s6.do_3": "В Настройки → «Группы» распределите диалоги по группам видимости.",
|
||
"onboarding.s6.do_4": "Предложите команде включить вход по коду (TOTP) в своём профиле.",
|
||
"onboarding.s6.warning": "Приглашения уходят почтой. Пока не настроен SMTP (шаг «Домен и почта»), письма не дойдут — пароль придётся задавать вручную.",
|
||
"onboarding.s6.preview": "Сотрудники",
|
||
"onboarding.s6.row1_label": "Приглашены",
|
||
"onboarding.s6.row1_value": "3 человека",
|
||
"onboarding.s6.row2_label": "Группы",
|
||
"onboarding.s6.row2_value": "Первая линия · Биллинг",
|
||
"onboarding.s6.row3_label": "Роли",
|
||
"onboarding.s6.row3_value": "Админ · Сотрудник",
|
||
"onboarding.s6.chip": "Ожидают входа",
|
||
"onboarding.s6.tour_title": "Раздел «Сотрудники»",
|
||
"onboarding.s6.tour_text": "Приглашения, роли и группы. Сотрудник видит диалоги своих групп и те, за которые отвечает.",
|
||
"onboarding.s7.name": "Домен и почта",
|
||
"onboarding.s7.time": "5 мин",
|
||
"onboarding.s7.title": "Укажите домен и почту",
|
||
"onboarding.s7.lead": "Пока установка открывается по IP — без HTTPS и без писем. Домен и SMTP превращают её в рабочий сервис.",
|
||
"onboarding.s7.path": "Настройки → Платформа",
|
||
"onboarding.s7.do_1": "Настройки → «Платформа»: введите домен установки и переключитесь на https.",
|
||
"onboarding.s7.do_2": "Убедитесь, что DNS домена смотрит на сервер, а порты 80 и 443 открыты снаружи.",
|
||
"onboarding.s7.do_3": "Заполните исходящую почту: хост, порт, шифрование, логин и пароль приложения.",
|
||
"onboarding.s7.do_4": "Нажмите «Отправить тестовое письмо» и проверьте, что оно пришло.",
|
||
"onboarding.s7.warning": "Сертификат выдаётся по первому запросу к домену: откройте его в браузере и подождите несколько секунд.",
|
||
"onboarding.s7.preview": "Настройки → Платформа",
|
||
"onboarding.s7.row1_label": "Адрес",
|
||
"onboarding.s7.row1_value": "https://support.romashka.ru",
|
||
"onboarding.s7.row2_label": "SMTP",
|
||
"onboarding.s7.row2_value": "smtp.yandex.ru : 465",
|
||
"onboarding.s7.row3_label": "Сертификат",
|
||
"onboarding.s7.row3_value": "Let's Encrypt",
|
||
"onboarding.s7.chip": "HTTPS включён",
|
||
"onboarding.s7.tour_title": "Настройки → Платформа",
|
||
"onboarding.s7.tour_text": "Свойства самой установки: адрес, исходящая почта, обновления. Раздел виден администратору установки.",
|
||
"onboarding.s8.name": "Проверка",
|
||
"onboarding.s8.time": "2 мин",
|
||
"onboarding.s8.title": "Напишите боту как клиент",
|
||
"onboarding.s8.lead": "Последний шаг — пройти путь клиента целиком: сообщение, ответ агента и передача на человека.",
|
||
"onboarding.s8.path": "Чат → Все диалоги",
|
||
"onboarding.s8.do_1": "Напишите своему боту или в виджет на сайте вопрос из базы знаний.",
|
||
"onboarding.s8.do_2": "Откройте «Чат»: диалог появится в списке с каналом, агентом и таймером ожидания.",
|
||
"onboarding.s8.do_3": "Проверьте ответ агента — он должен опираться на вашу статью.",
|
||
"onboarding.s8.do_4": "Нажмите «Взять диалог» и ответьте сами: так работает передача на оператора.",
|
||
"onboarding.s8.warning": "Три режима диалога — отвечает AI, отвечает сотрудник, пауза — переключаются в шапке переписки в любой момент.",
|
||
"onboarding.s8.preview": "Чат → Все диалоги",
|
||
"onboarding.s8.row1_label": "Диалог",
|
||
"onboarding.s8.row1_value": "Анна Смирнова · Telegram",
|
||
"onboarding.s8.row2_label": "Агент",
|
||
"onboarding.s8.row2_value": "Консультант",
|
||
"onboarding.s8.row3_label": "Режим",
|
||
"onboarding.s8.row3_value": "Отвечает AI",
|
||
"onboarding.s8.chip": "Ответ за 4 сек",
|
||
"onboarding.s8.tour_title": "Список диалогов",
|
||
"onboarding.s8.tour_text": "Все обращения организации в одном окне: канал, агент, время ожидания, метки и группа.",
|
||
"organizations.add": "Добавить организацию",
|
||
"organizations.create_title": "Новая организация",
|
||
"organizations.create_lead": "Вы станете владельцем новой организации и сразу в неё переключитесь. Название, часовой пояс и язык потом можно поменять в «Настройках».",
|
||
"organizations.create_submit": "Создать организацию",
|
||
"organizations.creating": "Создаём…",
|
||
"organizations.create_failed": "Не удалось создать организацию",
|
||
"organizations.logo_failed": "Организация создана, но логотип загрузить не удалось — добавьте его в «Настройках».",
|
||
"organizations.name_placeholder": "Например, «Ателье Норд»",
|
||
"profile.accent_colour": "Акцентный цвет",
|
||
"profile.address_unknown": "адрес неизвестен",
|
||
"profile.all_conversations": "Все диалоги",
|
||
"profile.appearance": "Внешний вид",
|
||
"profile.apply": "Применить",
|
||
"profile.authenticator_connected": "Аутентификатор подключён",
|
||
"profile.authenticator_last_used": "Аутентификатор подключён · последний код {date}",
|
||
"profile.back": "Назад",
|
||
"profile.change_password": "Смена пароля",
|
||
"profile.code_from_authenticator_app_required": "Включена. Код из приложения-аутентификатора запрашивается при каждом входе.",
|
||
"profile.collapse_menu": "Свернуть меню",
|
||
"profile.colleagues_will_see_initials_again": "Вместо фото коллеги снова увидят ваши инициалы.",
|
||
"profile.connect": "Подключить",
|
||
"profile.connect_entry_point": "Подключить точку входа",
|
||
"profile.could_not_change_totp": "Не удалось изменить TOTP",
|
||
"profile.could_not_end_sessions": "Не удалось завершить сессии",
|
||
"profile.could_not_remove_photo": "Не удалось удалить фото",
|
||
"profile.could_not_save_profile": "Не удалось сохранить профиль",
|
||
"profile.could_not_update_password": "Не удалось обновить пароль",
|
||
"profile.could_not_upload_photo": "Не удалось загрузить фото",
|
||
"profile.create_agent": "Создать агента",
|
||
"profile.current": "текущая",
|
||
"profile.current_password": "Текущий пароль",
|
||
"profile.custom_colour_hex_value_like": "Свой цвет — HEX вида #0f9b8e",
|
||
"profile.browser_blocked": "Браузер запретил",
|
||
"profile.browser_blocked_steps": "Нажмите значок замка слева от адреса → «Уведомления» → «Разрешать», затем обновите страницу. Сайт снять запрет не может.",
|
||
"profile.browser_blocked_title": "Снять запрет можно только в браузере",
|
||
"profile.browser_disable_note": "«Отключить» выключает показ уведомлений в этом браузере. Само разрешение остаётся выданным — снять его можно только в настройках браузера.",
|
||
"profile.browser_enabled": "Включены",
|
||
"profile.browser_not_enabled_yet": "Не включены. Браузер спросит разрешение по нажатию.",
|
||
"profile.browser_visible_when_minimized": "{device} — видно, когда вкладка свёрнута",
|
||
"profile.check_again": "Проверить снова",
|
||
"profile.enable": "Включить",
|
||
"profile.dark": "Тёмная",
|
||
"profile.disconnect": "Отключить",
|
||
"profile.drag_resize_double_click_reset": "Потяните, двойной клик — сбросить",
|
||
"profile.email_used_sign": "Email · используется для входа",
|
||
"profile.end_others": "Завершить другие",
|
||
"profile.ending": "Завершение",
|
||
"profile.enter_current_password_change_password": "Введите текущий пароль в блоке смены пароля, чтобы отключить TOTP",
|
||
"profile.expand": "Развернуть",
|
||
"profile.getting_started": "Запуск",
|
||
"profile.getting_started_progress": "{done} из {total}",
|
||
"profile.go_start_page": "На главную",
|
||
"profile.switch_organization": "Переключить организацию",
|
||
"auth.choose_organization_title": "Выберите организацию",
|
||
"auth.choose_organization_subtitle": "{name}, вы состоите в нескольких организациях. С какой начать?",
|
||
"auth.choose_organization_logout": "Выйти",
|
||
"auth.invitation_title": "Приглашение в организацию",
|
||
"auth.invitation_accepting": "Принимаем приглашение…",
|
||
"auth.invitation_not_accepted": "Приглашение не принято",
|
||
"auth.invitation_invalid": "Приглашение недействительно или истекло",
|
||
"auth.join_subtitle": "Вас приглашают в «{organization}» как {email}. Укажите имя и задайте пароль для входа.",
|
||
"auth.join_accept": "Принять приглашение",
|
||
"updates.available_title": "Доступна версия {version}",
|
||
"updates.whats_new": "Что нового",
|
||
"updates.install": "Обновить",
|
||
"updates.install_version": "Обновить до {version}",
|
||
"updates.installing": "Обновление до {version}:",
|
||
"updates.stage_starting": "запуск",
|
||
"updates.stage_downloading": "загрузка файла релиза",
|
||
"updates.stage_pulling": "загрузка образов",
|
||
"updates.stage_restarting": "перезапуск сервисов",
|
||
"updates.step_starting": "Запуск обновления",
|
||
"updates.step_downloading": "Загрузка файла релиза",
|
||
"updates.step_pulling": "Загрузка образов",
|
||
"updates.step_restarting": "Перезапуск сервисов",
|
||
"updates.progress_title": "Обновление до {version}",
|
||
"updates.progress_step": "Шаг {step} из {total}",
|
||
"updates.progress_hint": "На последнем шаге приложение ненадолго перестанет отвечать — так и должно быть. Страницу можно перезагрузить: ход обновления не потеряется.",
|
||
"updates.done_title": "Установлена версия {version}",
|
||
"updates.done_hint": "Страница открыта в прошлой версии. Обновите её, чтобы работать в новой.",
|
||
"updates.reload": "Обновить страницу",
|
||
"updates.done": "Установлена версия {version}. Обновите страницу.",
|
||
"updates.failed": "Обновление до {version} не удалось",
|
||
"updates.confirm_title": "Обновить до {version}?",
|
||
"updates.confirm_text": "Сервисы перезапустятся, приложение будет недоступно около минуты. Диалоги и данные сохранятся.",
|
||
"updates.updater_offline": "Сервис обновления не запущен, обновление из интерфейса недоступно",
|
||
"updates.card_title": "Обновления",
|
||
"updates.card_hint": "Версия установки и обновления с канала релизов",
|
||
"updates.current_version": "Текущая версия",
|
||
"updates.latest_version": "Последняя версия",
|
||
"updates.checked": "Проверка",
|
||
"updates.check": "Проверить",
|
||
"updates.checked_at": "{time}",
|
||
"updates.never_checked": "Ещё не проверялось",
|
||
"updates.up_to_date": "Установлена последняя версия",
|
||
"updates.check_error": "Не удалось проверить: {error}",
|
||
"profile.groups_list": "· группы: {groups}",
|
||
"profile.in_organization_since": "· в организации с {date}",
|
||
"profile.interface_language": "Язык интерфейса",
|
||
"profile.invite": "Пригласить",
|
||
"profile.invite_operators": "Пригласить сотрудников",
|
||
"profile.language": "Язык",
|
||
"profile.language_as_organization": "Как в организации",
|
||
"profile.language_lead": "Настройка личная и хранится в учётной записи. После сохранения страница перезагрузится.",
|
||
"profile.light": "Светлая",
|
||
"profile.link_bot": "Привязать бота",
|
||
"profile.match_system": "Как в системе",
|
||
"profile.menu": "Меню",
|
||
"profile.this_browser": "Этот браузер",
|
||
"profile.work_event_notifications": "Уведомления о рабочих событиях",
|
||
"profile.min_10_characters": "мин. 10 символов",
|
||
"profile.no_notification_bots_configured_owner": "Боты уведомлений не настроены. Владелец может добавить бота в «Настройках» → «Интеграции» (флажок «Бот уведомлений для сотрудников»).",
|
||
"profile.off_strongly_recommended_owner_administrators": "Отключена. Для владельца и администраторов настоятельно рекомендуется включить.",
|
||
"profile.password_updated": "Пароль обновлён",
|
||
"profile.password_updated_sessions": "Пароль обновлён, завершено сессий: {count}",
|
||
"profile.personal_details": "Личные данные",
|
||
"profile.personal_details_saved": "Личные данные сохранены",
|
||
"profile.personal_setting_stored_account_applies": "Настройка личная и хранится в учётной записи: применяется на всех ваших устройствах, без перезагрузки.",
|
||
"profile.png_jpeg_or_webp_up": "PNG, JPEG или WebP · до 2 МБ. Видно коллегам в чате.",
|
||
"profile.png_jpeg_or_webp_up_2": "PNG, JPEG или WebP · до 2 МБ. Видно коллегам в чате, подписях сообщений и выборе ответственного.",
|
||
"profile.preparing_link": "Готовим ссылку…",
|
||
"profile.press_link_bot_then_start": "Нажмите «Привязать бота» и в открывшемся чате — «Начать»: привязка подтвердится сама.",
|
||
"profile.remove_photo": "Удалить фото?",
|
||
"profile.replace": "Заменить",
|
||
"profile.service_notification_bot": "@{username} · сервисный бот уведомлений",
|
||
"profile.sessions_ended_count": "Завершено сессий: {count}",
|
||
"profile.sidebar_width": "Ширина сайдбара",
|
||
"profile.specialist": "Специалист",
|
||
"profile.theme": "Тема",
|
||
"profile.there_no_other_active_sessions": "Других активных сессий нет",
|
||
"profile.toggle_two_factor_authentication": "Переключить двухфакторную аутентификацию",
|
||
"profile.totp_off_sessions": "TOTP отключена, завершено сессий: {count}",
|
||
"profile.totp_turned_off": "TOTP отключена",
|
||
"profile.two_factor_authentication": "Двухфакторная аутентификация",
|
||
"profile.update_password": "Обновить пароль",
|
||
"profile.updating": "Обновление",
|
||
"profile.user_menu": "Меню пользователя",
|
||
"profile.without_second_factor_access_organization": "Без второго фактора доступ к организации защищён только паролем",
|
||
"profile.choose_where_to_call_you": "Выберите, где вас звать. Браузер — на этом устройстве, пока приложение открыто или свёрнуто. Мессенджер — где угодно, в том числе при закрытом браузере; мессенджер один: привязка нового заменяет текущий.",
|
||
"sales.all_agents": "Все агенты",
|
||
"sales.all_channels": "Все каналы",
|
||
"sales.anonymous_session": "{channel} · {connection}, анонимная сессия",
|
||
"sales.anonymous_widget_session": "анонимная сессия виджета",
|
||
"sales.call": "Позвонить",
|
||
"sales.change_filter_conditions_or_clear": "Измените условия фильтра или сбросьте их.",
|
||
"sales.city_country": "{city}, {country}",
|
||
"sales.closed": "Закрыт",
|
||
"sales.closed_2": "закрыт",
|
||
"sales.compare_merge": "Сравнить и объединить",
|
||
"sales.confirmed_by_connection": ", подтверждённый подключением",
|
||
"sales.confirmed_by_phone": "Подтверждён телефоном",
|
||
"sales.contact_actions": "Действия контакта",
|
||
"sales.contact_conversations": "Диалоги контакта",
|
||
"sales.contact_details_requested": "Контакт запрошен",
|
||
"sales.contact_has_no_conversations_yet": "У контакта ещё нет диалогов",
|
||
"sales.contacts_appear_once_customers_write": "Контакты появятся, когда клиенты напишут вашему агенту",
|
||
"sales.conversations": "Диалогов",
|
||
"sales.copy_cid": "Скопировать CID",
|
||
"sales.could_not_complete_operation": "Не удалось выполнить операцию",
|
||
"sales.could_not_load_contact": "Не удалось загрузить контакт",
|
||
"sales.could_not_load_contacts": "Не удалось загрузить контакты",
|
||
"sales.could_not_send_request_try": "Не удалось отправить запрос — попробуйте ещё раз",
|
||
"sales.country_russia": "Россия",
|
||
"sales.current_conversation": "Текущий диалог",
|
||
"sales.current_conversation_2": "по текущему диалогу",
|
||
"sales.duplicate_dialogs": "{count} диал.",
|
||
"sales.edit_contact": "Редактировать контакт",
|
||
"sales.everyone_who_writes_through_telegram": "Каждый, кто написал через Telegram, MAX, почту или виджет, становится контактом с историей диалогов.",
|
||
"sales.example_same_customer_confirmed_phone": "Например: один и тот же клиент, совпал подтверждённый телефон",
|
||
"sales.export_csv": "Экспорт CSV",
|
||
"sales.first_contact": "Первый контакт",
|
||
"sales.first_enquiry": "Первое обращение",
|
||
"sales.handled_by_f": "вела {name}",
|
||
"sales.handled_by_m": "вёл {name}",
|
||
"sales.handled_by_operator": "вёл {name}",
|
||
"sales.how_reach_them": "Как связаться",
|
||
"sales.identities": "Идентификаторы",
|
||
"sales.identities_and_dialogs": "{identities} идентичн. · {dialogs} диал.",
|
||
"sales.identities_conversations_move_contact_stays": "Идентичности и диалоги перейдут к контакту, который останется. Операция записывается в журнал действий и может быть разъединена обратно.",
|
||
"sales.identities_from_different_connections_not": "Идентичности разных подключений не объединяются автоматически. Подтверждённой считается только та, что подключение отдало с проверенным телефоном.",
|
||
"sales.identity_since": "с {date}",
|
||
"sales.last_activity": "Последняя активность",
|
||
"sales.last_conversation": "Последний диалог",
|
||
"sales.merge": "Объединить",
|
||
"sales.merge_contacts": "Объединить контакты",
|
||
"sales.merged": "Присоединяется",
|
||
"sales.merging": "Объединение",
|
||
"sales.name_email_phone_or_username": "Имя, email, телефон или логин…",
|
||
"sales.no_connection_identities": "Нет идентификаторов подключений",
|
||
"sales.no_contacts_found": "Контакты не найдены",
|
||
"sales.no_description": "Описания нет",
|
||
"sales.no_events": "Нет событий",
|
||
"sales.no_events_yet": "Пока нет событий",
|
||
"sales.no_group": "без группы",
|
||
"sales.no_phone_number": "телефон не указан",
|
||
"sales.not_confirmed": "Не подтверждён",
|
||
"sales.not_confirmed_by_connection": "(не подтверждён подключением)",
|
||
"sales.not_match": "Не то",
|
||
"sales.only_owner_can_merge_contacts": "Объединять контакты может только владелец.",
|
||
"sales.open": "Открытых",
|
||
"sales.open_2": "открыт",
|
||
"sales.open_column": "Открытые",
|
||
"sales.open_compare": "Открыть и сравнить",
|
||
"sales.open_conversation": "Открыть диалог",
|
||
"sales.open_conversations": "Открытые диалоги",
|
||
"sales.operator_handling": "Ведёт сотрудник",
|
||
"sales.overview": "Обзор",
|
||
"sales.person_handling": "Ведёт человек",
|
||
"sales.phone_matches": "Совпадает телефон{confirmed}",
|
||
"sales.possible_duplicate": "Возможный дубликат",
|
||
"sales.reason_merging": "Причина объединения",
|
||
"sales.request_contact_details": "Запросить контакт",
|
||
"sales.set_up_connections": "Настроить подключения",
|
||
"sales.spam": "спам",
|
||
"sales.stays": "Останется",
|
||
"sales.suggestion": "предложение",
|
||
"sales.there_no_other_conversations_with": "Других диалогов с этим контактом нет",
|
||
"sales.username": "Логин",
|
||
"sales.video_call": "Видеозвонок",
|
||
"sales.waiting": "Ждёт",
|
||
"sales.when": "Когда",
|
||
"sales.widget": "виджет",
|
||
"sales.with_open_conversation": "С открытым диалогом",
|
||
"settings.access_checked_at": "Доступ проверен {date}",
|
||
"settings.access_lifetime_seconds": "Время жизни доступа, секунд",
|
||
"settings.action_audit": "Аудит действий",
|
||
"settings.add_connection": "Добавить подключение",
|
||
"settings.add_provider": "Добавить провайдера",
|
||
"settings.address_hint": "Пока домена нет, здесь стоит адрес сервера — тот, на котором вы прошли первый запуск. Заведёте домен и поставите перед установкой TLS — впишите его и переключите на https. Ссылки будут вида",
|
||
"settings.address_placeholder": "адрес",
|
||
"settings.addressing": "Адресация",
|
||
"settings.when_to_call_for_help": "Когда звать на помощь",
|
||
"settings.queue_section_lead": "Если клиент ждёт человека, мы напоминаем о диалоге — сначала группе, потом всем, потом руководителю. Сроки считаются с момента, когда диалог встал в очередь. Действуют на всю организацию.",
|
||
"settings.queue_remind_group": "Напомнить группе, что диалог ждёт",
|
||
"settings.queue_remind_group_hint": "Уведомление получат сотрудники группы, за которой закреплён диалог.",
|
||
"settings.queue_call_everyone": "Позвать всех, если диалог всё ещё ждёт",
|
||
"settings.queue_call_everyone_hint": "Уведомление уйдёт всем сотрудникам, а не только группе.",
|
||
"settings.queue_tell_manager": "Сообщить руководителю",
|
||
"settings.queue_tell_manager_hint": "Владельцу и администраторам — значит, обычными силами диалог не разобрали.",
|
||
"settings.queue_wait_for_assignee": "Сколько ждём сотрудника, на которого назначен диалог",
|
||
"settings.queue_wait_for_assignee_hint": "Не взял за это время — диалог возвращается в общую очередь и снова виден всем.",
|
||
"settings.queue_minutes_unit": "мин",
|
||
"settings.queue_saved_by": "Сохранено {when} · {who}",
|
||
"settings.queue_never_changed": "Сроки ни разу не меняли",
|
||
"settings.queue_restore_defaults": "Вернуть обычные сроки",
|
||
"settings.queue_policy_unavailable": "Не удалось загрузить сроки",
|
||
"settings.queue_delivery_warning": "Напоминания приходят туда, где сотрудник их получит: в браузер и в привязанный мессенджер. Если у группы не настроен ни один способ, останется только счётчик в списке диалогов.",
|
||
"settings.ai_provider": "AI-провайдер",
|
||
"settings.allowed_domains": "Разрешённые домены",
|
||
"settings.answers_from_agent_s_knowledge": "Отвечает по знаниям агента без внешних запросов и ключей. Качество ответов ограничено — для реальной работы подключите OpenRouter или совместимый провайдер.",
|
||
"settings.api_key": "API-ключ",
|
||
"settings.attachments_voice_messages_photos_logos": "Вложения, голосовые, фото и логотипы — на диске установки или во внешнем S3-совместимом хранилище.",
|
||
"settings.audio_calls": "Аудиозвонки",
|
||
"settings.back_section_list": "К списку разделов",
|
||
"settings.bot": "Бот",
|
||
"settings.bot_token": "Токен бота",
|
||
"settings.vk_community_key": "Ключ доступа сообщества",
|
||
"settings.bots_email_web_widget_entry": "Боты, почта и Web-виджет — точки входа диалогов. Каждая привязана к агенту, который отвечает первым.",
|
||
"settings.bucket": "Бакет",
|
||
"settings.check": "Проверить",
|
||
"settings.check_access": "Проверить доступ",
|
||
"settings.checking": "Проверяем…",
|
||
"settings.checking_2": "Проверка…",
|
||
"settings.config": "КОНФИГ",
|
||
"settings.could_not_create_group": "Не удалось создать группу",
|
||
"settings.could_not_delete": "Не удалось удалить",
|
||
"settings.could_not_delete_group": "Не удалось удалить группу",
|
||
"settings.could_not_load_entry_points": "Не удалось загрузить точки входа",
|
||
"settings.could_not_load_installation_settings": "Не удалось загрузить настройки установки",
|
||
"settings.could_not_load_integrations": "Не удалось загрузить интеграции",
|
||
"settings.could_not_load_relay_settings": "Не удалось загрузить настройки relay",
|
||
"settings.could_not_load_settings": "Не удалось загрузить настройки",
|
||
"settings.could_not_load_storage_settings": "Не удалось загрузить настройки хранилища",
|
||
"settings.could_not_read_demo_data": "Не удалось получить статус демо-данных",
|
||
"settings.could_not_rename": "Не удалось переименовать",
|
||
"settings.could_not_start_installation": "Не удалось запустить установку",
|
||
"settings.could_not_start_removal": "Не удалось запустить удаление",
|
||
"settings.default_model": "Модель по умолчанию",
|
||
"settings.delete_group": "Удалить группу?",
|
||
"settings.delete_integration": "Удалить интеграцию?",
|
||
"settings.demo_contents": "Сотрудники и группы, агенты с подключениями, знания, диалоги во всех состояниях, голосовые, шаблоны ответов, портал поддержки, звонки и уведомления. Удаляются целиком — ваши данные не затрагиваются.",
|
||
"settings.demo_data": "Демо-данные",
|
||
"settings.demo_data_being_installed_sections": "Демо-данные устанавливаются — разделы наполнятся через несколько секунд.",
|
||
"settings.demo_data_ready": "Демо-данные готовы.",
|
||
"settings.demo_provider_no_key": "Демо-провайдер (без ключа)",
|
||
"settings.demo_records_count": "{count} записей",
|
||
"settings.disabled": "Отключено",
|
||
"settings.domain_or_ip": "Домен или IP",
|
||
"settings.e_g_openrouter_primary": "например, OpenRouter · основной",
|
||
"settings.e_g_support_mailbox": "например, Почта поддержки",
|
||
"settings.edit_integration": "Изменить интеграцию",
|
||
"settings.email_address": "Email-адрес",
|
||
"settings.email_not_configured_nothing_sent": "Почта не настроена: письма никуда не уходят, пригласить сотрудника не получится.",
|
||
"settings.email_sent_to": "Письмо отправлено на {email}. Не пришло — проверьте папку «Спам».",
|
||
"settings.embed_snippet_site": "Код вставки на сайт",
|
||
"settings.endpoint_non_aws_providers": "Endpoint (для не-AWS провайдеров)",
|
||
"settings.entry_point": "Точка входа",
|
||
"settings.entry_point_off": " · выключена",
|
||
"settings.every_record_demo_set_will": "Будут удалены все записи демо-набора: сотрудники, агенты, диалоги, знания и файлы. Данные, созданные вами, останутся.",
|
||
"settings.example_com_example_com_comma": "example.com, *.example.com — через запятую",
|
||
"settings.external_s3": "Внешнее S3",
|
||
"settings.file_storage": "Хранилище файлов",
|
||
"settings.files_live_installation_s_data": "Файлы лежат в каталоге data/media установки. Подходит для одного сервера; для нескольких экземпляров или резервирования включите S3.",
|
||
"settings.gmail_yandex_use_app_password": "Для Gmail и Яндекс используйте пароль приложения, не основной пароль аккаунта",
|
||
"settings.green": "Зелёный",
|
||
"settings.group_membership_edited_operator_card": "Состав группы редактируется на карточке сотрудника. Диалоги без группы видят все сотрудники.",
|
||
"settings.host": "Хост",
|
||
"settings.http_host_port_or_socks5": "http://host:port или socks5://user:pass@host:port — пусто, если без прокси",
|
||
"settings.incoming_mail_imap": "Входящая почта · IMAP",
|
||
"settings.install": "Установить",
|
||
"settings.install_again": "Повторить установку",
|
||
"settings.installation_address": "Адрес установки",
|
||
"settings.installation_disk": "На диске установки",
|
||
"settings.installation_failed": "Ошибка установки",
|
||
"settings.installed": "Установлены",
|
||
"settings.installing": "Устанавливаются",
|
||
"settings.installing_2": "Устанавливаются…",
|
||
"settings.integration_actions": "Действия интеграции",
|
||
"settings.knowledge_attachments_voice_messages_photos": "Вложения знаний, голосовые, фото и логотипы",
|
||
"settings.knowledge_attachments_voice_messages_photos_2": "Вложения знаний, голосовые, фото и логотипы будут записываться в бакет под префиксами организаций. Уже загруженные файлы остаются доступны с диска, пока не перенесены.",
|
||
"settings.language": "Язык интерфейса",
|
||
"settings.language_as_installation": "Как в установке",
|
||
"settings.language_instance": "Язык установки",
|
||
"settings.language_instance_hint": "Язык экранов, где организации ещё нет: вход, сброс пароля, мастер первого запуска. Он же — умолчание для организаций, которые своего языка не выбрали.",
|
||
"settings.leave_empty_keep_unchanged": "оставьте пустым, чтобы не менять",
|
||
"settings.lime": "Салатовый",
|
||
"settings.migrate_files_from_disk": "Перенести файлы с диска",
|
||
"settings.migration_done": "Перенос завершён: {done} файлов",
|
||
"settings.migration_failed": "Перенос прерван: {error}",
|
||
"settings.migration_has_started_runs_background": "Перенос запущен — идёт в фоне.",
|
||
"settings.migration_progress": "Перенос: {done} из {total}",
|
||
"settings.name_logo_regional_settings_visible": "Название, логотип и региональные параметры. Видны сотрудникам, в виджете и письмах.",
|
||
"settings.new_group_name": "Название новой группы",
|
||
"settings.new_integration": "Новая интеграция",
|
||
"settings.no_agent": "без агента",
|
||
"settings.no_connections_yet_add_bot": "Подключений пока нет. Добавьте бота, почту или Web-виджет.",
|
||
"settings.no_groups": "без групп",
|
||
"settings.no_providers_yet_add_openrouter": "Провайдеров пока нет. Добавьте OpenRouter или Custom endpoint.",
|
||
"settings.nord_atelier": "Ателье «Норд»",
|
||
"settings.not_checked_yet": "ещё не проверялось",
|
||
"settings.not_installed": "Не установлены",
|
||
"settings.not_linked": "— не привязан —",
|
||
"settings.notification_bot_operators_service_bot": "Бот уведомлений для сотрудников (сервисный, клиентам не отвечает; привязка в профиле)",
|
||
"settings.operator_invitations_password_resets": "Приглашения сотрудникам и сброс пароля",
|
||
"settings.organization": "Организация",
|
||
"settings.organization_s_keys_agent_replies": "Ключи вашей организации для ответов агентов и расшифровки голосовых. Модель выбирается на карточке агента.",
|
||
"settings.outgoing_email": "Исходящая почта",
|
||
"settings.outgoing_mail_smtp": "Исходящая почта · SMTP",
|
||
"settings.path_bucket_path": "path (bucket в пути)",
|
||
"settings.pink": "Розовый",
|
||
"settings.platform": "Платформа",
|
||
"settings.port": "Порт",
|
||
"settings.properties_installation_itself_address_opened": "Свойства самой установки: адрес, по которому её открывают и по которому строятся ссылки на файлы, и почтовый сервер для приглашений и сброса пароля.",
|
||
"settings.providers": "Провайдеры",
|
||
"settings.proxy": "Прокси",
|
||
"settings.proxy_password_never_returned_dots": "Пароль прокси наружу не отдаётся: вместо него точки. Оставьте их как есть — прежний пароль сохранится; чтобы сменить, впишите новый целиком",
|
||
"settings.purple": "Фиолетовый",
|
||
"settings.receiving_sending_messages_stopped": "Приём и отправка сообщений остановлены",
|
||
"settings.red": "Красный",
|
||
"settings.region": "Регион",
|
||
"settings.relay_when_direct_connection_does": "Relay на случай, когда прямое соединение не проходит",
|
||
"settings.remove_demo_data": "Удалить демо-данные",
|
||
"settings.remove_demo_data_2": "Удалить демо-данные?",
|
||
"settings.removing": "Удаляются",
|
||
"settings.removing_2": "Удаляются…",
|
||
"settings.saved": "•••••••• (сохранён)",
|
||
"settings.saved_calls_will_use_these": "Сохранено. Звонки будут использовать эти адреса relay.",
|
||
"settings.saved_email_will_go_through": "Сохранено. Письма пойдут через этот сервер.",
|
||
"settings.saved_file_links_will_use": "Сохранено. Ссылки на файлы пойдут по этому адресу.",
|
||
"settings.saved_files_kept_installation_disk": "Сохранено. Файлы хранятся на диске установки.",
|
||
"settings.saved_new_files_go_s3": "Сохранено. Новые файлы пишутся в S3, доступ проверен.",
|
||
"settings.secret": "СЕКРЕТ",
|
||
"settings.see_system_at_work_fictional": "Посмотреть систему в работе на вымышленной организации.",
|
||
"settings.send_test_email": "Отправить тестовое письмо",
|
||
"settings.sender": "Отправитель",
|
||
"settings.sending": "Отправляем…",
|
||
"settings.separate_screens": "Отдельные экраны",
|
||
"settings.service_notification_bot_named": "{name} · сервисный бот уведомлений",
|
||
"settings.settings_available_owner_administrators": "Настройки доступны владельцу и администратору",
|
||
"settings.sign_as_demo_operator_private": "Войдите под демо-сотрудником в приватном окне, чтобы увидеть систему его глазами:",
|
||
"settings.sites_where_widget_may_open": "Сайты, на которых виджету разрешено открываться: домен, поддомены через «*.» или полный origin с портом. На остальных чат ответит «Чат временно недоступен»",
|
||
"settings.smtp_server": "SMTP-сервер",
|
||
"settings.storage_reachable_test_object_was": "Хранилище доступно: пробный объект записан и удалён.",
|
||
"settings.switched_off": "· выключена",
|
||
"settings.system_opened_at_file_links": "По нему открывают систему и по нему строятся ссылки на файлы",
|
||
"settings.there_error": "Есть ошибка",
|
||
"settings.there_no_entry_points_yet": "Точек входа пока нет — подключите бота, почту или Web-виджет в «Интеграциях».",
|
||
"settings.they_split_conversations_between_operators": "Делят диалоги между сотрудниками: сотрудник видит диалоги своих групп, без группы и те, где он ответственный.",
|
||
"settings.title": "НАЗВАНИЕ",
|
||
"settings.tls_encryption_smtp_server": "Шифрование TLS до SMTP-сервера",
|
||
"settings.turn_addresses_one_per_line": "Адреса TURN — по одному в строке",
|
||
"settings.turn_calls": "TURN для звонков",
|
||
"settings.turn_note": "Нужен, только если звонки идут через сети со строгим NAT. Общий секрет с сервером relay {secret}",
|
||
"settings.turn_note_prefix": "Нужен, только если звонки идут через сети со строгим NAT. Общий секрет с сервером relay",
|
||
"settings.type": "Тип",
|
||
"settings.unavailable": "недоступно",
|
||
"settings.unclear_domain": "Непонятный домен: {domain}",
|
||
"settings.user": "Пользователь",
|
||
"settings.video_calls": "Видеозвонки",
|
||
"settings.virtual_host_bucket_domain": "virtual-host (bucket в домене)",
|
||
"settings.voice_calls": "Голосовые и звонки",
|
||
"settings.voice_messages": "Голосовые",
|
||
"settings.voice_messages_sent_by_customer": "Голосовые, присланные клиентом из мессенджера, принимаются всегда. Почта звонки не поддерживает. Изменения применяются сразу.",
|
||
"settings.voice_transcription_model": "Модель расшифровки голосовых",
|
||
"settings.was_already_created_by_installation": "уже создан установкой — вводить его не нужно.",
|
||
"settings.web_widget_embed_snippet_copied": "Код вставки Web-виджета копируется на карточке его агента.",
|
||
"settings.where_customer_operator_can_record": "Где клиент и сотрудник могут записывать голосовые и начинать аудио- и видеозвонки.",
|
||
"settings.where_keep_files": "Где хранить файлы",
|
||
"settings.will_be_deleted_irreversible": "«{name}» будет удалена. Действие необратимо.",
|
||
"settings.will_created_next_time_stack": "будет создан при следующем запуске стека.",
|
||
"shared.403_access_denied": "403 · Доступ запрещён",
|
||
"shared.active": "Активен",
|
||
"shared.agent_card": "Карточка агента",
|
||
"shared.ai_usage": "Использование AI",
|
||
"shared.archived": "Архивный",
|
||
"shared.attached": "Прикреплено",
|
||
"shared.blocked": "Заблокирован",
|
||
"shared.blue": "Синий",
|
||
"shared.category_can_only_deleted_once": "Категорию можно удалить только после переноса вложенных категорий и материалов.",
|
||
"shared.category_decides_placement_only_not": "Категория определяет только размещение, не доступ",
|
||
"shared.category_name": "Название категории",
|
||
"shared.characters_and_paragraphs": "{characters} знаков · {paragraphs}",
|
||
"shared.checking": "Проверяется",
|
||
"shared.could_not_change_categories": "Не удалось изменить категории",
|
||
"shared.could_not_load_list": "Не удалось загрузить список",
|
||
"shared.create_category": "Создать категорию",
|
||
"shared.create_subcategory_in": "Создать подкатегорию в {name}",
|
||
"shared.delete_category": "Удалить категорию?",
|
||
"shared.delete_named": "Удалить {name}",
|
||
"shared.detached": "Откреплено",
|
||
"shared.go_back": "Вернуться",
|
||
"shared.hide_hint": "Скрыть подсказку",
|
||
"shared.inactive": "Неактивен",
|
||
"shared.indigo": "Индиго",
|
||
"shared.invited": "Приглашён",
|
||
"shared.knowledge_categories": "Категории знаний",
|
||
"shared.knowledge_editor": "Редактор знания",
|
||
"shared.knowledge_import": "Импорт знаний",
|
||
"shared.knowledge_item": "Знание",
|
||
"shared.line_column": "Строка {line}, столбец {column}",
|
||
"shared.link_text": "текст ссылки",
|
||
"shared.loading_failed": "Ошибка загрузки",
|
||
"shared.manage_categories": "Управление категориями",
|
||
"shared.network_error": "Ошибка сети",
|
||
"shared.never_checked": "Не проверялось",
|
||
"shared.new_knowledge_item": "Новое знание",
|
||
"shared.next_page": "Следующая страница",
|
||
"shared.orange": "Оранжевый",
|
||
"shared.per_page": "На странице:",
|
||
"shared.pick_agent": "Выберите агента",
|
||
"shared.portal_settings": "Настройки портала",
|
||
"shared.previous_page": "Предыдущая страница",
|
||
"shared.published": "Опубликован",
|
||
"shared.role_has_no_access_section": "У вашей роли нет доступа к этому разделу.",
|
||
"shared.running": "Работает",
|
||
"shared.skipped_count": "Пропущено: {count}.",
|
||
"shared.support_portal": "Портал поддержки",
|
||
"shared.sys": "СИСТ.",
|
||
"shared.table_template": "\n| Колонка | Колонка |\n| ------- | ------- |\n| Значение | Значение |\n",
|
||
"shared.teal": "Бирюзовый",
|
||
"shared.there_no_agents_attach_material": "Нет агентов, которым можно прикрепить материалы.",
|
||
"time.autosaved_at": "Сохранено автоматически в {time}",
|
||
"time.days_ago": "{count} дн. назад",
|
||
"time.days_ago_short": "{count} д назад",
|
||
"time.days_short": "{count} д",
|
||
"time.duration_is": "Длительность {duration}.",
|
||
"time.hours_ago": "{count} ч назад",
|
||
"time.hours_minutes": "{hours} ч {minutes} мин",
|
||
"time.hours_short": "{count} ч",
|
||
"time.minutes_ago": "{count} мин назад",
|
||
"time.minutes_short": "{count} мин",
|
||
"time.resend_in": "Отправить повторно через {seconds} с",
|
||
"time.saved_at": "Сохранено {time}",
|
||
"time.today_at": "{time} · сегодня",
|
||
"time.today_comma": "сегодня, {time}",
|
||
"time.yesterday_comma": "вчера, {time}",
|
||
"unit.b": "{value} Б",
|
||
"unit.kb": "{value} КБ",
|
||
"unit.mb": "{value} МБ",
|
||
"ai.answer_language": "Язык ответов",
|
||
"ai.answer_language_hint": "На каком языке агент пишет клиенту",
|
||
"ai.answer_language_mirror": "Как у клиента",
|
||
"ai.answer_language_organization": "Язык организации",
|
||
} satisfies Record<string, Message>;
|
||
|
||
export type MessageKey = keyof typeof ru;
|