1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
|
<?xml version="1.0" ?>
<node name="/Channel_Interface_Mergeable_Conference"
xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
<tp:copyright>Copyright © 2009 Collabora Limited</tp:copyright>
<tp:copyright>Copyright © 2009 Nokia Corporation</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 Street, Fifth Floor, Boston, MA
02110-1301, USA.</p>
</tp:license>
<interface
name="org.freedesktop.Telepathy.Channel.Interface.MergeableConference.DRAFT"
tp:causes-havoc="experimental">
<tp:added version="0.19.0">(draft 1)</tp:added>
<tp:requires interface="org.freedesktop.Telepathy.Channel.Interface.Conference"/>
<tp:docstring xmlns="http://www.w3.org/1999/xhtml">
<p>An interface for multi-user conference channels that can have
additional individual channels merged into them after they are
created.</p>
<tp:rationale>
<p>This interface addresses part of freedesktop.org <a
href="http://bugs.freedesktop.org/show_bug.cgi?id=24906">bug
#24906</a> (GSM-compatible conference calls). GSM is currently
the only protocol known to implement this; PBXs might implement
it too.</p>
<p>It might be made into a mandatory-to-implement part of Conference,
or kept as a separate interface, when stabilized.</p>
</tp:rationale>
</tp:docstring>
<method name="Merge"
tp:name-for-bindings="Merge">
<tp:docstring xmlns="http://www.w3.org/1999/xhtml">
<p>Request that the given channel be incorporated into this
channel.</p>
<p>The given channel SHOULD be added to <tp:dbus-ref
namespace="org.freedesktop.Telepathy.Channel.Interface"
>Conference.Channels</tp:dbus-ref> if and only if the
underlying protocol signals the merge in some way. It MUST NOT be
added to <tp:dbus-ref
namespace="org.freedesktop.Telepathy.Channel.Interface"
>Conference.InitialChannels</tp:dbus-ref> (to preserve
immutability).</p>
<tp:rationale>
<p>In GSM it is possible to merge additional calls into an ongoing
conference.</p>
<p>In XMPP this method could be implemented to merge a 1-1 Text
channel into a MUC Text channel by inviting the peer from the Text
channel into the MUC, or to merge a 1-1 Jingle call into a Muji
call by inviting the peer from the Jingle call into the Muji call.
(MUC and Muji channels are both implemented by XMPP MUCs, with
Handle_Type_Room.)</p>
</tp:rationale>
</tp:docstring>
<arg direction="in" name="Channel" type="o">
<tp:docstring xmlns="http://www.w3.org/1999/xhtml">
<p>A channel with the same <tp:dbus-ref
namespace="org.freedesktop.Telepathy.Channel"
>ChannelType</tp:dbus-ref>
as this one, but with <tp:dbus-ref
namespace="org.freedesktop.Telepathy.Channel"
>TargetHandleType</tp:dbus-ref> = CONTACT.</p>
</tp:docstring>
</arg>
<tp:possible-errors>
<tp:error name="org.freedesktop.Telepathy.Error.InvalidArgument">
<tp:docstring>
The given channel isn't suitable for merging into this one: for
instance, it might have the wrong channel type or handle type.
</tp:docstring>
</tp:error>
<tp:error name="org.freedesktop.Telepathy.Error.NotImplemented">
<tp:docstring>
It will never be possible to merge channels into this particular
conference.
</tp:docstring>
</tp:error>
<tp:error name="org.freedesktop.Telepathy.Error.NotAvailable">
<tp:docstring xmlns="http://www.w3.org/1999/xhtml">
The given channel is theoretically suitable for merging into this
one, but that's not currently possible for some reason (for
instance, this SHOULD be raised if a limit on the number of
channels in a conference is exceeded).
<strong>[FIXME: PermissionDenied?]</strong>
</tp:docstring>
</tp:error>
</tp:possible-errors>
</method>
</interface>
</node>
|