<div dir="auto"><div>"<span style="font-family:sans-serif">the other bus" was a typo, I just meant "the bus".</span><br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">ons. 29. sep. 2021 09.57 skrev Anders Feder <<a href="mailto:anders.feder.83@gmail.com">anders.feder.83@gmail.com</a>>:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto"><div>No, that is the rub. In the example with two applications both deciding to take the bus name “org.mpris.MediaPlayer2.musicplayer”, you do in fact need both to available on the bus at the same time. Because otherwise one of them precludes the other from being controlled by clients.</div><div dir="auto"><br></div><div dir="auto">It is currently possible to have for instance VLC and Spotify both running and both controllable via MPRIS at the same time. But this is only possible because they happen to have different names and their programmers therefore have chosen to take different bus names.</div><div dir="auto"><br></div><div dir="auto">If they had chosen to take same bus name because they were not aware of each other, then one would either replace the other on the other bus or have to wait in queue as you say, thus preventing one of them from being controlled this way.</div><div dir="auto"><br></div><div dir="auto">The way MPRIS is designed, the programmer must choose a bus name and can then only pray that no other media player will try to use the same name. In my view, this is not a good design. I would be interested to understand if a better design could be made or if D-Bus could be extended to support this scenario or if not why not.</div><div dir="auto"><br></div><div dir="auto">Regards,</div><div dir="auto">Anders Feder<br><br><div class="gmail_quote" dir="auto"><div dir="ltr" class="gmail_attr">ons. 29. sep. 2021 09.27 skrev Lawrence D'Oliveiro <<a href="mailto:ldo@geek-central.gen.nz" target="_blank" rel="noreferrer">ldo@geek-central.gen.nz</a>>:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Wed, 29 Sep 2021 08:03:20 +0200, Anders Feder wrote:<br>
<br>
> If a person A creates an application named "Music Player" and have it<br>
> take the bus name "org.mpris.MediaPlayer2.musicplayer", there is no<br>
> procedure preventing a person B without knowledge of person A's<br>
> application from creating another application named "Music Player"<br>
> also taking the bus name "org.mpris.MediaPlayer2.musicplayer".<br>
<br>
It is true that D-Bus has no concept of “group” or “multicast” names;<br>
each name can belong to only one bus peer. But remember that, if you do<br>
not specify DBUS_NAME_FLAG_DO_NOT_QUEUE when trying to register a name<br>
and it is already taken, then you will be placed in a queue to get it<br>
when the existing owner relinquishes it.<br>
<br>
That way, anybody looking for “org.mpris.MediaPlayer2.musicplayer” only<br>
sees one. Quit that one, and the other should appear. After all, you<br>
only need one at a time, don’t you?<br>
</blockquote></div></div></div>
</blockquote></div></div></div>