powervaultpy 0.0.7__tar.gz → 0.0.8__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {powervaultpy-0.0.7 → powervaultpy-0.0.8}/PKG-INFO +1 -1
- {powervaultpy-0.0.7 → powervaultpy-0.0.8}/pyproject.toml +1 -1
- {powervaultpy-0.0.7 → powervaultpy-0.0.8}/src/powervaultpy/powervault.py +24 -0
- {powervaultpy-0.0.7 → powervaultpy-0.0.8}/src/powervaultpy.egg-info/PKG-INFO +1 -1
- {powervaultpy-0.0.7 → powervaultpy-0.0.8}/setup.cfg +0 -0
- {powervaultpy-0.0.7 → powervaultpy-0.0.8}/src/powervaultpy/__init__.py +0 -0
- {powervaultpy-0.0.7 → powervaultpy-0.0.8}/src/powervaultpy.egg-info/SOURCES.txt +0 -0
- {powervaultpy-0.0.7 → powervaultpy-0.0.8}/src/powervaultpy.egg-info/dependency_links.txt +0 -0
- {powervaultpy-0.0.7 → powervaultpy-0.0.8}/src/powervaultpy.egg-info/requires.txt +0 -0
- {powervaultpy-0.0.7 → powervaultpy-0.0.8}/src/powervaultpy.egg-info/top_level.txt +0 -0
@@ -144,6 +144,30 @@ class PowerVault:
|
|
144
144
|
|
145
145
|
_LOGGER.error("Failed to retrieve data")
|
146
146
|
|
147
|
+
def get_kwh(self, data: dict) -> dict:
|
148
|
+
# List of attributes to retrieve from data dict
|
149
|
+
attributes = [
|
150
|
+
"batteryInputFromGrid",
|
151
|
+
"batteryInputFromSolar",
|
152
|
+
"batteryOutputConsumedByHome",
|
153
|
+
"batteryOutputExported",
|
154
|
+
"homeConsumed",
|
155
|
+
"gridConsumedByHome",
|
156
|
+
"solarConsumedByHome",
|
157
|
+
"solarExported",
|
158
|
+
"solarGenerated",
|
159
|
+
]
|
160
|
+
# For each attribute, loop through the data dict and conver the W reading to kWh over the 5 minute period
|
161
|
+
totals = {}
|
162
|
+
for row in data:
|
163
|
+
for attribute in attributes:
|
164
|
+
if attribute in row:
|
165
|
+
if attribute not in totals:
|
166
|
+
totals[attribute] = 0
|
167
|
+
totals[attribute] += round(row[attribute] / 1000 * (5/60), 2)
|
168
|
+
|
169
|
+
return totals
|
170
|
+
|
147
171
|
def set_battery_state(self, unit_id: str, battery_state) -> bool:
|
148
172
|
"""Override the current battery status with the provided one."""
|
149
173
|
url = f"{self._base_url}/unit/{unit_id}/stateOverride"
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|