2
<node name="/Channel" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
3
<tp:copyright>Copyright (C) 2005, 2006 Collabora Limited</tp:copyright>
4
<tp:copyright>Copyright (C) 2005, 2006 Nokia Corporation</tp:copyright>
5
<tp:copyright>Copyright (C) 2006 INdT</tp:copyright>
6
<tp:license xmlns="http://www.w3.org/1999/xhtml">
7
<p>This library is free software; you can redistribute it and/or
8
modify it under the terms of the GNU Lesser General Public
9
License as published by the Free Software Foundation; either
10
version 2.1 of the License, or (at your option) any later version.</p>
12
<p>This library is distributed in the hope that it will be useful,
13
but WITHOUT ANY WARRANTY; without even the implied warranty of
14
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15
Lesser General Public License for more details.</p>
17
<p>You should have received a copy of the GNU Lesser General Public
18
License along with this library; if not, write to the Free Software
19
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</p>
21
<interface name="org.freedesktop.Telepathy.Channel">
24
Request that the channel be closed. This is not the case until
25
the Closed signal has been emitted, and depending on the connection
26
manager this may simply remove you from the channel on the server,
27
rather than causing it to stop existing entirely. Some channels
28
such as contact list channels may not be closed.
31
<tp:error name="org.freedesktop.Telepathy.Error.Disconnected"/>
32
<tp:error name="org.freedesktop.Telepathy.Error.NetworkError"/>
33
<tp:error name="org.freedesktop.Telepathy.Error.NotImplemented">
35
This channel may never be closed, e.g. a contact list
38
<tp:error name="org.freedesktop.Telepathy.Error.NotAvailable">
40
This channel is not currently in a state where it can be closed,
41
e.g. a non-empty user-defined contact group
46
<signal name="Closed">
48
Emitted when the channel has been closed. Method calls on the
49
channel are no longer valid after this signal has been emitted,
50
and the connection manager may then remove the object from the bus
54
<method name="GetChannelType">
55
<arg direction="out" type="s" tp:type="DBus_Interface">
56
<tp:docstring>The interface name</tp:docstring>
59
Returns the interface name for the type of this channel.
62
<method name="GetHandle">
63
<arg direction="out" type="u" tp:type="Handle_Type">
65
The handle type, or zero if this channel does not correspond to any
69
<arg direction="out" type="u" tp:type="Handle">
71
The handle, or zero if this channel does not correspond to any
76
Returns the handle type and number if this channel represents a
77
communication with a particular contact, room or server-stored list, or
78
zero if it is transient and defined only by its contents.
81
<method name="GetInterfaces">
82
<arg direction="out" type="as" tp:type="DBus_Interface[]">
84
An array of the D-Bus interface names
88
Get the optional interfaces implemented by the channel.
91
<tp:docstring xmlns="http://www.w3.org/1999/xhtml">
92
<p>All communication in the Telepathy framework is carried out via channel
93
objects which are created and managed by connections. This interface must
94
be implemented by all channel objects, along with one single channel type,
95
such as Channel.Type.ContactList which represents a list of people (such
96
as a buddy list) or a Channel.Type.Text which represents a channel over
97
which textual messages are sent and received.</p>
99
<p>Each channel may have an immutable handle associated with it, which
100
may be any handle type, such as a contact, room or list handle,
101
indicating that the channel is for communicating with that handle.
102
There can be at most one channel for each combination of
103
(channel type, handle type, handle) with nonzero handle type.</p>
105
<p>If a channel does not have a handle (an "anonymous channel"), it
106
means that the channel is defined by some other terms, such as it
107
may be a transient group defined only by its members as visible
108
through the Channel.Interface.Group interface. There can be any number
109
of anonymous channels of the same channel type.</p>
111
<p>Other optional interfaces can be implemented to indicate other available
112
functionality, such as Channel.Interface.Group if the channel contains
113
a number of contacts, Channel.Interface.Password to indicate
114
that a channel may have a password set to require entry, and
115
Properties for extra data about channels which represent chat
116
rooms or voice calls. The interfaces implemented may not vary after the
117
channel's creation has been signalled to the bus (with the connection's
118
NewChannel signal).</p>
120
<p>Specific connection manager implementations may implement channel types and
121
interfaces which are not contained within this specification in order to
122
support further functionality. To aid interoperability between client and
123
connection manager implementations, the interfaces specified here should be
124
used wherever applicable, and new interfaces made protocol-independent
125
wherever possible. Because of the potential for 3rd party interfaces adding
126
methods or signals with conflicting names, the D-Bus interface names should
127
always be used to invoke methods and bind signals.</p>
131
<!-- vim:set sw=2 sts=2 et ft=xml: -->