Files
haos-hacs-immich-album-watcher/custom_components/immich_album_watcher/translations/ru.json
alexei.dolgolyov 8714685d5e
All checks were successful
Validate / Hassfest (push) Successful in 3s
Improve Telegram error handling and unify asset data structure
- Remove photo downscaling logic in favor of cleaner error handling
- Add intelligent Telegram API error logging with diagnostics and suggestions
- Define Telegram photo limits as global constants (TELEGRAM_MAX_PHOTO_SIZE, TELEGRAM_MAX_DIMENSION_SUM)
- Add photo_url support for image assets (matching video_url for videos)
- Unify asset detail building with shared _build_asset_detail() helper method
- Enhance get_assets service to return complete asset data matching events
- Simplify attribute naming by removing redundant asset_ prefix from values

BREAKING CHANGE: Asset attribute keys changed from "asset_type", "asset_filename"
to simpler "type", "filename" for consistency and cleaner JSON responses

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-31 23:40:19 +03:00

214 lines
11 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.
{
"entity": {
"sensor": {
"album_id": {
"name": "ID альбома"
},
"album_asset_count": {
"name": "Число файлов"
},
"album_photo_count": {
"name": "Число фото"
},
"album_video_count": {
"name": "Число видео"
},
"album_last_updated": {
"name": "Последнее обновление"
},
"album_created": {
"name": "Дата создания"
},
"album_public_url": {
"name": "Публичная ссылка"
},
"album_protected_url": {
"name": "Защищённая ссылка"
},
"album_protected_password": {
"name": "Пароль ссылки"
}
},
"binary_sensor": {
"album_new_assets": {
"name": "Новые файлы"
}
},
"camera": {
"album_thumbnail": {
"name": "Превью"
}
},
"text": {
"album_protected_password_edit": {
"name": "Пароль ссылки"
}
},
"button": {
"create_share_link": {
"name": "Создать ссылку"
},
"delete_share_link": {
"name": "Удалить ссылку"
},
"create_protected_link": {
"name": "Создать защищённую ссылку"
},
"delete_protected_link": {
"name": "Удалить защищённую ссылку"
}
}
},
"config": {
"step": {
"user": {
"title": "Подключение к Immich",
"description": "Введите данные вашего сервера Immich. API-ключ можно получить в Immich → Настройки пользователя → API-ключи.",
"data": {
"hub_name": "Название хаба",
"immich_url": "URL Immich",
"api_key": "API-ключ"
},
"data_description": {
"hub_name": "Название для этого сервера Immich (используется в ID сущностей)",
"immich_url": "URL вашего сервера Immich (например, http://192.168.1.100:2283)",
"api_key": "Ваш API-ключ Immich"
}
}
},
"error": {
"cannot_connect": "Не удалось подключиться к серверу Immich",
"invalid_auth": "Неверный API-ключ",
"no_albums": "На сервере не найдено альбомов",
"unknown": "Произошла непредвиденная ошибка"
},
"abort": {
"already_configured": "Этот сервер Immich уже настроен"
}
},
"config_subentries": {
"album": {
"initiate_flow": {
"user": "Добавить альбом"
},
"entry_type": "Альбом",
"step": {
"user": {
"title": "Добавить альбом для отслеживания",
"description": "Выберите альбом с вашего сервера Immich для отслеживания изменений.",
"data": {
"album_id": "Альбом"
}
}
},
"error": {
"cannot_connect": "Не удалось подключиться к серверу Immich"
},
"abort": {
"parent_not_found": "Конфигурация хаба не найдена",
"no_albums": "На сервере не найдено альбомов",
"all_albums_configured": "Все альбомы уже настроены",
"album_already_configured": "Этот альбом уже отслеживается"
}
}
},
"options": {
"step": {
"init": {
"title": "Настройки Immich Album Watcher",
"description": "Настройте интервал опроса для всех альбомов.",
"data": {
"scan_interval": "Интервал сканирования (секунды)",
"telegram_bot_token": "Токен Telegram бота"
},
"data_description": {
"scan_interval": "Как часто проверять изменения в альбомах (10-3600 секунд)",
"telegram_bot_token": "Токен бота для отправки уведомлений в Telegram"
}
}
}
},
"services": {
"refresh": {
"name": "Обновить",
"description": "Принудительно обновить данные альбома из Immich."
},
"get_assets": {
"name": "Получить файлы",
"description": "Получить файлы из выбранного альбома с возможностью фильтрации и сортировки.",
"fields": {
"count": {
"name": "Количество",
"description": "Максимальное количество возвращаемых файлов (1-100)."
},
"filter": {
"name": "Фильтр",
"description": "Фильтровать файлы по типу (none - без фильтра, favorite - только избранные, rating - по рейтингу)."
},
"filter_min_rating": {
"name": "Минимальный рейтинг",
"description": "Минимальный рейтинг для файлов (1-5). Используется только при filter='rating'."
},
"order": {
"name": "Порядок",
"description": "Порядок сортировки файлов по дате создания."
}
}
},
"send_telegram_notification": {
"name": "Отправить уведомление в Telegram",
"description": "Отправить уведомление в Telegram (текст, фото, видео или медиа-группу).",
"fields": {
"bot_token": {
"name": "Токен бота",
"description": "Токен Telegram бота (необязательно, если настроен в опциях интеграции)."
},
"chat_id": {
"name": "ID чата",
"description": "ID чата Telegram для отправки."
},
"urls": {
"name": "URL-адреса",
"description": "Список URL медиа-файлов с типом (photo/video). Если пусто, отправляет текстовое сообщение. Большие списки автоматически разделяются на несколько медиа-групп."
},
"caption": {
"name": "Подпись",
"description": "Текст подписи. Для медиа применяется к первому элементу. Для пустых URLs это текст сообщения."
},
"reply_to_message_id": {
"name": "Ответ на",
"description": "ID сообщения для ответа (необязательно)."
},
"disable_web_page_preview": {
"name": "Отключить предпросмотр ссылок",
"description": "Отключить предпросмотр ссылок в текстовых сообщениях."
},
"parse_mode": {
"name": "Режим парсинга",
"description": "Как парсить подпись/текст. Варианты: HTML, Markdown, MarkdownV2, или пустая строка для обычного текста."
},
"max_group_size": {
"name": "Макс. размер группы",
"description": "Максимальное количество медиа-файлов в одной группе (2-10). Большие списки будут разделены на несколько групп."
},
"chunk_delay": {
"name": "Задержка между группами",
"description": "Задержка в миллисекундах между отправкой нескольких медиа-групп (0-60000). Полезно для ограничения скорости."
},
"wait_for_response": {
"name": "Ждать ответа",
"description": "Ждать завершения отправки в Telegram перед возвратом. Установите false для фоновой отправки (автоматизация продолжается немедленно)."
},
"max_asset_data_size": {
"name": "Макс. размер ресурса",
"description": "Максимальный размер ресурса в байтах. Ресурсы, превышающие этот лимит, будут пропущены. Оставьте пустым для отсутствия ограничения."
},
"send_large_photos_as_documents": {
"name": "Большие фото как документы",
"description": "Как обрабатывать фото, превышающие лимиты Telegram (10МБ или сумма размеров 10000пкс). Если true, отправлять как документы. Если false, уменьшать для соответствия лимитам."
}
}
}
}
}