summaryrefslogtreecommitdiffstats
path: root/src/interfaces
diff options
context:
space:
mode:
authorEmanoil Kotsev <[email protected]>2018-11-12 21:18:37 +0100
committerEmanoil Kotsev <[email protected]>2023-01-14 03:44:08 +0000
commite274309d9293777aaaecebccaa29a339a05bd4f9 (patch)
treea00349c31b90cdedaa6e351dfe93950b55903dce /src/interfaces
parent63c233987977aa48b701edeb47079a6153359fbe (diff)
downloadtdebluez-e274309d9293777aaaecebccaa29a339a05bd4f9.tar.gz
tdebluez-e274309d9293777aaaecebccaa29a339a05bd4f9.zip
Based on KDE3 bluez4 version a TDE bluez5 version was created
Signed-off-by: Emanoil Kotsev <[email protected]>
Diffstat (limited to 'src/interfaces')
-rw-r--r--src/interfaces/org.bluez.MediaPlayer1.xml55
-rw-r--r--src/interfaces/org.bluez.adapter.xml88
-rw-r--r--src/interfaces/org.bluez.device.xml112
-rw-r--r--src/interfaces/org.bluez.manager.xml43
-rw-r--r--src/interfaces/org.bluez.obex.Agent1.xml23
-rw-r--r--src/interfaces/org.bluez.obex.client.xml201
-rw-r--r--src/interfaces/org.freedesktop.DBus.ObjectManager.xml24
-rw-r--r--src/interfaces/org.mpris.MediaPlayer2.xml143
-rw-r--r--src/interfaces/org.tdebluez.agent.xml51
9 files changed, 740 insertions, 0 deletions
diff --git a/src/interfaces/org.bluez.MediaPlayer1.xml b/src/interfaces/org.bluez.MediaPlayer1.xml
new file mode 100644
index 0000000..1ce4d59
--- /dev/null
+++ b/src/interfaces/org.bluez.MediaPlayer1.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0"?>
+<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN" "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
+<node>
+<!--
+ <interface name="org.freedesktop.DBus.Introspectable">
+ <method name="Introspect">
+ <arg name="xml" type="s" direction="out"/>
+ </method>
+ </interface>
+-->
+ <interface name="org.bluez.MediaPlayer1">
+ <method name="Play"/>
+ <method name="Pause"/>
+ <method name="Stop"/>
+ <method name="Next"/>
+ <method name="Previous"/>
+ <method name="FastForward"/>
+ <method name="Rewind"/>
+ <property name="Name" type="s" access="read"/>
+ <property name="Type" type="s" access="read"/>
+ <property name="Subtype" type="s" access="read"/>
+ <property name="Position" type="u" access="read"/>
+ <property name="Status" type="s" access="read"/>
+ <property name="Equalizer" type="s" access="readwrite"/>
+ <property name="Repeat" type="s" access="readwrite"/>
+ <property name="Shuffle" type="s" access="readwrite"/>
+ <property name="Scan" type="s" access="readwrite"/>
+ <property name="Track" type="a{sv}" access="read"/>
+ <property name="Device" type="o" access="read"/>
+ <property name="Browsable" type="b" access="read"/>
+ <property name="Searchable" type="b" access="read"/>
+ <property name="Playlist" type="o" access="read"/>
+ </interface>
+ <interface name="org.freedesktop.DBus.Properties">
+ <method name="Get">
+ <arg name="interface" type="s" direction="in"/>
+ <arg name="name" type="s" direction="in"/>
+ <arg name="value" type="v" direction="out"/>
+ </method>
+ <method name="Set">
+ <arg name="interface" type="s" direction="in"/>
+ <arg name="name" type="s" direction="in"/>
+ <arg name="value" type="v" direction="in"/>
+ </method>
+ <method name="GetAll">
+ <arg name="interface" type="s" direction="in"/>
+ <arg name="properties" type="a{sv}" direction="out"/>
+ </method>
+ <signal name="PropertiesChanged">
+ <arg name="interface" type="s"/>
+ <arg name="changed_properties" type="a{sv}"/>
+ <arg name="invalidated_properties" type="as"/>
+ </signal>
+ </interface>
+</node>
diff --git a/src/interfaces/org.bluez.adapter.xml b/src/interfaces/org.bluez.adapter.xml
new file mode 100644
index 0000000..4cdd6a5
--- /dev/null
+++ b/src/interfaces/org.bluez.adapter.xml
@@ -0,0 +1,88 @@
+<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
+"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
+<node>
+<!--
+ <interface name="org.freedesktop.DBus.Introspectable">
+ <method name="Introspect">
+ <arg name="xml" type="s" direction="out" />
+ </method>
+ </interface>
+ -->
+ <interface name="org.bluez.Adapter1">
+ <method name="StartDiscovery"></method>
+ <method name="SetDiscoveryFilter">
+ <arg name="properties" type="a{sv}" direction="in" />
+ </method>
+ <method name="StopDiscovery"></method>
+ <method name="RemoveDevice">
+ <arg name="device" type="o" direction="in" />
+ </method>
+ <property name="Address" type="s" access="read"></property>
+ <property name="Name" type="s" access="read"></property>
+ <property name="Alias" type="s" access="readwrite"></property>
+ <property name="Class" type="u" access="read"></property>
+ <property name="Powered" type="b" access="readwrite"></property>
+ <property name="Discoverable" type="b" access="readwrite"></property>
+ <property name="DiscoverableTimeout" type="u" access="readwrite"></property>
+ <property name="Pairable" type="b" access="readwrite"></property>
+ <property name="PairableTimeout" type="u" access="readwrite"></property>
+ <property name="Discovering" type="b" access="read"></property>
+ <property name="UUIDs" type="as" access="read"></property>
+ <property name="Modalias" type="s" access="read"></property>
+ </interface>
+ <interface name="org.freedesktop.DBus.Properties">
+ <method name="Get">
+ <arg name="interface" type="s" direction="in" />
+ <arg name="name" type="s" direction="in" />
+ <arg name="value" type="v" direction="out" />
+ </method>
+ <method name="Set">
+ <arg name="interface" type="s" direction="in" />
+ <arg name="name" type="s" direction="in" />
+ <arg name="value" type="v" direction="in" />
+ </method>
+ <method name="GetAll">
+ <arg name="interface" type="s" direction="in" />
+ <arg name="properties" type="a{sv}" direction="out" />
+ </method>
+ <signal name="PropertiesChanged">
+ <arg name="interface" type="s" />
+ <arg name="changed_properties" type="a{sv}" />
+ <arg name="invalidated_properties" type="as" />
+ </signal>
+ </interface>
+ <interface name="org.bluez.GattManager1">
+ <method name="RegisterApplication">
+ <arg name="application" type="o" direction="in" />
+ <arg name="options" type="a{sv}" direction="in" />
+ </method>
+ <method name="UnregisterApplication">
+ <arg name="application" type="o" direction="in" />
+ </method>
+ </interface>
+ <interface name="org.bluez.Media1">
+ <method name="RegisterEndpoint">
+ <arg name="endpoint" type="o" direction="in" />
+ <arg name="properties" type="a{sv}" direction="in" />
+ </method>
+ <method name="UnregisterEndpoint">
+ <arg name="endpoint" type="o" direction="in" />
+ </method>
+ <method name="RegisterPlayer">
+ <arg name="player" type="o" direction="in" />
+ <arg name="properties" type="a{sv}" direction="in" />
+ </method>
+ <method name="UnregisterPlayer">
+ <arg name="player" type="o" direction="in" />
+ </method>
+ </interface>
+ <interface name="org.bluez.NetworkServer1">
+ <method name="Register">
+ <arg name="uuid" type="s" direction="in" />
+ <arg name="bridge" type="s" direction="in" />
+ </method>
+ <method name="Unregister">
+ <arg name="uuid" type="s" direction="in" />
+ </method>
+ </interface>
+</node> \ No newline at end of file
diff --git a/src/interfaces/org.bluez.device.xml b/src/interfaces/org.bluez.device.xml
new file mode 100644
index 0000000..7715379
--- /dev/null
+++ b/src/interfaces/org.bluez.device.xml
@@ -0,0 +1,112 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<node>
+<!--
+ <interface name="org.freedesktop.DBus.Introspectable">
+ <method name="Introspect">
+ <arg name="xml" type="s" direction="out" />
+ </method>
+ </interface>
+-->
+ <interface name="org.bluez.Device1">
+ <method name="Disconnect">
+ <annotation name="org.freedesktop.DBus.GLib.Async"/>
+ </method>
+ <method name="Connect">
+ <annotation name="org.freedesktop.DBus.GLib.Async"/>
+ </method>
+ <method name="ConnectProfile">
+ <annotation name="org.freedesktop.DBus.GLib.Async"/>
+ <arg name="UUID" type="s" direction="in" />
+ </method>
+ <method name="DisconnectProfile">
+ <annotation name="org.freedesktop.DBus.GLib.Async"/>
+ <arg name="UUID" type="s" direction="in" />
+ </method>
+ <method name="Pair">
+ <annotation name="org.freedesktop.DBus.GLib.Async"/>
+ </method>
+ <method name="CancelPairing">
+ <annotation name="org.freedesktop.DBus.GLib.Async"/>
+ </method>
+ <property name="Address" type="s" access="read"></property>
+ <property name="Name" type="s" access="read"></property>
+ <property name="Alias" type="s" access="readwrite"></property>
+ <property name="Class" type="u" access="read"></property>
+ <property name="Appearance" type="q" access="read"></property>
+ <property name="Icon" type="s" access="read"></property>
+ <property name="Paired" type="b" access="read"></property>
+ <property name="Trusted" type="b" access="readwrite"></property>
+ <property name="Blocked" type="b" access="readwrite"></property>
+ <property name="LegacyPairing" type="b" access="read"></property>
+ <property name="RSSI" type="n" access="read"></property>
+ <property name="Connected" type="b" access="read"></property>
+ <property name="UUIDs" type="as" access="read"></property>
+ <property name="Modalias" type="s" access="read"></property>
+ <property name="Adapter" type="o" access="read"></property>
+ <property name="ManufacturerData" type="a{qv}" access="read"></property>
+ <property name="ServiceData" type="a{sv}" access="read"></property>
+ <property name="TxPower" type="n" access="read"></property>
+ <property name="ServicesResolved" type="b" access="read"></property>
+ </interface>
+ <interface name="org.freedesktop.DBus.Properties">
+ <method name="Get">
+ <arg name="interface" type="s" direction="in" />
+ <arg name="name" type="s" direction="in" />
+ <arg name="value" type="v" direction="out" />
+ </method>
+ <method name="Set">
+ <arg name="interface" type="s" direction="in" />
+ <arg name="name" type="s" direction="in" />
+ <arg name="value" type="v" direction="in" />
+ </method>
+ <method name="GetAll">
+ <arg name="interface" type="s" direction="in" />
+ <arg name="properties" type="a{sv}" direction="out" />
+ </method>
+ <signal name="PropertiesChanged">
+ <arg name="interface" type="s" />
+ <arg name="changed_properties" type="a{sv}" />
+ <arg name="invalidated_properties" type="as" />
+ </signal>
+ </interface>
+ <interface name="org.bluez.MediaControl1">
+ <method name="Play">
+ <annotation name="org.freedesktop.DBus.Deprecated"
+ value="true" />
+ </method>
+ <method name="Pause">
+ <annotation name="org.freedesktop.DBus.Deprecated"
+ value="true" />
+ </method>
+ <method name="Stop">
+ <annotation name="org.freedesktop.DBus.Deprecated"
+ value="true" />
+ </method>
+ <method name="Next">
+ <annotation name="org.freedesktop.DBus.Deprecated"
+ value="true" />
+ </method>
+ <method name="Previous">
+ <annotation name="org.freedesktop.DBus.Deprecated"
+ value="true" />
+ </method>
+ <method name="VolumeUp">
+ <annotation name="org.freedesktop.DBus.Deprecated"
+ value="true" />
+ </method>
+ <method name="VolumeDown">
+ <annotation name="org.freedesktop.DBus.Deprecated"
+ value="true" />
+ </method>
+ <method name="FastForward">
+ <annotation name="org.freedesktop.DBus.Deprecated"
+ value="true" />
+ </method>
+ <method name="Rewind">
+ <annotation name="org.freedesktop.DBus.Deprecated"
+ value="true" />
+ </method>
+ <property name="Connected" type="b" access="read"></property>
+ <property name="Player" type="o" access="read"></property>
+ </interface>
+</node> \ No newline at end of file
diff --git a/src/interfaces/org.bluez.manager.xml b/src/interfaces/org.bluez.manager.xml
new file mode 100644
index 0000000..5c16ffa
--- /dev/null
+++ b/src/interfaces/org.bluez.manager.xml
@@ -0,0 +1,43 @@
+<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
+"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
+<node>
+<!--
+ <interface name="org.freedesktop.DBus.Introspectable">
+ <method name="Introspect">
+ <arg name="xml" type="s" direction="out" />
+ </method>
+ </interface>
+ -->
+ <interface name="org.bluez.AgentManager1">
+ <method name="RegisterAgent">
+ <arg name="agent" type="o" direction="in" />
+ <arg name="capability" type="s" direction="in" />
+ </method>
+ <method name="UnregisterAgent">
+ <arg name="agent" type="o" direction="in" />
+ </method>
+ <method name="RequestDefaultAgent">
+ <arg name="agent" type="o" direction="in" />
+ </method>
+ </interface>
+ <interface name="org.bluez.ProfileManager1">
+ <method name="RegisterProfile">
+ <arg name="profile" type="o" direction="in" />
+ <arg name="UUID" type="s" direction="in" />
+ <arg name="options" type="a{sv}" direction="in" />
+ </method>
+ <method name="UnregisterProfile">
+ <arg name="profile" type="o" direction="in" />
+ </method>
+ </interface>
+ <interface name="org.bluez.HealthManager1">
+ <method name="CreateApplication">
+ <arg name="config" type="a{sv}" direction="in" />
+ <arg name="application" type="o" direction="out" />
+ </method>
+ <method name="DestroyApplication">
+ <arg name="application" type="o" direction="in" />
+ </method>
+ </interface>
+ <node name="hci0" />
+</node> \ No newline at end of file
diff --git a/src/interfaces/org.bluez.obex.Agent1.xml b/src/interfaces/org.bluez.obex.Agent1.xml
new file mode 100644
index 0000000..e7a0289
--- /dev/null
+++ b/src/interfaces/org.bluez.obex.Agent1.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- https://github.com/r10r/bluez/blob/master/doc/obex-agent-api.txt -->
+<node name="/org/trinitydesktop/tdeobex">
+<!-- <interface name="org.freedesktop.DBus.Introspectable">
+ <method name="Introspect">
+ <arg name="xml" type="s" direction="out"/>
+ </method>
+ </interface>
+-->
+ <interface name="org.bluez.obex.Agent1">
+ <method name="Release">
+ <annotation name="org.freedesktop.DBus.GLib.Async"/>
+ </method>
+ <method name="AuthorizePush">
+ <annotation name="org.freedesktop.DBus.GLib.Async"/>
+ <arg name="transfer" direction="in" type="o"/>
+ <arg name="filepath" direction="out" type="s"/>
+ </method>
+ <method name="Cancel">
+ <annotation name="org.freedesktop.DBus.GLib.Async"/>
+ </method>
+ </interface>
+</node>
diff --git a/src/interfaces/org.bluez.obex.client.xml b/src/interfaces/org.bluez.obex.client.xml
new file mode 100644
index 0000000..1eadf29
--- /dev/null
+++ b/src/interfaces/org.bluez.obex.client.xml
@@ -0,0 +1,201 @@
+<?xml version="1.0"?>
+<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN" "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
+<!-- https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/doc/obex-api.txt -->
+<node name="/org/bluez/obex">
+<!--
+ <interface name="org.freedesktop.DBus.Introspectable">
+ <method name="Introspect">
+ <arg name="xml" type="s" direction="out"/>
+ </method>
+ </interface>
+-->
+ <interface name="org.bluez.obex.AgentManager1">
+ <method name="RegisterAgent">
+ <arg name="agent" type="o" direction="in" />
+ </method>
+ <method name="UnregisterAgent">
+ <arg name="agent" type="o" direction="in" />
+ </method>
+ </interface>
+
+ <!-- https://git.merproject.org/jpoutiai/kf5bluezqt/blob/master/bluez-qt/src/interfaces/org.bluez.obex.Client1.xml -->
+ <interface name="org.bluez.obex.Client1">
+ <method name="CreateSession">
+ <arg name="destination" type="s" direction="in" />
+ <arg name="args" type="a{sv}" direction="in" />
+ <arg name="session" type="o" direction="out" />
+ </method>
+ <method name="RemoveSession">
+ <arg name="session" type="o" direction="in" />
+ </method>
+ </interface>
+ <!-- https://git.merproject.org/jpoutiai/kf5bluezqt/blob/master/bluez-qt/src/interfaces/org.bluez.obex.FileTransfer1.xml -->
+ <interface name="org.bluez.obex.FileTransfer1">
+ <method name="ChangeFolder">
+ <arg name="folder" type="s" direction="in" />
+ </method>
+ <method name="CreateFolder">
+ <arg name="folder" type="s" direction="in" />
+ </method>
+ <method name="ListFolder">
+ <arg name="folderinfo" type="aa{sv}" direction="out" />
+ </method>
+ <method name="GetFile">
+ <arg name="targetfile" type="s" direction="in" />
+ <arg name="sourcefile" type="s" direction="in" />
+ <arg name="transfer" type="o" direction="out" />
+ <arg name="properties" type="a{sv}" direction="out" />
+ </method>
+ <method name="PutFile">
+ <arg name="sourcefile" type="s" direction="in" />
+ <arg name="targetfile" type="s" direction="in" />
+ <arg name="transfer" type="o" direction="out" />
+ <arg name="properties" type="a{sv}" direction="out" />
+ </method>
+ <method name="CopyFile">
+ <arg name="sourcefile" type="s" direction="in" />
+ <arg name="targetfile" type="s" direction="in" />
+ </method>
+ <method name="MoveFile">
+ <arg name="sourcefile" type="s" direction="in" />
+ <arg name="targetfile" type="s" direction="in" />
+ </method>
+ <method name="Delete">
+ <arg name="file" type="s" direction="in" />
+ </method>
+ </interface>
+ <!-- https://git.merproject.org/jpoutiai/kf5bluezqt/blob/master/bluez-qt/src/interfaces/org.bluez.obex.ObjectPush1.xml -->
+ <interface name="org.bluez.obex.ObjectPush1">
+ <method name="SendFile">
+ <arg name="sourcefile" type="s" direction="in" />
+ <arg name="transfer" type="o" direction="out" />
+ <arg name="properties" type="a{sv}" direction="out" />
+ </method>
+ <method name="PullBusinessCard">
+ <arg name="targetfile" type="s" direction="in" />
+ <arg name="transfer" type="o" direction="out" />
+ <arg name="properties" type="a{sv}" direction="out" />
+ </method>
+ <method name="ExchangeBusinessCards">
+ <arg name="clientfile" type="s" direction="in" />
+ <arg name="targetfile" type="s" direction="in" />
+ <arg name="transfer" type="o" direction="out" />
+ <arg name="properties" type="a{sv}" direction="out" />
+ </method>
+ </interface>
+ <!-- https://git.merproject.org/jpoutiai/kf5bluezqt/blob/master/bluez-qt/src/interfaces/org.bluez.obex.Session1.xml -->
+ <interface name="org.bluez.obex.Session1">
+ <method name="GetCapabilities">
+ <arg name="capabilities" type="s" direction="out" />
+ </method>
+
+ <property name="Source" type="s" access="read" />
+ <property name="Destination" type="s" access="read" />
+ <property name="Channel" type="b" access="read" />
+ <property name="Target" type="s" access="read" />
+ <property name="Root" type="s" access="read" />
+
+ </interface>
+
+ <!-- https://git.merproject.org/jpoutiai/kf5bluezqt/blob/master/bluez-qt/src/interfaces/org.bluez.obex.Transfer1.xml -->
+ <interface name="org.bluez.obex.Transfer1">
+ <method name="Cancel" />
+ <method name="Suspend" />
+ <method name="Resume" />
+
+ <property name="Status" type="s" access="read" />
+ <property name="Session" type="o" access="read" />
+ <property name="Name" type="s" access="read" />
+ <property name="Type" type="s" access="read" />
+ <property name="Time" type="t" access="read" />
+ <property name="Size" type="t" access="read" />
+ <property name="Transferred" type="t" access="read" />
+ <property name="Filename" type="s" access="read" />
+
+ </interface>
+
+ <!-- https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/doc/obex-api.txt -->
+ <interface name="org.bluez.obex.Synchronization1">
+ <method name="SetLocation">
+ <arg name="location" type="s" direction="in" />
+ </method>
+ <method name="GetPhonebook">
+ <arg name="phonebook" type="o" direction="out" />
+ <arg name="sourcefile" type="s" direction="in" />
+ <arg name="targetfile" type="s" direction="in" />
+ </method>
+ <method name="PutPhonebook">
+ <arg name="sourcefile" type="s" direction="in" />
+ </method>
+ </interface>
+
+<!-- TODO -->
+ <!-- https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/doc/obex-api.txt -->
+ <interface name="org.bluez.obex.PhonebookAccess1">
+ <method name="Select">
+ <arg name="location" type="s" direction="in" />
+ <arg name="phonebook" type="s" direction="in" />
+ </method>
+ <method name="PullAll">
+ <arg name="path" type="o" direction="out" />
+ <arg name="properties" type="a{sv}" direction="out" />
+ <arg name="targetfile" type="s" direction="in" />
+ <arg name="filters" type="as" direction="in" />
+ </method>
+ <method name="List">
+ <arg name="vcard" type="a{ss}" direction="out" />
+ <arg name="filters" type="as" direction="in" />
+ </method>
+ <method name="Pull">
+ <arg name="transfer" type="o" direction="out" />
+ <arg name="vcards" type="a{sv}" direction="out" />
+ <arg name="vcard" type="s" direction="in" />
+ <arg name="targetfile" type="s" direction="in" />
+ <arg name="filters" type="as" direction="in" />
+ </method>
+
+ <property name="Folder" type="s" access="read" />
+ <property name="DatabaseIdentifier" type="s" access="read" />
+ <property name="PrimaryCounter" type="s" access="read" />
+ <property name="SecondaryCounter" type="s" access="read" />
+ <property name="FixedImageSize" type="s" access="read" />
+
+ </interface>
+
+<!-- TODO -->
+ <!-- https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/doc/obex-api.txt -->
+ <!-- <interface name="org.bluez.obex.MessageAccess1"> -->
+ <!-- <method name="SetLocation"> -->
+ <!-- <arg name="location" type="s" direction="in" /> -->
+ <!-- </method> -->
+ <!-- <method name="GetPhonebook"> -->
+ <!-- <arg name="phonebook" type="o" direction="out" /> -->
+ <!-- <arg name="sourcefile" type="s" direction="in" /> -->
+ <!-- <arg name="targetfile" type="s" direction="in" /> -->
+ <!-- </method> -->
+ <!-- <method name="PutPhonebook"> -->
+ <!-- <arg name="sourcefile" type="s" direction="in" /> -->
+ <!-- </method> -->
+ <!-- </interface> -->
+ <interface name="org.freedesktop.DBus.Properties">
+ <method name="Get">
+ <arg name="interface" type="s" direction="in" />
+ <arg name="name" type="s" direction="in" />
+ <arg name="value" type="v" direction="out" />
+ </method>
+ <method name="Set">
+ <arg name="interface" type="s" direction="in" />
+ <arg name="name" type="s" direction="in" />
+ <arg name="value" type="v" direction="in" />
+ </method>
+ <method name="GetAll">
+ <arg name="interface" type="s" direction="in" />
+ <arg name="properties" type="a{sv}" direction="out" />
+ </method>
+ <signal name="PropertiesChanged">
+ <arg name="interface" type="s" />
+ <arg name="changed_properties" type="a{sv}" />
+ <arg name="invalidated_properties" type="as" />
+ </signal>
+ </interface>
+</node> \ No newline at end of file
diff --git a/src/interfaces/org.freedesktop.DBus.ObjectManager.xml b/src/interfaces/org.freedesktop.DBus.ObjectManager.xml
new file mode 100644
index 0000000..cf73bea
--- /dev/null
+++ b/src/interfaces/org.freedesktop.DBus.ObjectManager.xml
@@ -0,0 +1,24 @@
+<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
+"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
+<node>
+<!--
+ <interface name="org.freedesktop.DBus.Introspectable">
+ <method name="Introspect">
+ <arg name="xml" type="s" direction="out" />
+ </method>
+ </interface>
+-->
+ <interface name="org.freedesktop.DBus.ObjectManager">
+ <method name="GetManagedObjects">
+ <arg name="objects" type="a{oa{sa{sv}}}" direction="out" />
+ </method>
+ <signal name="InterfacesAdded">
+ <arg name="object" type="o" />
+ <arg name="interfaces" type="a{sa{sv}}" />
+ </signal>
+ <signal name="InterfacesRemoved">
+ <arg name="object" type="o" />
+ <arg name="interfaces" type="as" />
+ </signal>
+ </interface>
+</node> \ No newline at end of file
diff --git a/src/interfaces/org.mpris.MediaPlayer2.xml b/src/interfaces/org.mpris.MediaPlayer2.xml
new file mode 100644
index 0000000..12d1099
--- /dev/null
+++ b/src/interfaces/org.mpris.MediaPlayer2.xml
@@ -0,0 +1,143 @@
+<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
+ "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
+<!-- GDBus 2.40.0 -->
+<node>
+ <interface name="org.freedesktop.DBus.Properties">
+ <method name="Get">
+ <arg type="s" name="interface_name" direction="in"/>
+ <arg type="s" name="property_name" direction="in"/>
+ <arg type="v" name="value" direction="out"/>
+ </method>
+ <method name="GetAll">
+ <arg type="s" name="interface_name" direction="in"/>
+ <arg type="a{sv}" name="properties" direction="out"/>
+ </method>
+ <method name="Set">
+ <arg type="s" name="interface_name" direction="in"/>
+ <arg type="s" name="property_name" direction="in"/>
+ <arg type="v" name="value" direction="in"/>
+ </method>
+ <signal name="PropertiesChanged">
+ <arg type="s" name="interface_name"/>
+ <arg type="a{sv}" name="changed_properties"/>
+ <arg type="as" name="invalidated_properties"/>
+ </signal>
+ </interface>
+ <interface name="org.freedesktop.DBus.Introspectable">
+ <method name="Introspect">
+ <arg type="s" name="xml_data" direction="out"/>
+ </method>
+ </interface>
+ <interface name="org.freedesktop.DBus.Peer">
+ <method name="Ping"/>
+ <method name="GetMachineId">
+ <arg type="s" name="machine_uuid" direction="out"/>
+ </method>
+ </interface>
+ <interface name="org.mpris.MediaPlayer2">
+ <method name="Raise">
+ </method>
+ <method name="Quit">
+ </method>
+ <property type="b" name="CanQuit" access="read">
+ </property>
+ <property type="b" name="CanRaise" access="read">
+ </property>
+ <property type="b" name="HasTrackList" access="read">
+ </property>
+ <property type="s" name="Identity" access="read">
+ </property>
+ <property type="s" name="DesktopEntry" access="read">
+ </property>
+ <property type="as" name="SupportedUriSchemes" access="read">
+ </property>
+ <property type="as" name="SupportedMimeTypes" access="read">
+ </property>
+ </interface>
+ <interface name="org.mpris.MediaPlayer2.Playlists">
+ <method name="ActivatePlaylist">
+ <arg type="o" name="PlaylistId" direction="in">
+ </arg>
+ </method>
+ <method name="GetPlaylists">
+ <arg type="u" name="Index" direction="in">
+ </arg>
+ <arg type="u" name="MaxCount" direction="in">
+ </arg>
+ <arg type="s" name="Order" direction="in">
+ </arg>
+ <arg type="b" name="ReverseOrder" direction="in">
+ </arg>
+ <arg type="a(oss)" name="arg_4" direction="out">
+ </arg>
+ </method>
+ <property type="u" name="PlaylistCount" access="read">
+ </property>
+ <property type="as" name="Orderings" access="read">
+ </property>
+ <property type="(b(oss))" name="ActivePlaylist" access="read">
+ </property>
+ </interface>
+ <interface name="org.mpris.MediaPlayer2.Player">
+ <method name="Next">
+ </method>
+ <method name="Previous">
+ </method>
+ <method name="Pause">
+ </method>
+ <method name="PlayPause">
+ </method>
+ <method name="Stop">
+ </method>
+ <method name="Play">
+ </method>
+ <method name="Seek">
+ <arg type="x" name="Offset" direction="in">
+ </arg>
+ </method>
+ <method name="SetPosition">
+ <arg type="o" name="TrackId" direction="in">
+ </arg>
+ <arg type="x" name="Position" direction="in">
+ </arg>
+ </method>
+ <method name="OpenUri">
+ <arg type="s" name="Uri" direction="in">
+ </arg>
+ </method>
+ <signal name="Seeked">
+ <arg type="x" name="Position">
+ </arg>
+ </signal>
+ <property type="s" name="PlaybackStatus" access="read">
+ </property>
+ <property type="s" name="LoopStatus" access="readwrite">
+ </property>
+ <property type="d" name="Rate" access="readwrite">
+ </property>
+ <property type="b" name="Shuffle" access="readwrite">
+ </property>
+ <property type="a{sv}" name="Metadata" access="read">
+ </property>
+ <property type="d" name="Volume" access="readwrite">
+ </property>
+ <property type="x" name="Position" access="read">
+ </property>
+ <property type="d" name="MinimumRate" access="read">
+ </property>
+ <property type="d" name="MaximumRate" access="read">
+ </property>
+ <property type="b" name="CanGoNext" access="read">
+ </property>
+ <property type="b" name="CanGoPrevious" access="read">
+ </property>
+ <property type="b" name="CanPlay" access="read">
+ </property>
+ <property type="b" name="CanPause" access="read">
+ </property>
+ <property type="b" name="CanSeek" access="read">
+ </property>
+ <property type="b" name="CanControl" access="read">
+ </property>
+ </interface>
+</node>
diff --git a/src/interfaces/org.tdebluez.agent.xml b/src/interfaces/org.tdebluez.agent.xml
new file mode 100644
index 0000000..36bac01
--- /dev/null
+++ b/src/interfaces/org.tdebluez.agent.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<node name="/org/trinitydesktop/tdebluez">
+<!-- The Introspectable Interface gets autogenerated
+ <interface name="org.freedesktop.DBus.Introspectable">
+ <method name="Introspect">
+ <arg name="xml" type="s" direction="out"/>
+ </method>
+ </interface>
+-->
+ <interface name="org.bluez.Agent1">
+ <method name="Release">
+ </method>
+ <method name="RequestPinCode">
+ <annotation name="org.freedesktop.DBus.GLib.Async"/>
+ <arg name="device" direction="in" type="o"/>
+ <arg name="pincode" direction="out" type="s"/>
+ </method>
+ <method name="DisplayPinCode">
+ <annotation name="org.freedesktop.DBus.GLib.Async"/>
+ <arg name="device" direction="in" type="o"/>
+ <arg name="pincode" direction="in" type="s"/>
+ </method>
+ <method name="RequestPasskey">
+ <annotation name="org.freedesktop.DBus.GLib.Async"/>
+ <arg name="device" direction="in" type="o"/>
+ <arg name="passkey" direction="out" type="u"/>
+ </method>
+ <method name="DisplayPasskey">
+ <annotation name="org.freedesktop.DBus.GLib.Async"/>
+ <arg name="device" direction="in" type="o"/>
+ <arg name="passkey" direction="in" type="u"/>
+ <arg name="entered" direction="in" type="q"/>
+ </method>
+ <method name="RequestConfirmation">
+ <annotation name="org.freedesktop.DBus.GLib.Async"/>
+ <arg name="device" direction="in" type="o"/>
+ <arg name="passkey" direction="in" type="u"/>
+ </method>
+ <method name="RequestAuthorization">
+ <annotation name="org.freedesktop.DBus.GLib.Async"/>
+ <arg name="device" direction="in" type="o"/>
+ </method>
+ <method name="AuthorizeService">
+ <annotation name="org.freedesktop.DBus.GLib.Async"/>
+ <arg name="device" direction="in" type="o"/>
+ <arg name="uuid" direction="in" type="s"/>
+ </method>
+ <method name="Cancel">
+ </method>
+ </interface>
+</node>