Skip to content

Commit 3ebdbfb

Browse files
committed
Update main test script
1 parent 18a52b2 commit 3ebdbfb

File tree

1 file changed

+33
-16
lines changed

1 file changed

+33
-16
lines changed

main.py

Lines changed: 33 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55
import asyncio
66
from datetime import datetime
77

8+
from frequenz.client.reporting.formula_engine._formula_generators._pv_power_formula import PVPowerFormula, FormulaGeneratorConfig
9+
810
from frequenz.client.common.metric import Metric
911
def build_graph(json_data: dict) -> ComponentGraph:
1012
components = []
@@ -47,23 +49,38 @@ async def main():
4749
key = open("key.txt", "r").read().strip()
4850
client = ReportingApiClient(server_url="grpc://reporting.api.frequenz.com:443?ssl=true", key=key)
4951

50-
microgrid_id = 13
51-
component_ids = [256, 258]
52-
microgrid_components = [
53-
(microgrid_id, component_ids),
54-
]
55-
start_dt = datetime(2024, 9, 17)
56-
end_dt = datetime(2024, 9, 18)
57-
resolution = 900
52+
def get_receiver(component_id, metric_id):
53+
microgrid_id = 13
54+
component_ids = [component_id]
55+
microgrid_components = [
56+
(microgrid_id, component_ids),
57+
]
58+
59+
start_dt = datetime(2024, 9, 17)
60+
end_dt = datetime(2024, 9, 18)
61+
resolution = 900
62+
receiver = list_microgrid_components_data_receiver(
63+
client,
64+
microgrid_components=microgrid_components,
65+
metrics=[Metric.AC_ACTIVE_POWER],
66+
start_dt=start_dt,
67+
end_dt=end_dt,
68+
resolution=resolution,
69+
)
70+
return receiver
71+
72+
#async for sample in get_receiver(256, 4711):
73+
# print(sample)
74+
75+
formula = PVPowerFormula(
76+
get_receiver=get_receiver,
77+
config=FormulaGeneratorConfig(),
78+
component_graph=component_graph,
79+
)
5880

59-
async for sample in list_microgrid_components_data_receiver(
60-
client,
61-
microgrid_components=microgrid_components,
62-
metrics=[Metric.AC_ACTIVE_POWER],
63-
start_dt=start_dt,
64-
end_dt=end_dt,
65-
resolution=resolution,
66-
):
81+
engine = formula.generate()
82+
recv = engine.new_receiver()
83+
async for sample in recv:
6784
print(sample)
6885

6986
if __name__ == "__main__":

0 commit comments

Comments
 (0)