52
45
<a class="link" href="telepathy-glib-client.html#TpClient-struct" title="TpClient">TpClient</a>;
53
46
<a class="link" href="telepathy-glib-client.html#TpClientClass" title="TpClientClass">TpClientClass</a>;
54
<span class="returnvalue">void</span> <a class="link" href="telepathy-glib-client.html#tp-client-init-known-interfaces" title="tp_client_init_known_interfaces ()">tp_client_init_known_interfaces</a> (void);
47
<span class="returnvalue">void</span> <a class="link" href="telepathy-glib-client.html#tp-client-init-known-interfaces" title="tp_client_init_known_interfaces ()">tp_client_init_known_interfaces</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
56
49
<span class="returnvalue">void</span> (<a class="link" href="telepathy-glib-client.html#tp-cli-client-observer-callback-for-observe-channels" title="tp_cli_client_observer_callback_for_observe_channels ()">*tp_cli_client_observer_callback_for_observe_channels</a>)
57
(<a class="link" href="telepathy-glib-client.html#TpClient"><span class="returnvalue">TpClient</span></a> *proxy,
58
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="returnvalue">GError</span></a> *error,
59
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> user_data,
60
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *weak_object);
50
(<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#TpClient"><span class="type">TpClient</span></a> *proxy</code></em>,
51
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> *error</code></em>,
52
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
53
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *weak_object</code></em>);
61
54
<a class="link" href="telepathy-glib-proxy.html#TpProxyPendingCall" title="TpProxyPendingCall"><span class="returnvalue">TpProxyPendingCall</span></a> * <a class="link" href="telepathy-glib-client.html#tp-cli-client-observer-call-observe-channels" title="tp_cli_client_observer_call_observe_channels ()">tp_cli_client_observer_call_observe_channels</a>
62
(<a class="link" href="telepathy-glib-client.html#TpClient"><span class="returnvalue">TpClient</span></a> *proxy,
63
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> timeout_ms,
64
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *in_Account,
65
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *in_Connection,
66
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="returnvalue">GPtrArray</span></a> *in_Channels,
67
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *in_Dispatch_Operation,
68
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="returnvalue">GPtrArray</span></a> *in_Requests_Satisfied,
69
<a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> *in_Observer_Info,
70
<a class="link" href="telepathy-glib-client.html#tp-cli-client-observer-callback-for-observe-channels" title="tp_cli_client_observer_callback_for_observe_channels ()"><span class="returnvalue">tp_cli_client_observer_callback_for_observe_channels</span></a> callback,
71
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> user_data,
72
<a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="returnvalue">GDestroyNotify</span></a> destroy,
73
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *weak_object);
55
(<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#TpClient"><span class="type">TpClient</span></a> *proxy</code></em>,
56
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> timeout_ms</code></em>,
57
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *in_Account</code></em>,
58
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *in_Connection</code></em>,
59
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *in_Channels</code></em>,
60
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *in_Dispatch_Operation</code></em>,
61
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *in_Requests_Satisfied</code></em>,
62
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> *in_Observer_Info</code></em>,
63
<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#tp-cli-client-observer-callback-for-observe-channels" title="tp_cli_client_observer_callback_for_observe_channels ()"><span class="type">tp_cli_client_observer_callback_for_observe_channels</span></a> callback</code></em>,
64
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
65
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy</code></em>,
66
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *weak_object</code></em>);
75
68
<span class="returnvalue">void</span> (<a class="link" href="telepathy-glib-client.html#tp-cli-client-handler-callback-for-handle-channels" title="tp_cli_client_handler_callback_for_handle_channels ()">*tp_cli_client_handler_callback_for_handle_channels</a>)
76
(<a class="link" href="telepathy-glib-client.html#TpClient"><span class="returnvalue">TpClient</span></a> *proxy,
77
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="returnvalue">GError</span></a> *error,
78
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> user_data,
79
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *weak_object);
69
(<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#TpClient"><span class="type">TpClient</span></a> *proxy</code></em>,
70
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> *error</code></em>,
71
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
72
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *weak_object</code></em>);
80
73
<a class="link" href="telepathy-glib-proxy.html#TpProxyPendingCall" title="TpProxyPendingCall"><span class="returnvalue">TpProxyPendingCall</span></a> * <a class="link" href="telepathy-glib-client.html#tp-cli-client-handler-call-handle-channels" title="tp_cli_client_handler_call_handle_channels ()">tp_cli_client_handler_call_handle_channels</a>
81
(<a class="link" href="telepathy-glib-client.html#TpClient"><span class="returnvalue">TpClient</span></a> *proxy,
82
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> timeout_ms,
83
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *in_Account,
84
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *in_Connection,
85
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="returnvalue">GPtrArray</span></a> *in_Channels,
86
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="returnvalue">GPtrArray</span></a> *in_Requests_Satisfied,
87
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint64"><span class="returnvalue">guint64</span></a> in_User_Action_Time,
88
<a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> *in_Handler_Info,
89
<a class="link" href="telepathy-glib-client.html#tp-cli-client-handler-callback-for-handle-channels" title="tp_cli_client_handler_callback_for_handle_channels ()"><span class="returnvalue">tp_cli_client_handler_callback_for_handle_channels</span></a> callback,
90
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> user_data,
91
<a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="returnvalue">GDestroyNotify</span></a> destroy,
92
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *weak_object);
74
(<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#TpClient"><span class="type">TpClient</span></a> *proxy</code></em>,
75
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> timeout_ms</code></em>,
76
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *in_Account</code></em>,
77
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *in_Connection</code></em>,
78
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *in_Channels</code></em>,
79
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *in_Requests_Satisfied</code></em>,
80
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> in_User_Action_Time</code></em>,
81
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> *in_Handler_Info</code></em>,
82
<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#tp-cli-client-handler-callback-for-handle-channels" title="tp_cli_client_handler_callback_for_handle_channels ()"><span class="type">tp_cli_client_handler_callback_for_handle_channels</span></a> callback</code></em>,
83
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
84
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy</code></em>,
85
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *weak_object</code></em>);
93
86
<span class="returnvalue">void</span> (<a class="link" href="telepathy-glib-client.html#tp-cli-client-interface-requests-callback-for-add-request" title="tp_cli_client_interface_requests_callback_for_add_request ()">*tp_cli_client_interface_requests_callback_for_add_request</a>)
94
(<a class="link" href="telepathy-glib-client.html#TpClient"><span class="returnvalue">TpClient</span></a> *proxy,
95
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="returnvalue">GError</span></a> *error,
96
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> user_data,
97
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *weak_object);
87
(<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#TpClient"><span class="type">TpClient</span></a> *proxy</code></em>,
88
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> *error</code></em>,
89
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
90
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *weak_object</code></em>);
98
91
<a class="link" href="telepathy-glib-proxy.html#TpProxyPendingCall" title="TpProxyPendingCall"><span class="returnvalue">TpProxyPendingCall</span></a> * <a class="link" href="telepathy-glib-client.html#tp-cli-client-interface-requests-call-add-request" title="tp_cli_client_interface_requests_call_add_request ()">tp_cli_client_interface_requests_call_add_request</a>
99
(<a class="link" href="telepathy-glib-client.html#TpClient"><span class="returnvalue">TpClient</span></a> *proxy,
100
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> timeout_ms,
101
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *in_Request,
102
<a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> *in_Properties,
103
<a class="link" href="telepathy-glib-client.html#tp-cli-client-interface-requests-callback-for-add-request" title="tp_cli_client_interface_requests_callback_for_add_request ()"><span class="returnvalue">tp_cli_client_interface_requests_callback_for_add_request</span></a> callback,
104
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> user_data,
105
<a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="returnvalue">GDestroyNotify</span></a> destroy,
106
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *weak_object);
92
(<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#TpClient"><span class="type">TpClient</span></a> *proxy</code></em>,
93
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> timeout_ms</code></em>,
94
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *in_Request</code></em>,
95
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> *in_Properties</code></em>,
96
<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#tp-cli-client-interface-requests-callback-for-add-request" title="tp_cli_client_interface_requests_callback_for_add_request ()"><span class="type">tp_cli_client_interface_requests_callback_for_add_request</span></a> callback</code></em>,
97
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
98
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy</code></em>,
99
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *weak_object</code></em>);
107
100
<span class="returnvalue">void</span> (<a class="link" href="telepathy-glib-client.html#tp-cli-client-interface-requests-callback-for-remove-request" title="tp_cli_client_interface_requests_callback_for_remove_request ()">*tp_cli_client_interface_requests_callback_for_remove_request</a>)
108
(<a class="link" href="telepathy-glib-client.html#TpClient"><span class="returnvalue">TpClient</span></a> *proxy,
109
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="returnvalue">GError</span></a> *error,
110
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> user_data,
111
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *weak_object);
101
(<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#TpClient"><span class="type">TpClient</span></a> *proxy</code></em>,
102
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> *error</code></em>,
103
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
104
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *weak_object</code></em>);
112
105
<a class="link" href="telepathy-glib-proxy.html#TpProxyPendingCall" title="TpProxyPendingCall"><span class="returnvalue">TpProxyPendingCall</span></a> * <a class="link" href="telepathy-glib-client.html#tp-cli-client-interface-requests-call-remove-request" title="tp_cli_client_interface_requests_call_remove_request ()">tp_cli_client_interface_requests_call_remove_request</a>
113
(<a class="link" href="telepathy-glib-client.html#TpClient"><span class="returnvalue">TpClient</span></a> *proxy,
114
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> timeout_ms,
115
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *in_Request,
116
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *in_Error,
117
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *in_Message,
118
<a class="link" href="telepathy-glib-client.html#tp-cli-client-interface-requests-callback-for-remove-request" title="tp_cli_client_interface_requests_callback_for_remove_request ()"><span class="returnvalue">tp_cli_client_interface_requests_callback_for_remove_request</span></a> callback,
119
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> user_data,
120
<a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="returnvalue">GDestroyNotify</span></a> destroy,
121
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *weak_object);
106
(<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#TpClient"><span class="type">TpClient</span></a> *proxy</code></em>,
107
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> timeout_ms</code></em>,
108
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *in_Request</code></em>,
109
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *in_Error</code></em>,
110
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *in_Message</code></em>,
111
<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#tp-cli-client-interface-requests-callback-for-remove-request" title="tp_cli_client_interface_requests_callback_for_remove_request ()"><span class="type">tp_cli_client_interface_requests_callback_for_remove_request</span></a> callback</code></em>,
112
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
113
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy</code></em>,
114
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *weak_object</code></em>);
123
116
<span class="returnvalue">void</span> (<a class="link" href="telepathy-glib-client.html#tp-cli-client-approver-callback-for-add-dispatch-operation" title="tp_cli_client_approver_callback_for_add_dispatch_operation ()">*tp_cli_client_approver_callback_for_add_dispatch_operation</a>)
124
(<a class="link" href="telepathy-glib-client.html#TpClient"><span class="returnvalue">TpClient</span></a> *proxy,
125
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="returnvalue">GError</span></a> *error,
126
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> user_data,
127
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *weak_object);
117
(<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#TpClient"><span class="type">TpClient</span></a> *proxy</code></em>,
118
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> *error</code></em>,
119
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
120
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *weak_object</code></em>);
128
121
<a class="link" href="telepathy-glib-proxy.html#TpProxyPendingCall" title="TpProxyPendingCall"><span class="returnvalue">TpProxyPendingCall</span></a> * <a class="link" href="telepathy-glib-client.html#tp-cli-client-approver-call-add-dispatch-operation" title="tp_cli_client_approver_call_add_dispatch_operation ()">tp_cli_client_approver_call_add_dispatch_operation</a>
129
(<a class="link" href="telepathy-glib-client.html#TpClient"><span class="returnvalue">TpClient</span></a> *proxy,
130
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> timeout_ms,
131
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="returnvalue">GPtrArray</span></a> *in_Channels,
132
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *in_DispatchOperation,
133
<a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> *in_Properties,
134
<a class="link" href="telepathy-glib-client.html#tp-cli-client-approver-callback-for-add-dispatch-operation" title="tp_cli_client_approver_callback_for_add_dispatch_operation ()"><span class="returnvalue">tp_cli_client_approver_callback_for_add_dispatch_operation</span></a> callback,
135
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> user_data,
136
<a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="returnvalue">GDestroyNotify</span></a> destroy,
137
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *weak_object);
122
(<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#TpClient"><span class="type">TpClient</span></a> *proxy</code></em>,
123
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> timeout_ms</code></em>,
124
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *in_Channels</code></em>,
125
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *in_DispatchOperation</code></em>,
126
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> *in_Properties</code></em>,
127
<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#tp-cli-client-approver-callback-for-add-dispatch-operation" title="tp_cli_client_approver_callback_for_add_dispatch_operation ()"><span class="type">tp_cli_client_approver_callback_for_add_dispatch_operation</span></a> callback</code></em>,
128
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
129
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy</code></em>,
130
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *weak_object</code></em>);
140
133
<div class="refsect1" title="Object Hierarchy">
141
134
<a name="telepathy-glib-client.object-hierarchy"></a><h2>Object Hierarchy</h2>
142
135
<pre class="synopsis">
143
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
136
<a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject">GObject</a>
144
137
+----<a class="link" href="telepathy-glib-proxy.html#TpProxy">TpProxy</a>
237
236
<div class="refsect2" title="tp_cli_client_observer_call_observe_channels ()">
238
237
<a name="tp-cli-client-observer-call-observe-channels"></a><h3>tp_cli_client_observer_call_observe_channels ()</h3>
239
238
<pre class="programlisting"><a class="link" href="telepathy-glib-proxy.html#TpProxyPendingCall" title="TpProxyPendingCall"><span class="returnvalue">TpProxyPendingCall</span></a> * tp_cli_client_observer_call_observe_channels
240
(<a class="link" href="telepathy-glib-client.html#TpClient"><span class="returnvalue">TpClient</span></a> *proxy,
241
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> timeout_ms,
242
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *in_Account,
243
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *in_Connection,
244
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="returnvalue">GPtrArray</span></a> *in_Channels,
245
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *in_Dispatch_Operation,
246
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="returnvalue">GPtrArray</span></a> *in_Requests_Satisfied,
247
<a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> *in_Observer_Info,
248
<a class="link" href="telepathy-glib-client.html#tp-cli-client-observer-callback-for-observe-channels" title="tp_cli_client_observer_callback_for_observe_channels ()"><span class="returnvalue">tp_cli_client_observer_callback_for_observe_channels</span></a> callback,
249
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> user_data,
250
<a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="returnvalue">GDestroyNotify</span></a> destroy,
251
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *weak_object);</pre>
239
(<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#TpClient"><span class="type">TpClient</span></a> *proxy</code></em>,
240
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> timeout_ms</code></em>,
241
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *in_Account</code></em>,
242
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *in_Connection</code></em>,
243
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *in_Channels</code></em>,
244
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *in_Dispatch_Operation</code></em>,
245
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *in_Requests_Satisfied</code></em>,
246
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> *in_Observer_Info</code></em>,
247
<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#tp-cli-client-observer-callback-for-observe-channels" title="tp_cli_client_observer_callback_for_observe_channels ()"><span class="type">tp_cli_client_observer_callback_for_observe_channels</span></a> callback</code></em>,
248
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
249
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy</code></em>,
250
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *weak_object</code></em>);</pre>
253
252
Start a ObserveChannels method call.
256
<tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>Called by the channel dispatcher when channels in which the observer has registered an interest are announced in a <tp:dbus-ref namespace="org.freedesktop.Telepathy.Connection.Interface.Requests">NewChannels</tp:dbus-ref> signal.</p> <p>If the same NewChannels signal announces some channels that match the filter, and some that do not, then only a subset of the channels (those that do match the filter) are passed to this method.</p> <p>If the channel dispatcher will split up the channels from a single NewChannels signal and dispatch them separately (for instance because no installed Handler can handle all of them), it will call ObserveChannels several times.</p> <p>The observer MUST NOT return from this method call until it is ready for a handler for the channel to run (which may change the channel's state).</p> <tp:rationale> <p>The channel dispatcher must wait for observers to start up, to avoid the following race: text channel logger (observer) gets ObserveChannels, text channel handler gets <tp:dbus-ref namespace="org.freedesktop.Telepathy.Client.Handler">HandleChannels</tp:dbus-ref> channel handler starts up faster and acknowledges messages, logger never sees those messages.</p> </tp:rationale> <p>The channel dispatcher SHOULD NOT change its behaviour based on whether this method succeeds or fails: there are no defined D-Bus errors for this method, and if it fails, this only indicates that an Observer is somehow broken.</p> <tp:rationale> <p>The expected error response in the channel dispatcher is to log a warning, and otherwise continue as though this method had succeeded.</p> </tp:rationale></p>
255
<tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>Called by the channel dispatcher when channels in which the observer has registered an interest are announced in a <tp:dbus-ref namespace="org.freedesktop.Telepathy.Connection.Interface.Requests">NewChannels</tp:dbus-ref> signal.</p> <p>If the same NewChannels signal announces some channels that match the filter, and some that do not, then only a subset of the channels (those that do match the filter) are passed to this method.</p> <p>If the channel dispatcher will split up the channels from a single NewChannels signal and dispatch them separately (for instance because no installed Handler can handle all of them), it will call ObserveChannels several times.</p> <p>The observer MUST NOT return from this method call until it is ready for a handler for the channel to run (which may change the channel's state).</p> <tp:rationale> <p>The channel dispatcher must wait for observers to start up, to avoid the following race: text channel logger (observer) gets ObserveChannels, text channel handler gets <tp:dbus-ref namespace="org.freedesktop.Telepathy.Client.Handler">HandleChannels</tp:dbus-ref> channel handler starts up faster and acknowledges messages, logger never sees those messages.</p> </tp:rationale> <p>The channel dispatcher SHOULD NOT change its behaviour based on whether this method succeeds or fails: there are no defined D-Bus errors for this method, and if it fails, this only indicates that an Observer is somehow broken.</p> <tp:rationale> <p>The expected error response in the channel dispatcher is to log a warning, and otherwise continue as though this method had succeeded.</p> </tp:rationale>
257
257
<div class="variablelist"><table border="0">
258
258
<col align="left" valign="top">
261
261
<td><p><span class="term"><em class="parameter"><code>proxy</code></em> :</span></p></td>
262
<td> the <a class="link" href="telepathy-glib-proxy.html#TpProxy"><span class="type">TpProxy</span></a>
262
<td>the <a class="link" href="telepathy-glib-proxy.html#TpProxy"><span class="type">TpProxy</span></a>
266
266
<td><p><span class="term"><em class="parameter"><code>timeout_ms</code></em> :</span></p></td>
267
<td> the timeout in milliseconds, or -1 to use the
267
<td>the timeout in milliseconds, or -1 to use the
272
272
<td><p><span class="term"><em class="parameter"><code>in_Account</code></em> :</span></p></td>
273
<td> Used to pass an 'in' argument: The <tp:dbus-ref namespace="org.freedesktop.Telepathy">Account</tp:dbus-ref> with which the channels are associated. The well-known bus name to use is that of the <tp:dbus-ref namespace="org.freedesktop.Telepathy">AccountManager</tp:dbus-ref>.
273
<td>Used to pass an 'in' argument: The <tp:dbus-ref namespace="org.freedesktop.Telepathy">Account</tp:dbus-ref> with which the channels are associated. The well-known bus name to use is that of the <tp:dbus-ref namespace="org.freedesktop.Telepathy">AccountManager</tp:dbus-ref>.
277
277
<td><p><span class="term"><em class="parameter"><code>in_Connection</code></em> :</span></p></td>
278
<td> Used to pass an 'in' argument: The <tp:dbus-ref namespace="org.freedesktop.Telepathy">Connection</tp:dbus-ref> with which the channels are associated. The well-known bus name to use can be derived from this object path by removing the leading '/' and replacing all subsequent '/' by '.'.
278
<td>Used to pass an 'in' argument: The <tp:dbus-ref namespace="org.freedesktop.Telepathy">Connection</tp:dbus-ref> with which the channels are associated. The well-known bus name to use can be derived from this object path by removing the leading '/' and replacing all subsequent '/' by '.'.
282
282
<td><p><span class="term"><em class="parameter"><code>in_Channels</code></em> :</span></p></td>
283
<td> Used to pass an 'in' argument: The <tp:dbus-ref namespace="org.freedesktop.Telepathy">Channel</tp:dbus-ref>s and their properties. Their well-known bus names are all the same as that of the Connection.
283
<td>Used to pass an 'in' argument: The <tp:dbus-ref namespace="org.freedesktop.Telepathy">Channel</tp:dbus-ref>s and their properties. Their well-known bus names are all the same as that of the Connection.
287
287
<td><p><span class="term"><em class="parameter"><code>in_Dispatch_Operation</code></em> :</span></p></td>
288
<td> Used to pass an 'in' argument: <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>The path to the <tp:dbus-ref namespace="org.freedesktop.Telepathy">ChannelDispatchOperation</tp:dbus-ref> for these channels, or the special value '/' if there is no ChannelDispatchOperation (because the channels were requested, not incoming).</p> <p>If the Observer calls <tp:dbus-ref namespace="org.freedesktop.Telepathy.ChannelDispatchOperation">Claim</tp:dbus-ref> or <tp:dbus-ref namespace="org.freedesktop.Telepathy.ChannelDispatchOperation">HandleWith</tp:dbus-ref> on the dispatch operation, it MUST be careful to avoid deadlock, since these methods cannot return until the Observer has returned from <tp:member-ref>ObserveChannels</tp:member-ref>.</p> <tp:rationale> <p>This allows an Observer to <tp:dbus-ref namespace="org.freedesktop.Telepathy.ChannelDispatchOperation">Claim</tp:dbus-ref> a set of channels without having to match up calls to this method with calls to <tp:dbus-ref namespace="org.freedesktop.Telepathy.Client.Approver">AddDispatchOperation</tp:dbus-ref>.</p> </tp:rationale>
288
<td>Used to pass an 'in' argument: <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>The path to the <tp:dbus-ref namespace="org.freedesktop.Telepathy">ChannelDispatchOperation</tp:dbus-ref> for these channels, or the special value '/' if there is no ChannelDispatchOperation (because the channels were requested, not incoming).</p> <p>If the Observer calls <tp:dbus-ref namespace="org.freedesktop.Telepathy.ChannelDispatchOperation">Claim</tp:dbus-ref> or <tp:dbus-ref namespace="org.freedesktop.Telepathy.ChannelDispatchOperation">HandleWith</tp:dbus-ref> on the dispatch operation, it MUST be careful to avoid deadlock, since these methods cannot return until the Observer has returned from <tp:member-ref>ObserveChannels</tp:member-ref>.</p> <tp:rationale> <p>This allows an Observer to <tp:dbus-ref namespace="org.freedesktop.Telepathy.ChannelDispatchOperation">Claim</tp:dbus-ref> a set of channels without having to match up calls to this method with calls to <tp:dbus-ref namespace="org.freedesktop.Telepathy.Client.Approver">AddDispatchOperation</tp:dbus-ref>.</p> </tp:rationale>
292
292
<td><p><span class="term"><em class="parameter"><code>in_Requests_Satisfied</code></em> :</span></p></td>
293
<td> Used to pass an 'in' argument: The requests satisfied by these channels. <tp:rationale> If the same process is an Observer and a Handler, it can be useful to be given this information as soon as possible (it will also be passed to <tp:dbus-ref namespace="org.freedesktop.Telepathy.Client">Handler.HandleChannels</tp:dbus-ref>). </tp:rationale>
293
<td>Used to pass an 'in' argument: The requests satisfied by these channels. <tp:rationale> If the same process is an Observer and a Handler, it can be useful to be given this information as soon as possible (it will also be passed to <tp:dbus-ref namespace="org.freedesktop.Telepathy.Client">Handler.HandleChannels</tp:dbus-ref>). </tp:rationale>
297
297
<td><p><span class="term"><em class="parameter"><code>in_Observer_Info</code></em> :</span></p></td>
298
<td> Used to pass an 'in' argument: <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>Additional information about these channels. No keys are currently defined.</p> <p>If keys are defined for this dictionary, all will be optional; observers MAY safely ignore any entry in this dictionary.</p>
298
<td>Used to pass an 'in' argument: <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>Additional information about these channels. Currently defined keys are:</p> <dl> <dt><code>recovering</code> - b</dt> <dd>True if ObserveChannels was called on existing channel due to observer recovery, otherwise False. <tp:rationale> This allows observers to distinguish between new channels (the normal case), and existing channels that were given to the observer in order to catch up on previous events (perhaps after a previous instance of the same observer crashed). </tp:rationale> </dd> </dl> <p>All defined keys for this dictionary are optional; observers MAY safely ignore any entry in this dictionary.</p>
302
302
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
303
<td> called when the method call succeeds or fails;
304
may be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to make a "fire and forget" call with no
303
<td>called when the method call succeeds or fails;
304
may be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to make a "fire and forget" call with no
309
309
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
310
<td> user-supplied data passed to the callback;
311
must be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>callback</code></em> is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
310
<td>user-supplied data passed to the callback;
311
must be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>callback</code></em> is <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
315
315
<td><p><span class="term"><em class="parameter"><code>destroy</code></em> :</span></p></td>
316
<td> called with the user_data as argument, after the
316
<td>called with the user_data as argument, after the
317
317
call has succeeded, failed or been cancelled;
318
must be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>callback</code></em> is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
318
must be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>callback</code></em> is <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
322
322
<td><p><span class="term"><em class="parameter"><code>weak_object</code></em> :</span></p></td>
323
<td> If not <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> which will be
323
<td>If not <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> which will be
324
324
weakly referenced; if it is destroyed, this call
325
will automatically be cancelled. Must be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
326
<em class="parameter"><code>callback</code></em> is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
325
will automatically be cancelled. Must be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
326
<em class="parameter"><code>callback</code></em> is <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
378
380
<div class="refsect2" title="tp_cli_client_handler_call_handle_channels ()">
379
381
<a name="tp-cli-client-handler-call-handle-channels"></a><h3>tp_cli_client_handler_call_handle_channels ()</h3>
380
382
<pre class="programlisting"><a class="link" href="telepathy-glib-proxy.html#TpProxyPendingCall" title="TpProxyPendingCall"><span class="returnvalue">TpProxyPendingCall</span></a> * tp_cli_client_handler_call_handle_channels
381
(<a class="link" href="telepathy-glib-client.html#TpClient"><span class="returnvalue">TpClient</span></a> *proxy,
382
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> timeout_ms,
383
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *in_Account,
384
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *in_Connection,
385
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="returnvalue">GPtrArray</span></a> *in_Channels,
386
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="returnvalue">GPtrArray</span></a> *in_Requests_Satisfied,
387
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint64"><span class="returnvalue">guint64</span></a> in_User_Action_Time,
388
<a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> *in_Handler_Info,
389
<a class="link" href="telepathy-glib-client.html#tp-cli-client-handler-callback-for-handle-channels" title="tp_cli_client_handler_callback_for_handle_channels ()"><span class="returnvalue">tp_cli_client_handler_callback_for_handle_channels</span></a> callback,
390
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> user_data,
391
<a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="returnvalue">GDestroyNotify</span></a> destroy,
392
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *weak_object);</pre>
383
(<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#TpClient"><span class="type">TpClient</span></a> *proxy</code></em>,
384
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> timeout_ms</code></em>,
385
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *in_Account</code></em>,
386
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *in_Connection</code></em>,
387
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *in_Channels</code></em>,
388
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *in_Requests_Satisfied</code></em>,
389
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> in_User_Action_Time</code></em>,
390
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> *in_Handler_Info</code></em>,
391
<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#tp-cli-client-handler-callback-for-handle-channels" title="tp_cli_client_handler_callback_for_handle_channels ()"><span class="type">tp_cli_client_handler_callback_for_handle_channels</span></a> callback</code></em>,
392
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
393
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy</code></em>,
394
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *weak_object</code></em>);</pre>
394
396
Start a HandleChannels method call.
397
<tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>Called by the channel dispatcher when this client should handle these channels, or when this client should present channels that it is already handling to the user (e.g. bring them into the foreground).</p> <tp:rationale> <p>Clients are expected to know what channels they're already handling, and which channel object path corresponds to which window or tab. This can easily be done using a hash table keyed by channels' object paths.</p> </tp:rationale> <p>This method can raise any D-Bus error. If it does, the handler is assumed to have failed or crashed, and the channel dispatcher MUST recover in an implementation-specific way; it MAY attempt to dispatch the channels to another handler, or close the channels.</p> <p>If closing the channels, it is RECOMMENDED that the channel dispatcher attempts to close the channels using <tp:dbus-ref namespace="org.freedesktop.Telepathy">Channel.Close</tp:dbus-ref>, but resorts to calling <tp:dbus-ref namespace="org.freedesktop.Telepathy">Channel.Interface.Destroyable.Destroy</tp:dbus-ref> (if available) or ignoring the channel (if not) if the same handler repeatedly fails to handle channels.</p> <p>After HandleChannels returns successfully, the client process is considered to be responsible for the channel until it its unique name disappears from the bus.</p> <tp:rationale> <p>If a process has multiple Client bus names - some temporary and some long-lived - and drops one of the temporary bus names in order to reduce the set of channels that it will handle, any channels that it is already handling should remain unaffected.</p> </tp:rationale></p>
399
<tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>Called by the channel dispatcher when this client should handle these channels, or when this client should present channels that it is already handling to the user (e.g. bring them into the foreground).</p> <tp:rationale> <p>Clients are expected to know what channels they're already handling, and which channel object path corresponds to which window or tab. This can easily be done using a hash table keyed by channels' object paths.</p> </tp:rationale> <p>This method can raise any D-Bus error. If it does, the handler is assumed to have failed or crashed, and the channel dispatcher MUST recover in an implementation-specific way; it MAY attempt to dispatch the channels to another handler, or close the channels.</p> <p>If closing the channels, it is RECOMMENDED that the channel dispatcher attempts to close the channels using <tp:dbus-ref namespace="org.freedesktop.Telepathy">Channel.Close</tp:dbus-ref>, but resorts to calling <tp:dbus-ref namespace="org.freedesktop.Telepathy">Channel.Interface.Destroyable.Destroy</tp:dbus-ref> (if available) or ignoring the channel (if not) if the same handler repeatedly fails to handle channels.</p> <p>After HandleChannels returns successfully, the client process is considered to be responsible for the channel until it its unique name disappears from the bus.</p> <tp:rationale> <p>If a process has multiple Client bus names - some temporary and some long-lived - and drops one of the temporary bus names in order to reduce the set of channels that it will handle, any channels that it is already handling should remain unaffected.</p> </tp:rationale>
398
401
<div class="variablelist"><table border="0">
399
402
<col align="left" valign="top">
402
405
<td><p><span class="term"><em class="parameter"><code>proxy</code></em> :</span></p></td>
403
<td> the <a class="link" href="telepathy-glib-proxy.html#TpProxy"><span class="type">TpProxy</span></a>
406
<td>the <a class="link" href="telepathy-glib-proxy.html#TpProxy"><span class="type">TpProxy</span></a>
407
410
<td><p><span class="term"><em class="parameter"><code>timeout_ms</code></em> :</span></p></td>
408
<td> the timeout in milliseconds, or -1 to use the
411
<td>the timeout in milliseconds, or -1 to use the
413
416
<td><p><span class="term"><em class="parameter"><code>in_Account</code></em> :</span></p></td>
414
<td> Used to pass an 'in' argument: The <tp:dbus-ref namespace="org.freedesktop.Telepathy">Account</tp:dbus-ref> with which the channels are associated. The well-known bus name to use is that of the <tp:dbus-ref namespace="org.freedesktop.Telepathy">AccountManager</tp:dbus-ref>.
417
<td>Used to pass an 'in' argument: The <tp:dbus-ref namespace="org.freedesktop.Telepathy">Account</tp:dbus-ref> with which the channels are associated. The well-known bus name to use is that of the <tp:dbus-ref namespace="org.freedesktop.Telepathy">AccountManager</tp:dbus-ref>.
418
421
<td><p><span class="term"><em class="parameter"><code>in_Connection</code></em> :</span></p></td>
419
<td> Used to pass an 'in' argument: The Connection with which the channels are associated. The well-known bus name to use can be derived from this object path by removing the leading '/' and replacing all subsequent '/' by '.'.
422
<td>Used to pass an 'in' argument: The Connection with which the channels are associated. The well-known bus name to use can be derived from this object path by removing the leading '/' and replacing all subsequent '/' by '.'.
423
426
<td><p><span class="term"><em class="parameter"><code>in_Channels</code></em> :</span></p></td>
424
<td> Used to pass an 'in' argument: The channels and their immutable properties. Their well-known bus name is the same as that of the Connection.
427
<td>Used to pass an 'in' argument: The channels and their immutable properties. Their well-known bus name is the same as that of the Connection.
428
431
<td><p><span class="term"><em class="parameter"><code>in_Requests_Satisfied</code></em> :</span></p></td>
429
<td> Used to pass an 'in' argument: <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>The requests satisfied by these channels.</p> <tp:rationale> <p>If the handler implements Requests, this tells it that these channels match previous <tp:dbus-ref namespace="org.freedesktop.Telepathy.Client.Interface.Requests">AddRequest</tp:dbus-ref> calls that it may have received.</p> <p>There can be more than one, if they were EnsureChannel requests.</p> </tp:rationale>
432
<td>Used to pass an 'in' argument: <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>The requests satisfied by these channels.</p> <tp:rationale> <p>If the handler implements Requests, this tells it that these channels match previous <tp:dbus-ref namespace="org.freedesktop.Telepathy.Client.Interface.Requests">AddRequest</tp:dbus-ref> calls that it may have received.</p> <p>There can be more than one, if they were EnsureChannel requests.</p> </tp:rationale>
433
436
<td><p><span class="term"><em class="parameter"><code>in_User_Action_Time</code></em> :</span></p></td>
434
<td> Used to pass an 'in' argument: The time at which user action occurred, or 0 if this channel is to be handled for some reason not involving user action. Handlers SHOULD use this for focus-stealing prevention, if applicable.
437
<td>Used to pass an 'in' argument: The time at which user action occurred, or 0 if this channel is to be handled for some reason not involving user action. Handlers SHOULD use this for focus-stealing prevention, if applicable.
438
441
<td><p><span class="term"><em class="parameter"><code>in_Handler_Info</code></em> :</span></p></td>
439
<td> Used to pass an 'in' argument: <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>Additional information about these channels. No keys are currently defined.</p> <p>If keys are defined for this dictionary, all will be optional; handlers MAY safely ignore any entry in this dictionary.</p>
442
<td>Used to pass an 'in' argument: <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>Additional information about these channels. No keys are currently defined.</p> <p>If keys are defined for this dictionary, all will be optional; handlers MAY safely ignore any entry in this dictionary.</p>
443
446
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
444
<td> called when the method call succeeds or fails;
445
may be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to make a "fire and forget" call with no
447
<td>called when the method call succeeds or fails;
448
may be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to make a "fire and forget" call with no
450
453
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
451
<td> user-supplied data passed to the callback;
452
must be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>callback</code></em> is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
454
<td>user-supplied data passed to the callback;
455
must be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>callback</code></em> is <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
456
459
<td><p><span class="term"><em class="parameter"><code>destroy</code></em> :</span></p></td>
457
<td> called with the user_data as argument, after the
460
<td>called with the user_data as argument, after the
458
461
call has succeeded, failed or been cancelled;
459
must be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>callback</code></em> is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
462
must be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>callback</code></em> is <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
463
466
<td><p><span class="term"><em class="parameter"><code>weak_object</code></em> :</span></p></td>
464
<td> If not <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> which will be
467
<td>If not <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> which will be
465
468
weakly referenced; if it is destroyed, this call
466
will automatically be cancelled. Must be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
467
<em class="parameter"><code>callback</code></em> is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
469
will automatically be cancelled. Must be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
470
<em class="parameter"><code>callback</code></em> is <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
519
524
<div class="refsect2" title="tp_cli_client_interface_requests_call_add_request ()">
520
525
<a name="tp-cli-client-interface-requests-call-add-request"></a><h3>tp_cli_client_interface_requests_call_add_request ()</h3>
521
526
<pre class="programlisting"><a class="link" href="telepathy-glib-proxy.html#TpProxyPendingCall" title="TpProxyPendingCall"><span class="returnvalue">TpProxyPendingCall</span></a> * tp_cli_client_interface_requests_call_add_request
522
(<a class="link" href="telepathy-glib-client.html#TpClient"><span class="returnvalue">TpClient</span></a> *proxy,
523
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> timeout_ms,
524
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *in_Request,
525
<a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> *in_Properties,
526
<a class="link" href="telepathy-glib-client.html#tp-cli-client-interface-requests-callback-for-add-request" title="tp_cli_client_interface_requests_callback_for_add_request ()"><span class="returnvalue">tp_cli_client_interface_requests_callback_for_add_request</span></a> callback,
527
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> user_data,
528
<a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="returnvalue">GDestroyNotify</span></a> destroy,
529
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *weak_object);</pre>
527
(<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#TpClient"><span class="type">TpClient</span></a> *proxy</code></em>,
528
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> timeout_ms</code></em>,
529
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *in_Request</code></em>,
530
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> *in_Properties</code></em>,
531
<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#tp-cli-client-interface-requests-callback-for-add-request" title="tp_cli_client_interface_requests_callback_for_add_request ()"><span class="type">tp_cli_client_interface_requests_callback_for_add_request</span></a> callback</code></em>,
532
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
533
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy</code></em>,
534
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *weak_object</code></em>);</pre>
531
536
Start a AddRequest method call.
534
<tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>Called by the ChannelDispatcher to indicate that channels have been requested, and that if the request is successful, they will probably be handled by this Handler. The ChannelDispatcher SHOULD only call this method on one handler per request.</p> <tp:rationale> <p>This allows the UI to start preparing to handle the channels in advance (e.g. render a window with an &quot;in progress&quot; message), improving perceived responsiveness.</p> <p>The use of &quot;probably&quot; is because you can't necessarily tell from a channel request which handler will handle particular channels. A reasonable heuristic would be to match the request against the <tp:dbus-ref namespace="org.freedesktop.Telepathy.Client.Handler">HandlerChannelFilter</tp:dbus-ref>, and respect the preferred handler (if any).</p> </tp:rationale> <p>If the request succeeds and is given to the expected Handler, the Requests_Satisfied parameter to <tp:dbus-ref namespace="org.freedesktop.Telepathy.Client.Handler">HandleChannels</tp:dbus-ref> can be used to match the channel to a previous AddRequest call.</p> <tp:rationale> <p>This lets the UI direct the channels to the window that it already opened.</p> </tp:rationale> <p>If the request fails, the expected handler is notified by the channel dispatcher calling its <tp:member-ref>RemoveRequest</tp:member-ref> method.</p> <tp:rationale> <p>This lets the UI close the window or display the error.</p> </tp:rationale> <p>The channel dispatcher SHOULD remember which handler was notified, and if the channel request succeeds, it SHOULD dispatch the channels to the expected handler, unless the channels do not match that handler's <tp:dbus-ref namespace="org.freedesktop.Telepathy.Client.Handler">HandlerChannelFilter</tp:dbus-ref>. If the channels are not dispatched to the expected handler, the handler that was expected is notified by the channel dispatcher calling its <tp:member-ref>RemoveRequest</tp:member-ref> method with the NotYours error.</p> <tp:rationale> <p>Expected handling is for the UI to close the window it previously opened.</p> </tp:rationale> <p>Handlers SHOULD NOT return an error from this method; errors returned from this method SHOULD NOT alter the channel dispatcher's behaviour.</p> <tp:rationale> <p>Calls to this method are merely a notification.</p> </tp:rationale></p>
539
<tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>Called by the ChannelDispatcher to indicate that channels have been requested, and that if the request is successful, they will probably be handled by this Handler. The ChannelDispatcher SHOULD only call this method on one handler per request.</p> <tp:rationale> <p>This allows the UI to start preparing to handle the channels in advance (e.g. render a window with an &quot;in progress&quot; message), improving perceived responsiveness.</p> <p>The use of &quot;probably&quot; is because you can't necessarily tell from a channel request which handler will handle particular channels. A reasonable heuristic would be to match the request against the <tp:dbus-ref namespace="org.freedesktop.Telepathy.Client.Handler">HandlerChannelFilter</tp:dbus-ref>, and respect the preferred handler (if any).</p> </tp:rationale> <p>If the request succeeds and is given to the expected Handler, the Requests_Satisfied parameter to <tp:dbus-ref namespace="org.freedesktop.Telepathy.Client.Handler">HandleChannels</tp:dbus-ref> can be used to match the channel to a previous AddRequest call.</p> <tp:rationale> <p>This lets the UI direct the channels to the window that it already opened.</p> </tp:rationale> <p>If the request fails, the expected handler is notified by the channel dispatcher calling its <tp:member-ref>RemoveRequest</tp:member-ref> method.</p> <tp:rationale> <p>This lets the UI close the window or display the error.</p> </tp:rationale> <p>The channel dispatcher SHOULD remember which handler was notified, and if the channel request succeeds, it SHOULD dispatch the channels to the expected handler, unless the channels do not match that handler's <tp:dbus-ref namespace="org.freedesktop.Telepathy.Client.Handler">HandlerChannelFilter</tp:dbus-ref>. If the channels are not dispatched to the expected handler, the handler that was expected is notified by the channel dispatcher calling its <tp:member-ref>RemoveRequest</tp:member-ref> method with the NotYours error.</p> <tp:rationale> <p>Expected handling is for the UI to close the window it previously opened.</p> </tp:rationale> <p>Handlers SHOULD NOT return an error from this method; errors returned from this method SHOULD NOT alter the channel dispatcher's behaviour.</p> <tp:rationale> <p>Calls to this method are merely a notification.</p> </tp:rationale>
535
541
<div class="variablelist"><table border="0">
536
542
<col align="left" valign="top">
539
545
<td><p><span class="term"><em class="parameter"><code>proxy</code></em> :</span></p></td>
540
<td> the <a class="link" href="telepathy-glib-proxy.html#TpProxy"><span class="type">TpProxy</span></a>
546
<td>the <a class="link" href="telepathy-glib-proxy.html#TpProxy"><span class="type">TpProxy</span></a>
544
550
<td><p><span class="term"><em class="parameter"><code>timeout_ms</code></em> :</span></p></td>
545
<td> the timeout in milliseconds, or -1 to use the
551
<td>the timeout in milliseconds, or -1 to use the
550
556
<td><p><span class="term"><em class="parameter"><code>in_Request</code></em> :</span></p></td>
551
<td> Used to pass an 'in' argument: The <tp:dbus-ref namespace="org.freedesktop.Telepathy">ChannelRequest</tp:dbus-ref> object, which MUST have been returned by <tp:dbus-ref namespace="org.freedesktop.Telepathy.ChannelDispatcher">CreateChannel</tp:dbus-ref> or <tp:dbus-ref namespace="org.freedesktop.Telepathy.ChannelDispatcher">EnsureChannel</tp:dbus-ref> before this method is called. <tp:rationale> See those methods for the rationale of this ordering. </tp:rationale>
557
<td>Used to pass an 'in' argument: The <tp:dbus-ref namespace="org.freedesktop.Telepathy">ChannelRequest</tp:dbus-ref> object, which MUST have been returned by <tp:dbus-ref namespace="org.freedesktop.Telepathy.ChannelDispatcher">CreateChannel</tp:dbus-ref> or <tp:dbus-ref namespace="org.freedesktop.Telepathy.ChannelDispatcher">EnsureChannel</tp:dbus-ref> before this method is called. <tp:rationale> See those methods for the rationale of this ordering. </tp:rationale>
555
561
<td><p><span class="term"><em class="parameter"><code>in_Properties</code></em> :</span></p></td>
556
<td> Used to pass an 'in' argument: <p>Some of the properties of the ChannelRequest. To avoid race conditions, this dictionary MUST NOT include properties whose values could subsequently change. It SHOULD include as many properties as possible, given that constraint.</p> <p>In particular, the properties <tp:dbus-ref namespace="org.freedesktop.Telepathy.ChannelRequest">Requests</tp:dbus-ref> and <tp:dbus-ref namespace="org.freedesktop.Telepathy.ChannelRequest">UserActionTime</tp:dbus-ref> MUST be included.</p>
562
<td>Used to pass an 'in' argument: <p>Some of the properties of the ChannelRequest. To avoid race conditions, this dictionary MUST NOT include properties whose values could subsequently change. It SHOULD include as many properties as possible, given that constraint.</p> <p>In particular, the properties <tp:dbus-ref namespace="org.freedesktop.Telepathy.ChannelRequest">Requests</tp:dbus-ref> and <tp:dbus-ref namespace="org.freedesktop.Telepathy.ChannelRequest">UserActionTime</tp:dbus-ref> MUST be included.</p>
560
566
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
561
<td> called when the method call succeeds or fails;
562
may be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to make a "fire and forget" call with no
567
<td>called when the method call succeeds or fails;
568
may be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to make a "fire and forget" call with no
567
573
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
568
<td> user-supplied data passed to the callback;
569
must be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>callback</code></em> is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
574
<td>user-supplied data passed to the callback;
575
must be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>callback</code></em> is <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
573
579
<td><p><span class="term"><em class="parameter"><code>destroy</code></em> :</span></p></td>
574
<td> called with the user_data as argument, after the
580
<td>called with the user_data as argument, after the
575
581
call has succeeded, failed or been cancelled;
576
must be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>callback</code></em> is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
582
must be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>callback</code></em> is <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
580
586
<td><p><span class="term"><em class="parameter"><code>weak_object</code></em> :</span></p></td>
581
<td> If not <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> which will be
587
<td>If not <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> which will be
582
588
weakly referenced; if it is destroyed, this call
583
will automatically be cancelled. Must be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
584
<em class="parameter"><code>callback</code></em> is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
589
will automatically be cancelled. Must be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
590
<em class="parameter"><code>callback</code></em> is <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
636
644
<div class="refsect2" title="tp_cli_client_interface_requests_call_remove_request ()">
637
645
<a name="tp-cli-client-interface-requests-call-remove-request"></a><h3>tp_cli_client_interface_requests_call_remove_request ()</h3>
638
646
<pre class="programlisting"><a class="link" href="telepathy-glib-proxy.html#TpProxyPendingCall" title="TpProxyPendingCall"><span class="returnvalue">TpProxyPendingCall</span></a> * tp_cli_client_interface_requests_call_remove_request
639
(<a class="link" href="telepathy-glib-client.html#TpClient"><span class="returnvalue">TpClient</span></a> *proxy,
640
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> timeout_ms,
641
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *in_Request,
642
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *in_Error,
643
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *in_Message,
644
<a class="link" href="telepathy-glib-client.html#tp-cli-client-interface-requests-callback-for-remove-request" title="tp_cli_client_interface_requests_callback_for_remove_request ()"><span class="returnvalue">tp_cli_client_interface_requests_callback_for_remove_request</span></a> callback,
645
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> user_data,
646
<a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="returnvalue">GDestroyNotify</span></a> destroy,
647
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *weak_object);</pre>
647
(<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#TpClient"><span class="type">TpClient</span></a> *proxy</code></em>,
648
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> timeout_ms</code></em>,
649
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *in_Request</code></em>,
650
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *in_Error</code></em>,
651
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *in_Message</code></em>,
652
<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#tp-cli-client-interface-requests-callback-for-remove-request" title="tp_cli_client_interface_requests_callback_for_remove_request ()"><span class="type">tp_cli_client_interface_requests_callback_for_remove_request</span></a> callback</code></em>,
653
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
654
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy</code></em>,
655
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *weak_object</code></em>);</pre>
649
657
Start a RemoveRequest method call.
652
<tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>Called by the ChannelDispatcher to indicate that a request previously passed to <tp:member-ref>AddRequest</tp:member-ref> has failed and should be disregarded.</p> <p>Handlers SHOULD NOT return an error from this method; errors returned from this method SHOULD NOT alter the channel dispatcher's behaviour.</p> <tp:rationale> <p>Calls to this method are merely a notification.</p> </tp:rationale></p>
660
<tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>Called by the ChannelDispatcher to indicate that a request previously passed to <tp:member-ref>AddRequest</tp:member-ref> has failed and should be disregarded.</p> <p>Handlers SHOULD NOT return an error from this method; errors returned from this method SHOULD NOT alter the channel dispatcher's behaviour.</p> <tp:rationale> <p>Calls to this method are merely a notification.</p> </tp:rationale>
653
662
<div class="variablelist"><table border="0">
654
663
<col align="left" valign="top">
657
666
<td><p><span class="term"><em class="parameter"><code>proxy</code></em> :</span></p></td>
658
<td> the <a class="link" href="telepathy-glib-proxy.html#TpProxy"><span class="type">TpProxy</span></a>
667
<td>the <a class="link" href="telepathy-glib-proxy.html#TpProxy"><span class="type">TpProxy</span></a>
662
671
<td><p><span class="term"><em class="parameter"><code>timeout_ms</code></em> :</span></p></td>
663
<td> the timeout in milliseconds, or -1 to use the
672
<td>the timeout in milliseconds, or -1 to use the
668
677
<td><p><span class="term"><em class="parameter"><code>in_Request</code></em> :</span></p></td>
669
<td> Used to pass an 'in' argument: The request that failed.
678
<td>Used to pass an 'in' argument: The request that failed.
673
682
<td><p><span class="term"><em class="parameter"><code>in_Error</code></em> :</span></p></td>
674
<td> Used to pass an 'in' argument: <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>The name of the D-Bus error with which the request failed.</p> <p>If this is <code>org.freedesktop.Telepathy.Error.NotYours</code>, this indicates that the request succeeded, but all the resulting channels were given to some other handler.</p>
683
<td>Used to pass an 'in' argument: <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>The name of the D-Bus error with which the request failed.</p> <p>If this is <code>org.freedesktop.Telepathy.Error.NotYours</code>, this indicates that the request succeeded, but all the resulting channels were given to some other handler.</p>
678
687
<td><p><span class="term"><em class="parameter"><code>in_Message</code></em> :</span></p></td>
679
<td> Used to pass an 'in' argument: Any message supplied with the D-Bus error.
688
<td>Used to pass an 'in' argument: Any message supplied with the D-Bus error.
683
692
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
684
<td> called when the method call succeeds or fails;
685
may be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to make a "fire and forget" call with no
693
<td>called when the method call succeeds or fails;
694
may be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to make a "fire and forget" call with no
690
699
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
691
<td> user-supplied data passed to the callback;
692
must be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>callback</code></em> is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
700
<td>user-supplied data passed to the callback;
701
must be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>callback</code></em> is <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
696
705
<td><p><span class="term"><em class="parameter"><code>destroy</code></em> :</span></p></td>
697
<td> called with the user_data as argument, after the
706
<td>called with the user_data as argument, after the
698
707
call has succeeded, failed or been cancelled;
699
must be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>callback</code></em> is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
708
must be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>callback</code></em> is <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
703
712
<td><p><span class="term"><em class="parameter"><code>weak_object</code></em> :</span></p></td>
704
<td> If not <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> which will be
713
<td>If not <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> which will be
705
714
weakly referenced; if it is destroyed, this call
706
will automatically be cancelled. Must be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
707
<em class="parameter"><code>callback</code></em> is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
715
will automatically be cancelled. Must be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
716
<em class="parameter"><code>callback</code></em> is <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
759
770
<div class="refsect2" title="tp_cli_client_approver_call_add_dispatch_operation ()">
760
771
<a name="tp-cli-client-approver-call-add-dispatch-operation"></a><h3>tp_cli_client_approver_call_add_dispatch_operation ()</h3>
761
772
<pre class="programlisting"><a class="link" href="telepathy-glib-proxy.html#TpProxyPendingCall" title="TpProxyPendingCall"><span class="returnvalue">TpProxyPendingCall</span></a> * tp_cli_client_approver_call_add_dispatch_operation
762
(<a class="link" href="telepathy-glib-client.html#TpClient"><span class="returnvalue">TpClient</span></a> *proxy,
763
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> timeout_ms,
764
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="returnvalue">GPtrArray</span></a> *in_Channels,
765
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *in_DispatchOperation,
766
<a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> *in_Properties,
767
<a class="link" href="telepathy-glib-client.html#tp-cli-client-approver-callback-for-add-dispatch-operation" title="tp_cli_client_approver_callback_for_add_dispatch_operation ()"><span class="returnvalue">tp_cli_client_approver_callback_for_add_dispatch_operation</span></a> callback,
768
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> user_data,
769
<a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="returnvalue">GDestroyNotify</span></a> destroy,
770
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *weak_object);</pre>
773
(<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#TpClient"><span class="type">TpClient</span></a> *proxy</code></em>,
774
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> timeout_ms</code></em>,
775
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> *in_Channels</code></em>,
776
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *in_DispatchOperation</code></em>,
777
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> *in_Properties</code></em>,
778
<em class="parameter"><code><a class="link" href="telepathy-glib-client.html#tp-cli-client-approver-callback-for-add-dispatch-operation" title="tp_cli_client_approver_callback_for_add_dispatch_operation ()"><span class="type">tp_cli_client_approver_callback_for_add_dispatch_operation</span></a> callback</code></em>,
779
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
780
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy</code></em>,
781
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *weak_object</code></em>);</pre>
772
783
Start a AddDispatchOperation method call.
775
<tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>Called by the channel dispatcher when a ChannelDispatchOperation in which the approver has registered an interest is created, or when the approver starts up while such channel dispatch operations already exist.</p> <p>The channel dispatcher SHOULD call this method on all approvers at the same time. If an approver returns an error from this method, the approver is assumed to be faulty.</p> <p>If no approvers return from this method successfully (including situations where there are no matching approvers at all), the channel dispatcher SHOULD consider this to be an error, and recover by dispatching the channel to the most preferred handler.</p> <tp:rationale> Processes that aren't approvers (or don't at least ensure that there is some approver) probably shouldn't be making connections anyway, so there should always be at least one approver running. </tp:rationale></p>
786
<tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>Called by the channel dispatcher when a ChannelDispatchOperation in which the approver has registered an interest is created, or when the approver starts up while such channel dispatch operations already exist.</p> <p>The channel dispatcher SHOULD call this method on all approvers at the same time. If an approver returns an error from this method, the approver is assumed to be faulty.</p> <p>If no approvers return from this method successfully (including situations where there are no matching approvers at all), the channel dispatcher SHOULD consider this to be an error, and recover by dispatching the channel to the most preferred handler.</p> <tp:rationale> Processes that aren't approvers (or don't at least ensure that there is some approver) probably shouldn't be making connections anyway, so there should always be at least one approver running. </tp:rationale>
776
788
<div class="variablelist"><table border="0">
777
789
<col align="left" valign="top">
780
792
<td><p><span class="term"><em class="parameter"><code>proxy</code></em> :</span></p></td>
781
<td> the <a class="link" href="telepathy-glib-proxy.html#TpProxy"><span class="type">TpProxy</span></a>
793
<td>the <a class="link" href="telepathy-glib-proxy.html#TpProxy"><span class="type">TpProxy</span></a>
785
797
<td><p><span class="term"><em class="parameter"><code>timeout_ms</code></em> :</span></p></td>
786
<td> the timeout in milliseconds, or -1 to use the
798
<td>the timeout in milliseconds, or -1 to use the
791
803
<td><p><span class="term"><em class="parameter"><code>in_Channels</code></em> :</span></p></td>
792
<td> Used to pass an 'in' argument: <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>The initial value of the <tp:dbus-ref namespace="org.freedesktop.Telepathy">ChannelDispatchOperation.Channels</tp:dbus-ref> property, containing the <tp:dbus-ref namespace="org.freedesktop.Telepathy">Channel</tp:dbus-ref>s to be dispatched and their properties.</p> <tp:rationale> <p>This can't be signalled to the approver through the Properties parameter of this method, because Channels is not an immutable property.</p> </tp:rationale> <p>This argument always contains all of the channels in the channel dispatch operation, even if not all of them actually match the <tp:member-ref>ApproverChannelFilter</tp:member-ref>.</p> <tp:rationale> <p>This seems the least bad way to handle such a situation; see the discussion on <a href="http://bugs.freedesktop.org/show_bug.cgi?id=21090">bug <span class="type">21090</span></a>.</p> </tp:rationale> <p>The actual channels to be dispatched may reduce as channels are closed: this is signalled by <tp:dbus-ref namespace="org.freedesktop.Telepathy">ChannelDispatchOperation.ChannelLost</tp:dbus-ref>. </p> <p>Approvers SHOULD connect to ChannelLost and <tp:dbus-ref namespace="org.freedesktop.Telepathy">ChannelDispatchOperation.Finished</tp:dbus-ref>. (if desired) before returning from AddDispatchOperation, since those signals are guaranteed not to be emitted until after all AddDispatchOperation calls have returned (with success or failure) or timed out.</p>
804
<td>Used to pass an 'in' argument: <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>The initial value of the <tp:dbus-ref namespace="org.freedesktop.Telepathy">ChannelDispatchOperation.Channels</tp:dbus-ref> property, containing the <tp:dbus-ref namespace="org.freedesktop.Telepathy">Channel</tp:dbus-ref>s to be dispatched and their properties.</p> <tp:rationale> <p>This can't be signalled to the approver through the Properties parameter of this method, because Channels is not an immutable property.</p> </tp:rationale> <p>This argument always contains all of the channels in the channel dispatch operation, even if not all of them actually match the <tp:member-ref>ApproverChannelFilter</tp:member-ref>.</p> <tp:rationale> <p>This seems the least bad way to handle such a situation; see the discussion on <a href="http://bugs.freedesktop.org/show_bug.cgi?id=21090">bug <span class="type">21090</span></a>.</p> </tp:rationale> <p>The actual channels to be dispatched may reduce as channels are closed: this is signalled by <tp:dbus-ref namespace="org.freedesktop.Telepathy">ChannelDispatchOperation.ChannelLost</tp:dbus-ref>. </p> <p>Approvers SHOULD connect to ChannelLost and <tp:dbus-ref namespace="org.freedesktop.Telepathy">ChannelDispatchOperation.Finished</tp:dbus-ref>. (if desired) before returning from AddDispatchOperation, since those signals are guaranteed not to be emitted until after all AddDispatchOperation calls have returned (with success or failure) or timed out.</p>
796
808
<td><p><span class="term"><em class="parameter"><code>in_DispatchOperation</code></em> :</span></p></td>
797
<td> Used to pass an 'in' argument: <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>The <tp:dbus-ref namespace="org.freedesktop.Telepathy">ChannelDispatchOperation</tp:dbus-ref> to be processed.</p>
809
<td>Used to pass an 'in' argument: <tp:docstring xmlns="http://www.w3.org/1999/xhtml"> <p>The <tp:dbus-ref namespace="org.freedesktop.Telepathy">ChannelDispatchOperation</tp:dbus-ref> to be processed.</p>
801
813
<td><p><span class="term"><em class="parameter"><code>in_Properties</code></em> :</span></p></td>
802
<td> Used to pass an 'in' argument: <p>Properties of the channel dispatch operation. The keys MUST be fully qualified D-Bus property names. This MUST NOT include properties that could change, SHOULD include as many properties as possible given that constraint, and MUST include at least the <tp:dbus-ref namespace="org.freedesktop.Telepathy.ChannelDispatchOperation">Account</tp:dbus-ref>, <tp:dbus-ref namespace="org.freedesktop.Telepathy.ChannelDispatchOperation">Connection</tp:dbus-ref> and <tp:dbus-ref namespace="org.freedesktop.Telepathy.ChannelDispatchOperation">PossibleHandlers</tp:dbus-ref> properties.</p>
814
<td>Used to pass an 'in' argument: <p>Properties of the channel dispatch operation. The keys MUST be fully qualified D-Bus property names. This MUST NOT include properties that could change, SHOULD include as many properties as possible given that constraint, and MUST include at least the <tp:dbus-ref namespace="org.freedesktop.Telepathy.ChannelDispatchOperation">Account</tp:dbus-ref>, <tp:dbus-ref namespace="org.freedesktop.Telepathy.ChannelDispatchOperation">Connection</tp:dbus-ref> and <tp:dbus-ref namespace="org.freedesktop.Telepathy.ChannelDispatchOperation">PossibleHandlers</tp:dbus-ref> properties.</p>
806
818
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
807
<td> called when the method call succeeds or fails;
808
may be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to make a "fire and forget" call with no
819
<td>called when the method call succeeds or fails;
820
may be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to make a "fire and forget" call with no
813
825
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
814
<td> user-supplied data passed to the callback;
815
must be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>callback</code></em> is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
826
<td>user-supplied data passed to the callback;
827
must be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>callback</code></em> is <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
819
831
<td><p><span class="term"><em class="parameter"><code>destroy</code></em> :</span></p></td>
820
<td> called with the user_data as argument, after the
832
<td>called with the user_data as argument, after the
821
833
call has succeeded, failed or been cancelled;
822
must be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>callback</code></em> is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
834
must be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>callback</code></em> is <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
826
838
<td><p><span class="term"><em class="parameter"><code>weak_object</code></em> :</span></p></td>
827
<td> If not <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> which will be
839
<td>If not <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> which will be
828
840
weakly referenced; if it is destroyed, this call
829
will automatically be cancelled. Must be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
830
<em class="parameter"><code>callback</code></em> is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
841
will automatically be cancelled. Must be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
842
<em class="parameter"><code>callback</code></em> is <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>