Skip to content

Commit 0cd8d9a

Browse files
committed
Update class docstring example for PowerDistributingActor
Signed-off-by: Sahas Subramanian <[email protected]>
1 parent d2ff636 commit 0cd8d9a

File tree

1 file changed

+15
-14
lines changed

1 file changed

+15
-14
lines changed

src/frequenz/sdk/actor/power_distributing/power_distributing.py

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -139,27 +139,28 @@ class PowerDistributingActor:
139139
140140
battery_status_channel = Broadcast[BatteryStatus]("battery-status")
141141
142-
channel = Bidirectional[Request, Result]("user1", "power_distributor")
142+
channel = Broadcast[Request]("power_distributor")
143+
channel_registry = ChannelRegistry(name="power_distributor")
143144
power_distributor = PowerDistributingActor(
144-
users_channels={"user1": channel.service_handle},
145+
requests_receiver=channel.new_receiver(),
146+
channel_registry=channel_registry,
145147
battery_status_sender=battery_status_channel.new_sender(),
146148
)
147149
148-
# Start the actor
149-
await actor.run(power_distributor)
150-
151-
client_handle = channel.client_handle
152-
150+
sender = channel.new_sender()
151+
namespace: str = "namespace"
153152
# Set power 1200W to given batteries.
154-
request = Request(power=1200.0, batteries=batteries_ids, request_timeout_sec=10.0)
155-
await client_handle.send(request)
156-
157-
# Set power 1200W to given batteries.
158-
request = Request(power=1200, batteries=batteries_ids, request_timeout_sec=10.0)
159-
await client_handle.send(request)
153+
request = Request(
154+
namespace=namespace,
155+
power=1200.0,
156+
batteries=batteries_ids,
157+
request_timeout_sec=10.0
158+
)
159+
await sender.send(request)
160+
result_rx = channel_registry.new_receiver(namespace)
160161
161162
# It is recommended to use timeout when waiting for the response!
162-
result: Result = await asyncio.wait_for(client_handle.receive(), timeout=10)
163+
result: Result = await asyncio.wait_for(result_rx.receive(), timeout=10)
163164
164165
if isinstance(result, Success):
165166
print("Command succeed")

0 commit comments

Comments
 (0)