1 """Support for the QR code image processing."""
3 from __future__
import annotations
8 from pyzbar
import pyzbar
20 add_entities: AddEntitiesCallback,
21 discovery_info: DiscoveryInfoType |
None =
None,
23 """Set up the QR code image processing platform."""
25 QrEntity(camera[CONF_ENTITY_ID], camera.get(CONF_NAME))
26 for camera
in config[CONF_SOURCE]
31 """A QR image processing entity."""
34 """Initialize QR image processing entity."""
41 self.
_name_name = f
"QR {split_entity_id(camera_entity)[1]}"
46 """Return camera entity id from process pictures."""
51 """Return the state of the entity."""
56 """Return the name of the entity."""
57 return self.
_name_name
61 stream = io.BytesIO(image)
62 img = Image.open(stream)
64 barcodes = pyzbar.decode(img)
66 self.
_state_state = barcodes[0].data.decode(
"utf-8")
def __init__(self, camera_entity, name)
def process_image(self, image)
None add_entities(AsusWrtRouter router, AddEntitiesCallback async_add_entities, set[str] tracked)
None setup_platform(HomeAssistant hass, ConfigType config, AddEntitiesCallback add_entities, DiscoveryInfoType|None discovery_info=None)