summaryrefslogtreecommitdiff
path: root/spec/Channel.xml
diff options
context:
space:
mode:
authorSimon McVittie <simon.mcvittie@collabora.co.uk>2007-04-19 17:35:17 +0000
committerSimon McVittie <simon.mcvittie@collabora.co.uk>2007-04-19 17:35:17 +0000
commit05b3d77a6ceaf9142e0dee8bf52e7637d5823bdd (patch)
treeae7da2dc08fb4c3aa1c6b09ffa1c57d2d3adf24a /spec/Channel.xml
parent90720ee40eb30e2b1c9aa90501391d3a0a411250 (diff)
downloadtelepathy-glib-05b3d77a6ceaf9142e0dee8bf52e7637d5823bdd.tar.gz
Move contents of lib/ into root directory
20070419173517-53eee-d91a15d77882d6839193c1f77be4f88803b48f58.gz
Diffstat (limited to 'spec/Channel.xml')
-rw-r--r--spec/Channel.xml126
1 files changed, 126 insertions, 0 deletions
diff --git a/spec/Channel.xml b/spec/Channel.xml
new file mode 100644
index 000000000..16149af2d
--- /dev/null
+++ b/spec/Channel.xml
@@ -0,0 +1,126 @@
+<?xml version="1.0" ?>
+<node name="/Channel" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
+ <tp:copyright>Copyright (C) 2005, 2006 Collabora Limited</tp:copyright>
+ <tp:copyright>Copyright (C) 2005, 2006 Nokia Corporation</tp:copyright>
+ <tp:copyright>Copyright (C) 2006 INdT</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
+Library 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA</p>
+ </tp:license>
+ <interface name="org.freedesktop.Telepathy.Channel">
+ <method name="Close">
+ <tp:docstring>
+ Request that the channel be closed. This is not the case until
+ the Closed signal has been emitted, and depending on the connection
+ manager this may simply remove you from the channel on the server,
+ rather than causing it to stop existing entirely. Some channels
+ such as contact list channels may not be closed.
+ </tp:docstring>
+ <tp:possible-errors>
+ <tp:error name="org.freedesktop.Telepathy.Error.Disconnected"/>
+ <tp:error name="org.freedesktop.Telepathy.Error.NetworkError"/>
+ <tp:error name="org.freedesktop.Telepathy.Error.NotImplemented">
+ <tp:docstring>
+ This channel may never be closed, e.g. a contact list
+ </tp:docstring>
+ </tp:error>
+ <tp:error name="org.freedesktop.Telepathy.Error.NotAvailable">
+ <tp:docstring>
+ This channel is not currently in a state where it can be closed,
+ e.g. a non-empty user-defined contact group
+ </tp:docstring>
+ </tp:error>
+ </tp:possible-errors>
+ </method>
+ <signal name="Closed">
+ <tp:docstring>
+ Emitted when the channel has been closed. Method calls on the
+ channel are no longer valid after this signal has been emitted,
+ and the connection manager may then remove the object from the bus
+ at any point.
+ </tp:docstring>
+ </signal>
+ <method name="GetChannelType">
+ <arg direction="out" type="s">
+ <tp:docstring>The interface name</tp:docstring>
+ </arg>
+ <tp:docstring>
+ Returns the interface name for the type of this channel.
+ </tp:docstring>
+ </method>
+ <method name="GetHandle">
+ <arg direction="out" type="u">
+ <tp:docstring>
+ The handle type, or zero if this channel does not correspond to any
+ particular handle
+ </tp:docstring>
+ </arg>
+ <arg direction="out" type="u">
+ <tp:docstring>
+ The handle, or zero if this channel does not correspond to any
+ particular handle
+ </tp:docstring>
+ </arg>
+ <tp:docstring>
+ Returns the handle type and number if this channel represents a
+ communication with a particular contact, room or server-stored list, or
+ zero if it is transient and defined only by its contents.
+ </tp:docstring>
+ </method>
+ <method name="GetInterfaces">
+ <arg direction="out" type="as">
+ <tp:docstring>
+ An array of the D-Bus interface names
+ </tp:docstring>
+ </arg>
+ <tp:docstring>
+ Get the optional interfaces implemented by the channel.
+ </tp:docstring>
+ </method>
+ <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
+ <p>All communication in the Telepathy framework is carried out via channel
+ objects which are created and managed by connections. This interface must
+ be implemented by all channel objects, along with one single channel type,
+ such as Channel.Type.ContactList which represents a list of people (such
+ as a buddy list) or a Channel.Type.Text which represents a channel over
+ which textual messages are sent and received.</p>
+
+ <p>Each channel may have an immutable handle associated with it, which may
+ be any handle type, such as a contact, room or list handle, indicating
+ that the channel is for communicating with that handle. If a channel does
+ not have a handle, it means that the channel is defined by some other
+ terms, such as it may be a transient group defined only by its members
+ as visible through the Channel.Interface.Group interface.</p>
+
+ <p>Other optional interfaces can be implemented to indicate other available
+ functionality, such as Channel.Interface.Group if the channel contains
+ a number of contacts, Channel.Interface.Password to indicate
+ that a channel may have a password set to require entry, and
+ Properties for extra data about channels which represent chat
+ rooms or voice calls. The interfaces implemented may not vary after the
+ channel's creation has been signalled to the bus (with the connection's
+ NewChannel signal).</p>
+
+ <p>Specific connection manager implementations may implement channel types and
+ interfaces which are not contained within this specification in order to
+ support further functionality. To aid interoperability between client and
+ connection manager implementations, the interfaces specified here should be
+ used wherever applicable, and new interfaces made protocol-independent
+ wherever possible. Because of the potential for 3rd party interfaces adding
+ methods or signals with conflicting names, the D-Bus interface names should
+ always be used to invoke methods and bind signals.</p>
+ </tp:docstring>
+ </interface>
+</node>
+<!-- vim:set sw=2 sts=2 et ft=xml: -->