Hi, On Sat, Aug 10, 2019 at 09:54:52AM +0300, Luiz Augusto von Dentz wrote: > Hi, > > On Sun, Jul 21, 2019 at 6:55 PM Pali Rohár <pali.rohar@xxxxxxxxx> wrote: > > > > On Thursday 18 July 2019 12:00:24 Pali Rohár wrote: > > > On Saturday 13 July 2019 17:52:46 Luiz Augusto von Dentz wrote: > > > > Hi Pali, > > > > > > > > On Fri, Jul 12, 2019 at 6:13 PM Luiz Augusto von Dentz > > > > <luiz.dentz@xxxxxxxxx> wrote: > > > > > > > > > > From: Luiz Augusto von Dentz <luiz.von.dentz@xxxxxxxxx> > > > > > > > > > > This uses application ObjectManager to discover the MediaEndpoint and > > > > > MediaPlayer object of an application and deprecates the use of > > > > > RegisterEndpoint and RegisterPlayer. > > > > > --- > > > > > doc/media-api.txt | 20 ++++++++++++++++++++ > > > > > 1 file changed, 20 insertions(+) > > > > > > > > > > diff --git a/doc/media-api.txt b/doc/media-api.txt > > > > > index bca8c9563..07f7ac3e0 100644 > > > > > --- a/doc/media-api.txt > > > > > +++ b/doc/media-api.txt > > > > > @@ -66,7 +66,27 @@ Methods void RegisterEndpoint(object endpoint, dict properties) > > > > > > > > > > Unregister sender media player. > > > > > > > > > > + void RegisterApplication(object root, dict options) > > > > > > > > > > + Register endpoints an player objects within root > > > > > + object which must implement ObjectManager. > > > > > + > > > > > + The application object path together with the D-Bus > > > > > + system bus connection ID define the identification of > > > > > + the application. > > > > > + > > > > > + Possible errors: org.bluez.Error.InvalidArguments > > > > > + org.bluez.Error.AlreadyExists > > > > > + > > > > > + void UnregisterApplication(object application) > > > > > + > > > > > + This unregisters the services that has been > > > > > + previously registered. The object path parameter > > > > > + must match the same value that has been used > > > > > + on registration. > > > > > + > > > > > + Possible errors: org.bluez.Error.InvalidArguments > > > > > + org.bluez.Error.DoesNotExist > > > > > Media Control hierarchy > > > > > ======================= > > > > > > > > > > -- > > > > > 2.21.0 > > > > > > > > Can you try this set? > > > > > > Hello, I will try it later in next week. To test it would mean to > > > rewrite pulseaudio bluetooth modules to use this new API, so it would > > > take me longer time. > > > > Hi! I looked at it. But I do not know how to implement > > GetManagedObjects() method via libdbus properly. Any idea? > > I went ahead and applied this set, you can find some examples of how > to implement ObjectManager interface in gdbus but I guess what you > really need to do is make PA aware of the objects being exposed since > it does make it simpler to to enumerate objects by the clients. > Pali: How does it look with porting the PA patches to use the new interfaces? Thanks, -- Pasi