hal-manager: add an asynchronous wait for bluez-alsa

Description

bluez-alsa may take some time to start, or may be restarted

The bluealsa plugin in hal-manager should be robust to that, asynchronously detect the bluez-alsa daemon availablity, and re-attempt a connection when the daemon is restarted

Environment

None

Activity

Thierry Bultel 
February 26, 2019 at 8:06 PM

see above comments

Thierry Bultel 
February 26, 2019 at 8:05 PM

Since the full correction on the bluez-alsa side will take some  more time, here what has been done:

  • patch bluez-alsa to declared a name on d-bus at startup

  • make bluealsa plugin in hal-manager have:

    • a request of available services at startup, looking for bluez-alsa

    • a match rule on the names changes on d-bus, watching for the bluez-alsa service availability

This way, the bluealsa plugin correction initializes at startup, and is also ready for a late arrival of the bluez-alsa service. Both services can therefore been started in whatever order.

Thierry Bultel 
January 22, 2019 at 2:38 PM

Here is the link to the pull request for bluez-alsa, and thus the discussion about the right way to implement it:

https://github.com/Arkq/bluez-alsa/pull/183

Fixed

Details

Assignee

Reporter

Fix versions

Labels

Contract ID

Priority

Created January 15, 2019 at 2:55 PM
Updated September 19, 2019 at 12:06 PM
Resolved February 26, 2019 at 8:06 PM