ASCS: Handle when CIS link is established before enable

This commit is contained in:
Josh Wu
2025-08-05 13:49:09 +08:00
parent 5b33e715da
commit f61fd64c0b
2 changed files with 117 additions and 9 deletions

View File

@@ -452,6 +452,16 @@ class AseStateMachine(gatt.Characteristic):
self.metadata = le_audio.Metadata.from_bytes(metadata)
self.state = self.State.ENABLING
# CIS could be established before enable.
if cis_link := next(
(
cis_link
for cis_link in self.service.device.cis_links.values()
if cis_link.cig_id == self.cig_id and cis_link.cis_id == self.cis_id
),
None,
):
self.on_cis_establishment(cis_link)
return (AseResponseCode.SUCCESS, AseReasonCode.NONE)