Draft: URI syntax to identify D-Bus resources
The current specification offers "Server Addresses", to allow description of listenable and connectable addresses. While this description is useful to configure basic connection details, it doesn't offer any way to identify a particular D-Bus resource, such as a service, an interface or an object. Furthermore, it doesn't conform with the standard RFC3986 URI syntax, which challenges applications with different mechanisms when they need to refer to heterogeneous resources.
Introduce a URI syntax for
dbus, with the general form:
A D-Bus URI doesn't replace a D-Bus address: it doesn't offer any "listenable" options. Also, a URI doesn't have multiple addresses fallback mechanism. They serve different purposes and are complementary.
dbus+tcp://myserver:3289 (either ipv4 or ipv6?))
(launchd & systemd should be covered by dbus+unix)
(autolaunch transport is not covered by the URI syntax at this point)
org.freedesktop.Interfaceon the session bus.
name parameter may be a well-known name or a unique name (a bus name).
Extra parameters can be added to URIs as part of the query string (the part following "?"). URIs understand the extra parameters shown below. Any others are passed unmodified through to the back end. Note that parameter values must be URI-escaped.
|guid||all||The server GUID|
|name, path, interface, property or method or signal||all||D-Bus resource identification|
|noncefile||tcp||File location containing the secret|
|argv0, argv1...||unixexec||Program arguments|