45 lines
1.1 KiB
Python
45 lines
1.1 KiB
Python
|
#!/usr/bin/env python3
|
||
|
from pyHS100 import SmartPlug
|
||
|
from influxdb import InfluxDBClient
|
||
|
from time import sleep
|
||
|
|
||
|
plug = SmartPlug("IP")
|
||
|
client = InfluxDBClient(database="dbase")
|
||
|
|
||
|
while True:
|
||
|
power = plug.get_emeter_realtime()['power']
|
||
|
client.write_points([{
|
||
|
"measurement": "power",
|
||
|
"fields": {
|
||
|
"value": power
|
||
|
}
|
||
|
}])
|
||
|
sleep(1)
|
||
|
|
||
|
voltage = plug.get_emeter_realtime()['voltage']
|
||
|
client.write_points([{
|
||
|
"measurement": "voltage",
|
||
|
"fields": {
|
||
|
"value": voltage
|
||
|
}
|
||
|
}])
|
||
|
sleep(1)
|
||
|
|
||
|
current = plug.get_emeter_realtime()['current']
|
||
|
client.write_points([{
|
||
|
"measurement": "current",
|
||
|
"fields": {
|
||
|
"value": current
|
||
|
}
|
||
|
}])
|
||
|
sleep(1)
|
||
|
|
||
|
total = plug.get_emeter_realtime()['total']
|
||
|
client.write_points([{
|
||
|
"measurement": "total",
|
||
|
"fields": {
|
||
|
"value": total
|
||
|
}
|
||
|
}])
|
||
|
sleep(1)
|