![]() |
![]() |
![]() |
telepathy-glib API Reference Manual | ![]() |
---|---|---|---|---|
Top | Description | Object Hierarchy | Signals |
Service-side Channel Group and Conference interfacesService-side Channel Group and Conference interfaces — Groups of contacts |
#include <telepathy-glib/telepathy-glib-dbus.h> TpSvcChannelInterfaceGroup; TpSvcChannelInterfaceGroupClass; void (*tp_svc_channel_interface_group_add_members_impl) (TpSvcChannelInterfaceGroup *self
,const GArray *in_Contacts
,const gchar *in_Message
,DBusGMethodInvocation *context
); void tp_svc_channel_interface_group_implement_add_members (TpSvcChannelInterfaceGroupClass *klass
,tp_svc_channel_interface_group_add_members_impl impl
); void tp_svc_channel_interface_group_return_from_add_members (DBusGMethodInvocation *context
); void (*tp_svc_channel_interface_group_remove_members_impl) (TpSvcChannelInterfaceGroup *self
,const GArray *in_Contacts
,const gchar *in_Message
,guint in_Reason
,DBusGMethodInvocation *context
); void tp_svc_channel_interface_group_implement_remove_members (TpSvcChannelInterfaceGroupClass *klass
,tp_svc_channel_interface_group_remove_members_impl impl
); void tp_svc_channel_interface_group_return_from_remove_members (DBusGMethodInvocation *context
); void tp_svc_channel_interface_group_emit_group_flags_changed (gpointer instance
,guint arg_Added
,guint arg_Removed
); void tp_svc_channel_interface_group_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
); void tp_svc_channel_interface_group_emit_handle_owners_changed (gpointer instance
,GHashTable *arg_Added
,const GArray *arg_Removed
,GHashTable *arg_Identifiers
); TpSvcChannelInterfaceConference; TpSvcChannelInterfaceConferenceClass; void tp_svc_channel_interface_conference_emit_channel_merged (gpointer instance
,const gchar *arg_Channel
,guint arg_Channel_Specific_Handle
,GHashTable *arg_Properties
); void tp_svc_channel_interface_conference_emit_channel_removed (gpointer instance
,const gchar *arg_Channel
,GHashTable *arg_Details
);
GInterface +----TpSvcChannelInterfaceGroup
GInterface +----TpSvcChannelInterfaceConference
"group-flags-changed" :Has Details
"handle-owners-changed" :Has Details
"members-changed" :Has Details
"self-contact-changed" :Has Details
"channel-merged" :Has Details
"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.
typedef struct _TpSvcChannelInterfaceGroup TpSvcChannelInterfaceGroup;
Dummy typedef representing any implementation of this interface.
typedef struct _TpSvcChannelInterfaceGroupClass TpSvcChannelInterfaceGroupClass;
The class of TpSvcChannelInterfaceGroup.
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_group (gpointer klass, gpointer unused G_GNUC_UNUSED) { #define IMPLEMENT(x) tp_svc_channel_interface_group_implement_##x (\ klass, my_object_##x) IMPLEMENT (add_members); IMPLEMENT (remove_members); #undef IMPLEMENT }
void (*tp_svc_channel_interface_group_add_members_impl) (TpSvcChannelInterfaceGroup *self
,const GArray *in_Contacts
,const gchar *in_Message
,DBusGMethodInvocation *context
);
The signature of an implementation of the D-Bus method AddMembers on interface im.telepathy1.Channel.Interface.Group1.
|
The object implementing this interface |
|
const GArray * (FIXME, generate documentation) |
|
const gchar * (FIXME, generate documentation) |
|
Used to return values or throw an error |
void tp_svc_channel_interface_group_implement_add_members (TpSvcChannelInterfaceGroupClass *klass
,tp_svc_channel_interface_group_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.
|
A class whose instances implement this interface |
|
A callback used to implement the AddMembers D-Bus method |
void tp_svc_channel_interface_group_return_from_add_members
(DBusGMethodInvocation *context
);
Return successfully by calling dbus_g_method_return()
.
This inline function exists only to provide type-safety.
|
The D-Bus method invocation context |
void (*tp_svc_channel_interface_group_remove_members_impl) (TpSvcChannelInterfaceGroup *self
,const GArray *in_Contacts
,const gchar *in_Message
,guint in_Reason
,DBusGMethodInvocation *context
);
The signature of an implementation of the D-Bus method RemoveMembers on interface im.telepathy1.Channel.Interface.Group1.
|
The object implementing this interface |
|
const GArray * (FIXME, generate documentation) |
|
const gchar * (FIXME, generate documentation) |
|
guint (FIXME, generate documentation) |
|
Used to return values or throw an error |
void tp_svc_channel_interface_group_implement_remove_members (TpSvcChannelInterfaceGroupClass *klass
,tp_svc_channel_interface_group_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.
|
A class whose instances implement this interface |
|
A callback used to implement the RemoveMembers D-Bus method |
void tp_svc_channel_interface_group_return_from_remove_members
(DBusGMethodInvocation *context
);
Return successfully by calling dbus_g_method_return()
.
This inline function exists only to provide type-safety.
|
The D-Bus method invocation context |
void tp_svc_channel_interface_group_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.telepathy1.Channel.Interface.Group1.
|
The object implementing this interface |
|
guint (FIXME, generate documentation) |
|
guint (FIXME, generate documentation) |
void tp_svc_channel_interface_group_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.telepathy1.Channel.Interface.Group1.
|
The object implementing this interface |
|
const GArray * (FIXME, generate documentation) |
|
const GArray * (FIXME, generate documentation) |
|
const GArray * (FIXME, generate documentation) |
|
const GArray * (FIXME, generate documentation) |
|
GHashTable * (FIXME, generate documentation) |
void tp_svc_channel_interface_group_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.telepathy1.Channel.Interface.Group1.
|
The object implementing this interface |
|
GHashTable * (FIXME, generate documentation) |
|
const GArray * (FIXME, generate documentation) |
|
GHashTable * (FIXME, generate documentation) |
typedef struct _TpSvcChannelInterfaceConference TpSvcChannelInterfaceConference;
Dummy typedef representing any implementation of this interface.
typedef struct _TpSvcChannelInterfaceConferenceClass TpSvcChannelInterfaceConferenceClass;
The class of TpSvcChannelInterfaceConference.
This interface has no D-Bus methods, so an
implementation can typically pass NULL
to
G_IMPLEMENT_INTERFACE()
as the interface
initialization function.
void tp_svc_channel_interface_conference_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.telepathy1.Channel.Interface.Conference1.
|
The object implementing this interface |
|
const gchar * (FIXME, generate documentation) |
|
guint (FIXME, generate documentation) |
|
GHashTable * (FIXME, generate documentation) |
void tp_svc_channel_interface_conference_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.telepathy1.Channel.Interface.Conference1.
|
The object implementing this interface |
|
const gchar * (FIXME, generate documentation) |
|
GHashTable * (FIXME, generate documentation) |
"group-flags-changed"
signalvoid user_function (TpSvcChannelInterfaceGroup *self,
guint arg_Added,
guint arg_Removed,
gpointer user_data) : Has Details
The GroupFlagsChanged D-Bus signal is emitted whenever this GObject signal is.
|
an object |
|
guint (FIXME, generate documentation) |
|
guint (FIXME, generate documentation) |
|
user data set when the signal handler was connected. |
"handle-owners-changed"
signalvoid user_function (TpSvcChannelInterfaceGroup *self,
GArray_guint_ *arg_Removed,
gpointer user_data) : Has Details
The HandleOwnersChanged D-Bus signal is emitted whenever this GObject signal is.
|
an object |
|
GHashTable * (FIXME, generate documentation) |
|
const GArray * (FIXME, generate documentation) |
|
GHashTable * (FIXME, generate documentation) |
|
user data set when the signal handler was connected. |
"members-changed"
signalvoid user_function (TpSvcChannelInterfaceGroup *self,
GArray_guint_ *arg_Added,
GArray_guint_ *arg_Removed,
GArray_guint_ *arg_Local_Pending,
GArray_guint_ *arg_Remote_Pending,
gpointer user_data) : Has Details
The MembersChanged D-Bus signal is emitted whenever this GObject signal is.
|
an object |
|
const GArray * (FIXME, generate documentation) |
|
const GArray * (FIXME, generate documentation) |
|
const GArray * (FIXME, generate documentation) |
|
const GArray * (FIXME, generate documentation) |
|
GHashTable * (FIXME, generate documentation) |
|
user data set when the signal handler was connected. |
"self-contact-changed"
signalvoid user_function (TpSvcChannelInterfaceGroup *self,
guint arg_Self_Handle,
gchar *arg_Self_ID,
gpointer user_data) : Has Details
The SelfContactChanged D-Bus signal is emitted whenever this GObject signal is.
|
an object |
|
guint (FIXME, generate documentation) |
|
const gchar * (FIXME, generate documentation) |
|
user data set when the signal handler was connected. |
"channel-merged"
signalvoid user_function (TpSvcChannelInterfaceConference *self,
DBusGObjectPath *arg_Channel,
guint arg_Channel_Specific_Handle,
gpointer user_data) : Has Details
The ChannelMerged D-Bus signal is emitted whenever this GObject signal is.
|
an object |
|
const gchar * (FIXME, generate documentation) |
|
guint (FIXME, generate documentation) |
|
GHashTable * (FIXME, generate documentation) |
|
user data set when the signal handler was connected. |
"channel-removed"
signalvoid user_function (TpSvcChannelInterfaceConference *self,
DBusGObjectPath *arg_Channel,
gpointer user_data) : Has Details
The ChannelRemoved D-Bus signal is emitted whenever this GObject signal is.
|
an object |
|
const gchar * (FIXME, generate documentation) |
|
GHashTable * (FIXME, generate documentation) |
|
user data set when the signal handler was connected. |