Предоставление информации о текущем состоянии ваших аккаунтов в ЕЛК ЖКХ.
Information retrieval from Inter RAO personal cabinets.
✔️️ Рекомендуемый метод
- Установите HACS (инструкция по установке на оф. сайте)
- Найдите
lkcomu_interrao
(илиИнтер РАО
) в поиске по интеграциям 1 - Установите последнюю версию компонента, нажав на кнопку
Установить
(Install
) - Перезапустите Home Assistant
⚠️ Не рекомендуется
- Скачайте архив с исходным кодом дополнения
- Извлеките папку
lkcomu_interrao
из архива в папкуcustom_components
внутри папки с конфигурацией Home Assistant (создайте её, если она отсутствует) - Перезапустите Home Assistant
- Перейдите в подраздел "Интеграции" в разделе "Настройки"
- Нажмите кнопку "Добавить интеграцию"
- Введите в поисковую строку: Личный кабинет Интер РАО (Энергосбыт) (англ. Inter RAO Personal Cabinet (Energosbyt))
- Выберите найденную интеграцию
- Следуйте инструкциям мастера по добавлению
Примечание: Поле Заголовок User-Agent (англ. User-Agent header) генерируется автоматически.
# Файл `configuration.yaml`
lkcomu_interrao:
# Тип выбранного ЛК
# Значение по умолчанию: moscow
# Перечень возможных значений:
# - altai (ЛК Алтай (АО «АлтайЭнергосбыт»))
# - bashkortostan (ЛКК ЭСКБ (Башэлектросбыт))
# - moscow (ЕЛК ЖКХ (АО «Мосэнергосбыт», МосОблЕИРЦ, ПАО «Россети Московский регион»))
# - oryol (ЛКК Орел (ООО «Орловский энергосбыт»))
# - saratov (ЛК Саратов (ПАО «Саратовэнерго»))
# - sevesk (ЕЛК Вологда (Северная сбытовая компания))
# - tambov (ЛК ТЭСК (Тамбовская энергосбытовая компания))
# - tomsk (ЕЛК Томск (Томскэнергосбыт / Томск РТС))
# - volga (ЛКК ЭСВ (Энергосбыт Волга))
type: "..."
# Имя пользователя
# Обязательный параметр
username: "..."
# Пароль
# Обязательный параметр
password: "..."
# Конфигурация по умолчанию для лицевых счетов
# Необязательный параметр
# # Данная конфигурация применяется, если отсутствует # конкретизация, указанная в разделе `accounts`.
default:
# Получать ли ссылки на логотипы
# Значение по умолчанию: истина (true)
logos: true | false
# Добавлять ли объект(-ы): Информация о лицевом счёте
# Значение по умолчанию: истина (true)
accounts: true | false
# Добавлять ли объект(-ы): Счётчик коммунальных услуг
# Значение по умолчанию: истина (true)
meters: true | false
# Добавлять ли объект(-ы): Последний зарегистрированный платёж
# Значение по умолчанию: истина (true)
last_payment: true | false
# Добавлять ли объект(-ы): Последняя выпущенная квитанция
# Значение по умолчанию: истина (true)
last_invoice: true | false
# Настройки для отдельных лицевых счетов
# Необязательный параметр
accounts:
# Номер лицевого счёта
"...":
# Конфигурация по конкретным лицевым счетам выполняется аналогично
# конфигурации по умолчанию для лицевых счетов (раздел `default`).
...
Для реализации белого списка, конфигурация выполняется следующим образом:
...
lkcomu_interrao:
...
# Выборочное исключение лицевых счетов
accounts:
# Все указанные ниже лицевые счета будут добавлены
"12345-678-90": false
"98765-432-10": false
"111000111000": false
Для реализации белого списка, конфигурация выполняется следующим образом:
...
lkcomu_interrao:
...
# Отключение добавление лицевых счетов по умолчанию
default: false
# Выборочное включение лицевых сченов
accounts:
# Все указанные ниже лицевые счета будут добавлены
"12345-678-90": true
"98765-432-10": true
"111000111000": true
Также возможно использовать укороченную запись:
...
lkcomu_interrao:
...
# Данный пример функционально эквивалентен предыдущему примеру
default: false
accounts: ["12345-678-90", "98765-432-10", "111000111000"]
Все объекты гарантируют наличие и полноту следующих атрибутов:
account_code: str
- Номер лицевого счётаaccount_id: int
- Внутренний идентификатор лицевого счёта
Домен объектов:
sensor
Объект лицевого счёта отображает основную информацию о лицевом счёте, а также его баланс (положительное значение) или имеющуюся задолженность (отрицательное значение) 1.
Состояние объекта может принимать следующие значения:
unknown
- Информация о состоянии баланса не была предоставлена- число - Текущее состояние баланса
1 ... в том случае, если лицевой счёт предоставляет информацию о балансе
Данные службы применимы только к объектам лицевых счетов
Устанавливает описание для лицевого счёта и провоцирует его обновление.
description: str | None
- (опционально) Новое описание для лицевого счёта
Событие с идентификатором lkcomu_interrao_set_description
и следующими значениями:
success: bool
- Если установка описания была выполнена успешноdescription: str | None
- Описание, с которым была вызвана службаprevious: str | None
- Описание, которым обладал (или, в случае ошибки, обладает) лицевой счётaccount_id: int
- Внутренний идентификатор лицевого счётаaccount_code: str
- Номер лицевого счёта
Только для объектов, поддерживающих данный функционал
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
- тех. обслуживание
Только для объектов, поддерживающих данный функционал
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
- группа платежа (для лицевых счетов с несколькими типами платежей)
Домен объектов:
sensor
Объект счётчика отображает информацию о счётчике, а также сведения о последних переданных показаниях и диапазоне периода передачи показаний1.
Состояние объекта может принимать следующие значения:
ok
- Текстовое описание состояния отсутствует- текст - Текстовое описание состояние счётчика (может быть любой длины, и содержать в себе любой набор символов, в т.ч. HTML-теги)
Объект гарантирует наличие и полноту следующих атрибутов:
meter_code
- Номер счётчикаinstall_date
- Дата установкиsubmit_period_start
- Дата начала периода передачи показаний (в текущем месяце) 1submit_period_end
- Дата окончания периода передачи показаний (в текущем месяце) 1submit_period_active
- Флаг активности периода передачи показаний 1zone_t[N]_name
- Наименование тарифной зоны / тарифаzone_t[N]_last_indication
- Последнее показание по тарифной зоне 2
Объект гарантирует наличие, но не полноту следующих атрибутов:
model
- Модель счётчикаlast_indications_date
- Дата последней передачи показанийzone_t[N]_description
- Описание тарифной зоны / тарифаzone_t[N]_today_indication
- Значение переданного сегодня показания по тарифной зонеzone_t[N]_invoice_indication
- Значение последнего показания по тарифной зоне, учтённому в квитанцииzone_t[N]_period_indication
- Значение переданного за период показания по тарифной зоне 1zone_t[N]_invoice_name
- Наименование тарифной зоны, указанное в последней квитанции
1 ... в том случае, если счётчик поддерживает передачу показаний
2 При отсутствии фактического значения атрибут примет значение 0.0
Данные службы применимы только к объектам счётчиков
Только для объектов, поддерживающих данный функционал
Служба передачи показаний позволяет отправлять показания по счётчикам в личный кабинет, и имеет следующий набор параметров:
Название | Описание |
---|---|
target |
Выборка целевых объектов, для которых требуется передавать показания |
data .indications |
Список / именованный массив показаний, передаваемых в ЛК |
data .incremental |
Суммирование текущих показаний с передаваемыми |
data .ignore_period |
Игнорировать период передачи показаний |
data .ignore_indications |
Игнорировать ограничения по значениям |
- Например, если передача показаний активна с 15 по 25 число, а сегодня 11, то показания не будут отправлены1.
- Например, если текущие, последние или принятые значения по счётчику – 321, 654 и 987 по зонам Т1, Т2 и Т3 соответственно, то показания не будут отправлены1.
service: lkcomu_interrao.push_indications
data:
indications: "123, 456, 789"
target:
entity_id: sensor.1243145122_meter_123456789
... или, с помощью именованного массива:
service: lkcomu_interrao.calculate_indications
data:
indications:
t1: 123
t2: 456
t3: 789
target:
entity_id: sensor.1243145122_meter_123456789
... или, с помощью списка:
service: lkcomu_interrao.calculate_indications
data:
indications: [123, 456, 789]
target:
entity_id: sensor.1243145122_meter_123456789
Отключение всех ограничений по показаниям.
- Например, если передача показаний активна с 15 по 25 число, а сегодня 11, то показания будут отправлены1.
- Например, если текущие, последние или принятые значения по счётчику – 321, 654 и 987 по зонам Т1, Т2 и Т3 соответственно, то показания будут отправлены1.
service: lkcomu_interrao.calculate_indications
data_template:
indications: [123, 456, 789]
ignore_indications: true
ignore_periods: true
target:
entity_id: sensor.1243145122_meter_123456789
- Например, если передача показаний активна с 15 по 25 число, а сегодня 11, то показания не будут отправлены1.
- Например, если текущие, последние или принятые значения по счётчику – 321, 654 и 987 по зонам Т1, Т2 и Т3 соответственно, то показания будут отправлены1.
Внимание: в данном примере будут отправлены показания 444, 1110 и 1776, а не 123, 456 и 789.
service: lkcomu_interrao.calculate_indications
data_template:
indications: [123, 456, 789]
incremental: true
target:
entity_id: sensor.1243145122_meter_123456789
Только для объектов, поддерживающих данный функционал
Домен объектов:
binary_sensor
Объект последнего платежа отображает информацию о последнем зарегистрированном платеже, связанном с лицевым счётом.
Состояние объекта может принимать следующие значения:
on
- Платёж был обработанoff
- Платёж ещё не обработанunknown
- Последний платёж не был найден
Объект гарантирует наличие и полноту следующих атрибутов:
amount: float
- Сумма платежаpaid_at: str
- Дата и время платежаperiod: str
- Период, за который был выполнен платёж
Объект гарантирует наличие, но не полноту, следующих атрибутов:
status: str | None
- Состояние платежаagent: str | None
- Банк, проводящий платёжgroup: str | None
- Группа платежа (для лицевых счетов с несколькими источниками платежей)
Домен объектов:
sensor
@ TODO @
Ниже предъявлен перечень поддерживаемых ЛК с их внутренними идентификаторами.
Данные идентификаторы используются как значение для поля type
.
Внимание: Поддерживаются только ЛК физических лиц. Поддержка ЛК юридических лиц не планируется.
...
lkcomu_interrao:
type: moscow
username: username1
password: password1
Для поставщика реализована поддержка следующих объектов:
Для поставщика реализована поддержка следующих объектов:
Для поставщика реализована поддержка следующих объектов:
Для поставщика реализована поддержка следующих объектов:
Последний зарегистрированный платёж
Снимок экрана отсутствуетСчётчик коммунальных услуг
Снимок экрана отсутствует...
lkcomu_interrao:
type: oryol
username: username1
password: password1
Для поставщика реализована поддержка следующих объектов:
Для поставщика реализована поддержка следующих объектов:
...
lkcomu_interrao:
type: volga
username: username1
password: password1
Для поставщика реализована поддержка следующих объектов:
...
lkcomu_interrao:
type: tomsk
username: username1
password: password1
Для поставщика реализована поддержка следующих объектов:
...
lkcomu_interrao:
type: tambov
username: username1
password: password1
Для поставщика реализована поддержка следующих объектов:
...
lkcomu_interrao:
type: sevesk
username: username1
password: password1
Для поставщика реализована поддержка следующих объектов:
...
lkcomu_interrao:
type: saratov
username: username1
password: password1
Для поставщика реализована поддержка следующих объектов:
...
lkcomu_interrao:
type: bashkortostan
username: username1
password: password1
Для поставщика реализована поддержка следующих объектов:
...
lkcomu_interrao:
type: altai
username: username1
password: password1
Для поставщика реализована поддержка следующих объектов:
Компонент находится в активной разработке. Примерная дорожная карта и план развития:
[0.0.1; 0.1.0)
— первичная обкатка компонента на поддерживаемых поставщиках;[0.1.0; 0.2.0)
— разработка визуального конфигуратора для интеграции;[0.2.0; 1.0.0)
— выполнение задач по оптимизации и чистке кода;[1.0.0; .....)
— финальный выпуск компонента и исправление ошибок.
Увеличение старшей версии сопутствует:
- изменениям в конфигурационной схеме;
- удалению функционала;
- расширению сферы применения интеграции.
Увеличение младшей версии сопутствует:
- добавлению нового функционала;
- исправлению значительных ошибок.
Увеличение номера сборки сопутствует:
- исправлению мелких ошибок / выпуску хотфиксов;
- изменениям во взаимодействии с основополагающей библиотекой (или её версии).