通过Socket.IO API访问Loop Energy能源监控器
项目描述
PyLoopEnergy
此库提供了一个Python API来访问提供电力和天然气监控器的Loop Energy。
它使用他们的服务提供每10秒更新一次的电力读数,以及每15分钟更新一次的天然气读数。
要使用此服务,您需要设备客户端序列号和密钥。
您可以通过登录到your-loop.com,打开浏览器控制台,并输入Drupal.settings.navetas_realtime
来获取这些信息。
(有关如何操作的更详细文档,请参阅此处 https://home-assistant.io/components/sensor.loop_energy/)
您应保留您的密钥, 保密!
感谢Marcos Scriven提供了节点实现,我毫无保留地借鉴了它。 https://github.com/marcosscriven/loop
数据以kw返回。
依赖关系
PyLoopEnergy依赖于socketIO-client。它需要支持socket.IO版本0.9的版本0.5.6,而不是1.0。
如何使用
>> import pyloopenergy
>> elec_serial = 'your serial'
>> elec_secret = 'your_secret'
>> le = pyloopenergy.LoopEnergy(elec_serial, elec_secret)
>> le.electricity_useage
0.602
>> le.terminate()
说明
- 数据是异步获取的,因此如果您在创建它后直接调用
electricity_useage
,则可能不会填充le
。API提供更新时的回调函数(下面有一个简单示例)。 - 在调用
terminate
后,可能需要15秒来终止监控线程。
简单的订阅示例
import pyloopenergy
import time
def gas_trace():
print("Gas =", le.gas_useage)
def elec_trace():
print("Electricity =", le.electricity_useage)
elec_serial = '00000';
elec_secret = 'YYYYYY';
gas_serial = '11111';
gas_secret = 'ZZZZZ';
le = pyloopenergy.LoopEnergy(elec_serial, elec_secret, gas_serial, gas_secret)
le.subscribe_gas(gas_trace)
le.subscribe_elecricity(elec_trace)
time.sleep(120)
le.terminate()
time.sleep(60)
这将产生以下输出。
Electricity = 1.13
Gas = 0.0
Electricity = 1.116
煤气表类型和热值
库支持公制和英制煤气表(读取立方米或立方英尺的100倍)
默认单位是公制米,但您也可以指定英制或公制米。
le = pyloopenergy.LoopEnergy(elec_serial, elec_secret, gas_serial, gas_secret, pyloopenergy.IMPERIAL)
le = pyloopenergy.LoopEnergy(elec_serial, elec_secret, gas_serial, gas_secret, pyloopenergy.METRIC)
要从体积读数转换为千瓦,库需要知道每米气体的能量含量。默认值为39.11,但您可以根据需要使用供应商提供的实际数字。
le = pyloopenergy.LoopEnergy(elec_serial, elec_secret, gas_serial, gas_secret, pyloopenergy.IMPERIAL, 39.1)
le = pyloopenergy.LoopEnergy(elec_serial, elec_secret, gas_serial, gas_secret, pyloopenergy.METRIC, 39.1)
项目详情
下载文件
下载您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分发
pyloopenergy-0.2.1.tar.gz (5.1 kB 查看散列值)
构建分发
pyloopenergy-0.2.1-py3-none-any.whl (5.1 kB 查看散列值)
关闭
pyloopenergy-0.2.1.tar.gz 的散列值
算法 | 散列摘要 | |
---|---|---|
SHA256 | 84f44b3601a9438b52bbbf9bc9cc8241d8263c35f99b9237ef4240d4e2ed7e61 |
|
MD5 | 799e24afdf5abd44df962253b3784dad |
|
BLAKE2b-256 | a43f63e8e62229eb20708b732fde1640969097b87d0a8bb50a25b10c6773b025 |
关闭
pyloopenergy-0.2.1-py3-none-any.whl 的散列值
算法 | 散列摘要 | |
---|---|---|
SHA256 | d83f4b2814e1a7f18739e3c7325fe53c0bec1b7767d503fe35534bab6cbd41e4 |
|
MD5 | 0cb597ef6d160cfb995d4026ea85ee28 |
|
BLAKE2b-256 | 25afb68eb31c70e8a8bc67e08afaf33be3dae4a6f6e3daf40e4005883a262222 |