Files
haos-hacs-immich-album-watcher/custom_components/immich_album_watcher/translations/en.json
alexei.dolgolyov 4b0f3b8b12
All checks were successful
Validate / Hassfest (push) Successful in 5s
Enhance get_assets service with flexible filtering and sorting
- Replace filter parameter with independent favorite_only boolean
- Add order_by parameter supporting date, rating, and name sorting
- Rename count to limit for clarity
- Add date range filtering with min_date and max_date parameters
- Add asset_type filtering for photos and videos
- Update README with language support section and fixed sensor list
- Add translations for all new parameters

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-01 01:39:04 +03:00

230 lines
8.9 KiB
JSON

{
"entity": {
"sensor": {
"album_id": {
"name": "Album ID"
},
"album_asset_count": {
"name": "Asset Count"
},
"album_photo_count": {
"name": "Photo Count"
},
"album_video_count": {
"name": "Video Count"
},
"album_last_updated": {
"name": "Last Updated"
},
"album_created": {
"name": "Created"
},
"album_public_url": {
"name": "Public URL"
},
"album_protected_url": {
"name": "Protected URL"
},
"album_protected_password": {
"name": "Protected Password"
}
},
"binary_sensor": {
"album_new_assets": {
"name": "New Assets"
}
},
"camera": {
"album_thumbnail": {
"name": "Thumbnail"
}
},
"text": {
"album_protected_password_edit": {
"name": "Share Password"
}
},
"button": {
"create_share_link": {
"name": "Create Share Link"
},
"delete_share_link": {
"name": "Delete Share Link"
},
"create_protected_link": {
"name": "Create Protected Link"
},
"delete_protected_link": {
"name": "Delete Protected Link"
}
}
},
"config": {
"step": {
"user": {
"title": "Connect to Immich",
"description": "Enter your Immich server details. You can get an API key from Immich → User Settings → API Keys.",
"data": {
"hub_name": "Hub Name",
"immich_url": "Immich URL",
"api_key": "API Key"
},
"data_description": {
"hub_name": "A name for this Immich server (used in entity IDs)",
"immich_url": "The URL of your Immich server (e.g., http://192.168.1.100:2283)",
"api_key": "Your Immich API key"
}
}
},
"error": {
"cannot_connect": "Failed to connect to Immich server",
"invalid_auth": "Invalid API key",
"no_albums": "No albums found on the server",
"unknown": "Unexpected error occurred"
},
"abort": {
"already_configured": "This Immich server is already configured"
}
},
"config_subentries": {
"album": {
"initiate_flow": {
"user": "Add Album"
},
"entry_type": "Album",
"step": {
"user": {
"title": "Add Album to Watch",
"description": "Select an album from your Immich server to monitor for changes.",
"data": {
"album_id": "Album"
}
}
},
"error": {
"cannot_connect": "Failed to connect to Immich server"
},
"abort": {
"parent_not_found": "Hub configuration not found",
"no_albums": "No albums found on the server",
"all_albums_configured": "All albums are already configured",
"album_already_configured": "This album is already being watched"
}
}
},
"options": {
"step": {
"init": {
"title": "Immich Album Watcher Options",
"description": "Configure the polling interval for all albums.",
"data": {
"scan_interval": "Scan interval (seconds)",
"telegram_bot_token": "Telegram Bot Token"
},
"data_description": {
"scan_interval": "How often to check for album changes (10-3600 seconds)",
"telegram_bot_token": "Bot token for sending notifications to Telegram"
}
}
}
},
"services": {
"refresh": {
"name": "Refresh",
"description": "Force an immediate refresh of album data from Immich."
},
"get_assets": {
"name": "Get Assets",
"description": "Get assets from the targeted album with optional filtering and ordering.",
"fields": {
"limit": {
"name": "Limit",
"description": "Maximum number of assets to return (1-100)."
},
"favorite_only": {
"name": "Favorite Only",
"description": "Filter to show only favorite assets."
},
"filter_min_rating": {
"name": "Minimum Rating",
"description": "Minimum rating for assets (1-5)."
},
"order_by": {
"name": "Order By",
"description": "Field to sort assets by (date, rating, or name)."
},
"order": {
"name": "Order",
"description": "Sort direction (ascending, descending, or random)."
},
"asset_type": {
"name": "Asset Type",
"description": "Filter assets by type (all, photo, or video)."
},
"min_date": {
"name": "Minimum Date",
"description": "Filter assets created on or after this date (ISO 8601 format)."
},
"max_date": {
"name": "Maximum Date",
"description": "Filter assets created on or before this date (ISO 8601 format)."
}
}
},
"send_telegram_notification": {
"name": "Send Telegram Notification",
"description": "Send a notification to Telegram (text, photo, video, or media group).",
"fields": {
"bot_token": {
"name": "Bot Token",
"description": "Telegram bot token (optional if configured in integration options)."
},
"chat_id": {
"name": "Chat ID",
"description": "Telegram chat ID to send to."
},
"urls": {
"name": "URLs",
"description": "List of media URLs with type (photo/video). If empty, sends a text message. Large lists are automatically split into multiple media groups."
},
"caption": {
"name": "Caption",
"description": "Caption text. For media, applied to first item. For empty URLs, this is the message text."
},
"reply_to_message_id": {
"name": "Reply To",
"description": "Optional message ID to reply to."
},
"disable_web_page_preview": {
"name": "Disable Web Page Preview",
"description": "Disable link previews in text messages."
},
"parse_mode": {
"name": "Parse Mode",
"description": "How to parse the caption/text. Options are HTML, Markdown, MarkdownV2, or empty string for plain text."
},
"max_group_size": {
"name": "Max Group Size",
"description": "Maximum number of media items per media group (2-10). Large lists will be split into multiple groups."
},
"chunk_delay": {
"name": "Chunk Delay",
"description": "Delay in milliseconds between sending multiple media groups (0-60000). Useful for rate limiting."
},
"wait_for_response": {
"name": "Wait For Response",
"description": "Wait for Telegram to finish processing before returning. Set to false for fire-and-forget (automation continues immediately)."
},
"max_asset_data_size": {
"name": "Max Asset Data Size",
"description": "Maximum asset size in bytes. Assets exceeding this limit will be skipped. Leave empty for no limit."
},
"send_large_photos_as_documents": {
"name": "Send Large Photos As Documents",
"description": "How to handle photos exceeding Telegram's limits (10MB or 10000px dimension sum). If true, send as documents. If false, downsize to fit limits."
}
}
}
}
}