Files
HomeAssistantVS/custom_components/maintenance_supporter/translations/ru.json
T

1939 lines
117 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"config": {
"step": {
"user": {
"title": "Ассистент обслуживания",
"description": "Настройте вашу систему управления обслуживанием.",
"menu_options": {
"create_object": "Создать объект обслуживания",
"create_from_template": "Создать из шаблона",
"global_setup": "Глобальные настройки"
}
},
"create_from_template": {
"title": "Выбор категории шаблона",
"description": "Выберите категорию для просмотра предустановленных шаблонов обслуживания.",
"data": {
"template_category": "Категория",
"go_back": "Назад"
},
"data_description": {
"go_back": "Вернуться в главное меню без сохранения."
}
},
"template_select": {
"title": "Выберите шаблон",
"description": "Выберите шаблон обслуживания, который будет использоваться в качестве отправной точки.",
"data": {
"template_id": "Шаблон",
"go_back": "Назад"
},
"data_description": {
"go_back": "Вернуться к выбору категории без сохранения."
}
},
"template_customize": {
"title": "Настройка шаблона",
"description": "Настройте шаблон {template_name}. Он включает {task_count} задач: {task_list}.",
"data": {
"name": "Название объекта",
"area_id": "Зона",
"manufacturer": "Производитель",
"model": "Модель",
"serial_number": "Серийный номер",
"documentation_url": "URL руководства / документации",
"notes": "Заметки",
"go_back": "Назад"
},
"data_description": {
"name": "Название для этого объекта обслуживания.",
"area_id": "Зона, в которой находится этот объект.",
"manufacturer": "Производитель объекта.",
"model": "Название или номер модели.",
"serial_number": "Серийный номер объекта.",
"documentation_url": "Необязательная ссылка на PDF-руководство, страницу производителя или любой URL со справочной информацией об этом объекте.",
"notes": "Свободные заметки об объекте — номера деталей, процедуры, напоминания, и т.п.",
"go_back": "Вернуться к выбору шаблона без сохранения."
}
},
"global_setup": {
"title": "Глобальные настройки",
"description": "Настройте глобальные параметры обслуживания.",
"data": {
"default_warning_days": "За сколько дней до истечения срока предупреждать",
"notifications_enabled": "Включить уведомления",
"notify_service": "Сервис уведомлений"
},
"data_description": {
"default_warning_days": "Количество дней до наступления срока выполнения задачи обслуживания, за которое показывать предупреждение.",
"notifications_enabled": "Отправлять уведомления, когда задачи обслуживания становятся просроченными.",
"notify_service": "Сервис уведомлений для использования (например, notify.mobile_app_phone)."
}
},
"create_object": {
"title": "Создание объекта обслуживания",
"description": "Опишите устройство или ресурс для управления обслуживанием.",
"data": {
"name": "Название объекта",
"area_id": "Зона",
"manufacturer": "Производитель",
"model": "Модель",
"serial_number": "Серийный номер",
"documentation_url": "URL руководства / документации",
"notes": "Заметки",
"installation_date": "Дата установки",
"warranty_expiry": "Окончание гарантии",
"go_back": "Назад"
},
"data_description": {
"name": "Уникальное имя для этого объекта обслуживания (например, 'Насос бассейна', 'Автомобиль').",
"area_id": "Зона в вашем доме, в которой находится этот объект.",
"manufacturer": "Производитель объекта.",
"model": "Название или номер модели.",
"serial_number": "Серийный номер объекта.",
"documentation_url": "Необязательная ссылка на PDF-руководство, страницу производителя или любой URL со справочной информацией об этом объекте.",
"notes": "Свободные заметки об объекте — номера деталей, процедуры, напоминания, и т.п.",
"installation_date": "Когда этот объект был установлен или куплен.",
"warranty_expiry": "Когда истекает гарантия производителя на этот объект.",
"go_back": "Вернуться в главное меню без сохранения."
}
},
"task_menu": {
"title": "Задачи обслуживания",
"description": "Добавьте задачи обслуживания для {object_name}. Сейчас настроено {task_count} задач.",
"menu_options": {
"add_task": "Добавить задачу обслуживания",
"finish": "Завершить настройку"
}
},
"add_task": {
"title": "Добавить задачу обслуживания",
"description": "Добавьте задачу обслуживания для {object_name}.",
"data": {
"name": "Название задачи",
"type": "Тип обслуживания",
"schedule_type": "Тип расписания",
"custom_icon": "Иконка задачи",
"go_back": "Назад"
},
"data_description": {
"name": "Описательное название для этой задачи (например, 'Очистка фильтра', 'Замена масла').",
"type": "Категория работ по обслуживанию.",
"schedule_type": "Как эта задача должна планироваться.",
"custom_icon": "Необязательная пользовательская иконка для этой задачи (например, mdi:oil, mdi:filter-variant).",
"go_back": "Вернуться в меню задач без сохранения."
}
},
"time_based": {
"title": "Расписание на основе времени",
"description": "Настройте временной интервал для этой задачи обслуживания.",
"data": {
"interval_days": "Интервал",
"interval_unit": "Единица интервала",
"last_performed": "Последнее выполнение",
"warning_days": "Дней предупреждения до срока",
"go_back": "Назад",
"interval_anchor": "Якорь интервала"
},
"data_description": {
"interval_days": "Как часто повторяется это обслуживание, в сочетании с единицей интервала.",
"interval_unit": "Единица интервала: дни, недели, месяцы или годы. Месяцы и годы следуют календарю.",
"last_performed": "Когда это обслуживание выполнялось в последний раз. Оставьте пустым, если никогда не выполнялось.",
"warning_days": "Количество дней до наступления срока для показа предупреждения.",
"go_back": "Вернуться к созданию задачи без сохранения.",
"interval_anchor": "Как рассчитывается следующая дата после завершения. 'Плановый' предотвращает дрейф расписания, привязываясь к исходной плановой дате."
}
},
"one_time": {
"title": "Разовая задача",
"description": "Настройте одну неповторяющуюся задачу обслуживания. После выполнения она архивируется.",
"data": {
"due_date": "Срок",
"warning_days": "Дней предупреждения до срока",
"go_back": "Назад"
},
"data_description": {
"due_date": "Дата, к которой должна быть выполнена эта разовая задача.",
"warning_days": "Количество дней до наступления срока для показа предупреждения.",
"go_back": "Вернуться к созданию задачи без сохранения."
}
},
"calendar": {
"title": "Расписание по календарю",
"description": "Настройте повторение на основе календаря (дни недели, n-й день недели месяца или день месяца).",
"data": {
"weekdays": "В эти дни недели",
"nth": "Какое вхождение",
"weekday": "День недели",
"day": "День месяца",
"warning_days": "Дней предупреждения до срока",
"go_back": "Назад",
"last_day": "Последний день месяца",
"business": "Только рабочие дни",
"offset": "Сдвиг (дни)"
},
"data_description": {
"weekdays": "Задача повторяется в каждый выбранный день недели.",
"nth": "Какое вхождение в месяце (например, 1-е или Последнее).",
"weekday": "День недели для правила n-го дня недели (например, суббота).",
"day": "День месяца (1-31; ограничивается длиной месяца).",
"warning_days": "Количество дней до наступления срока для показа предупреждения.",
"go_back": "Вернуться к созданию задачи без сохранения.",
"last_day": "Заменяет номер дня: срок — последний день месяца.",
"business": "Переносит дату с выходных на предыдущую пятницу (например, последний рабочий день).",
"offset": "Сдвигает вычисленную дату на ±N дней (например, -2 = за два дня)."
}
},
"sensor_select": {
"title": "Выберите датчик-триггер",
"description": "Выберите сущность Home Assistant для отслеживания для этой задачи обслуживания.",
"data": {
"trigger_entity": "Сущность для отслеживания",
"go_back": "Назад"
},
"data_description": {
"trigger_entity": "Выберите датчик, который должен запускать эту задачу обслуживания.",
"go_back": "Вернуться к созданию задачи без сохранения."
}
},
"sensor_attribute": {
"title": "Выберите атрибут",
"description": "Выберите, какое значение отслеживать в {entity_id}. Текущее состояние: {current_state} {unit}",
"data": {
"trigger_attribute": "Значение для отслеживания",
"go_back": "Назад"
},
"data_description": {
"trigger_attribute": "Выберите состояние сущности или конкретный атрибут для отслеживания.",
"go_back": "Вернуться к выбору сущности без сохранения."
}
},
"trigger_type": {
"title": "Тип триггера",
"description": "Как значение датчика должно запускать обслуживание?",
"data": {
"trigger_type": "Тип триггера",
"go_back": "Назад"
},
"data_description": {
"trigger_type": "Порог: срабатывает, когда значение превышает лимиты. Счетчик: срабатывает после накопления целевого значения. Изменение состояния: срабатывает после определенного количества переходов состояния.",
"go_back": "Вернуться к выбору атрибута без сохранения."
}
},
"trigger_threshold": {
"title": "Настройка порога",
"description": "Установите пороговые значения для **{entity_id}** ({attribute}).\nТекущее: **{current_value} {unit}** | Среднее: {average} | Диапазон: {minimum}{maximum} ({data_period} дн.)\nРекомендуемое выше: {suggested_above} | Рекомендуемое ниже: {suggested_below}",
"data": {
"trigger_above": "Срабатывать при превышении",
"trigger_below": "Срабатывать при падении ниже",
"trigger_for_minutes": "В течение (минут)",
"interval_days": "Защитный интервал",
"interval_unit": "Единица интервала",
"warning_days": "Дней предупреждения до срока",
"go_back": "Назад"
},
"data_description": {
"trigger_above": "Запускать обслуживание, когда значение превышает этот порог.",
"trigger_below": "Запускать обслуживание, когда значение падает ниже этого порога.",
"trigger_for_minutes": "Значение должно превышать порог в течение этого количества минут перед запуском.",
"interval_days": "Дополнительный временной защитный интервал в дополнение к триггеру датчика.",
"interval_unit": "Единица интервала: дни, недели, месяцы или годы. Месяцы и годы следуют календарю.",
"warning_days": "Количество дней до наступления срока для показа предупреждения.",
"go_back": "Вернуться к выбору типа триггера без сохранения."
}
},
"trigger_counter": {
"title": "Настройка счетчика",
"description": "Установите целевое значение счетчика для {entity_id} ({attribute}). Текущее: {current_value} {unit}.",
"data": {
"trigger_target_value": "Целевое значение",
"trigger_delta_mode": "Режим дельты (учитывать изменения, не абсолютное значение)",
"interval_days": "Защитный интервал",
"interval_unit": "Единица интервала",
"warning_days": "Дней предупреждения до срока",
"go_back": "Назад"
},
"data_description": {
"trigger_target_value": "Запускать обслуживание при достижении этого накопленного значения.",
"trigger_delta_mode": "Если включено, считает разницу от базового уровня вместо абсолютного значения.",
"interval_days": "Дополнительный временной защитный интервал в дополнение к триггеру счетчика.",
"interval_unit": "Единица интервала: дни, недели, месяцы или годы. Месяцы и годы следуют календарю.",
"warning_days": "Количество дней до наступления срока для показа предупреждения.",
"go_back": "Вернуться к выбору типа триггера без сохранения."
}
},
"trigger_state_change": {
"title": "Настройка изменения состояния",
"description": "Подсчет переходов состояния {entity_id}.",
"data": {
"trigger_from_state": "Из состояния (опционально)",
"trigger_to_state": "В состояние (опционально)",
"trigger_target_changes": "Количество изменений для срабатывания",
"interval_days": "Защитный интервал",
"interval_unit": "Единица интервала",
"warning_days": "Дней предупреждения до срока",
"go_back": "Назад"
},
"data_description": {
"trigger_from_state": "Учитывать только переходы из этого состояния. Оставьте пустым для любого.",
"trigger_to_state": "Учитывать только переходы в это состояние. Оставьте пустым для любого.",
"trigger_target_changes": "Количество соответствующих изменений состояния перед запуском обслуживания.",
"interval_days": "Дополнительный временной защитный интервал в дополнение к триггеру изменения состояния.",
"interval_unit": "Единица интервала: дни, недели, месяцы или годы. Месяцы и годы следуют календарю.",
"warning_days": "Количество дней до наступления срока для показа предупреждения.",
"go_back": "Вернуться к выбору типа триггера без сохранения."
}
},
"trigger_runtime": {
"title": "Настройка времени работы",
"description": "Отслеживайте накопленное время работы {entity_id}. Обслуживание запускается, когда общее время включения достигает целевого количества часов.",
"data": {
"trigger_runtime_hours": "Целевое время работы (часы)",
"trigger_on_states": "Активные состояния (через запятую)",
"interval_days": "Защитный интервал",
"interval_unit": "Единица интервала",
"warning_days": "Дней предупреждения до срока",
"go_back": "Назад"
},
"data_description": {
"trigger_runtime_hours": "Запускать обслуживание после этого количества часов накопленного времени работы.",
"trigger_on_states": "Какие состояния датчика считать 'активными'. Оставьте пустым для значений по умолчанию: on, 1, true. Пример: in_use, running",
"interval_days": "Дополнительный временной защитный интервал в дополнение к триггеру времени работы.",
"interval_unit": "Единица интервала: дни, недели, месяцы или годы. Месяцы и годы следуют календарю.",
"warning_days": "Количество дней до наступления срока для показа предупреждения.",
"go_back": "Вернуться к выбору типа триггера без сохранения."
}
},
"compound_logic": {
"title": "Составной триггер",
"description": "Выберите, как должны комбинироваться несколько условий.",
"data": {
"compound_logic": "Логика",
"go_back": "Назад"
},
"data_description": {
"compound_logic": "И = все условия должны сработать. ИЛИ = любое условие срабатывает.",
"go_back": "Вернуться к выбору типа триггера без сохранения."
}
},
"compound_condition_entity": {
"title": "Условие #{condition_num} — Сущность",
"description": "Выберите сущность для этого условия.",
"data": {
"trigger_entity": "Сущность",
"go_back": "Назад"
},
"data_description": {
"trigger_entity": "Сущность датчика для отслеживания для этого условия.",
"go_back": "Вернуться к предыдущему шагу без сохранения."
}
},
"compound_condition_type": {
"title": "Условие #{condition_num} — Тип",
"description": "Как это условие должно оценивать датчик?",
"data": {
"trigger_type": "Тип триггера",
"go_back": "Назад"
},
"data_description": {
"trigger_type": "Метод, используемый для определения, когда это условие срабатывает.",
"go_back": "Вернуться к выбору сущности без сохранения."
}
},
"compound_condition_threshold": {
"title": "Условие — Порог",
"data": {
"trigger_above": "Срабатывать при превышении",
"trigger_below": "Срабатывать при падении ниже",
"trigger_for_minutes": "Длительность (минуты)",
"go_back": "Назад"
},
"data_description": {
"trigger_above": "Срабатывать, когда значение превышает этот порог.",
"trigger_below": "Срабатывать, когда значение падает ниже этого порога.",
"trigger_for_minutes": "Значение должно оставаться за порогом в течение этой длительности.",
"go_back": "Вернуться к выбору типа условия без сохранения."
}
},
"compound_condition_counter": {
"title": "Условие — Счетчик",
"data": {
"trigger_target_value": "Целевое значение",
"trigger_delta_mode": "Режим дельты",
"go_back": "Назад"
},
"data_description": {
"trigger_target_value": "Срабатывать, когда накопленное значение достигает этой цели.",
"trigger_delta_mode": "Считать изменения от базового уровня вместо абсолютного значения.",
"go_back": "Вернуться к выбору типа условия без сохранения."
}
},
"compound_condition_state_change": {
"title": "Условие — Изменение состояния",
"data": {
"trigger_from_state": "Из состояния",
"trigger_to_state": "В состояние",
"trigger_target_changes": "Количество изменений",
"go_back": "Назад"
},
"data_description": {
"trigger_from_state": "Учитывать только переходы из этого состояния. Оставьте пустым для любого.",
"trigger_to_state": "Учитывать только переходы в это состояние. Оставьте пустым для любого.",
"trigger_target_changes": "Количество соответствующих изменений состояния перед срабатыванием.",
"go_back": "Вернуться к выбору типа условия без сохранения."
}
},
"compound_condition_runtime": {
"title": "Условие — Время работы",
"data": {
"trigger_runtime_hours": "Целевое время работы (часы)",
"trigger_on_states": "Активные состояния",
"go_back": "Назад"
},
"data_description": {
"trigger_runtime_hours": "Срабатывать после этого количества часов накопленного времени работы.",
"trigger_on_states": "Состояния датчика, считающиеся 'активными'. Оставьте пустым для значений по умолчанию.",
"go_back": "Вернуться к выбору типа условия без сохранения."
}
},
"compound_review": {
"title": "Просмотр составного триггера",
"description": "Настроено {condition_count} условие(й) с логикой {compound_logic}.",
"data": {
"compound_action": "Действие",
"go_back": "Назад"
},
"data_description": {
"go_back": "Вернуться к выбору логики без сохранения."
}
},
"manual": {
"title": "Ручное расписание",
"description": "У этой задачи нет автоматического расписания. Вы можете отметить ее как просроченную вручную.",
"data": {
"warning_days": "Дней предупреждения до срока",
"notes": "Примечания",
"go_back": "Назад"
},
"data_description": {
"warning_days": "Количество дней до наступления срока для показа предупреждения.",
"notes": "Дополнительные примечания или инструкции для этой задачи.",
"go_back": "Вернуться к созданию задачи без сохранения."
}
},
"reconfigure": {
"title": "Перенастроить {name}",
"description": "Обновите настройки для этого объекта обслуживания.",
"data": {
"name": "Название объекта",
"area_id": "Зона",
"manufacturer": "Производитель",
"model": "Модель",
"serial_number": "Серийный номер",
"documentation_url": "URL руководства / документации",
"notes": "Заметки",
"installation_date": "Дата установки",
"warranty_expiry": "Окончание гарантии"
},
"data_description": {
"name": "Название этого объекта обслуживания.",
"area_id": "Зона, где находится этот объект.",
"manufacturer": "Производитель этого объекта.",
"model": "Модель этого объекта.",
"serial_number": "Серийный номер этого объекта.",
"documentation_url": "Необязательная ссылка на PDF-руководство, страницу производителя или любой URL со справочной информацией об этом объекте.",
"notes": "Свободные заметки об объекте — номера деталей, процедуры, напоминания, и т.п.",
"installation_date": "Когда этот объект был установлен.",
"warranty_expiry": "Когда истекает гарантия производителя на этот объект."
}
}
},
"error": {
"name_exists": "Объект обслуживания с таким именем уже существует.",
"no_tasks": "Требуется хотя бы одна задача обслуживания.",
"invalid_entity": "Выбранная сущность не существует или не имеет числовых данных.",
"invalid_attribute": "Выбранный атрибут недоступен для этой сущности.",
"invalid_threshold": "Должен быть установлен хотя бы один порог (выше или ниже).",
"invalid_due_date": "Для разовых задач требуется срок.",
"invalid_interval": "Интервал должен быть положительным числом.",
"min_exceeds_max": "Минимальный интервал не должен превышать максимальный интервал.",
"invalid_notify_service": "Неверный формат сервиса уведомлений. Используйте 'notify.service_name' (например, notify.mobile_app_phone).",
"notify_service_not_found": "Этот сервис уведомлений не найден в Home Assistant. Пожалуйста, проверьте имя сервиса.",
"nfc_tag_duplicate": "Эта NFC-метка уже привязана к другой задаче."
},
"abort": {
"already_configured": "Этот объект обслуживания уже настроен.",
"global_already_exists": "Глобальные настройки уже настроены.",
"template_not_found": "Выбранный шаблон не найден.",
"missing_data": "Необходимые данные не были предоставлены.",
"reconfigure_successful": "Конфигурация успешно обновлена.",
"reconfigure_cancelled": "Перенастройка отменена."
}
},
"options": {
"step": {
"init": {
"title": "Опции обслуживания",
"description": "{object_info}",
"menu_options": {
"manage_tasks": "Управление задачами",
"add_task": "Добавить новую задачу",
"object_settings": "Настройки объекта",
"done": "Готово"
}
},
"global_init": {
"title": "Глобальные настройки",
"description": "Настройте глобальные параметры обслуживания.",
"menu_options": {
"general_settings": "Основные настройки",
"advanced_features": "Расширенные функции",
"panel_access": "Доступ к панели",
"budget_settings": "Настройки бюджета",
"manage_groups": "Управление группами",
"notification_settings": "Настройки уведомлений",
"notification_actions": "Интерактивные действия",
"test_notification": "Отправить тестовое уведомление",
"done": "Готово"
}
},
"advanced_features": {
"title": "Расширенные функции",
"description": "Выберите, какие расширенные функции показывать в интерфейсе. Отключение функции скрывает её из интерфейса, но не удаляет никакие данные.",
"data": {
"advanced_adaptive_visible": "Адаптивное планирование",
"advanced_predictions_visible": "Прогнозы датчиков",
"advanced_seasonal_visible": "Сезонные корректировки",
"advanced_environmental_visible": "Экологическая корреляция",
"advanced_budget_visible": "Отслеживание бюджета",
"advanced_groups_visible": "Группы",
"advanced_checklists_visible": "Контрольные списки",
"advanced_schedule_time_visible": "Планирование по времени"
},
"data_description": {
"advanced_adaptive_visible": "Показывать EWA, анализ Вейбулла и предложения интервалов для задач.",
"advanced_predictions_visible": "Показывать анализ деградации датчиков и графики прогноза порогов.",
"advanced_seasonal_visible": "Показывать графики сезонных факторов и месячные корректировки.",
"advanced_environmental_visible": "Показывать корректировки экологической корреляции (температура, влажность).",
"advanced_budget_visible": "Показывать ежемесячное/годовое отслеживание бюджета и оповещения.",
"advanced_groups_visible": "Показывать управление группами обслуживания.",
"advanced_checklists_visible": "Показывать контрольные списки задач для пошагового выполнения.",
"advanced_schedule_time_visible": "Позволяет задачам становиться просроченными в определённое время дня, а не в полночь."
}
},
"panel_access": {
"title": "Доступ к панели",
"description": "Администраторы всегда имеют полный доступ. Чтобы делегировать создание, редактирование и удаление определённым не-админ пользователям, включите параметр ниже и выберите их — остальные видят только Выполнить и Пропустить. Найдено не-админ пользователей: {user_count}.",
"data": {
"operator_write_enabled": "Разрешить выбранным пользователям создавать, редактировать и удалять",
"admin_panel_user_ids": "Пользователи с полным доступом к панели"
},
"data_description": {
"operator_write_enabled": "Выключено (по умолчанию): только администраторы могут изменять содержимое. Включено: выбранные ниже пользователи также получают полный доступ.",
"admin_panel_user_ids": "Выбранные пользователи видят полную панель; остальные видят только Выполнить и Пропустить."
}
},
"general_settings": {
"title": "Основные настройки",
"description": "Настройте базовые параметры для Ассистента обслуживания.",
"data": {
"default_warning_days": "Дней предупреждения до срока по умолчанию",
"notifications_enabled": "Включить уведомления",
"notify_service": "Сервис уведомлений",
"panel_enabled": "Показывать панель в боковой панели",
"panel_title": "Заголовок панели в боковом меню"
},
"data_description": {
"default_warning_days": "Количество дней до наступления срока выполнения задачи обслуживания, за которое показывать предупреждение.",
"notifications_enabled": "Отправлять уведомления, когда задачи обслуживания становятся просроченными или требуют внимания.",
"notify_service": "Сервис уведомлений для использования (например, notify.mobile_app_phone).",
"panel_enabled": "Показывать панель Ассистента обслуживания в боковой панели.",
"panel_title": "Собственное имя для пункта боковой панели. Оставьте пустым для значения «Maintenance». Помогает избежать путаницы со встроенной панелью обслуживания Home Assistant."
}
},
"notification_settings": {
"title": "Настройки уведомлений",
"description": "Настройте когда и как часто отправляются уведомления для каждого статуса.",
"data": {
"notify_due_soon_enabled": "Уведомлять о скором сроке",
"notify_due_soon_interval_hours": "Интервал напоминания о скором сроке (часы)",
"notify_overdue_enabled": "Уведомлять о просрочке",
"notify_overdue_interval_hours": "Интервал напоминания о просрочке (часы)",
"notify_triggered_enabled": "Уведомлять о срабатывании",
"notify_triggered_interval_hours": "Интервал напоминания о срабатывании (часы)",
"quiet_hours_enabled": "Включить тихие часы",
"quiet_hours_start": "Начало тихих часов",
"quiet_hours_end": "Конец тихих часов",
"max_notifications_per_day": "Максимум уведомлений в день",
"notification_bundling_enabled": "Группировать уведомления",
"notification_bundle_threshold": "Порог группировки",
"notification_title_style": "Стиль заголовка уведомления"
},
"data_description": {
"notify_due_soon_interval_hours": "Как часто повторять напоминание о скором сроке. Установите 0 для одиночного уведомления.",
"notify_overdue_interval_hours": "Как часто повторять напоминание о просрочке. Установите 0 для одиночного уведомления.",
"notify_triggered_interval_hours": "Как часто повторять уведомление о срабатывании. Установите 0 для одиночного уведомления.",
"quiet_hours_enabled": "Подавлять уведомления в тихие часы.",
"max_notifications_per_day": "Максимальное количество уведомлений в день. Установите 0 для неограниченного количества.",
"notification_bundling_enabled": "Отправлять одно сводное уведомление, когда несколько задач требуют внимания.",
"notification_bundle_threshold": "Минимальное количество задач для отправки группового уведомления.",
"notification_title_style": "Что отображается в ЗАГОЛОВКЕ уведомления. По умолчанию — текст по статусу (например, «Обслуживание просрочено!»). Имя объекта / задачи удобно, если телефон складывает уведомления в стопку."
}
},
"notification_actions": {
"title": "Интерактивные действия",
"description": "Настройте кнопки действий, показываемые в мобильных уведомлениях (требуется Companion App).",
"data": {
"action_complete_enabled": "Показывать кнопку 'Выполнить'",
"action_skip_enabled": "Показывать кнопку 'Пропустить'",
"action_snooze_enabled": "Показывать кнопку 'Отложить'",
"snooze_duration_hours": "Длительность откладывания (часы)"
},
"data_description": {
"action_complete_enabled": "Добавляет кнопку для отметки задачи как выполненной прямо из уведомления.",
"action_skip_enabled": "Добавляет кнопку для пропуска текущего цикла обслуживания из уведомления.",
"action_snooze_enabled": "Добавляет кнопку для откладывания напоминания.",
"snooze_duration_hours": "Как долго откладывать уведомления при нажатии кнопки откладывания."
}
},
"budget_settings": {
"title": "Настройки бюджета",
"description": "Установите ежемесячный и годовой бюджеты на обслуживание для отслеживания расходов.",
"data": {
"budget_currency": "Валюта",
"budget_monthly": "Месячный бюджет",
"budget_yearly": "Годовой бюджет",
"budget_alerts_enabled": "Включить оповещения о бюджете",
"budget_alert_threshold": "Порог оповещения (%)"
},
"data_description": {
"budget_currency": "Валюта, используемая для отображения бюджета и уведомлений.",
"budget_monthly": "Максимальные ежемесячные расходы на обслуживание. Установите 0 для отключения.",
"budget_yearly": "Максимальные годовые расходы на обслуживание. Установите 0 для отключения.",
"budget_alerts_enabled": "Отправлять уведомление, когда расходы превышают порог оповещения.",
"budget_alert_threshold": "Процент бюджета, при достижении которого отправлять оповещение."
}
},
"test_notification": {
"title": "Тестовое уведомление",
"description": "{result}"
},
"manage_groups": {
"title": "Управление группами",
"description": "Выберите группу для управления или создайте новую.",
"data": {
"selected_group": "Выберите группу"
}
},
"add_group": {
"title": "Добавить группу",
"description": "Создайте новую группу обслуживания для организации связанных задач.",
"data": {
"group_name": "Название группы",
"group_description": "Описание"
},
"data_description": {
"group_name": "Название для этой группы (например, 'Весеннее обслуживание').",
"group_description": "Необязательное описание для этой группы."
}
},
"manage_tasks": {
"title": "Управление задачами",
"description": "Выберите задачу для редактирования или удаления.",
"data": {
"selected_task": "Выберите задачу",
"go_back": "Назад"
}
},
"task_action": {
"title": "Действия с задачей",
"description": "Задача: {task_name} — выберите действие.\n\nБлижайшие даты: {next_dates}",
"menu_options": {
"edit_task": "Редактировать задачу",
"edit_trigger": "Редактировать триггер",
"remove_trigger": "Удалить триггер",
"edit_checklist": "Редактировать контрольный список",
"adaptive_scheduling": "Адаптивное планирование",
"delete_task": "Удалить задачу",
"manage_tasks": "Назад"
}
},
"edit_task": {
"title": "Редактировать задачу",
"description": "Редактировать настройки для **{task_name}**.",
"data": {
"name": "Название задачи",
"type": "Тип обслуживания",
"interval_days": "Интервал",
"interval_unit": "Единица интервала",
"warning_days": "Дней предупреждения до срока",
"due_date": "Срок",
"enabled": "Включено",
"notes": "Примечания",
"documentation_url": "URL документации",
"last_performed": "Последнее выполнение",
"responsible_user_id": "Ответственный пользователь",
"custom_icon": "Иконка задачи",
"nfc_tag_id": "ID NFC-метки",
"go_back": "Назад",
"interval_anchor": "Якорь интервала",
"reading_unit": "Единица показания (для задач снятия показаний, напр. кВт·ч)",
"season_months": "Сезонное окно (месяцы)",
"ends_count": "Заканчивается после (числа раз)",
"ends_until": "Заканчивается в дату"
},
"data_description": {
"name": "Описательное название для этой задачи (например, 'Очистка фильтра', 'Замена масла').",
"type": "Категория работ по обслуживанию.",
"interval_days": "Как часто повторяется это обслуживание, в сочетании с единицей интервала.",
"interval_unit": "Единица интервала: дни, недели, месяцы или годы. Месяцы и годы следуют календарю.",
"warning_days": "Количество дней до наступления срока для показа предупреждения.",
"due_date": "Дата, к которой должна быть выполнена эта разовая задача.",
"enabled": "Когда отключено, планирование и триггеры приостанавливаются. Задача не удаляется.",
"notes": "Дополнительные примечания или инструкции для этой задачи.",
"documentation_url": "Ссылка на внешнюю документацию или руководство для этой задачи.",
"last_performed": "Когда это обслуживание выполнялось в последний раз. Оставьте пустым, если никогда не выполнялось.",
"responsible_user_id": "Пользователь Home Assistant, ответственный за эту задачу.",
"custom_icon": "Необязательная пользовательская иконка для этой задачи (например, mdi:oil, mdi:filter-variant).",
"nfc_tag_id": "Привяжите NFC-метку к этой задаче. Сканирование метки автоматически отметит задачу как выполненную.",
"go_back": "Вернуться к действиям с задачей без сохранения.",
"interval_anchor": "Как рассчитывается следующая дата после завершения. 'Плановый' предотвращает дрейф расписания, привязываясь к исходной плановой дате.",
"season_months": "Срок только в выбранные месяцы; даты вне сезона переносятся на следующий активный месяц. Пусто = весь год.",
"ends_count": "Прекратить повтор после такого числа выполнений (конечная серия). Пусто = без ограничения.",
"ends_until": "Прекратить повтор, когда следующий срок выпал бы после этой даты."
}
},
"edit_checklist": {
"title": "Редактировать контрольный список",
"description": "Настройте шаги контрольного списка для {task_name}. Вводите один шаг на строку.",
"data": {
"checklist_text": "Шаги контрольного списка",
"go_back": "Назад"
},
"data_description": {
"checklist_text": "Введите каждый шаг контрольного списка на отдельной строке. Эти шаги будут показываться при выполнении задачи.",
"go_back": "Вернуться к действиям с задачей без сохранения."
}
},
"compound_logic": {
"title": "Составной триггер",
"description": "Выберите, как должны комбинироваться несколько условий.",
"data": {
"compound_logic": "Логика",
"go_back": "Назад"
},
"data_description": {
"compound_logic": "И = все условия должны сработать. ИЛИ = любое условие срабатывает."
}
},
"compound_condition_entity": {
"title": "Условие #{condition_num} — Сущность",
"description": "Выберите сущность для этого условия.",
"data": {
"trigger_entity": "Сущность",
"go_back": "Назад"
},
"data_description": {
"trigger_entity": "Сущность датчика для отслеживания для этого условия."
}
},
"compound_condition_type": {
"title": "Условие #{condition_num} — Тип",
"description": "Как это условие должно оценивать датчик?",
"data": {
"trigger_type": "Тип триггера",
"go_back": "Назад"
},
"data_description": {
"trigger_type": "Метод, используемый для определения, когда это условие срабатывает."
}
},
"compound_condition_threshold": {
"title": "Условие — Порог",
"data": {
"trigger_above": "Срабатывать при превышении",
"trigger_below": "Срабатывать при падении ниже",
"trigger_for_minutes": "Длительность (минуты)",
"go_back": "Назад"
},
"data_description": {
"trigger_above": "Срабатывать, когда значение превышает этот порог.",
"trigger_below": "Срабатывать, когда значение падает ниже этого порога.",
"trigger_for_minutes": "Значение должно оставаться за порогом в течение этой длительности."
}
},
"compound_condition_counter": {
"title": "Условие — Счетчик",
"data": {
"trigger_target_value": "Целевое значение",
"trigger_delta_mode": "Режим дельты",
"go_back": "Назад"
},
"data_description": {
"trigger_target_value": "Срабатывать, когда накопленное значение достигает этой цели.",
"trigger_delta_mode": "Считать изменения от базового уровня вместо абсолютного значения."
}
},
"compound_condition_state_change": {
"title": "Условие — Изменение состояния",
"data": {
"trigger_from_state": "Из состояния",
"trigger_to_state": "В состояние",
"trigger_target_changes": "Количество изменений",
"go_back": "Назад"
},
"data_description": {
"trigger_from_state": "Учитывать только переходы из этого состояния. Оставьте пустым для любого.",
"trigger_to_state": "Учитывать только переходы в это состояние. Оставьте пустым для любого.",
"trigger_target_changes": "Количество соответствующих изменений состояния перед срабатыванием."
}
},
"compound_condition_runtime": {
"title": "Условие — Время работы",
"data": {
"trigger_runtime_hours": "Целевое время работы (часы)",
"trigger_on_states": "Активные состояния",
"go_back": "Назад"
},
"data_description": {
"trigger_runtime_hours": "Срабатывать после этого количества часов накопленного времени работы.",
"trigger_on_states": "Состояния датчика, считающиеся 'активными'. Оставьте пустым для значений по умолчанию."
}
},
"compound_review": {
"title": "Просмотр составного триггера",
"description": "Настроено {condition_count} условие(й) с логикой {compound_logic}.",
"data": {
"compound_action": "Действие",
"go_back": "Назад"
}
},
"adaptive_scheduling": {
"title": "Адаптивное планирование",
"description": "Настройте адаптацию интервала для {task_name}. Система учится на ваших отзывах о выполнении, чтобы предлагать лучшие интервалы.",
"data": {
"adaptive_enabled": "Включить адаптивное планирование",
"ewa_alpha": "Скорость обучения (альфа)",
"min_interval_days": "Минимальный интервал (дни)",
"max_interval_days": "Максимальный интервал (дни)",
"seasonal_enabled": "Учитывать сезонность",
"sensor_prediction_enabled": "Включить прогнозы на основе датчиков",
"environmental_entity": "Экологический датчик (опционально)",
"go_back": "Назад"
},
"data_description": {
"adaptive_enabled": "Когда включено, система будет учиться на ваших отзывах и предлагать оптимальные интервалы обслуживания.",
"ewa_alpha": "Насколько быстро алгоритм адаптируется к новым данным. Выше = более отзывчивый, ниже = более стабильный.",
"min_interval_days": "Самый короткий интервал, который система когда-либо порекомендует.",
"max_interval_days": "Самый длинный интервал, который система когда-либо порекомендует.",
"seasonal_enabled": "Корректировать рекомендации на основе сезонных паттернов, изученных из вашей истории обслуживания.",
"sensor_prediction_enabled": "Анализировать тенденции датчиков, чтобы предсказать, когда будут достигнуты пороги, и предлагать более раннее обслуживание при необходимости.",
"environmental_entity": "Подключите датчик температуры, влажности или давления для корреляции условий окружающей среды с интервалами обслуживания.",
"go_back": "Вернуться к действиям с задачей без сохранения."
}
},
"delete_task": {
"title": "Удалить задачу",
"description": "Вы уверены, что хотите удалить задачу {task_name}? Это действие невозможно отменить.",
"data": {
"confirm": "Подтвердить удаление",
"go_back": "Назад"
}
},
"remove_trigger": {
"title": "Удалить триггер",
"description": "Удалить триггер из **{task_name}**?\n\n**Сущность:** {entity_ids}\n**Тип:** {trigger_type}\n**Конфигурация:** {config_details}\n\nЕсли все сущности будут удалены, расписание вернется к временному.",
"data": {
"entities_to_remove": "Сущности для удаления",
"confirm": "Подтвердить удаление",
"go_back": "Назад"
},
"data_description": {
"entities_to_remove": "Выберите, какие сущности удалить из этого триггера. Если удалены все, весь триггер будет удален.",
"go_back": "Вернуться к действиям с задачей без сохранения."
}
},
"trigger_summary": {
"title": "Текущий триггер",
"description": "Триггер для **{task_name}**:\n\n**Сущность:** {entity_ids}\n**Текущее состояние:** {current_states}\n**Тип:** {trigger_type} (атрибут: {attribute})\n**Конфигурация:** {config_details}",
"menu_options": {
"edit_trigger_proceed": "Редактировать триггер",
"task_action": "Назад"
}
},
"add_task": {
"title": "Добавить задачу обслуживания",
"description": "Настройте новую задачу обслуживания для этого объекта.",
"data": {
"name": "Название задачи",
"type": "Тип обслуживания",
"schedule_type": "Тип расписания",
"custom_icon": "Иконка задачи",
"go_back": "Назад",
"reading_unit": "Единица показания (для задач снятия показаний, напр. кВт·ч)"
},
"data_description": {
"name": "Описательное название для этой задачи (например, 'Очистка фильтра', 'Замена масла').",
"type": "Категория работ по обслуживанию.",
"schedule_type": "Как эта задача должна планироваться.",
"custom_icon": "Необязательная пользовательская иконка для этой задачи (например, mdi:oil, mdi:filter-variant).",
"go_back": "Вернуться в главное меню без сохранения."
}
},
"opt_time_based": {
"title": "Расписание на основе времени",
"description": "Настройте временной интервал для этой задачи.",
"data": {
"interval_days": "Интервал",
"interval_unit": "Единица интервала",
"last_performed": "Последнее выполнение",
"warning_days": "Дней предупреждения до срока",
"go_back": "Назад",
"interval_anchor": "Якорь интервала"
},
"data_description": {
"interval_days": "Как часто повторяется это обслуживание, в сочетании с единицей интервала.",
"interval_unit": "Единица интервала: дни, недели, месяцы или годы. Месяцы и годы следуют календарю.",
"last_performed": "Когда это обслуживание выполнялось в последний раз. Оставьте пустым, если никогда не выполнялось.",
"warning_days": "Количество дней до наступления срока для показа предупреждения.",
"go_back": "Вернуться в главное меню без сохранения.",
"interval_anchor": "Как рассчитывается следующая дата после завершения. 'Плановый' предотвращает дрейф расписания, привязываясь к исходной плановой дате."
}
},
"opt_one_time": {
"title": "Разовая задача",
"description": "Настройте одну неповторяющуюся задачу обслуживания. После выполнения она архивируется.",
"data": {
"due_date": "Срок",
"warning_days": "Дней предупреждения до срока",
"go_back": "Назад"
},
"data_description": {
"due_date": "Дата, к которой должна быть выполнена эта разовая задача.",
"warning_days": "Количество дней до наступления срока для показа предупреждения.",
"go_back": "Вернуться в главное меню без сохранения."
}
},
"opt_calendar": {
"title": "Расписание по календарю",
"description": "Настройте повторение на основе календаря (дни недели, n-й день недели месяца или день месяца).",
"data": {
"weekdays": "В эти дни недели",
"nth": "Какое вхождение",
"weekday": "День недели",
"day": "День месяца",
"last_performed": "Последнее выполнение",
"warning_days": "Дней предупреждения до срока",
"go_back": "Назад",
"last_day": "Последний день месяца",
"business": "Только рабочие дни",
"offset": "Сдвиг (дни)"
},
"data_description": {
"weekdays": "Задача повторяется в каждый выбранный день недели.",
"nth": "Какое вхождение в месяце (например, 1-е или Последнее).",
"weekday": "День недели для правила n-го дня недели (например, суббота).",
"day": "День месяца (1-31; ограничивается длиной месяца).",
"last_performed": "Когда это обслуживание выполнялось в последний раз. Оставьте пустым, если никогда.",
"warning_days": "Количество дней до наступления срока для показа предупреждения.",
"go_back": "Вернуться в главное меню без сохранения.",
"last_day": "Заменяет номер дня: срок — последний день месяца.",
"business": "Переносит дату с выходных на предыдущую пятницу (например, последний рабочий день).",
"offset": "Сдвигает вычисленную дату на ±N дней (например, -2 = за два дня)."
}
},
"opt_manual": {
"title": "Ручное расписание",
"description": "У этой задачи нет автоматического расписания. Вы можете отметить ее как просроченную вручную.",
"data": {
"warning_days": "Дней предупреждения до срока",
"notes": "Примечания",
"go_back": "Назад"
},
"data_description": {
"warning_days": "Количество дней до наступления срока для показа предупреждения.",
"notes": "Дополнительные примечания или инструкции для этой задачи.",
"go_back": "Вернуться в главное меню без сохранения."
}
},
"opt_sensor_select": {
"title": "Выберите датчик-триггер",
"description": "Выберите сущность Home Assistant для отслеживания.",
"data": {
"trigger_entity": "Сущность для отслеживания",
"go_back": "Назад"
},
"data_description": {
"trigger_entity": "Выберите сущность датчика, которая должна запускать эту задачу обслуживания."
}
},
"opt_sensor_attribute": {
"title": "Выберите атрибут",
"description": "Выберите, какое значение отслеживать от {entity_id}. Текущее состояние: {current_state} {unit}",
"data": {
"trigger_attribute": "Значение для отслеживания",
"go_back": "Назад"
},
"data_description": {
"trigger_attribute": "Выберите состояние сущности или конкретный атрибут для отслеживания."
}
},
"opt_trigger_type": {
"title": "Тип триггера",
"description": "Как значение датчика должно запускать обслуживание?",
"data": {
"trigger_type": "Тип триггера",
"go_back": "Назад"
},
"data_description": {
"trigger_type": "Порог: срабатывает, когда значение превышает лимиты. Счетчик: срабатывает после накопления целевого значения. Изменение состояния: срабатывает после определенного количества переходов состояния."
}
},
"opt_trigger_threshold": {
"title": "Настройка порога",
"description": "Установите пороговые значения для **{entity_id}** ({attribute}).\nТекущее: **{current_value} {unit}** | Среднее: {average} | Диапазон: {minimum}{maximum} ({data_period} дн.)\nРекомендуемое выше: {suggested_above} | Рекомендуемое ниже: {suggested_below}",
"data": {
"trigger_above": "Срабатывать при превышении",
"trigger_below": "Срабатывать при падении ниже",
"trigger_for_minutes": "В течение (минут)",
"interval_days": "Защитный интервал",
"interval_unit": "Единица интервала",
"warning_days": "Дней предупреждения до срока",
"go_back": "Назад"
},
"data_description": {
"trigger_above": "Запускать обслуживание, когда значение превышает этот порог.",
"trigger_below": "Запускать обслуживание, когда значение падает ниже этого порога.",
"trigger_for_minutes": "Значение должно превышать порог в течение этого количества минут перед запуском.",
"interval_days": "Дополнительный временной защитный интервал в дополнение к триггеру датчика.",
"interval_unit": "Единица интервала: дни, недели, месяцы или годы. Месяцы и годы следуют календарю.",
"warning_days": "Количество дней до наступления срока для показа предупреждения."
}
},
"opt_trigger_counter": {
"title": "Настройка счетчика",
"description": "Установите целевое значение счетчика для {entity_id} ({attribute}). Текущее: {current_value} {unit}.",
"data": {
"trigger_target_value": "Целевое значение",
"trigger_delta_mode": "Режим дельты (учитывать изменения, не абсолютное значение)",
"interval_days": "Защитный интервал",
"interval_unit": "Единица интервала",
"warning_days": "Дней предупреждения до срока",
"go_back": "Назад"
},
"data_description": {
"trigger_target_value": "Запускать обслуживание при достижении этого накопленного значения.",
"trigger_delta_mode": "Если включено, считает разницу от базового уровня вместо абсолютного значения.",
"interval_days": "Дополнительный временной защитный интервал в дополнение к триггеру счетчика.",
"interval_unit": "Единица интервала: дни, недели, месяцы или годы. Месяцы и годы следуют календарю.",
"warning_days": "Количество дней до наступления срока для показа предупреждения."
}
},
"opt_trigger_state_change": {
"title": "Настройка изменения состояния",
"description": "Подсчет переходов состояния {entity_id}.",
"data": {
"trigger_from_state": "Из состояния (опционально)",
"trigger_to_state": "В состояние (опционально)",
"trigger_target_changes": "Количество изменений для срабатывания",
"interval_days": "Защитный интервал",
"interval_unit": "Единица интервала",
"warning_days": "Дней предупреждения до срока",
"go_back": "Назад"
},
"data_description": {
"trigger_from_state": "Учитывать только переходы из этого состояния. Оставьте пустым для любого.",
"trigger_to_state": "Учитывать только переходы в это состояние. Оставьте пустым для любого.",
"trigger_target_changes": "Количество соответствующих изменений состояния перед запуском обслуживания.",
"interval_days": "Дополнительный временной защитный интервал в дополнение к триггеру изменения состояния.",
"interval_unit": "Единица интервала: дни, недели, месяцы или годы. Месяцы и годы следуют календарю.",
"warning_days": "Количество дней до наступления срока для показа предупреждения."
}
},
"opt_trigger_runtime": {
"title": "Настройка времени работы",
"description": "Отслеживайте накопленное время работы {entity_id}.",
"data": {
"trigger_runtime_hours": "Целевое время работы (часы)",
"trigger_on_states": "Активные состояния (через запятую)",
"interval_days": "Защитный интервал",
"interval_unit": "Единица интервала",
"warning_days": "Дней предупреждения до срока",
"go_back": "Назад"
},
"data_description": {
"trigger_runtime_hours": "Запускать обслуживание после этого количества часов накопленного времени работы.",
"trigger_on_states": "Какие состояния датчика считать 'активными'. Оставьте пустым для значений по умолчанию: on, 1, true. Пример: in_use, running",
"interval_days": "Дополнительный временной защитный интервал в дополнение к триггеру времени работы.",
"interval_unit": "Единица интервала: дни, недели, месяцы или годы. Месяцы и годы следуют календарю.",
"warning_days": "Количество дней до наступления срока для показа предупреждения."
}
},
"object_settings": {
"title": "Настройки объекта",
"description": "Отредактируйте детали объекта.",
"data": {
"name": "Название объекта",
"manufacturer": "Производитель",
"model": "Модель",
"serial_number": "Серийный номер",
"documentation_url": "URL руководства / документации",
"notes": "Заметки",
"area_id": "Зона",
"installation_date": "Дата установки",
"warranty_expiry": "Окончание гарантии",
"go_back": "Назад"
},
"data_description": {
"name": "Уникальное имя для этого объекта обслуживания (например, 'Насос бассейна', 'Автомобиль').",
"manufacturer": "Производитель объекта.",
"model": "Название или номер модели.",
"serial_number": "Серийный номер объекта.",
"documentation_url": "Необязательная ссылка на PDF-руководство, страницу производителя или любой URL со справочной информацией об этом объекте.",
"notes": "Свободные заметки об объекте — номера деталей, процедуры, напоминания, и т.п.",
"area_id": "Зона в вашем доме, где находится этот объект.",
"installation_date": "Когда этот объект был установлен или куплен.",
"warranty_expiry": "Когда истекает гарантия производителя на этот объект.",
"go_back": "Вернуться в главное меню без сохранения."
}
}
}
},
"entity": {
"button": {
"button_complete": {
"name": "{task_name} Выполнить"
},
"button_skip": {
"name": "{task_name} Пропустить"
},
"button_reset": {
"name": "{task_name} Сбросить"
}
},
"sensor": {
"maintenance_task": {
"name": "{task_name}",
"state": {
"ok": "ОК",
"due_soon": "Скоро наступит",
"overdue": "Просрочено",
"triggered": "Сработал",
"archived": "В архиве",
"paused": "Приостановлено"
},
"state_attributes": {
"maintenance_type": {
"name": "Тип обслуживания",
"state": {
"cleaning": "Очистка",
"inspection": "Осмотр",
"replacement": "Замена",
"calibration": "Калибровка",
"service": "Обслуживание",
"reading": "Показания",
"custom": "Пользовательский"
}
},
"schedule_type": {
"name": "Тип расписания",
"state": {
"time_based": "На основе времени",
"sensor_based": "На основе датчика",
"one_time": "Разовая",
"manual": "Ручной"
}
},
"interval_days": {
"name": "Интервал"
},
"interval_unit": {
"name": "Единица интервала"
},
"warning_days": {
"name": "Дней предупреждения"
},
"last_performed": {
"name": "Последнее выполнение"
},
"next_due": {
"name": "Следующий срок"
},
"days_until_due": {
"name": "Дней до срока"
},
"parent_object": {
"name": "Родительский объект"
},
"times_performed": {
"name": "Количество выполнений"
},
"total_cost": {
"name": "Общая стоимость"
},
"average_duration": {
"name": "Средняя длительность (мин)"
},
"notes": {
"name": "Примечания"
},
"documentation_url": {
"name": "URL документации"
},
"trigger_entity": {
"name": "Сущность-триггер"
},
"trigger_attribute": {
"name": "Атрибут триггера"
},
"trigger_type": {
"name": "Тип триггера",
"state": {
"threshold": "Порог",
"counter": "Счетчик",
"state_change": "Изменение состояния",
"runtime": "Время работы",
"compound": "Составной"
}
},
"trigger_active": {
"name": "Триггер активен"
},
"trigger_current_value": {
"name": "Текущее значение триггера"
},
"trigger_entity_state": {
"name": "Состояние сущности-триггера",
"state": {
"available": "Доступно",
"unavailable": "Недоступно",
"missing": "Отсутствует",
"startup": "Запуск"
}
},
"trigger_above": {
"name": "Срабатывать выше"
},
"trigger_below": {
"name": "Срабатывать ниже"
},
"trigger_for_minutes": {
"name": "Срабатывать в течение (минут)"
},
"trigger_target_value": {
"name": "Целевое значение триггера"
},
"trigger_delta_mode": {
"name": "Режим дельты триггера"
},
"trigger_baseline_value": {
"name": "Базовое значение триггера"
},
"trigger_current_delta": {
"name": "Текущая дельта триггера"
},
"trigger_from_state": {
"name": "Триггер из состояния"
},
"trigger_to_state": {
"name": "Триггер в состояние"
},
"trigger_target_changes": {
"name": "Целевое количество изменений триггера"
},
"trigger_change_count": {
"name": "Количество изменений триггера"
},
"trigger_runtime_hours": {
"name": "Целевое время работы (часы)"
},
"trigger_accumulated_hours": {
"name": "Накопленное время работы (часы)"
},
"trigger_remaining_hours": {
"name": "Оставшееся время работы (часы)"
},
"last_entry": {
"name": "Последняя запись"
},
"suggested_interval": {
"name": "Рекомендуемый интервал"
},
"interval_confidence": {
"name": "Уверенность в интервале",
"state": {
"low": "Низкая",
"medium": "Средняя",
"high": "Высокая"
}
},
"adaptive_scheduling_enabled": {
"name": "Адаптивное планирование включено"
},
"seasonal_factor": {
"name": "Сезонный фактор"
},
"seasonal_reason": {
"name": "Причина сезонности",
"state": {
"learned": "Выучено",
"manual": "Ручной"
}
},
"degradation_rate": {
"name": "Скорость деградации"
},
"degradation_trend": {
"name": "Тренд деградации",
"state": {
"rising": "Растущий",
"falling": "Падающий",
"stable": "Стабильный",
"insufficient_data": "Недостаточно данных"
}
},
"days_until_threshold": {
"name": "Дней до порога"
},
"threshold_prediction_confidence": {
"name": "Уверенность прогноза",
"state": {
"low": "Низкая",
"medium": "Средняя",
"high": "Высокая"
}
},
"environmental_factor": {
"name": "Экологический фактор"
},
"environmental_entity": {
"name": "Экологическая сущность"
},
"weibull_beta": {
"name": "Форма Вейбулла (β)"
},
"weibull_eta": {
"name": "Масштаб Вейбулла (η)"
},
"weibull_r_squared": {
"name": "Вейбулл R²"
},
"weibull_beta_interpretation": {
"name": "Шаблон отказов",
"state": {
"early_failures": "Ранние отказы",
"random_failures": "Случайные отказы",
"wear_out": "Износ",
"highly_predictable": "Высокопредсказуемый"
}
},
"confidence_interval_low": {
"name": "Доверительный интервал (нижний)"
},
"confidence_interval_high": {
"name": "Доверительный интервал (верхний)"
},
"interval_anchor": {
"name": "Якорь интервала",
"state": {
"completion": "От завершения",
"planned": "От плановой даты"
}
},
"due_date": {
"name": "Срок"
}
}
},
"summary_overdue": {
"name": "Просрочено"
},
"summary_due_soon": {
"name": "Скоро наступит"
},
"summary_triggered": {
"name": "Сработал"
},
"summary_needs_attention": {
"name": "Требует внимания"
},
"summary_ok": {
"name": "ОК"
},
"document_storage": {
"name": "Хранилище документов"
},
"summary_total_tasks": {
"name": "Всего задач"
},
"next_due": {
"name": "{task_name} Следующий срок"
},
"days_until_due": {
"name": "{task_name} Дней до срока"
},
"parts_to_reorder": {
"name": "Детали к дозаказу"
},
"batteries_to_replace": {
"name": "Батареи к замене"
}
},
"calendar": {
"maintenance_schedule": {
"name": "График обслуживания"
}
},
"binary_sensor": {
"maintenance_task_due": {
"name": "{task_name} просрочено",
"state_attributes": {
"maintenance_status": {
"name": "Статус обслуживания",
"state": {
"ok": "ОК",
"due_soon": "Скоро наступит",
"overdue": "Просрочено",
"triggered": "Сработал",
"archived": "В архиве"
}
},
"days_until_due": {
"name": "Дней до срока"
},
"next_due": {
"name": "Следующий срок"
},
"parent_object": {
"name": "Родительский объект"
}
}
}
},
"todo": {
"maintenance_todo": {
"name": "Обслуживание"
}
}
},
"selector": {
"maintenance_type": {
"options": {
"cleaning": "Очистка",
"inspection": "Осмотр",
"replacement": "Замена",
"calibration": "Калибровка",
"service": "Обслуживание",
"reading": "Показания",
"custom": "Пользовательский"
}
},
"schedule_type": {
"options": {
"time_based": "На основе времени",
"weekdays": "Дни недели",
"nth_weekday": "N-й день недели месяца",
"day_of_month": "День месяца",
"sensor_based": "На основе датчика",
"one_time": "Разовая",
"manual": "Ручной"
}
},
"interval_unit": {
"options": {
"days": "Дни",
"weeks": "Недели",
"months": "Месяцы",
"years": "Годы"
}
},
"trigger_type": {
"options": {
"threshold": "Порог",
"counter": "Счетчик",
"state_change": "Изменение состояния",
"runtime": "Время работы",
"compound": "Составной (Несколько условий)"
}
},
"compound_logic": {
"options": {
"and": "И (все условия должны сработать)",
"or": "ИЛИ (любое условие срабатывает)"
}
},
"entity_logic": {
"options": {
"any": "Любая сущность срабатывает",
"all": "Все сущности должны сработать"
}
},
"notification_title_style": {
"options": {
"default": "По умолчанию (заголовок по статусу)",
"object_name": "Имя объекта как заголовок",
"task_name": "Имя задачи как заголовок"
}
}
},
"services": {
"complete": {
"name": "Завершить обслуживание",
"description": "Отметить задачу обслуживания как выполненную.",
"fields": {
"entity_id": {
"name": "Сущность",
"description": "Сущность датчика обслуживания для завершения."
},
"notes": {
"name": "Примечания",
"description": "Необязательные примечания о выполненном обслуживании."
},
"cost": {
"name": "Стоимость",
"description": "Стоимость выполненного обслуживания."
},
"duration": {
"name": "Длительность",
"description": "Длительность обслуживания в минутах."
},
"reading_value": {
"name": "Показание",
"description": "Записанное значение для задач снятия показаний (показание счётчика, проверка уровня)."
}
}
},
"reset": {
"name": "Сбросить обслуживание",
"description": "Сбросить дату последнего выполнения задачи обслуживания.",
"fields": {
"entity_id": {
"name": "Сущность",
"description": "Сущность датчика обслуживания для сброса."
},
"date": {
"name": "Дата",
"description": "Дата, которую установить как последнее выполнение. По умолчанию сегодня."
}
}
},
"skip": {
"name": "Пропустить обслуживание",
"description": "Пропустить текущий цикл обслуживания.",
"fields": {
"entity_id": {
"name": "Сущность",
"description": "Сущность датчика обслуживания для пропуска."
},
"reason": {
"name": "Причина",
"description": "Необязательная причина пропуска обслуживания."
}
}
},
"export_data": {
"name": "Экспорт данных",
"description": "Экспортировать все данные обслуживания в формате JSON или YAML.",
"fields": {
"format": {
"name": "Формат",
"description": "Выходной формат для экспортируемых данных (json или yaml)."
},
"include_history": {
"name": "Включить историю",
"description": "Включать ли записи истории задач в экспорт."
}
}
},
"add_object": {
"name": "Добавить объект",
"description": "Создать новый объект обслуживания (устройство). Возвращает новый entry_id.",
"fields": {
"name": {
"name": "Название",
"description": "Название объекта/устройства."
},
"area_id": {
"name": "Зона",
"description": "Зона, к которой привязать устройство."
},
"manufacturer": {
"name": "Производитель"
},
"model": {
"name": "Модель"
},
"serial_number": {
"name": "Серийный номер"
},
"installation_date": {
"name": "Дата установки"
},
"warranty_expiry": {
"name": "Окончание гарантии",
"description": "Дата окончания гарантии (для учёта активов и напоминаний)."
},
"documentation_url": {
"name": "URL документации",
"description": "Ссылка на инструкцию или страницу производителя (только http/https)."
},
"notes": {
"name": "Заметки"
}
}
},
"add_task": {
"name": "Добавить задачу",
"description": "Добавить задачу обслуживания к существующему объекту. Возвращает новый task_id.",
"fields": {
"entry_id": {
"name": "Объект",
"description": "Объект обслуживания, к которому добавить задачу."
},
"name": {
"name": "Название",
"description": "Название задачи."
},
"task_type": {
"name": "Тип задачи",
"description": "Свободная категория (например, inspection, service, custom)."
},
"schedule_type": {
"name": "Тип расписания",
"description": "time_based (интервал) или sensor_based. По умолчанию: time_based."
},
"interval_days": {
"name": "Интервал",
"description": "Длина интервала между выполнениями (для задач по времени), в сочетании с interval_unit."
},
"interval_unit": {
"name": "Единица интервала",
"description": "Единица интервала: days, weeks, months или years. По умолчанию: days."
},
"due_date": {
"name": "Срок",
"description": "Срок (YYYY-MM-DD) для одноразовой задачи (schedule_type one_time)."
},
"schedule": {
"name": "Календарное расписание",
"description": "Вложенное повторение для календарных типов, напр. kind=nth_weekday, nth=1, weekday=5 для 1-й субботы (weekday 0=Пн ... 6=Вс), kind=weekdays, weekdays=[0, 3] для Пн и Чт, или kind=day_of_month, day=15. Имеет приоритет над interval_days / schedule_type."
},
"warning_days": {
"name": "Предупреждение (дни)",
"description": "За сколько дней до срока задача попадает в окно «скоро срок»."
},
"enabled": {
"name": "Включено"
},
"notes": {
"name": "Заметки"
}
}
},
"update_task": {
"name": "Обновить задачу",
"description": "Обновить основные поля существующей задачи обслуживания. Изменяются только переданные поля.",
"fields": {
"entry_id": {
"name": "Объект",
"description": "Объект обслуживания, к которому относится задача."
},
"task_id": {
"name": "ID задачи",
"description": "Идентификатор задачи для обновления (см. list_tasks)."
},
"name": {
"name": "Название",
"description": "Новое название задачи."
},
"task_type": {
"name": "Тип задачи",
"description": "Категория (cleaning, inspection, replacement, calibration, service, reading, custom)."
},
"schedule_type": {
"name": "Тип расписания",
"description": "time_based (интервал), sensor_based, one_time или manual."
},
"interval_days": {
"name": "Интервал",
"description": "Длина интервала между выполнениями, в сочетании с interval_unit."
},
"interval_unit": {
"name": "Единица интервала",
"description": "days, weeks, months или years."
},
"due_date": {
"name": "Срок",
"description": "Срок для одноразовых задач (YYYY-MM-DD)."
},
"schedule": {
"name": "Расписание (календарное повторение)",
"description": "Вложенный объект повторения для календарных типов, напр. kind=day_of_month, day=-1, business=true. Имеет приоритет над плоскими полями."
},
"warning_days": {
"name": "Дней предупреждения",
"description": "За сколько дней до срока задача переходит в состояние «скоро срок»."
},
"enabled": {
"name": "Включено",
"description": "Активна ли задача."
},
"notes": {
"name": "Заметки",
"description": "Произвольные заметки к задаче."
},
"priority": {
"name": "Приоритет",
"description": "low, normal или high."
},
"labels": {
"name": "Метки",
"description": "Список меток для фильтрации и отчётов."
}
}
},
"delete_task": {
"name": "Удалить задачу",
"description": "Удалить задачу обслуживания вместе с её историей. Действие необратимо - вместо этого рассмотрите архивирование через панель.",
"fields": {
"entry_id": {
"name": "Объект",
"description": "Объект обслуживания, к которому относится задача."
},
"task_id": {
"name": "ID задачи",
"description": "Идентификатор задачи для удаления (см. list_tasks)."
}
}
},
"list_tasks": {
"name": "Список задач",
"description": "Возвращает снимок активных задач обслуживания (id, название, статус, следующий срок) для автоматизаций, скриптов и голоса. Поддерживает фильтрацию по объекту и статусу.",
"fields": {
"entry_id": {
"name": "Объект",
"description": "Возвращать только задачи этого объекта обслуживания."
},
"status": {
"name": "Статус",
"description": "Возвращать только задачи с этим статусом."
}
}
}
},
"issues": {
"document_storage_issues": {
"title": "Хранилище документов требует очистки",
"fix_flow": {
"step": {
"init": {
"title": "Освободить хранилище документов",
"description": "Maintenance Supporter обнаружил файлы без ссылок и/или мёртвые записи в хранилище документов — обычно это последствие сбоя, внешнего удаления файла или частичного восстановления.\n\nНажмите **Отправить**, чтобы освободить место: файлы без ссылок и устаревшие файлы удаляются, а мёртвые записи документов убираются. Файлы, на которые всё ещё ссылается документ, никогда не затрагиваются.\n\n(Чтобы закрыть без очистки, используйте кнопку **Игнорировать** в Home Assistant на странице «Устранение неполадок».)"
}
}
}
},
"missing_trigger_entity": {
"title": "Датчик-триггер не найден: {task_name}",
"fix_flow": {
"step": {
"init": {
"title": "Отсутствует сущность-триггер",
"description": "Сущность датчика `{entity_id}`, настроенная как триггер для задачи \"{task_name}\" объекта \"{object_name}\", больше недоступна.\n\nВыберите, как решить эту проблему:",
"menu_options": {
"replace_entity": "Заменить на другую сущность",
"remove_trigger": "Удалить триггер датчика",
"dismiss": "Отклонить (появится снова)"
}
},
"replace_entity": {
"title": "Заменить сущность-триггер",
"description": "Выберите новую сущность для замены `{entity_id}` в качестве триггера для задачи \"{task_name}\" объекта \"{object_name}\".",
"data": {
"new_entity_id": "Новая сущность-триггер"
},
"data_description": {
"new_entity_id": "Выберите новую сущность датчика для использования в качестве триггера."
}
},
"remove_trigger": {
"title": "Удалить триггер датчика",
"description": "Это удалит триггер датчика из задачи \"{task_name}\" объекта \"{object_name}\" и преобразует расписание в основанное на времени или ручное. История обслуживания будет сохранена.\n\nПредыдущая сущность-триггер: `{entity_id}`"
}
}
}
},
"orphan_admin_panel_user": {
"title": "Пользователь из списка доступа к панели больше не существует",
"fix_flow": {
"step": {
"init": {
"title": "Беспризорный пользователь в списке доступа к панели",
"description": "Пользователь `{user_id}…` находится в списке доступа к панели Maintenance Supporter, но больше не существует в Home Assistant. Вероятно, пользователь был удалён.\n\nНажмите **Отправить**, чтобы удалить пользователя из списка. (Чтобы оставить проблему без решения, используйте кнопку **Игнорировать** на странице «Ремонт» Home Assistant.)"
}
}
}
},
"stale_action_entity": {
"title": "Действие завершения ссылается на удалённую сущность",
"fix_flow": {
"step": {
"init": {
"title": "Действие завершения: {stale_entity} больше не существует",
"description": "Задача **{task_name}** имеет настроенное `on_complete_action` для вызова сервиса на `{stale_entity}`, но эта сущность больше не зарегистрирована в Home Assistant.\n\nВыбери как починить:",
"menu_options": {
"replace_entity": "Заменить другой сущностью",
"remove_action": "Удалить действие завершения"
}
},
"replace_entity": {
"title": "Заменить целевую сущность",
"description": "Выбери сущность для использования вместо `{stale_entity}` для задачи **{task_name}**.",
"data": {
"new_entity": "Новая целевая сущность"
}
},
"remove_action": {
"title": "Удалить действие завершения",
"description": "Полностью удаляет `on_complete_action` из задачи **{task_name}**. Сама задача не затрагивается — удаляется только вызов сервиса при завершении."
}
}
}
},
"notify_service_missing": {
"title": "Служба уведомлений `{service}` не найдена",
"description": "Maintenance Supporter настроен отправлять уведомления через `{service}`, но эта служба сейчас не существует в Home Assistant, поэтому напоминания молча не отправляются.\n\nОбычно это значит, что служба была переименована или интеграция, предоставляющая её (мобильное приложение, группа уведомлений, …), была удалена. Чтобы исправить: восстановите эту службу или откройте **Настройки → Устройства и службы → Maintenance Supporter → Настроить → Общие настройки** и выберите корректную службу `notify.*`.\n\nПримечание: проверяется только сама настроенная служба. Если уведомления приходят на одни устройства, но не на другие, вероятно, неправильно настроен участник *внутри* вашей группы уведомлений — здесь это не видно; проверьте **системный журнал** Home Assistant (Настройки → Система → Журналы)."
},
"missing_global_entry": {
"title": "Отсутствует глобальная конфигурация Maintenance Supporter",
"fix_flow": {
"step": {
"init": {
"title": "Восстановить глобальную конфигурацию",
"description": "Ваши объекты обслуживания всё ещё существуют, но глобальная запись \"Maintenance Supporter\" была удалена — поэтому сводные датчики, боковая панель и счётчики панели отсутствуют, а показатели KPI показывают \"unknown\".\n\nНажмите **Отправить**, чтобы заново создать глобальную конфигурацию с настройками по умолчанию. Ваши объекты и задачи останутся нетронутыми."
}
}
}
},
"shared_parts_moved": {
"title": "Общие запчасти перенесены на {new_owner}",
"description": "Несколько объектов обслуживания использовали общий запас запчастей, который хранился на объекте **{deleted_object}**, и этот объект только что удалён. Чтобы остальные объекты не ссылались на запас, которого больше нет, Maintenance Supporter перенёс общие запчасти ({parts}) вместе с текущим остатком на **{new_owner}** и переключил на них связи задач всех прочих объектов. Ничего не потеряно.\n\n**{new_owner}** выбран автоматически: это самый старый объект, использовавший этот запас. Если другой объект подходит лучше, перенесите запчасти туда на панели обслуживания.\n\nБольше ничего делать не нужно — закройте это уведомление, когда всё проверите."
},
"broken_part_link": {
"title": "Нерабочие ссылки на запчасти у {object_name}",
"description": "Задача объекта **{object_name}** только что выполнена, но {count} ссылок на запчасти не удалось разрешить — самой запчасти или объекта, которому она принадлежит, больше нет.\n\nСамо выполнение записано, так что работа не потеряна. Не произошло списание: за это выполнение с остатков запчастей ничего не списано.\n\nЧтобы исправить: откройте задачу на панели обслуживания и удалите устаревшие ссылки на запчасти либо переназначьте их на те запчасти, которыми вы пользуетесь сейчас. Закройте это уведомление, когда закончите."
}
},
"exceptions": {
"no_coordinator_for_entity": {
"message": "Не найден координатор обслуживания для сущности {entity_id}."
},
"no_task_for_entity": {
"message": "Не найдена задача обслуживания для сущности {entity_id}."
},
"completion_details_required": {
"message": "«{task_name}» требует эти данные при завершении: {fields}. Завершите задачу на панели обслуживания или на карточке, чтобы их указать."
}
},
"triggers": {
"task_became_overdue": {
"name": "Задача обслуживания просрочена",
"description": "Срабатывает, когда статус задачи обслуживания меняется на просроченную.",
"fields": {
"behavior": {
"name": "Поведение"
},
"for": {
"name": "В течение"
}
}
},
"task_became_due_soon": {
"name": "Задача обслуживания скоро наступит",
"description": "Срабатывает, когда задача обслуживания входит в окно предупреждения.",
"fields": {
"behavior": {
"name": "Поведение"
},
"for": {
"name": "В течение"
}
}
},
"sensor_trigger_activated": {
"name": "Сработал сенсорный триггер",
"description": "Срабатывает, когда активируется задача обслуживания на основе датчиков.",
"fields": {
"behavior": {
"name": "Поведение"
},
"for": {
"name": "В течение"
}
}
},
"task_became_ok": {
"name": "Задача обслуживания снова в порядке",
"description": "Срабатывает, когда задача обслуживания больше не требует внимания.",
"fields": {
"behavior": {
"name": "Поведение"
},
"for": {
"name": "В течение"
}
}
}
},
"conditions": {
"task_is_overdue": {
"name": "Задача обслуживания просрочена",
"description": "Проверяет, просрочена ли задача обслуживания.",
"fields": {
"behavior": {
"name": "Поведение"
},
"for": {
"name": "В течение"
}
}
},
"task_is_due_soon": {
"name": "Задача обслуживания скоро наступит",
"description": "Проверяет, находится ли задача обслуживания в окне предупреждения.",
"fields": {
"behavior": {
"name": "Поведение"
},
"for": {
"name": "В течение"
}
}
},
"task_is_triggered": {
"name": "Сенсорный триггер активен",
"description": "Проверяет, активирована ли задача обслуживания на основе датчиков.",
"fields": {
"behavior": {
"name": "Поведение"
},
"for": {
"name": "В течение"
}
}
},
"task_needs_attention": {
"name": "Задача обслуживания требует внимания",
"description": "Проверяет, просрочена или активирована задача обслуживания.",
"fields": {
"behavior": {
"name": "Поведение"
},
"for": {
"name": "В течение"
}
}
}
}
}