Загрузить файлы в «custom_components/motion_recorder/translations»

This commit is contained in:
2026-07-03 15:20:49 +03:00
parent efb5996414
commit 5bcccc1c53
2 changed files with 182 additions and 0 deletions
@@ -0,0 +1,91 @@
{
"config": {
"step": {
"user": {
"title": "Motion Recorder Settings",
"description": "Configure motion-based camera recording integration",
"data": {
"name": "Integration Name",
"camera_entity": "Camera to record",
"save_path": "Save path (relative to media)",
"filename_template": "Filename format",
"max_duration": "Maximum recording duration (seconds)",
"prebuffer": "Prebuffer (seconds, 0 = disabled)",
"motion_sensors": "Motion sensors",
"motion_filter": "Motion detection filter (seconds, 0 = no filter)",
"off_delay": "Delay after motion stops (seconds, 0 = no delay)",
"retention_days": "Keep recordings (days, 0 = never delete)",
"force_stop_sensor": "Force stop sensor (binary_sensor, switch, input_boolean)",
"force_stop_state": "Stop state value",
"log_level": "Log level"
},
"data_description": {
"name": "Name that will be displayed in the integration",
"camera_entity": "Select a camera from the list of available",
"save_path": "Folder for saving recordings relative to /media. Variables are supported, e.g. camera_name",
"filename_template": "Select date and time format for recording filenames. All formats include seconds to avoid file overwriting when multiple triggers occur in the same minute",
"max_duration": "Maximum time of one recording (10-3600 seconds). If motion does not stop, recording will stop by timeout",
"prebuffer": "How many seconds before motion detection to include in recording. Works only if stream is already active",
"motion_sensors": "You can select multiple sensors. Recording will start when any of them triggers",
"motion_filter": "Delay before starting recording. If motion stops earlier — recording will not start (false trigger protection)",
"off_delay": "How many seconds to wait after motion stops before stopping recording. If motion returns — timer resets",
"retention_days": "Automatically delete recordings older than specified days. 0 = never delete. Cleanup runs daily at 03:00",
"force_stop_sensor": "Optional. Entity that will immediately stop recording when it reaches the specified state",
"force_stop_state": "State value of the force stop sensor (usually 'off' or 'on')",
"log_level": "Log detail level. DEBUG — for debugging, INFO — normal mode"
}
}
},
"abort": {
"single_instance_allowed": "Only one configuration per camera is allowed"
}
},
"options": {
"step": {
"init": {
"title": "Motion Recorder Settings",
"description": "Change recording parameters",
"data": {
"filename_template": "Filename format",
"max_duration": "Maximum recording duration (seconds)",
"prebuffer": "Prebuffer (seconds, 0 = disabled)",
"motion_filter": "Motion detection filter (seconds, 0 = no filter)",
"off_delay": "Delay after motion stops (seconds, 0 = no delay)",
"retention_days": "Keep recordings (days, 0 = never delete)",
"log_level": "Log level"
},
"data_description": {
"filename_template": "Select date and time format for recording filenames",
"max_duration": "Maximum time of one recording (10-3600 seconds)",
"prebuffer": "How many seconds before motion detection to include in recording",
"motion_filter": "Delay before starting recording for false trigger protection",
"off_delay": "How many seconds to wait after motion stops before stopping recording",
"retention_days": "Automatically delete recordings older than specified days. 0 = never delete",
"log_level": "Log detail level"
}
}
}
},
"entity": {
"sensor": {
"motion_recorder_status": {
"name": "Status",
"state": {
"idle": "Idle",
"detecting": "Detecting",
"recording": "Recording",
"delaying": "Delaying",
"finalizing": "Finalizing",
"completed": "Completed",
"error": "Error",
"disabled": "Disabled"
}
}
},
"switch": {
"motion_recorder_enabled": {
"name": "Recording Enabled"
}
}
}
}
@@ -0,0 +1,91 @@
{
"config": {
"step": {
"user": {
"title": "Настройки Motion Recorder",
"description": "Настройка интеграции записи камер по движению",
"data": {
"name": "Имя интеграции",
"camera_entity": "Камера для записи",
"save_path": "Путь сохранения (относительно media)",
"filename_template": "Формат имени файла",
"max_duration": "Максимальная длительность записи (сек)",
"prebuffer": "Предбуфер (сек, 0 = отключено)",
"motion_sensors": "Датчики движения",
"motion_filter": "Фильтр обнаружения движения (сек, 0 = без фильтрации)",
"off_delay": "Задержка после пропадания движения (сек, 0 = без задержки)",
"retention_days": "Хранить записи (дней, 0 = не удалять)",
"force_stop_sensor": "Датчик принудительной остановки (binary_sensor, switch, input_boolean)",
"force_stop_state": "Состояние для остановки",
"log_level": "Уровень логирования"
},
"data_description": {
"name": "Имя, которое будет отображаться в интеграции",
"camera_entity": "Выберите камеру из списка доступных",
"save_path": "Папка для сохранения записей относительно /media. Поддерживаются переменные, например camera_name",
"filename_template": "Выберите формат даты и времени для имён файлов записей. Все форматы содержат секунды, чтобы избежать перезаписи файлов при нескольких срабатываниях в одну минуту",
"max_duration": "Максимальное время одной записии (10-3600 секунд). Если движение не прекратится, запись остановится по таймауту",
"prebuffer": "Сколько секунд до обнаружения движения включить в запись. Работает только если стрим уже активен",
"motion_sensors": "Можно выбрать несколько датчиков. Запись начнётся при сработке любого из них",
"motion_filter": "Задержка перед началом записи. Если движение пропадёт раньше — запись не начнётся (защита от ложных срабатываний)",
"off_delay": "Сколько секунд ждать после пропадания движения перед остановкой записи. Если движение вернётся — таймер сбросится",
"retention_days": "Автоматически удалять записии старше указанного количества дней. 0 = не удалять никогда. Очистка выполняется ежедневно в 3:00",
"force_stop_sensor": "Необязательно. Сущность, при переходе в указанное состояние запись немедленно остановится",
"force_stop_state": "Значение состояния датчика принудительной остановки (обычно 'off' или 'on')",
"log_level": "Уровень детализации логов. DEBUG — для отладки, INFO — обычный режим"
}
}
},
"abort": {
"single_instance_allowed": "Разрешена только одна конфигурация на камеру"
}
},
"options": {
"step": {
"init": {
"title": "Настройки Motion Recorder",
"description": "Изменение параметров записи",
"data": {
"filename_template": "Формат имени файла",
"max_duration": "Максимальная длительность записи (сек)",
"prebuffer": "Предбуфер (сек, 0 = отключено)",
"motion_filter": "Фильтр обнаружения движения (сек, 0 = без фильтрации)",
"off_delay": "Задержка после пропадания движения (сек, 0 = без задержки)",
"retention_days": "Хранить записии (дней, 0 = не удалять)",
"log_level": "Уровень логирования"
},
"data_description": {
"filename_template": "Выберите формат даты и времени для имён файлов записей",
"max_duration": "Максимальное время одной записии (10-3600 секунд)",
"prebuffer": "Сколько секунд до обнаружения движения включить в запись",
"motion_filter": "Задержка перед началом записии для защиты от ложных срабатываний",
"off_delay": "Сколько секунд ждать после пропадания движения перед остановкой записии",
"retention_days": "Автоматически удалять записии старше указанного количества дней. 0 = не удалять никогда",
"log_level": "Уровень детализации логов"
}
}
}
},
"entity": {
"sensor": {
"motion_recorder_status": {
"name": "Статус",
"state": {
"idle": "Ожидание",
"detecting": "Обнаружение",
"recording": "Запись",
"delaying": "Задержка",
"finalizing": "Завершение",
"completed": "Завершено",
"error": "Ошибка",
"disabled": "Отключено"
}
}
},
"switch": {
"motion_recorder_enabled": {
"name": "Запись включена"
}
}
}
}