Skip to main content

subscribe_battery

Signature:

BoosterRobot.subscribe_battery(
callback: Callable[[BatteryState], None],
*,
queue_size: int = 0,
overflow: OverflowPolicy = "drop_oldest",
) -> SensorSubscription

Description:

Subscribe to battery state updates. When data arrives, the callback function receives a BatteryState object.

Parameters:

Parameter

Type

Default

Description

callback

Callable[[BatteryState], None]

Required

Battery state callback function.

queue_size

int

0

Pending callback queue size; 0 means unlimited.

overflow

OverflowPolicy

"drop_oldest"

Overflow policy when queue is full, see "Tasks and Subscriptions / OverflowPolicy".

Returns:

SensorSubscription, see "Tasks and Subscriptions / SensorSubscription"

Raises:

None.

Example:

import time
from boosteros.robots.booster import BoosterRobot
from boosteros.types import BatteryState

robot = BoosterRobot()

def on_battery(data: BatteryState) -> None:
print(data.percentage)
# Example output: 100.0

sub = robot.subscribe_battery(on_battery)
try:
time.sleep(2.0)
finally:
sub.unsubscribe()