src.bluetooth_sig.advertising.registry

Registry for advertising data interpreter routing.

Attributes

Classes

Name

Description

AdvertisingInterpreterRegistry

Routes advertisements to interpreter classes.

Module Contents

class src.bluetooth_sig.advertising.registry.AdvertisingInterpreterRegistry

Routes advertisements to interpreter classes.

Does NOT manage interpreter instances - Device owns those. Only handles class registration and lookup.

clear() None

Clear all registered interpreters.

find_all_interpreter_classes(manufacturer_data: dict[int, bytes], service_data: dict[bluetooth_sig.types.uuid.BluetoothUUID, bytes], local_name: str | None) list[type[bluetooth_sig.advertising.base.AdvertisingDataInterpreter[Any]]]

Find all interpreter classes that handle this advertisement.

find_interpreter_class(manufacturer_data: dict[int, bytes], service_data: dict[bluetooth_sig.types.uuid.BluetoothUUID, bytes], local_name: str | None) type[bluetooth_sig.advertising.base.AdvertisingDataInterpreter[Any]] | None

Find first interpreter class that handles this advertisement.

get_registered_interpreters() list[type[bluetooth_sig.advertising.base.AdvertisingDataInterpreter[Any]]]

Get all registered interpreter classes.

register(interpreter_class: type[bluetooth_sig.advertising.base.AdvertisingDataInterpreter[Any]]) None

Register an interpreter class (called by AdvertisingDataInterpreter.__init_subclass__).

unregister(interpreter_class: type[bluetooth_sig.advertising.base.AdvertisingDataInterpreter[Any]]) None

Unregister an interpreter class.

src.bluetooth_sig.advertising.registry.advertising_interpreter_registry
src.bluetooth_sig.advertising.registry.logger