Top |
Service-side Channel Group and Conference interfacesService-side Channel Group and Conference interfaces — Groups of contacts |
void | group-flags-changed | Has Details |
void | handle-owners-changed | Has Details |
void | members-changed | Has Details |
void | self-contact-changed | Has Details |
void | channel-merged | Has Details |
void | channel-removed | Has Details |
Many Telepathy Channel objects can be seen as representing groups or sets of contacts. The Telepathy specification represents this by a common interface, Group. This section documents the auto-generated GInterface used to implement the Group interface.
Contacts can be in four states:
in the group (the "members" set)
"local pending" (waiting to be added to the group by the local client
calling AddMembers()
)
"remote pending" (waiting to be added to the group by some other action, probably by someone else)
no relationship with the group at all
For instance, chatrooms implement the Group interface. Contacts in the chatroom are members, and contacts who we've invited to the group, or contacts who've requested permission to join, are remote pending. If the local user has been invited by another contact, they will appear in the local-pending set until they accept or decline the invitation.
Since 0.11.16, telepathy-glib also includes basic support for the Conference interface, which represents a Group channel that can be initiated by merging or upgrading individual 1-1 channels.
void (*tp_svc_channel_interface_group1_add_members_impl) (TpSvcChannelInterfaceGroup1 *self
,const GArray *in_Contacts
,const gchar *in_Message
,GDBusMethodInvocation *invocation
);
The signature of an implementation of the D-Bus method AddMembers on interface im.telepathy.v1.Channel.Interface.Group1.
void tp_svc_channel_interface_group1_implement_add_members (TpSvcChannelInterfaceGroup1Class *klass
,tp_svc_channel_interface_group1_add_members_impl impl
);
Register an implementation for the AddMembers method in the vtable of an implementation of this interface. To be called from the interface init function.
void
tp_svc_channel_interface_group1_return_from_add_members
(GDBusMethodInvocation *invocation
);
Return successfully by calling g_dbus_method_invocation_return_value()
.
void (*tp_svc_channel_interface_group1_remove_members_impl) (TpSvcChannelInterfaceGroup1 *self
,const GArray *in_Contacts
,const gchar *in_Message
,guint in_Reason
,GDBusMethodInvocation *invocation
);
The signature of an implementation of the D-Bus method RemoveMembers on interface im.telepathy.v1.Channel.Interface.Group1.
void tp_svc_channel_interface_group1_implement_remove_members (TpSvcChannelInterfaceGroup1Class *klass
,tp_svc_channel_interface_group1_remove_members_impl impl
);
Register an implementation for the RemoveMembers method in the vtable of an implementation of this interface. To be called from the interface init function.
void
tp_svc_channel_interface_group1_return_from_remove_members
(GDBusMethodInvocation *invocation
);
Return successfully by calling g_dbus_method_invocation_return_value()
.
void tp_svc_channel_interface_group1_emit_group_flags_changed (gpointer instance
,guint arg_Added
,guint arg_Removed
);
Type-safe wrapper around g_signal_emit to emit the GroupFlagsChanged signal on interface im.telepathy.v1.Channel.Interface.Group1.
void tp_svc_channel_interface_group1_emit_members_changed (gpointer instance
,const GArray *arg_Added
,const GArray *arg_Removed
,const GArray *arg_Local_Pending
,const GArray *arg_Remote_Pending
,GHashTable *arg_Details
);
Type-safe wrapper around g_signal_emit to emit the MembersChanged signal on interface im.telepathy.v1.Channel.Interface.Group1.
instance |
The object implementing this interface |
|
arg_Added |
const GArray * (FIXME, generate documentation) |
|
arg_Removed |
const GArray * (FIXME, generate documentation) |
|
arg_Local_Pending |
const GArray * (FIXME, generate documentation) |
|
arg_Remote_Pending |
const GArray * (FIXME, generate documentation) |
|
arg_Details |
GHashTable * (FIXME, generate documentation) |
void tp_svc_channel_interface_group1_emit_handle_owners_changed (gpointer instance
,GHashTable *arg_Added
,const GArray *arg_Removed
,GHashTable *arg_Identifiers
);
Type-safe wrapper around g_signal_emit to emit the HandleOwnersChanged signal on interface im.telepathy.v1.Channel.Interface.Group1.
void tp_svc_channel_interface_conference1_emit_channel_merged (gpointer instance
,const gchar *arg_Channel
,guint arg_Channel_Specific_Handle
,GHashTable *arg_Properties
);
Type-safe wrapper around g_signal_emit to emit the ChannelMerged signal on interface im.telepathy.v1.Channel.Interface.Conference1.
void tp_svc_channel_interface_conference1_emit_channel_removed (gpointer instance
,const gchar *arg_Channel
,GHashTable *arg_Details
);
Type-safe wrapper around g_signal_emit to emit the ChannelRemoved signal on interface im.telepathy.v1.Channel.Interface.Conference1.
typedef struct _TpSvcChannelInterfaceGroup1 TpSvcChannelInterfaceGroup1;
Dummy typedef representing any implementation of this interface.
typedef struct _TpSvcChannelInterfaceGroup1Class TpSvcChannelInterfaceGroup1Class;
The class of TpSvcChannelInterfaceGroup1.
In a full implementation of this interface (i.e. all
methods implemented), the interface initialization
function used in G_IMPLEMENT_INTERFACE()
would
typically look like this:
static void implement_channel_interface_group1 (gpointer klass, gpointer unused G_GNUC_UNUSED) { #define IMPLEMENT(x) tp_svc_channel_interface_group1_implement_##x (\ klass, my_object_##x) IMPLEMENT (add_members); IMPLEMENT (remove_members); #undef IMPLEMENT }
typedef struct _TpSvcChannelInterfaceConference1 TpSvcChannelInterfaceConference1;
Dummy typedef representing any implementation of this interface.
typedef struct _TpSvcChannelInterfaceConference1Class TpSvcChannelInterfaceConference1Class;
The class of TpSvcChannelInterfaceConference1.
This interface has no D-Bus methods, so an
implementation can typically pass NULL
to
G_IMPLEMENT_INTERFACE()
as the interface
initialization function.
“group-flags-changed”
signalvoid user_function (TpSvcChannelInterfaceGroup1 *self, guint arg_Added, guint arg_Removed, gpointer user_data)
The GroupFlagsChanged D-Bus signal is emitted whenever this GObject signal is.
self |
an object |
|
arg_Added |
guint (FIXME, generate documentation) |
|
arg_Removed |
guint (FIXME, generate documentation) |
|
user_data |
user data set when the signal handler was connected. |
Flags: Has Details
“handle-owners-changed”
signalvoid user_function (TpSvcChannelInterfaceGroup1 *self, GArray_guint_ *arg_Removed, gpointer user_data)
The HandleOwnersChanged D-Bus signal is emitted whenever this GObject signal is.
self |
an object |
|
arg_Added |
GHashTable * (FIXME, generate documentation) |
|
arg_Removed |
const GArray * (FIXME, generate documentation) |
|
arg_Identifiers |
GHashTable * (FIXME, generate documentation) |
|
user_data |
user data set when the signal handler was connected. |
Flags: Has Details
“members-changed”
signalvoid user_function (TpSvcChannelInterfaceGroup1 *self, GArray_guint_ *arg_Added, GArray_guint_ *arg_Removed, GArray_guint_ *arg_Local_Pending, GArray_guint_ *arg_Remote_Pending, gpointer user_data)
The MembersChanged D-Bus signal is emitted whenever this GObject signal is.
self |
an object |
|
arg_Added |
const GArray * (FIXME, generate documentation) |
|
arg_Removed |
const GArray * (FIXME, generate documentation) |
|
arg_Local_Pending |
const GArray * (FIXME, generate documentation) |
|
arg_Remote_Pending |
const GArray * (FIXME, generate documentation) |
|
arg_Details |
GHashTable * (FIXME, generate documentation) |
|
user_data |
user data set when the signal handler was connected. |
Flags: Has Details
“self-contact-changed”
signalvoid user_function (TpSvcChannelInterfaceGroup1 *self, guint arg_Self_Handle, gchar *arg_Self_ID, gpointer user_data)
The SelfContactChanged D-Bus signal is emitted whenever this GObject signal is.
self |
an object |
|
arg_Self_Handle |
guint (FIXME, generate documentation) |
|
arg_Self_ID |
const gchar * (FIXME, generate documentation) |
|
user_data |
user data set when the signal handler was connected. |
Flags: Has Details
“channel-merged”
signalvoid user_function (TpSvcChannelInterfaceConference1 *self, DBusGObjectPath *arg_Channel, guint arg_Channel_Specific_Handle, gpointer user_data)
The ChannelMerged D-Bus signal is emitted whenever this GObject signal is.
self |
an object |
|
arg_Channel |
const gchar * (FIXME, generate documentation) |
|
arg_Channel_Specific_Handle |
guint (FIXME, generate documentation) |
|
arg_Properties |
GHashTable * (FIXME, generate documentation) |
|
user_data |
user data set when the signal handler was connected. |
Flags: Has Details
“channel-removed”
signalvoid user_function (TpSvcChannelInterfaceConference1 *self, DBusGObjectPath *arg_Channel, gpointer user_data)
The ChannelRemoved D-Bus signal is emitted whenever this GObject signal is.
self |
an object |
|
arg_Channel |
const gchar * (FIXME, generate documentation) |
|
arg_Details |
GHashTable * (FIXME, generate documentation) |
|
user_data |
user data set when the signal handler was connected. |
Flags: Has Details