Skip to content

Commit

Permalink
Updated README.md; added new services; bumped library version
Browse files Browse the repository at this point in the history
  • Loading branch information
alryaz committed Jun 17, 2021
1 parent 1290e82 commit e5ab342
Show file tree
Hide file tree
Showing 7 changed files with 294 additions and 100 deletions.
121 changes: 98 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,19 +5,24 @@ _ЕЛК ЖКХ «Интер РАО»_ для _Home Assistant_
> Предоставление информации о текущем состоянии ваших аккаунтов в ЕЛК ЖКХ.
>
>[![hacs_badge](https://img.shields.io/badge/HACS-Custom-orange.svg)](https://github.com/custom-components/hacs)
>[![Лицензия](https://img.shields.io/badge/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
>[![Поддержка](https://img.shields.io/badge/%D0%9F%D0%BE%D0%B4%D0%B4%D0%B5%D1%80%D0%B6%D0%B8%D0%B2%D0%B0%D0%B5%D1%82%D1%81%D1%8F%3F-%D0%B4%D0%B0-green.svg)](https://github.com/alryaz/hass-lkcomu-interrao/graphs/commit-activity)
> [![Лицензия](https://img.shields.io/badge/%D0%9B%D0%B8%D1%86%D0%B5%D0%BD%D0%B7%D0%B8%D1%8F-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
> [![Поддержка](https://img.shields.io/badge/%D0%9F%D0%BE%D0%B4%D0%B4%D0%B5%D1%80%D0%B6%D0%B8%D0%B2%D0%B0%D0%B5%D1%82%D1%81%D1%8F%3F-%D0%B4%D0%B0-green.svg)](https://github.com/alryaz/hass-lkcomu-interrao/graphs/commit-activity)
>
>[![Пожертвование Yandex](https://img.shields.io/badge/%D0%9F%D0%BE%D0%B6%D0%B5%D1%80%D1%82%D0%B2%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-Yandex-red.svg)](https://money.yandex.ru/to/410012369233217)
>[![Пожертвование PayPal](https://img.shields.io/badge/%D0%9F%D0%BE%D0%B6%D0%B5%D1%80%D1%82%D0%B2%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-Paypal-blueviolet.svg)](https://www.paypal.me/alryaz)
> [![Пожертвование PayPal](https://img.shields.io/badge/%D0%9F%D0%BE%D0%B6%D0%B5%D1%80%D1%82%D0%B2%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-Paypal-blueviolet.svg)](https://www.paypal.me/alryaz)
## Введение

> @ TODO @
## Установка

### Посредством HACS

> **✔️️ Рекомендуемый метод**
1. Установите HACS ([инструкция по установке на оф. сайте](https://hacs.xyz/docs/installation/installation/))
1. Установите
HACS ([инструкция по установке на оф. сайте](https://hacs.xyz/docs/installation/installation/))
2. Добавьте репозиторий в список дополнительных
3. Найдите `energosbyt` в поиске по интеграциям <sup>1</sup>
4. Установите последнюю версию компонента, нажав на кнопку `Установить` (`Install`)
Expand All @@ -27,10 +32,12 @@ _<sup>1</sup> При поиске может появиться компонен
проекту интеграция, и будет в скором времени упразднена._

### Вручную

> **⚠️ Не рекомендуется**
1. Скачайте архив с исходным кодом дополнения
2. Извлеките папку `lkcomu_interrao` из архива в папку `custom_components` внутри
папки с конфигурацией Home Assistant (создайте её, если она отсутствует)
2. Извлеките папку `lkcomu_interrao` из архива в папку `custom_components` внутри папки с
конфигурацией Home Assistant (создайте её, если она отсутствует)
3. Перезапустите Home Assistant

## Настройка
Expand Down Expand Up @@ -154,32 +161,39 @@ lkcomu_interrao:
## Доступные объекты
Все объекты гарантируют наличие и полноту следующих атрибутов:
- `account_code: str` - Номер лицевого счёта
- `account_id: int` - Внутренний идентификатор лицевого счёта

### Лицевые счета &mdash; `lkcomu_interrao_account`

> **Домен объектов:** `sensor`

Объект лицевого счёта отображает основную информацию о лицевом счёте, а также его баланс
(положительное значение) или имеющуюся задолженность (отрицательное значение) <sup>1</sup>.

Состояние объекта может принимать следующие значения:

- `unknown` - Информация о состоянии баланса не была предоставлена
- _число_ - Текущее состояние баланса

_<sup>1</sup> ... в том случае, если лицевой счёт предоставляет информацию о балансе_
_<sup>1</sup> ... в том случае, если лицевой счёт предоставляет информацию о балансе_

### Счётчики &mdash; `lkcomu_interrao_meter`

> **Домен объектов:** `sensor`

Объект счётчика отображает информацию о счётчике, а также сведения о последних переданных
показаниях и диапазоне периода передачи показаний<sup>1</sup>.
Объект счётчика отображает информацию о счётчике, а также сведения о последних переданных показаниях
и диапазоне периода передачи показаний<sup>1</sup>.

Состояние объекта может принимать следующие значения:

- `ok` - Текстовое описание состояния отсутствует
- _текст_ - Текстовое описание состояние счётчика (может быть любой длины, и содержать в себе любой набор символов, в т.ч. HTML-теги)
- _текст_ - Текстовое описание состояние счётчика (может быть любой длины, и содержать в себе любой
набор символов, в т.ч. HTML-теги)

Объект гарантирует наличие и полноту следующих атрибутов:

- `meter_code` - Номер счётчика
- `install_date` - Дата установки
- `submit_period_start` - Дата начала периода передачи показаний (в текущем месяце) <sup>1</sup>
Expand All @@ -189,68 +203,128 @@ _<sup>1</sup> ... в том случае, если лицевой счёт пр
- `zone_t[N]_last_indication` - Последнее показание по тарифной зоне <sup>2</sup>

Объект гарантирует наличие, но не полноту следующих атрибутов:

- `model` - Модель счётчика
- `last_indications_date` - Дата последней передачи показаний
- `zone_t[N]_description` - Описание тарифной зоны / тарифа
- `zone_t[N]_today_indication` - Значение переданного сегодня показания по тарифной зоне
- `zone_t[N]_invoice_indication` - Значение последнего показания по тарифной зоне, учтённому в квитанции
- `zone_t[N]_period_indication` - Значение переданного за период показания по тарифной зоне <sup>1</sup>
- `zone_t[N]_invoice_indication` - Значение последнего показания по тарифной зоне, учтённому в
квитанции
- `zone_t[N]_period_indication` - Значение переданного за период показания по тарифной зоне <sup>
1</sup>
- `zone_t[N]_invoice_name` - Наименование тарифной зоны, указанное в последней квитанции

_<sup>1</sup> ... в том случае, если счётчик поддерживает передачу показаний_<br>
_<sup>2</sup> При отсутствии фактического значения атрибут примет значение `0.0`_

### Последние платежи &mdash; `lkcomu_interrao_last_payment`

> **Домен объектов:** `binary_sensor`

Объект последнего платежа отображает информацию о последнем зарегистрированном платеже,
связанном с лицевым счётом.
Объект последнего платежа отображает информацию о последнем зарегистрированном платеже, связанном с
лицевым счётом.

Состояние объекта может принимать следующие значения:

- `on` - Платёж был обработан
- `off` - Платёж ещё не обработан
- `unknown` - Последний платёж не был найден

Объект гарантирует наличие и полноту следующих атрибутов:

- `amount: float` - Сумма платежа
- `paid_at: str` - Дата и время платежа
- `period: str` - Период, за который был выполнен платёж

Объект гарантирует наличие, но не полноту, следующих атрибутов:

- `status: str | None` - Состояние платежа
- `agent: str | None` - Банк, проводящий платёж
- `group: str | None` - Группа платежа (для лицевых счетов с несколькими источниками платежей)

### Последние квитанции &mdash; `lkcomu_interrao_last_invoice`

> **Домен объектов:** `sensor`

> @ TODO @

## Службы
_**N.B.** Подразумевается, что домен служб - `lkcomu_interrao`_

### `submit_indications` &mdash; Передача показаний
> Только для объектов счётчиков, поддерживающих данный функционал
_**N.B.** Подразумевается, что домен служб - `lkcomu_interrao`_

### `calculate_indications` &mdash; Подсчёт начислений
> Только для объектов счётчиков, поддерживающих данный функционал
### Лицевые счета

### `set_description` &mdash; Установить описание лицевого счёта
> Только для объектов лицевых счетов
#### `set_description` &mdash; Установить описание лицевого счёта

Устанавливает описание для лицевого счёта и провоцирует его обновление.

#### Параметры
##### Параметры

- `description: str | None` - _(опционально)_ Новое описание для лицевого счёта

#### Результат
##### Результат

Событие с идентификатором `lkcomu_interrao_set_description` и следующими значениями:
- `success: bool` - Если установка описания была выполнена успешно
- `description: str | None` - Описание, с которым была вызвана служба
- `previous: str | None` - Описание, которым обладал (или, в случае ошибки, обладает) лицевой счёт
- `account_id: int` - Внутренний идентификатор лицевого счёта
- `account_code: str` - Номер лицевого счёта

#### `get_invoices` &mdash; Получение квитанций по периодам
> Только для объектов, поддерживающих данный функционал

##### Параметры

- `start: str | None` - _(опционально)_ Дата начала периода
- `end: str | None` - _(опционально)_ Дата начала периода

##### Результат

Событие с идентификатором `lkcomu_interrao_get_invoices` и следующими значениями:

- `sum: float` - сумма всех квитанций за указанный период
- `period: str` - период квитанции
- `invoice_id: str` - идентификатор квитанции
- `total: float` - сумма к оплате по квитанции
- `paid: float | None` - сумма оплат, учтённых к квитанции
- `initial: float | None` - задолженность/избыток на начало периода
- `charged: float | None` - начислено за период
- `insurance: float | None` - добровольное страхование
- `benefits: float | None` - льготы
- `penalty: float | None` - штрафы
- `service: float | None` - тех. обслуживание

#### `get_payments` &mdash; Получение платежей по периодам
> Только для объектов, поддерживающих данный функционал

##### Параметры

- `start: str | None` - _(опционально)_ Дата начала периода
- `end: str | None` - _(опционально)_ Дата начала периода

##### Результат

Событие с идентификатором `lkcomu_interrao_get_payments` и следующими значениями:

- `sum: float` - сумма всех платежей за указанный период
- `amount: float` - объём платежа
- `paid_at: str` - дата/время платежа
- `period: str` - период, за который платёж был выполнен
- `status: str | None` - состояние платежа
- `agent: str | None` - банк-обработчик платежа
- `group: str | None` - группа платежа (для лицевых счетов с несколькими типами платежей)

### Счётчики

#### `push_indications` &mdash; Передача показаний

> Только для объектов, поддерживающих данный функционал

#### `calculate_indications` &mdash; Подсчёт показаний

> Только для объектов, поддерживающих данный функционал

## Поддерживаемые ЛК

Ниже предъявлен перечень поддерживаемых ЛК с их внутренними идентификаторами.
Expand Down Expand Up @@ -614,4 +688,5 @@ lkcomu_interrao:
</details>

## Дополнительная информация

> @ TODO @
Loading

0 comments on commit e5ab342

Please sign in to comment.