Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Режимы управления кондиционером #450

Closed
sergeybelozorov opened this issue Aug 4, 2023 · 8 comments
Closed
Labels
enhancement New feature or request
Milestone

Comments

@sergeybelozorov
Copy link

Приветствую!
Сразу скажу спасибо за проделанную работу! Очень крутая интеграция, активно её использую.

Интегрировал в свой умный дом HA кондиционеры и естественно сразу прокинул их в умный дом яндекс.
Прокинулись все элементы управления кроме Предустановленных режимов. В HA в этом поле 3 значения: Нет, Комфорт (на кондёре это кнопка Комфортный сон) и Турбо.

Насколько вижу в документации, Яндекс поддерживает разные режимы работы кондиционера.
https://yandex.ru/dev/dialogs/smart-home/doc/concepts/mode-instance-modes.html

Думаю в данном случае подходят:
Режим | Название
turbo | Турбо
quiet | Тихий, [ночной]

Можете добавить это в интеграцию?

@dext0r
Copy link
Owner

dext0r commented Aug 6, 2023

Покажите атрибуты кондиционера из Панели разработчика -> Состояния.
image

Через какую интеграцию кондиционер добавлен в HA?

@dext0r dext0r added the question Further information is requested label Aug 6, 2023
@sergeybelozorov
Copy link
Author

sergeybelozorov commented Aug 6, 2023

Кондер добавлен через ESPHome - https://esphome.io/components/climate/haier

Атрибуты из панели состояния:

hvac_modes:
  - 'off'
  - cool
  - heat
  - fan_only
  - dry
  - auto
min_temp: 16
max_temp: 30
target_temp_step: 1
fan_modes:
  - auto
  - low
  - medium
  - high
preset_modes:
  - none
  - boost
  - comfort
swing_modes:
  - 'off'
  - both
  - vertical
  - horizontal
current_temperature: 30
temperature: 23
fan_mode: low
preset_mode: none
swing_mode: horizontal
icon: mdi:air-conditioner
friendly_name: Кондиционер в спальне
supported_features: 57

@dext0r
Copy link
Owner

dext0r commented Aug 7, 2023

В текущей версии компонента действительно не поддерживается управление пресетами для climate. Добавлю это в следующей версии.

А пока можно реализовать управление через пользовательское умение. Будет выглядеть примерно так (код не проверял :)):

yandex_smart_home:
  entity_config:
    climate.XXX:
      modes:
        program:
          auto: ['none']
          turbo: ['boost']
          eco: ['comfort']
      custom_modes:
        program:
          state_attribute: preset_modes
          set_mode:
            service: climate.set_preset_mode
            entity_id: climate.XXX
            data:
              preset_mode: '{{ mode }}'

@dext0r dext0r added enhancement New feature or request and removed question Further information is requested labels Aug 7, 2023
@Amel2207
Copy link

Amel2207 commented Aug 7, 2023

hvac_modes:

  • auto
  • cool
  • dry
  • fan_only
  • heat
  • 'off'

fan_modes:

  • auto
  • low
  • medium low
  • medium
  • medium high
  • high

preset_modes:

  • eco
  • away
  • boost
  • none
  • sleep

swing_modes:

  • 'off'
  • vertical
  • horizontal
  • both

Подскажите, у кондиционера есть функции Quiet / Fresh Air / Health mode / XFan все как device_class: switch, есть ли возможность пробросить ?

@dext0r
Copy link
Owner

dext0r commented Aug 8, 2023

Подскажите, у кондиционера есть функции Quiet / Fresh Air / Health mode / XFan все как device_class: switch, есть ли возможность пробросить ?

Да, покажите список свитчей и entity_id у кондиционера, я накидаю yaml конфиг.

@Amel2207
Copy link

Amel2207 commented Aug 8, 2023

entity_id: climate.daytona

switch.daytona_quiet
switch.daytona_fresh_air
switch.daytona_health_mode
switch.daytona_xfan

Также есть switch.daytona_panel_light, его уже затащил как custom_toggles: backlight

PS Кондиционер Cooper&Hunter DAYTONA

@dext0r
Copy link
Owner

dext0r commented Aug 10, 2023

entity_id: climate.daytona

switch.daytona_quiet switch.daytona_fresh_air switch.daytona_health_mode switch.daytona_xfan

Также есть switch.daytona_panel_light, его уже затащил как custom_toggles: backlight

PS Кондиционер Cooper&Hunter DAYTONA

# в этом сенсоре текущий режим на основании состояния выключателей
template:
  - sensor:
      - name: Daytona mode
        state: >
          {%- if is_state('switch.daytona_quiet', 'on') -%}
            quiet
          {%- elif is_state('switch.daytona_fresh_air', 'on') -%}
            fresh_air
          {%- elif is_state('switch.daytona_health_mode', 'on') -%}
            health_mode
          {%- elif is_state('switch.daytona_xfan', 'on') -%}
            xfan
          {%- else -%}
            auto
          {%- endif -%}


yandex_smart_home:
  entity_config:
    climate.daytona:
      modes:
        # слева режимы яндекса, список ограничен - https://yandex.ru/dev/dialogs/smart-home/doc/concepts/mode-instance-modes.html
        program:
          auto: ['auto']
          quiet: ['quiet']
          one: ['fresh_air']
          two: ['health_mode']
          turbo: ['xfan']
      custom_modes:
        program:
          state_entity_id: sensor.daytona_mode  # можно без этого параметра, тогда текущий режим в УДЯ не будет отображаться и сенсор выше можно не делать
          set_mode:
            service: switch.turn_on
            entity_id: switch.daytona_{{ mode }}

@sergeybelozorov
Copy link
Author

В текущей версии компонента действительно не поддерживается управление пресетами для climate. Добавлю это в следующей версии.

А пока можно реализовать управление через пользовательское умение. Будет выглядеть примерно так (код не проверял :)):

yandex_smart_home:
  entity_config:
    climate.XXX:
      modes:
        program:
          auto: ['none']
          turbo: ['boost']
          eco: ['comfort']
      custom_modes:
        program:
          state_attribute: preset_modes
          set_mode:
            service: climate.set_preset_mode
            entity_id: climate.XXX
            data:
              preset_mode: '{{ mode }}'

Спасибо!

Сделал возможность работы с режимами и заодно прокинул пару выключателей, подсветку и УФ лампу.

Получилась вот такая конфигурация:

yandex_smart_home:
  entity_config:
    climate.konditsioner_v_spalne_haier_bedroom:
      modes:
        program:
          normal: ["none"]
          turbo: ["boost"]
          quiet: ["comfort"]
      custom_modes:
        program:
          state_attribute: preset_modes
          set_mode:
            service: climate.set_preset_mode
            entity_id: climate.konditsioner_v_spalne_haier_bedroom
            data:
              preset_mode: "{{ mode }}"
      custom_toggles:
        ionization:
          state_entity_id: switch.konditsioner_v_spalne_haier_bedroom_health_mode
          turn_on:
            service: switch.turn_on
            entity_id: switch.konditsioner_v_spalne_haier_bedroom_health_mode
          turn_off:
            service: switch.turn_off
            entity_id: switch.konditsioner_v_spalne_haier_bedroom_health_mode
        backlight:
          state_entity_id: switch.konditsioner_v_spalne_haier_bedroom_display
          turn_on:
            service: switch.turn_on
            entity_id: switch.konditsioner_v_spalne_haier_bedroom_display
          turn_off:
            service: switch.turn_off
            entity_id: switch.konditsioner_v_spalne_haier_bedroom_display

@dext0r dext0r added this to the v1.0.0 milestone Oct 4, 2023
@dext0r dext0r closed this as completed in bdcaf85 Nov 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants