diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 7a07f37c..c38a75ac 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -53,4 +53,6 @@ jobs: - name: Deploy docs run: | - poetry run mike deploy --push --branch gh-pages ${GITHUB_REF_NAME} + VERSION="${GITHUB_REF_NAME}" + [ "${GITHUB_REF_NAME}" == "dev" ] && VERSION="v1.0.x" + poetry run mike deploy --push --branch gh-pages "${VERSION}" diff --git a/custom_components/yandex_smart_home/capability_color.py b/custom_components/yandex_smart_home/capability_color.py index 5b6c826f..db0c4031 100644 --- a/custom_components/yandex_smart_home/capability_color.py +++ b/custom_components/yandex_smart_home/capability_color.py @@ -366,7 +366,7 @@ def get_ha_scene_by_yandex_scene(self, yandex_scene: ColorScene) -> str: raise APIError( ResponseCode.INVALID_VALUE, - f"Unsupported scene '{yandex_scene}' for {self}, see https://docs.yaha-cloud.ru/dev/config/modes/", + f"Unsupported scene '{yandex_scene}' for {self}, see https://docs.yaha-cloud.ru/v1.0.x/config/modes/", ) def get_description(self) -> None: diff --git a/custom_components/yandex_smart_home/capability_mode.py b/custom_components/yandex_smart_home/capability_mode.py index e3deac41..f339c24d 100644 --- a/custom_components/yandex_smart_home/capability_mode.py +++ b/custom_components/yandex_smart_home/capability_mode.py @@ -237,7 +237,7 @@ def get_yandex_mode_by_ha_mode(self, ha_mode: str, hide_warnings: bool = False) _LOGGER.warning( f"Failed to get Yandex mode for mode '{ha_mode}' for {self}. " f"It may cause inconsistencies between Yandex and HA. " - f"See https://docs.yaha-cloud.ru/dev/config/modes/" + f"See https://docs.yaha-cloud.ru/v1.0.x/config/modes/" ) return mode @@ -260,7 +260,7 @@ def get_ha_mode_by_yandex_mode(self, yandex_mode: ModeCapabilityMode) -> str: raise APIError( ResponseCode.INVALID_VALUE, - f"Unsupported mode '{yandex_mode}' for {self}, see https://docs.yaha-cloud.ru/dev/config/modes/", + f"Unsupported mode '{yandex_mode}' for {self}, see https://docs.yaha-cloud.ru/v1.0.x/config/modes/", ) @abstractmethod @@ -836,7 +836,7 @@ async def set_instance_state(self, context: Context, state: ModeCapabilityInstan if not ha_modes: raise APIError( ResponseCode.INVALID_VALUE, - f"Unsupported mode '{state.value}' for {self}, see https://docs.yaha-cloud.ru/dev/config/modes/", + f"Unsupported mode '{state.value}' for {self}, see https://docs.yaha-cloud.ru/v1.0.x/config/modes/", ) ha_mode = self._convert_mapping_speed_value(ha_modes[0]) diff --git a/custom_components/yandex_smart_home/config_schema.py b/custom_components/yandex_smart_home/config_schema.py index c8b5b977..2afb51e9 100644 --- a/custom_components/yandex_smart_home/config_schema.py +++ b/custom_components/yandex_smart_home/config_schema.py @@ -87,7 +87,7 @@ def property_type(value: str) -> str: except ValueError: raise vol.Invalid( f"Event property type '{instance}' is not supported, " - f"see valid event types at https://docs.yaha-cloud.ru/dev/devices/sensor/event/#type" + f"see valid event types at https://docs.yaha-cloud.ru/v1.0.x/devices/sensor/event/#type" ) if value.startswith(f"{PropertyInstanceType.FLOAT}."): @@ -98,7 +98,7 @@ def property_type(value: str) -> str: except ValueError: raise vol.Invalid( f"Float property type '{instance}' is not supported, " - f"see valid float types at https://docs.yaha-cloud.ru/dev/devices/sensor/float/#type" + f"see valid float types at https://docs.yaha-cloud.ru/v1.0.x/devices/sensor/float/#type" ) for enum in [FloatPropertyInstance, EventPropertyInstance]: @@ -121,8 +121,8 @@ def property_type(value: str) -> str: raise vol.Invalid( f"Property type '{value}' is not supported, " - f"see valid types at https://docs.yaha-cloud.ru/dev/devices/sensor/event/#type and " - f"https://docs.yaha-cloud.ru/dev/devices/sensor/float/#type" + f"see valid types at https://docs.yaha-cloud.ru/v1.0.x/devices/sensor/event/#type and " + f"https://docs.yaha-cloud.ru/v1.0.x/devices/sensor/float/#type" ) @@ -155,7 +155,7 @@ def property_attributes(value: ConfigType) -> ConfigType: raise vol.Invalid( f"Target unit of measurement '{target_unit_of_measurement}' is not supported " f"for {property_type_value} property, see valid values " - f"at https://docs.yaha-cloud.ru/dev/devices/sensor/float/#property-target-unit-of-measurement" + f"at https://docs.yaha-cloud.ru/v1.0.x/devices/sensor/float/#property-target-unit-of-measurement" ) return value @@ -170,7 +170,7 @@ def mode_instance(value: str) -> str: except ValueError: _LOGGER.error( f"Mode instance '{value}' is not supported, " - f"see valid modes at https://docs.yaha-cloud.ru/dev/advanced/capabilities/mode/#instance" + f"see valid modes at https://docs.yaha-cloud.ru/v1.0.x/advanced/capabilities/mode/#instance" ) raise vol.Invalid(f"Mode instance '{value}' is not supported") @@ -188,7 +188,7 @@ def mode(value: str) -> str: _LOGGER.error( f"Mode '{value}' is not supported, " f"see valid modes at https://yandex.ru/dev/dialogs/smart-home/doc/concepts/mode-instance-modes.html and " - f"https://docs.yaha-cloud.ru/dev/devices/light/#scene-list" + f"https://docs.yaha-cloud.ru/v1.0.x/devices/light/#scene-list" ) raise vol.Invalid(f"Mode '{value}' is not supported") @@ -200,7 +200,7 @@ def event_instance(value: str) -> str: except ValueError: _LOGGER.error( f"Event instance '{value}' is not supported, " - f"see valid event types at https://docs.yaha-cloud.ru/dev/devices/sensor/event/#event-types" + f"see valid event types at https://docs.yaha-cloud.ru/v1.0.x/devices/sensor/event/#event-types" ) raise vol.Invalid(f"Event instance '{value}' is not supported") @@ -214,7 +214,7 @@ def event_map(value: dict[str, dict[str, list[str]]]) -> dict[str, dict[str, lis if event not in supported_events: _LOGGER.error( f"Event '{event}' is not supported for '{instance}' event instance, " - f"see valid event types at https://docs.yaha-cloud.ru/dev/devices/sensor/event/#event-types" + f"see valid event types at https://docs.yaha-cloud.ru/v1.0.x/devices/sensor/event/#event-types" ) raise vol.Invalid(f"Event '{event}' is not supported for '{instance}' event instance") @@ -227,7 +227,7 @@ def toggle_instance(value: str) -> str: except ValueError: _LOGGER.error( f"Toggle instance '{value}' is not supported, " - f"see valid values at https://docs.yaha-cloud.ru/dev/advanced/capabilities/toggle/#instance" + f"see valid values at https://docs.yaha-cloud.ru/v1.0.x/advanced/capabilities/toggle/#instance" ) raise vol.Invalid(f"Toggle instance '{value}' is not supported") @@ -240,7 +240,7 @@ def range_instance(value: str) -> str: except ValueError: _LOGGER.error( f"Range instance '{value}' is not supported, " - f"see valid values at https://docs.yaha-cloud.ru/dev/advanced/capabilities/range/#instance" + f"see valid values at https://docs.yaha-cloud.ru/v1.0.x/advanced/capabilities/range/#instance" ) raise vol.Invalid(f"Range instance '{value}' is not supported") @@ -285,7 +285,7 @@ def color_name(value: str) -> str: except ValueError: _LOGGER.error( f"Color name '{value}' is not supported, " - f"see valid values at https://docs.yaha-cloud.ru/dev/devices/light/#color-profile-config" + f"see valid values at https://docs.yaha-cloud.ru/v1.0.x/devices/light/#color-profile-config" ) raise vol.Invalid(f"Color name '{value}' is not supported") diff --git a/custom_components/yandex_smart_home/entry_data.py b/custom_components/yandex_smart_home/entry_data.py index 53cd7846..34ab686a 100644 --- a/custom_components/yandex_smart_home/entry_data.py +++ b/custom_components/yandex_smart_home/entry_data.py @@ -128,7 +128,7 @@ async def async_setup(self) -> Self: is_fixable=False, severity=ir.IssueSeverity.WARNING, translation_key=ISSUE_ID_DEPRECATED_PRESSURE_UNIT, - learn_more_url="https://docs.yaha-cloud.ru/dev/devices/sensor/float/#unit-conversion", + learn_more_url="https://docs.yaha-cloud.ru/v1.0.x/devices/sensor/float/#unit-conversion", ) else: ir.async_delete_issue(self._hass, DOMAIN, "deprecated_pressure_unit") @@ -142,7 +142,7 @@ async def async_setup(self) -> Self: is_fixable=False, severity=ir.IssueSeverity.WARNING, translation_key=issue_id, - learn_more_url="https://docs.yaha-cloud.ru/dev/breaking-changes/#v1-notifier", + learn_more_url="https://docs.yaha-cloud.ru/v1.0.x/breaking-changes/#v1-notifier", ) else: ir.async_delete_issue(self._hass, DOMAIN, ISSUE_ID_DEPRECATED_YAML_NOTIFIER) diff --git a/custom_components/yandex_smart_home/manifest.json b/custom_components/yandex_smart_home/manifest.json index f4168c97..f5de54e7 100644 --- a/custom_components/yandex_smart_home/manifest.json +++ b/custom_components/yandex_smart_home/manifest.json @@ -2,7 +2,7 @@ "domain": "yandex_smart_home", "name": "Yandex Smart Home", "config_flow": true, - "documentation": "https://docs.yaha-cloud.ru/dev/", + "documentation": "https://docs.yaha-cloud.ru/v1.0.x/", "issue_tracker": "https://github.com/dext0r/yandex_smart_home/issues", "requirements": [], "after_dependencies": ["local_calendar"], diff --git a/custom_components/yandex_smart_home/translations/en.json b/custom_components/yandex_smart_home/translations/en.json index 6b4dcdfb..a8315dea 100644 --- a/custom_components/yandex_smart_home/translations/en.json +++ b/custom_components/yandex_smart_home/translations/en.json @@ -12,27 +12,27 @@ "create_entry": { "direct_yandex": "**Прямое подключение настроено!**\n\nТеперь вы можете добавить Home Assistant в Умный дом Яндекса, для этого:\n * Откройте приложение [Дом с Алисой](https://ya.cc/iot_app)\n* Нажмите кнопку \"+\" в правом верхнем углу, выберите \"Устройство умного дома\"\n* Найдите в списке и выберите навык, который вы создали\n* Нажмите кнопку \"Привязать к Яндексу\", откроется страница авторизации\n* Выполните привязку используя имя пользователя, указанное при настройке интеграции", "direct_vk": "**Прямое подключение настроено!**\n\nТеперь вы можете управлять устройствами Home Assistant через Марусю, для этого:\n* Откройте приложение [Маруся](https://marusia.vk.com)\n* Нажмите иконку \"Домик\" в правом верхнем углу\n* Нажмите кнопку \"+\" в правом верхнем углу, выберите \"Подключить устройство\"\n* Найдите в списке и выберите приложение, которое вы создали\n* Откроется страница авторизации\n* Выполните привязку используя имя пользователя, указанное при настройке интеграции", - "cloud": "**Облачное подключение настроено!**\n\nРеквизиты для привязки Home Assistant к навыку Yaha Cloud:\n* **Одноразовый код**: `{otp}`\n\nили:\n* **ID**: `{id}`\n* **Пароль**: `{password}`\n\nРеквизиты продублированы в настройках интеграции, сохранять их не требуется.\n\nТеперь вы можете добавить Home Assistant в Умный дом Яндекса, для этого:\n * Откройте приложение [Дом с Алисой](https://ya.cc/iot_app)\n* Нажмите кнопку \"+\" в правом верхнем углу, выберите \"Устройство умного дома\"\n* Найдите в списке и выберите производителя \"Yaha Cloud\"\n* Нажмите кнопку \"Привязать к Яндексу\", откроется страница авторизации\n* Выполните привязку используя реквизиты выше\n\nДля управления устройствами через Марусю:\n* Откройте приложение [Маруся](https://marusia.vk.com)\n* Нажмите иконку \"Домик\" в правом верхнем углу\n* Нажмите кнопку \"+\" в правом верхнем углу, выберите \"Подключить устройство\"\n* Найдите в списке и выберите бренд \"Yaha Cloud\"\n* Откроется страница авторизации\n* Выполните привязку используя реквизиты выше\n\nВ [настройках интеграции](https://docs.yaha-cloud.ru/dev/config/getting-started/#gui) вы можете выбрать пользователя, который будет отображаться в Журнале событий.", - "cloud_plus_yandex": "**Облачное Плюс подключение настроено!**\n\nРеквизиты для привязки Home Assistant к навыку {skill}:\n* **Одноразовый код**: `{otp}`\n\nили:\n* **ID**: `{id}`\n* **Пароль**: `{password}`\n\nРеквизиты продублированы в настройках интеграции, сохранять их не требуется.\n\nТеперь вы можете добавить Home Assistant в Умный дом Яндекса, для этого:\n * Откройте приложение [Дом с Алисой](https://ya.cc/iot_app)\n* Нажмите кнопку \"+\" в правом верхнем углу, выберите \"Устройство умного дома\"\n* Найдите в списке и выберите производителя \"{skill}\"\n* Нажмите кнопку \"Привязать к Яндексу\", откроется страница авторизации\n* Выполните привязку используя реквизиты выше\n\nВ [настройках интеграции](https://docs.yaha-cloud.ru/dev/config/getting-started/#gui) вы можете выбрать пользователя, который будет отображаться в Журнале событий.", - "cloud_plus_vk": "**Облачное Плюс подключение настроено!**\n\nРеквизиты для привязки Home Assistant к приложению {skill}:\n* **Одноразовый код**: `{otp}`\n\nили:\n* **ID**: `{id}`\n* **Пароль**: `{password}`\n\nРеквизиты продублированы в настройках интеграции, сохранять их не требуется.\n\nТеперь вы можете управлять устройствами Home Assistant через Марусю, для этого:\n * Откройте приложение [Маруся](https://marusia.vk.com)\n* Нажмите иконку \"Домик\" в правом верхнем углу\n* Нажмите кнопку \"+\" в правом верхнем углу, выберите \"Подключить устройство\"\n* Найдите в списке и выберите бренд \"{skill}\"\n* Откроется страница авторизации\n* Выполните привязку используя реквизиты выше\n\nВ [настройках интеграции](https://docs.yaha-cloud.ru/dev/config/getting-started/#gui) вы можете выбрать пользователя, который будет отображаться в Журнале событий." + "cloud": "**Облачное подключение настроено!**\n\nРеквизиты для привязки Home Assistant к навыку Yaha Cloud:\n* **Одноразовый код**: `{otp}`\n\nили:\n* **ID**: `{id}`\n* **Пароль**: `{password}`\n\nРеквизиты продублированы в настройках интеграции, сохранять их не требуется.\n\nТеперь вы можете добавить Home Assistant в Умный дом Яндекса, для этого:\n * Откройте приложение [Дом с Алисой](https://ya.cc/iot_app)\n* Нажмите кнопку \"+\" в правом верхнем углу, выберите \"Устройство умного дома\"\n* Найдите в списке и выберите производителя \"Yaha Cloud\"\n* Нажмите кнопку \"Привязать к Яндексу\", откроется страница авторизации\n* Выполните привязку используя реквизиты выше\n\nДля управления устройствами через Марусю:\n* Откройте приложение [Маруся](https://marusia.vk.com)\n* Нажмите иконку \"Домик\" в правом верхнем углу\n* Нажмите кнопку \"+\" в правом верхнем углу, выберите \"Подключить устройство\"\n* Найдите в списке и выберите бренд \"Yaha Cloud\"\n* Откроется страница авторизации\n* Выполните привязку используя реквизиты выше\n\nВ [настройках интеграции](https://docs.yaha-cloud.ru/v1.0.x/config/getting-started/#gui) вы можете выбрать пользователя, который будет отображаться в Журнале событий.", + "cloud_plus_yandex": "**Облачное Плюс подключение настроено!**\n\nРеквизиты для привязки Home Assistant к навыку {skill}:\n* **Одноразовый код**: `{otp}`\n\nили:\n* **ID**: `{id}`\n* **Пароль**: `{password}`\n\nРеквизиты продублированы в настройках интеграции, сохранять их не требуется.\n\nТеперь вы можете добавить Home Assistant в Умный дом Яндекса, для этого:\n * Откройте приложение [Дом с Алисой](https://ya.cc/iot_app)\n* Нажмите кнопку \"+\" в правом верхнем углу, выберите \"Устройство умного дома\"\n* Найдите в списке и выберите производителя \"{skill}\"\n* Нажмите кнопку \"Привязать к Яндексу\", откроется страница авторизации\n* Выполните привязку используя реквизиты выше\n\nВ [настройках интеграции](https://docs.yaha-cloud.ru/v1.0.x/config/getting-started/#gui) вы можете выбрать пользователя, который будет отображаться в Журнале событий.", + "cloud_plus_vk": "**Облачное Плюс подключение настроено!**\n\nРеквизиты для привязки Home Assistant к приложению {skill}:\n* **Одноразовый код**: `{otp}`\n\nили:\n* **ID**: `{id}`\n* **Пароль**: `{password}`\n\nРеквизиты продублированы в настройках интеграции, сохранять их не требуется.\n\nТеперь вы можете управлять устройствами Home Assistant через Марусю, для этого:\n * Откройте приложение [Маруся](https://marusia.vk.com)\n* Нажмите иконку \"Домик\" в правом верхнем углу\n* Нажмите кнопку \"+\" в правом верхнем углу, выберите \"Подключить устройство\"\n* Найдите в списке и выберите бренд \"{skill}\"\n* Откроется страница авторизации\n* Выполните привязку используя реквизиты выше\n\nВ [настройках интеграции](https://docs.yaha-cloud.ru/v1.0.x/config/getting-started/#gui) вы можете выбрать пользователя, который будет отображаться в Журнале событий." }, "step": { "user" : { - "description": "Добро пожаловать в мастер добавления интеграции Yandex Smart Home!\n\nПосле добавления интеграции вы можете изменить любые её параметры в [настройках](https://docs.yaha-cloud.ru/dev/config/getting-started/#gui), удалять интеграцию и настраивать заново не требуется.\n\nПолезные ссылки:\n* Документация: https://docs.yaha-cloud.ru/dev\n* Чат в Телеграм: https://t.me/yandex_smart_home" + "description": "Добро пожаловать в мастер добавления интеграции Yandex Smart Home!\n\nПосле добавления интеграции вы можете изменить любые её параметры в [настройках](https://docs.yaha-cloud.ru/v1.0.x/config/getting-started/#gui), удалять интеграцию и настраивать заново не требуется.\n\nПолезные ссылки:\n* Документация: https://docs.yaha-cloud.ru/dev\n* Чат в Телеграм: https://t.me/yandex_smart_home" }, "connection_type": { "title": "Выберите тип подключения", - "description": "* **Облачное**: лёгкое и быстрое подключение через навык [Yaha Cloud](https://dialogs.yandex.ru/store/skills/cef326b2-home-assistant), рекомендуется для всех пользователей\n* **Облачное Плюс**: для подключения дополнительного Home Assistant через облако Yaha Cloud, потребуется создать навык вручную (не используйте этот тип, если у вас только один Home Assistant)\n* **Прямое**: требуется доступ к Home Assistant по HTTPS через интернет, сложная [многоступенчатая настройка](https://docs.yaha-cloud.ru/dev/advanced/direct-connection/), только для продвинутых пользователей", + "description": "* **Облачное**: лёгкое и быстрое подключение через навык [Yaha Cloud](https://dialogs.yandex.ru/store/skills/cef326b2-home-assistant), рекомендуется для всех пользователей\n* **Облачное Плюс**: для подключения дополнительного Home Assistant через облако Yaha Cloud, потребуется создать навык вручную (не используйте этот тип, если у вас только один Home Assistant)\n* **Прямое**: требуется доступ к Home Assistant по HTTPS через интернет, сложная [многоступенчатая настройка](https://docs.yaha-cloud.ru/v1.0.x/advanced/direct-connection/), только для продвинутых пользователей", "data": { "connection_type": "Тип подключения" }, "data_description": { - "connection_type": "\\* [Какой тип подключения лучше?](https://docs.yaha-cloud.ru/dev/config/connection-type/#compare)\n\\* [Подключение нескольких HA](https://docs.yaha-cloud.ru/dev/config/multi-ha/)" + "connection_type": "\\* [Какой тип подключения лучше?](https://docs.yaha-cloud.ru/v1.0.x/config/connection-type/#compare)\n\\* [Подключение нескольких HA](https://docs.yaha-cloud.ru/v1.0.x/config/multi-ha/)" } }, "platform_direct": { "title": "Прямое подключение", - "description": "Перед настройкой прямого подключения убедитесь, что сервер Home Assistant доступен из интернета и локальной сети по адресу **`{external_url}`** ([подробнее](https://docs.yaha-cloud.ru/dev/advanced/direct-connection/) о требованиях и как проверить доступность)", + "description": "Перед настройкой прямого подключения убедитесь, что сервер Home Assistant доступен из интернета и локальной сети по адресу **`{external_url}`** ([подробнее](https://docs.yaha-cloud.ru/v1.0.x/advanced/direct-connection/) о требованиях и как проверить доступность)", "data": { "platform": "Платформа умного дома" } @@ -45,7 +45,7 @@ }, "skill_yandex_direct": { "title": "Параметры навыка", - "description": "Для интеграции требуется создать навык на платформе Яндекс Диалоги:\n\n1\\. Зайдите в консоль [Яндекс Диалоги](https://dialogs.yandex.ru/developer) > Создать диалог > Умный дом\n2\\. Заполните параметры на вкладке **Настройки**:\n* Язык: **`Русский`**\n* Название: **`Home Assistant`** (или другое)\n* Подключение устройств: `Любой текст`\n* Backend: `{external_url}/api/yandex_smart_home`\n* Тип доступа: **`Приватный`**\n* Имя разработчика: **`Любое`**\n* Иконка: **`Любая`** (например [эта](https://community-assets.home-assistant.io/original/3X/6/a/6a99ebb8d0b585a00b407123ff76964cb3e18780.png))\n\n3\\. Нажмите **Сохранить** и заполните на вкладке **Связка аккаунтов**:\n* Идентификатор приложения: `https://social.yandex.net/`\n* Секрет приложения: **`secret`**\n* URL авторизации: `{external_url}/auth/authorize`\n* URL для получения токена: `{external_url}/auth/token`\n* URL для обновления токена: `{external_url}/auth/token`\n\n4\\. Нажмите **Сохранить**, перейдите на вкладку **Общие сведения**\n5\\. Нажмите **Опубликовать**\n6\\. Появились ошибки валидации? Не страшно, [устраните](https://docs.yaha-cloud.ru/dev/advanced/direct-connection/#validation-errors) их **после** завершения мастера настройки", + "description": "Для интеграции требуется создать навык на платформе Яндекс Диалоги:\n\n1\\. Зайдите в консоль [Яндекс Диалоги](https://dialogs.yandex.ru/developer) > Создать диалог > Умный дом\n2\\. Заполните параметры на вкладке **Настройки**:\n* Язык: **`Русский`**\n* Название: **`Home Assistant`** (или другое)\n* Подключение устройств: `Любой текст`\n* Backend: `{external_url}/api/yandex_smart_home`\n* Тип доступа: **`Приватный`**\n* Имя разработчика: **`Любое`**\n* Иконка: **`Любая`** (например [эта](https://community-assets.home-assistant.io/original/3X/6/a/6a99ebb8d0b585a00b407123ff76964cb3e18780.png))\n\n3\\. Нажмите **Сохранить** и заполните на вкладке **Связка аккаунтов**:\n* Идентификатор приложения: `https://social.yandex.net/`\n* Секрет приложения: **`secret`**\n* URL авторизации: `{external_url}/auth/authorize`\n* URL для получения токена: `{external_url}/auth/token`\n* URL для обновления токена: `{external_url}/auth/token`\n\n4\\. Нажмите **Сохранить**, перейдите на вкладку **Общие сведения**\n5\\. Нажмите **Опубликовать**\n6\\. Появились ошибки валидации? Не страшно, [устраните](https://docs.yaha-cloud.ru/v1.0.x/advanced/direct-connection/#validation-errors) их **после** завершения мастера настройки", "data": { "user_id": "Пользователь", "id": "Идентификатор диалога", @@ -71,7 +71,7 @@ }, "skill_yandex_cloud_plus": { "title": "Параметры навыка", - "description": "Для интеграции требуется создать навык на платформе Яндекс Диалоги:\n\n1\\. Зайдите в консоль [Яндекс Диалоги](https://dialogs.yandex.ru/developer) > Создать диалог > Умный дом\n2\\. Заполните параметры на вкладке **Настройки**:\n* Язык: **`Русский`**\n* Название: **`Yaha Cloud Plus`** (или другое)\n* Подключение устройств: `Любой текст`\n* Backend: `{cloud_base_url}/api/yandex_smart_home`\n* Тип доступа: **`Приватный`**\n* Имя разработчика: **`Любое`**\n* Иконка: **`Любая`** (например [вариант 1](https://docs.yaha-cloud.ru/dev/assets/logo/logo-plus-1.png), [вариант 2](https://docs.yaha-cloud.ru/dev/assets/logo/logo-plus-2.png))\n\n3\\. Нажмите **Сохранить** и заполните на вкладке **Связка аккаунтов**:\n* Идентификатор приложения: `yandex_smart_home:{instance_id}`\n* Секрет приложения: **`secret`**\n* URL авторизации: `{cloud_base_url}/oauth/authorize`\n* URL для получения токена: `{cloud_base_url}/oauth/token`\n* URL для обновления токена: `{cloud_base_url}/oauth/token`\n\n4\\. Нажмите **Сохранить**, перейдите на вкладку **Общие сведения**\n5\\. Нажмите **Опубликовать**", + "description": "Для интеграции требуется создать навык на платформе Яндекс Диалоги:\n\n1\\. Зайдите в консоль [Яндекс Диалоги](https://dialogs.yandex.ru/developer) > Создать диалог > Умный дом\n2\\. Заполните параметры на вкладке **Настройки**:\n* Язык: **`Русский`**\n* Название: **`Yaha Cloud Plus`** (или другое)\n* Подключение устройств: `Любой текст`\n* Backend: `{cloud_base_url}/api/yandex_smart_home`\n* Тип доступа: **`Приватный`**\n* Имя разработчика: **`Любое`**\n* Иконка: **`Любая`** (например [вариант 1](https://docs.yaha-cloud.ru/v1.0.x/assets/logo/logo-plus-1.png), [вариант 2](https://docs.yaha-cloud.ru/v1.0.x/assets/logo/logo-plus-2.png))\n\n3\\. Нажмите **Сохранить** и заполните на вкладке **Связка аккаунтов**:\n* Идентификатор приложения: `yandex_smart_home:{instance_id}`\n* Секрет приложения: **`secret`**\n* URL авторизации: `{cloud_base_url}/oauth/authorize`\n* URL для получения токена: `{cloud_base_url}/oauth/token`\n* URL для обновления токена: `{cloud_base_url}/oauth/token`\n\n4\\. Нажмите **Сохранить**, перейдите на вкладку **Общие сведения**\n5\\. Нажмите **Опубликовать**", "data": { "name": "Название диалога", "id": "Идентификатор диалога", @@ -100,7 +100,7 @@ "entry_aliases": "Учитывать альтернативные названия устройств и комнат" }, "data_description": { - "entry_aliases": "Отключите этот параметр, если используете альтернативные названия для функции Assist.\nСм. также: [особенности именования устройств и комнат](https://docs.yaha-cloud.ru/dev/quirks#naming)" + "entry_aliases": "Отключите этот параметр, если используете альтернативные названия для функции Assist.\nСм. также: [особенности именования устройств и комнат](https://docs.yaha-cloud.ru/v1.0.x/quirks#naming)" } }, "update_filter": { @@ -119,7 +119,7 @@ }, "choose_label": { "title": "Ярлык для отбора объектов", - "description": "Выберите ярлык, объекты с которым будут переданы в УДЯ/Марусю в виде устройств.\n\n Ярлыки на устройствах или зонах не поддерживаются. Ярлык можно создать непосредственно при редактировании объекта.\n\nЕсли устройство присутствует в УДЯ – соответствующий объект всегда должен иметь этот ярлык.\n\nУдаление устройств из УДЯ возможно **только** вручную, для удаления всех устройств [отвяжите навык](https://docs.yaha-cloud.ru/dev/platforms/yandex/#unlink).\n\nМаруся всегда отображает только объекты с выбранным ярлыком.", + "description": "Выберите ярлык, объекты с которым будут переданы в УДЯ/Марусю в виде устройств.\n\n Ярлыки на устройствах или зонах не поддерживаются. Ярлык можно создать непосредственно при редактировании объекта.\n\nЕсли устройство присутствует в УДЯ – соответствующий объект всегда должен иметь этот ярлык.\n\nУдаление устройств из УДЯ возможно **только** вручную, для удаления всех устройств [отвяжите навык](https://docs.yaha-cloud.ru/v1.0.x/platforms/yandex/#unlink).\n\nМаруся всегда отображает только объекты с выбранным ярлыком.", "data": { "label": "Ярлык" } @@ -158,7 +158,7 @@ "entry_aliases": "Учитывать альтернативные названия устройств и комнат" }, "data_description": { - "entry_aliases": "Отключите этот параметр, если используете альтернативные названия для функции Assist.\nСм. также: [особенности именования устройств и комнат](https://docs.yaha-cloud.ru/dev/quirks#naming)" + "entry_aliases": "Отключите этот параметр, если используете альтернативные названия для функции Assist.\nСм. также: [особенности именования устройств и комнат](https://docs.yaha-cloud.ru/v1.0.x/quirks#naming)" } }, "update_filter": { @@ -170,14 +170,14 @@ }, "include_entities": { "title": "Объекты для передачи в УДЯ", - "description": "Выберите объекты, которые будут переданы в УДЯ/Марусю в виде устройств.\n\nЕсли устройство присутствует в УДЯ – соответствующий объект всегда должен находиться в этом списке.\n\nУдаление устройств из УДЯ возможно **только** вручную, для удаления всех устройств [отвяжите навык](https://docs.yaha-cloud.ru/dev/platforms/yandex/#unlink).\n\nМаруся всегда отображает только выбранные объекты.", + "description": "Выберите объекты, которые будут переданы в УДЯ/Марусю в виде устройств.\n\nЕсли устройство присутствует в УДЯ – соответствующий объект всегда должен находиться в этом списке.\n\nУдаление устройств из УДЯ возможно **только** вручную, для удаления всех устройств [отвяжите навык](https://docs.yaha-cloud.ru/v1.0.x/platforms/yandex/#unlink).\n\nМаруся всегда отображает только выбранные объекты.", "data": { "entities": "Объекты" } }, "choose_label": { "title": "Ярлык для отбора объектов", - "description": "Выберите ярлык, объекты с которым будут переданы в УДЯ/Марусю в виде устройств.\n\n Ярлыки на устройствах или зонах не поддерживаются. Ярлык можно создать непосредственно при редактировании объекта.\n\nЕсли устройство присутствует в УДЯ – соответствующий объект всегда должен иметь этот ярлык.\n\nУдаление устройств из УДЯ возможно **только** вручную, для удаления всех устройств [отвяжите навык](https://docs.yaha-cloud.ru/dev/platforms/yandex/#unlink).\n\nМаруся всегда отображает только объекты с выбранным ярлыком.", + "description": "Выберите ярлык, объекты с которым будут переданы в УДЯ/Марусю в виде устройств.\n\n Ярлыки на устройствах или зонах не поддерживаются. Ярлык можно создать непосредственно при редактировании объекта.\n\nЕсли устройство присутствует в УДЯ – соответствующий объект всегда должен иметь этот ярлык.\n\nУдаление устройств из УДЯ возможно **только** вручную, для удаления всех устройств [отвяжите навык](https://docs.yaha-cloud.ru/v1.0.x/platforms/yandex/#unlink).\n\nМаруся всегда отображает только объекты с выбранным ярлыком.", "data": { "label": "Ярлык" } @@ -262,15 +262,15 @@ "issues": { "deprecated_pressure_unit": { "title": "Устаревший параметр pressure_unit", - "description": "Параметр `pressure_unit` (раздел `settings`) больше не поддерживается, удалите его из YAML конфигурации.\n\nТеперь компонент автоматически пытается сохранить единицы измерения при передаче значений датчиков из Home Assistant в УДЯ ([подробнее о конвертации значений](https://docs.yaha-cloud.ru/dev/devices/sensor/float/#unit-conversion))" + "description": "Параметр `pressure_unit` (раздел `settings`) больше не поддерживается, удалите его из YAML конфигурации.\n\nТеперь компонент автоматически пытается сохранить единицы измерения при передаче значений датчиков из Home Assistant в УДЯ ([подробнее о конвертации значений](https://docs.yaha-cloud.ru/v1.0.x/devices/sensor/float/#unit-conversion))" }, "deprecated_yaml_notifier": { "title": "Устаревшие настройки прямого подключения", - "description": "Служба уведомлений о состоянии устройств (нотификатор) теперь настраивается через [интерфейс](https://docs.yaha-cloud.ru/dev/config/getting-started/#gui) (раздел `Параметры навыка`).\n\nПараметры из YAML конфигурации были перенесены **автоматически**, удалите секцию **`notifier`** из YAML конфигурации.\n" + "description": "Служба уведомлений о состоянии устройств (нотификатор) теперь настраивается через [интерфейс](https://docs.yaha-cloud.ru/v1.0.x/config/getting-started/#gui) (раздел `Параметры навыка`).\n\nПараметры из YAML конфигурации были перенесены **автоматически**, удалите секцию **`notifier`** из YAML конфигурации.\n" }, "deprecated_yaml_several_notifiers": { "title": "Устаревшие настройки прямого подключения", - "description": "Служба уведомлений о состоянии устройств (нотификатор) теперь настраивается через [интерфейс](https://docs.yaha-cloud.ru/dev/config/getting-started/#gui) (раздел `Параметры навыка`).\n\nПеренесите настройки из секции `notifier` в настройки интеграции вручную, после этого удалите секцию `notifier` из YAML конфигурации.\n\nДля каждой записи в секции `notifier` потребуется создать отдельную интеграцию с прямым типом подключения." + "description": "Служба уведомлений о состоянии устройств (нотификатор) теперь настраивается через [интерфейс](https://docs.yaha-cloud.ru/v1.0.x/config/getting-started/#gui) (раздел `Параметры навыка`).\n\nПеренесите настройки из секции `notifier` в настройки интеграции вручную, после этого удалите секцию `notifier` из YAML конфигурации.\n\nДля каждой записи в секции `notifier` потребуется создать отдельную интеграцию с прямым типом подключения." }, "missing_integration": { "title": "Не найдена подходящая интеграция", diff --git a/docs/breaking-changes.md b/docs/breaking-changes.md index 3dec7a13..c1d17e69 100644 --- a/docs/breaking-changes.md +++ b/docs/breaking-changes.md @@ -75,4 +75,4 @@ C версии 1.0 [клонирование](https://docs.yaha-cloud.ru/v0.6.x/ 2. В YAML конфигурации не используются новые для 1.x параметры 3. Способ выбор объектов для передачи в УДЯ не изменён на "Через ярлыки на объектах" -Для даунгрейда [скачайте](https://docs.yaha-cloud.ru/dev/install/component/#update) последнюю версию 0.6.х через HACS. +Для даунгрейда [скачайте](https://docs.yaha-cloud.ru/v1.0.x/install/component/#update) последнюю версию 0.6.х через HACS. diff --git a/docs/recipes/tv.md b/docs/recipes/tv.md index 7a2babd3..00e4a933 100644 --- a/docs/recipes/tv.md +++ b/docs/recipes/tv.md @@ -135,7 +135,7 @@ script: yandex_smart_home: entity_config: media_player.androidtv: - # https://docs.yaha-cloud.ru/dev/advanced/capabilities/range/ + # https://docs.yaha-cloud.ru/v1.0.x/advanced/capabilities/range/ # указываем, что для volume поддерживаются increase_value и decrease_value # и не указываем set_value - так Yandex Smart Home понимает, что абсолютные # значение громкости не поддерживаются ТВ @@ -147,7 +147,7 @@ yandex_smart_home: decrease_value: action: media_player.volume_down entity_id: media_player.androidtv - # https://docs.yaha-cloud.ru/dev/advanced/capabilities/mode/ + # https://docs.yaha-cloud.ru/v1.0.x/advanced/capabilities/mode/ modes: input_source: one: 'HW1' # HDMI 1 diff --git a/tests/test_capability_color.py b/tests/test_capability_color.py index 3a855e67..19966984 100644 --- a/tests/test_capability_color.py +++ b/tests/test_capability_color.py @@ -919,5 +919,5 @@ async def test_capability_color_setting_scene(hass: HomeAssistant, entry_data: M assert e.value.code == ResponseCode.INVALID_VALUE assert ( e.value.message == "Unsupported scene 'sunset' for instance scene of color_setting capability of light.test, " - "see https://docs.yaha-cloud.ru/dev/config/modes/" + "see https://docs.yaha-cloud.ru/v1.0.x/config/modes/" ) diff --git a/tests/test_capability_mode.py b/tests/test_capability_mode.py index 6099e66f..de9b3d0c 100644 --- a/tests/test_capability_mode.py +++ b/tests/test_capability_mode.py @@ -101,7 +101,7 @@ async def test_capability_mode_auto_mapping( assert record.message == ( "Failed to get Yandex mode for mode 'mode_5' for instance swing of mode " "capability of switch.test. It may cause inconsistencies between Yandex and " - "HA. See https://docs.yaha-cloud.ru/dev/config/modes/" + "HA. See https://docs.yaha-cloud.ru/v1.0.x/config/modes/" ) caplog.clear() @@ -125,7 +125,7 @@ async def test_capability_mode_auto_mapping( assert e.value.code == ResponseCode.INVALID_VALUE assert e.value.message == ( "Unsupported mode 'deep_fryer' for instance swing of mode capability of switch.test, " - "see https://docs.yaha-cloud.ru/dev/config/modes/" + "see https://docs.yaha-cloud.ru/v1.0.x/config/modes/" ) assert cap.get_ha_mode_by_yandex_mode(ModeCapabilityMode.FOWL) == "mode_1" @@ -755,7 +755,7 @@ async def test_capability_mode_fan_speed_fan_via_percentage_custom(hass: HomeAss assert e.value.code == ResponseCode.INVALID_VALUE assert e.value.message == ( "Unsupported mode 'low' for instance fan_speed of mode capability of " - "fan.test, see https://docs.yaha-cloud.ru/dev/config/modes/" + "fan.test, see https://docs.yaha-cloud.ru/v1.0.x/config/modes/" ) entry_data = MockConfigEntryData( diff --git a/tests/test_config_schema.py b/tests/test_config_schema.py index 6c64380e..10f23c91 100644 --- a/tests/test_config_schema.py +++ b/tests/test_config_schema.py @@ -23,8 +23,8 @@ async def test_invalid_property_type(hass: HomeAssistant, caplog: pytest.LogCapt assert ( "Property type 'invalid' is not supported, see valid types at " - "https://docs.yaha-cloud.ru/dev/devices/sensor/event/#type and " - "https://docs.yaha-cloud.ru/dev/devices/sensor/float/#type" in caplog.messages[-1] + "https://docs.yaha-cloud.ru/v1.0.x/devices/sensor/event/#type and " + "https://docs.yaha-cloud.ru/v1.0.x/devices/sensor/float/#type" in caplog.messages[-1] ) @@ -44,7 +44,7 @@ async def test_invalid_event_property_type(hass: HomeAssistant, caplog: pytest.L assert ( "Event property type 'invalid' is not supported, see valid event types at " - "https://docs.yaha-cloud.ru/dev/devices/sensor/event/#type" + "https://docs.yaha-cloud.ru/v1.0.x/devices/sensor/event/#type" ) in caplog.messages[-1] @@ -64,7 +64,7 @@ async def test_invalid_float_property_type(hass: HomeAssistant, caplog: pytest.L assert ( "Float property type 'invalid' is not supported, see valid float types at " - "https://docs.yaha-cloud.ru/dev/devices/sensor/float/#type" + "https://docs.yaha-cloud.ru/v1.0.x/devices/sensor/float/#type" ) in caplog.messages[-1] @@ -87,7 +87,7 @@ async def test_invalid_property_target_unit_of_measurement( assert ( "Target unit of measurement 'foo' is not supported for battery_level property, see valid values at " - "https://docs.yaha-cloud.ru/dev/devices/sensor/float/#property-target-unit-of-measurement" + "https://docs.yaha-cloud.ru/v1.0.x/devices/sensor/float/#property-target-unit-of-measurement" ) in caplog.messages[-1] for type_prefix in ["", "float."]: @@ -108,7 +108,7 @@ async def test_invalid_property_target_unit_of_measurement( assert ( f"Target unit of measurement '°F' is not supported for {type_prefix}temperature property, " f"see valid values " - f"at https://docs.yaha-cloud.ru/dev/devices/sensor/float/#property-target-unit-of-measurement" + f"at https://docs.yaha-cloud.ru/v1.0.x/devices/sensor/float/#property-target-unit-of-measurement" ) in caplog.messages[-1] files = { @@ -128,7 +128,7 @@ async def test_invalid_property_target_unit_of_measurement( assert ( f"Target unit of measurement 'psi' is not supported for {type_prefix}pressure property, " f"see valid values " - f"at https://docs.yaha-cloud.ru/dev/devices/sensor/float/#property-target-unit-of-measurement" + f"at https://docs.yaha-cloud.ru/v1.0.x/devices/sensor/float/#property-target-unit-of-measurement" ) in caplog.messages[-1] @@ -198,7 +198,7 @@ async def test_invalid_mode(hass: HomeAssistant, caplog: pytest.LogCaptureFixtur assert ( "Mode 'invalid' is not supported, see valid modes at " "https://yandex.ru/dev/dialogs/smart-home/doc/concepts/mode-instance-modes.html and " - "https://docs.yaha-cloud.ru/dev/devices/light/#scene-list" in caplog.messages[-2] + "https://docs.yaha-cloud.ru/v1.0.x/devices/light/#scene-list" in caplog.messages[-2] ) @@ -216,7 +216,7 @@ async def test_invalid_mode_instance(hass: HomeAssistant, caplog: pytest.LogCapt assert await async_integration_yaml_config(hass, DOMAIN) is None assert ( "Mode instance 'invalid' is not supported, see valid modes at " - "https://docs.yaha-cloud.ru/dev/advanced/capabilities/mode/#instance" + "https://docs.yaha-cloud.ru/v1.0.x/advanced/capabilities/mode/#instance" ) in caplog.messages[-2] @@ -234,7 +234,7 @@ async def test_invalid_event_instance(hass: HomeAssistant, caplog: pytest.LogCap assert await async_integration_yaml_config(hass, DOMAIN) is None assert ( "Event instance 'invalid' is not supported, see valid " - "event types at https://docs.yaha-cloud.ru/dev/devices/sensor/event/#event-types" in caplog.messages[-2] + "event types at https://docs.yaha-cloud.ru/v1.0.x/devices/sensor/event/#event-types" in caplog.messages[-2] ) @@ -255,7 +255,7 @@ async def test_invalid_event_map(hass: HomeAssistant, caplog: pytest.LogCaptureF assert await async_integration_yaml_config(hass, DOMAIN) is None assert ( "Event 'foo' is not supported for 'button' event instance, see valid " - "event types at https://docs.yaha-cloud.ru/dev/devices/sensor/event/#event-types" in caplog.messages[-2] + "event types at https://docs.yaha-cloud.ru/v1.0.x/devices/sensor/event/#event-types" in caplog.messages[-2] ) @@ -273,7 +273,7 @@ async def test_invalid_toggle_instance(hass: HomeAssistant, caplog: pytest.LogCa assert await async_integration_yaml_config(hass, DOMAIN) is None assert ( "Toggle instance 'invalid' is not supported, see valid values at " - "https://docs.yaha-cloud.ru/dev/advanced/capabilities/toggle/#instance" + "https://docs.yaha-cloud.ru/v1.0.x/advanced/capabilities/toggle/#instance" ) in caplog.messages[-2] @@ -291,7 +291,7 @@ async def test_invalid_range_instance(hass: HomeAssistant, caplog: pytest.LogCap assert await async_integration_yaml_config(hass, DOMAIN) is None assert ( "Range instance 'invalid' is not supported, see valid values at " - "https://docs.yaha-cloud.ru/dev/advanced/capabilities/range/#instance" + "https://docs.yaha-cloud.ru/v1.0.x/advanced/capabilities/range/#instance" ) in caplog.messages[-2] @@ -337,7 +337,7 @@ async def test_invalid_color_name(hass: HomeAssistant, caplog: pytest.LogCapture assert await async_integration_yaml_config(hass, DOMAIN) is None assert ( "Color name 'invalid' is not supported, see valid values at " - "https://docs.yaha-cloud.ru/dev/devices/light/#color-profile-config" in caplog.messages[-2] + "https://docs.yaha-cloud.ru/v1.0.x/devices/light/#color-profile-config" in caplog.messages[-2] )