Compare commits

..

4 Commits

Author SHA1 Message Date
Викторов Андрей Германович
b7383130c2 Bump version: 1.0.9 → 1.1.0b0 2021-09-07 10:24:54 +03:00
Викторов Андрей Германович
b31922d570 add bumb2version 2021-09-07 10:24:52 +03:00
Викторов Андрей Германович
9ca1326db2 add bumb2version 2021-09-07 10:24:18 +03:00
Викторов Андрей Германович
13f4e138e5 add bumb2version 2021-09-07 10:21:28 +03:00
4 changed files with 40 additions and 5 deletions

View File

@@ -1,5 +1,5 @@
[bumpversion]
current_version = 1.0.10b0
current_version = 1.1.0b0
parse = (?P<major>\d+)(\.(?P<minor>\d+))(\.(?P<patch>\d))(?P<release>[bf]*)(?P<build>\d*)
commit = True
tag = True

View File

@@ -7,7 +7,7 @@ import voluptuous as vol
from homeassistant.const import (
CONF_NAME, CONF_DOMAIN,
CONF_UNIT_OF_MEASUREMENT, CONF_VALUE_TEMPLATE, CONF_DEVICE_CLASS, CONF_PORT
CONF_UNIT_OF_MEASUREMENT, CONF_VALUE_TEMPLATE, CONF_DEVICE_CLASS, CONF_PORT, CONF_UNIQUE_ID
)
from homeassistant.core import HomeAssistant, ServiceCall
from homeassistant.helpers.service import bind_hass
@@ -49,6 +49,13 @@ LED_LIGHT = \
)
}
ENCODER = \
{
vol.Optional('int', description='int порт'): int,
vol.Required('scl', description='scl порт'): int,
vol.Optional('sync_to', description='entity_id с которым синхронизироваться'): str,
}
CUSTOMIZE_PORT = {
vol.Optional(CONF_SKIP, description='исключить порт из сканирования', default=False): bool,
vol.Optional(CONF_INVERT, default=False): bool,
@@ -111,6 +118,7 @@ CONFIG_SCHEMA = vol.Schema(
CUSTOMIZE_PORT,
CUSTOMIZE_DS2413,
),
vol.Optional('encoders'): {str: ENCODER}
}
}
},
@@ -210,7 +218,7 @@ async def async_remove_entry(hass: HomeAssistant, entry: ConfigEntry) -> None:
id = entry.data.get('id', entry.entry_id)
hub: MegaD = hass.data[DOMAIN].get(id)
if hub is None:
return True
return
_LOGGER.debug(f'remove {id}')
_hubs.pop(id, None)
hass.data[DOMAIN].pop(id, None)
@@ -221,7 +229,7 @@ async def async_remove_entry(hass: HomeAssistant, entry: ConfigEntry) -> None:
if task is not None:
task.cancel()
if hub is None:
return True
return
await hub.stop()
return True

View File

@@ -15,5 +15,5 @@
"@andvikt"
],
"issue_tracker": "https://github.com/andvikt/mega_hacs/issues",
"version": "v1.0.10b0"
"version": "v1.1.0b0"
}

View File

@@ -204,6 +204,33 @@ mega:
{% if m in [0, 1] %}d{% endif %}
```
### encoders
Настройки енкодеров. Енкодер состоит из нескольких портов, поэтому энкодеры настраиваются в отдельном блоке. Настроенный
енкодер создает в вашем интерфейсе несколько объектов:
- **light.<encoder_id>**: это rgb-свет, отвечает за светодиод енкодера
- **sensor.<encoder_id>**: это текущее значение енкодера [0..255]
Пример:
```yaml
mega:
megaid1:
encoders:
some_encoder_id: # придумывайте любой
int: 6
scl: 30
sync_to: light.some_light
```
!!! note ""
- **int** (integer): номер порта-прерывания. Если не указать, сервер не будет реагировать на изменения.
- **scl** (integer): номер scl-порта, используется для управления подсветкой и синхронизации состояния
- **sync_to** (str): entity_id, с которым синхронизирвоать состояние. Синхронизация работает только в
одну сторону: а именно, когда вы меняете яркость объекта в интерфейсе, соответсвующая настройка "пробрасывается" на
контроллер. Обычно этого достаточно, тк управление самим светом лучше реализовать штатными средствами контроллера,
но в случае, если вы хотите так же управлять яркостью света с помощью енкодера+HA, то нужно использовать автоматизацию,
для вашего удобства есть шаблон, который можно установить по кнопке ниже:
## Параметры интеграции
### allow_hosts {: #allow_hosts }
Отвечает за список хостов, с которых интеграция "слушает" сообщения. По умолчанию, в этот список