diff options
Diffstat (limited to 'extensions/OLPC_Buddy_Info.xml')
-rw-r--r-- | extensions/OLPC_Buddy_Info.xml | 285 |
1 files changed, 285 insertions, 0 deletions
diff --git a/extensions/OLPC_Buddy_Info.xml b/extensions/OLPC_Buddy_Info.xml new file mode 100644 index 00000000..7caf35c0 --- /dev/null +++ b/extensions/OLPC_Buddy_Info.xml @@ -0,0 +1,285 @@ +<?xml version="1.0" ?> +<node name="/OLPC_Buddy_Info" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0"> + <tp:copyright> Copyright (C) 2007 Collabora Limited </tp:copyright> + <tp:license xmlns="http://www.w3.org/1999/xhtml"> + <p>This library is free software; you can redistribute it and/or +modify it under the terms of the GNU Lesser General Public +License as published by the Free Software Foundation; either +version 2.1 of the License, or (at your option) any later version.</p> + +<p>This library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Lesser General Public License for more details.</p> + +<p>You should have received a copy of the GNU Lesser General Public +License along with this library; if not, write to the Free Software +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA</p> + </tp:license> + <interface name="org.laptop.Telepathy.BuddyInfo"> + <tp:requires interface="org.freedesktop.Telepathy.Connection"/> + + <method name="SetProperties" tp:name-for-bindings="Set_Properties"> + <arg direction="in" name="properties" type="a{sv}"> + <tp:docstring> + A dictionary mapping information names to the desired values. + This replaces any existing buddy properties completely: any keys + which were previously present, but are not present in this dictionary, + are deleted. + </tp:docstring> + </arg> + <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> + <p>Set the information of the local user for this connection.</p> + <p>This method may be called before Connect(), in which case the given + properties will be advertised as soon as possible after connection + (possibly immediately).</p> + </tp:docstring> + <tp:possible-errors> + <tp:error name="org.freedesktop.Telepathy.Error.InvalidArgument"/> + </tp:possible-errors> + </method> + + <method name="GetProperties" tp:name-for-bindings="Get_Properties"> + <arg direction="in" name="contact" type="u"> + <tp:docstring> + An integer handle for the contact to request his properties for + </tp:docstring> + </arg> + <arg direction="out" name="properties" type="a{sv}"> + <tp:docstring> + A dictionary mapping information names to their values + </tp:docstring> + </arg> + <tp:docstring> + Get the properties of a particular contact. + </tp:docstring> + <tp:possible-errors> + <tp:error name="org.freedesktop.Telepathy.Error.Disconnected"/> + <tp:error name="org.freedesktop.Telepathy.Error.InvalidArgument"/> + </tp:possible-errors> + </method> + + <signal name="PropertiesChanged" tp:name-for-bindings="Properties_Changed"> + <arg name="contact" type="u"> + <tp:docstring> + An integer handle representing the contact + </tp:docstring> + </arg> + <arg name="properties" type="a{sv}"> + <tp:docstring> + A dictionary mapping property names to their new values. All + properties are included, not just those that have changed. + </tp:docstring> + </arg> + <tp:docstring> + Signal emitted when the properties of a contact from your 'subscribe' + contact list are changed. + </tp:docstring> + </signal> + + + <tp:struct name="Activity" array-name="Activity_List"> + <tp:docstring>A struct containing: + <ul> + <li>the identifier of the activity</li> + <li>the room handle of the activity channel</li> + </ul> + </tp:docstring> + <tp:member type="s" name="id"/> + <tp:member type="u" tp:type="Room_Handle" name="room"/> + </tp:struct> + + <method name="SetActivities" tp:name-for-bindings="Set_Activities"> + <arg direction="in" name="activities" type="a(su)" tp:type="Activity[]"> + <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> + An array of structs containing: + <ul> + <li>the identifier of the activity</li> + <li>the room handle of the activity channel</li> + </ul> + </tp:docstring> + </arg> + <tp:docstring> + Set the activities of the local user for this connection. + </tp:docstring> + <tp:possible-errors> + <tp:error name="org.freedesktop.Telepathy.Error.Disconnected"/> + <tp:error name="org.freedesktop.Telepathy.Error.InvalidArgument"/> + </tp:possible-errors> + </method> + + <method name="AddActivity" tp:name-for-bindings="Add_Activity"> + <arg direction="in" name="id" type="s"> + <tp:docstring> + An activity id + </tp:docstring> + </arg> + <arg direction="in" name="handle" type="u"> + <tp:docstring> + A room handle + </tp:docstring> + </arg> + <tp:docstring> + Advertise an activity associated to a muc room + <tp:rationale> + <p>Once an activity shares itself, needs to be advertised if it's not + private. SetActivities could be used for this but it would mean that + the activity would need to call GetActivities then add itself.</p> + </tp:rationale> + </tp:docstring> + <tp:possible-errors> + <tp:error name="org.freedesktop.Telepathy.Error.Disconnected"/> + <tp:error name="org.freedesktop.Telepathy.Error.InvalidArgument"/> + </tp:possible-errors> + </method> + + <method name="GetActivities" tp:name-for-bindings="Get_Activities"> + <arg direction="in" name="contact" type="u"> + <tp:docstring> + An integer handle for the contact whose activities are to be returned + </tp:docstring> + </arg> + <arg direction="out" name="activities" type="a(su)" tp:type="Activity[]"> + <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> + An array of structs containing: + <ul> + <li>the identifier of the activity</li> + <li>the room handle of the activity channel</li> + </ul> + </tp:docstring> + </arg> + <tp:docstring> + Get the activities of a particular contact. + </tp:docstring> + <tp:possible-errors> + <tp:error name="org.freedesktop.Telepathy.Error.Disconnected"/> + <tp:error name="org.freedesktop.Telepathy.Error.InvalidArgument"/> + </tp:possible-errors> + </method> + + <signal name="ActivitiesChanged" tp:name-for-bindings="Activities_Changed"> + <arg name="contact" type="u"> + <tp:docstring> + An integer handle representing the contact + </tp:docstring> + </arg> + <arg name="activities" type="a(su)" tp:type="Activity[]"> + <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> + An array of structs containing: + <ul> + <li>the identifier of the activity</li> + <li>the handle of the activity channel</li> + </ul> + </tp:docstring> + </arg> + <tp:docstring> + Signal emitted when the activities of a contact from your 'subscribe' + contact list are changed. + </tp:docstring> + </signal> + + <method name="SetCurrentActivity" + tp:name-for-bindings="Set_Current_Activity"> + <arg direction="in" name="activity" type="s"> + <tp:docstring> + The identifier of the activity, or the empty string if there is no + current activity + </tp:docstring> + </arg> + <arg direction="in" name="channel" type="u"> + <tp:docstring> + The room handle of the activity channel, or 0 if there is no current + activity + </tp:docstring> + </arg> + <tp:docstring> + Set the current activity of the local user for this connection. + </tp:docstring> + <tp:possible-errors> + <tp:error name="org.freedesktop.Telepathy.Error.Disconnected"/> + <tp:error name="org.freedesktop.Telepathy.Error.InvalidArgument"/> + </tp:possible-errors> + </method> + + <method name="GetCurrentActivity" + tp:name-for-bindings="Get_Current_Activity"> + <arg direction="in" name="contact" type="u"> + <tp:docstring> + An integer handle for the contact whose current activity is to be + returned + </tp:docstring> + </arg> + <arg direction="out" name="activity" type="s"> + <tp:docstring> + The identifier of the activity, or "" if there is no current activity + </tp:docstring> + </arg> + <arg direction="out" name="channel" type="u"> + <tp:docstring> + The room handle of the activity, or 0 if there is no current activity + </tp:docstring> + </arg> + <tp:docstring> + Get the current activity of a particular contact. + </tp:docstring> + <tp:possible-errors> + <tp:error name="org.freedesktop.Telepathy.Error.Disconnected"/> + <tp:error name="org.freedesktop.Telepathy.Error.InvalidArgument"/> + </tp:possible-errors> + </method> + + <signal name="CurrentActivityChanged" + tp:name-for-bindings="Current_Activity_Changed"> + <arg name="contact" type="u"> + <tp:docstring> + An integer handle representing the contact + </tp:docstring> + </arg> + <arg name="activity" type="s"> + <tp:docstring> + The identifier of the activity, or "" if there is no current activity + </tp:docstring> + </arg> + <arg name="channel" type="u"> + <tp:docstring> + The room handle of the activity channel, or 0 if there is no current + activity + </tp:docstring> + </arg> + <tp:docstring> + Signal emitted when the current activity of a contact from your 'subscribe' + contact list is changed. + </tp:docstring> + </signal> + + <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> + <p>An interface on connections to associate OLPC buddy information + with contacts, providing methods for the user to set their own + information and retrieve information of contacts. + The user is automatically notified when information of contacts that + are in his 'subscribe' contact list change.</p> + + <p>The following types and names are used to request and set information + (except for activities):</p> + <dl> + <dt>s:color</dt> + <dd>The color name of the buddy. Format used is #RRGGBB,#RRGGBB + (stroke,fill). + </dd> + + <dt>ay:key</dt> + <dd>The public key of the buddy.</dd> + + <dt>s:jid</dt> + <dd>For link-local connections, the JID of the buddy's server account.</dd> + </dl> + + <p>Activities are represented by a struct containing:</p> + <ul> + <li>the identifier of the activity</li> + <li>the handle of the activity channel</li> + </ul> + </tp:docstring> + </interface> +</node> +<!-- vim:set sw=2 sts=2 et ft=xml: --> |