PetroElectroSbyt API Wrapper
Project description
PESIC - PetroElektroSbyt Integrated Client
Установка
$ pip3 install -U pesic
Использование
from pesic.api import PESClient
import asyncio
username = "88005553535"
password = "ЧемУкогоТоЗанимать"
async def main():
client = PESClient(username=username, password=password)
# Получить список групп в личном кабинете
await client.get_groups()
# Получить список учетных записей для группы с ID 123456
await client.get_group_accounts(group_id=123456)
# Получить детали для учетной записи с ID 654321
await client.get_account_details(account_id=654321)
# Получить детали счетчиков для учетной записи с ID 654321
await client.get_meters_info(account_id=account)
# Передать показания для однотарифного счетчика
data = [{'scale_id': 1, 'scale_value': 9136}]
# Передать показания для двухтарифного счетчика
data = [{'scale_id': 2, 'scale_value': 9136}, {'scale_id': 3, 'scale_value': 2775}]
await client.set_meters_reading(account_id=654321, readings=data)
# Закрыть соединение
await client.close()
loop = asyncio.new_event_loop()
loop.run_until_complete(main())
Отладка
Bash:
export PESIC_LOGLEVEL="DEBUG"
Powershell:
$env:PESIC_LOGLEVEL="DEBUG"
Предостережение
Личный кабинет ПетроЭлектроСбыт поддерживает несколько типов учетных записей. Как классические, для передачи показаний потребления электроэнергии, так и учетные записи поставщиков холодной и горячей воды и, возможно, какие-то еще.
Метод set_meters_reading
выполняет несколько проверок:
- количество новых показаний в обновлении должно совпадать с текущим количеством счетчиков;
- текущий счетчик должен иметь все переданные
scale_id
; - текущий счетчик должен иметь показания меньше, чем те, что переданы в
scale_value
для данногоscale_id
Метод set_meters_reading в данный поддеживает только обновление однотарифных и двухтарифных счетчиков электроэнергии. Обновление счетчиков холодной и горячей воды не тестировалось и в данный момент не поддерживается.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file pesic-0.3.0.tar.gz
.
File metadata
- Download URL: pesic-0.3.0.tar.gz
- Upload date:
- Size: 8.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/4.0.2 CPython/3.11.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5ef3e7a14ac4f3dfad24f9902a6d9389d9231861787f10650170688ccd35ab3b |
|
MD5 | 4f3f6ebb9bcaa15b281db72df07dd824 |
|
BLAKE2b-256 | 416fad155b5b93750e17180ece9b51c3132c76fc3b46571840db7074ee069f61 |
File details
Details for the file pesic-0.3.0-py3-none-any.whl
.
File metadata
- Download URL: pesic-0.3.0-py3-none-any.whl
- Upload date:
- Size: 9.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/4.0.2 CPython/3.11.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 549fac54163ed533003a04f0417c97b37adcc59f47189e50fffd6d6aa7c9e221 |
|
MD5 | 8d0fbf95a3379cef662cc85ab5758a84 |
|
BLAKE2b-256 | 7d7471f37263b584932158f9aae03d4761fb3bb0792c33f7e260e3da48767965 |