Shell Reference Manual: ShellTpClient

## ShellTpClient ShellTpClient |

## Synopsis

    struct              ShellTpClientClass;
    struct              ShellTpClient;
    void                (*ShellTpClientObserveChannelsImpl) (ShellTpClient *client,
                                                             TpAccount *account,
                                                             TpConnection *connection,
                                                             GList *channels,
                                                             TpChannelDispatchOperation *dispatch_operation,
                                                             GList *requests,
                                                             TpObserveChannelsContext *context,
                                                             gpointer user_data);
    void                shell_tp_client_set_observe_channels_func
                                                            (ShellTpClient *self,
                                                             ShellTpClientObserveChannelsImpl observe_impl,
                                                             gpointer user_data,
                                                             GDestroyNotify destroy);
    void                (*ShellTpClientApproveChannelsImpl) (ShellTpClient *client,
                                                             TpAccount *account,
                                                             TpConnection *connection,
                                                             GList *channels,
                                                             TpChannelDispatchOperation *dispatch_operation,
                                                             TpAddDispatchOperationContext *context,
                                                             gpointer user_data);
    void                shell_tp_client_set_approve_channels_func
                                                            (ShellTpClient *self,
                                                             ShellTpClientApproveChannelsImpl approve_impl,
                                                             gpointer user_data,
                                                             GDestroyNotify destroy);
    void                (*ShellTpClientHandleChannelsImpl)  (ShellTpClient *client,
                                                             TpAccount *account,
                                                             TpConnection *connection,
                                                             GList *channels,
                                                             GList *requests_satisfied,
                                                             gint64 user_action_time,
                                                             TpHandleChannelsContext *context,
                                                             gpointer user_data);
    void                shell_tp_client_set_handle_channels_func
                                                            (ShellTpClient *self,
                                                             ShellTpClientHandleChannelsImpl handle_channels_impl,
                                                             gpointer user_data,
                                                             GDestroyNotify destroy);
    void                (*ShellTpClientContactListChangedImpl)
                                                            (TpConnection *connection,
                                                             GPtrArray *added,
                                                             GPtrArray *removed,
                                                             gpointer user_data);
    void                shell_tp_client_set_contact_list_changed_func
                                                            (ShellTpClient *self,
                                                             ShellTpClientContactListChangedImpl contact_list_changed_impl,
                                                             gpointer user_data,
                                                             GDestroyNotify destroy);
    void                shell_tp_client_grab_contact_list_changed
                                                            (ShellTpClient *self,
                                                             TpConnection *conn);

## Object Hierarchy

      GObject
       +----TpBaseClient
             +----ShellTpClient

## Implemented Interfaces

ShellTpClient implements TpSvcDBusProperties, TpSvcClient, TpSvcClientObserver, TpSvcClientApprover, TpSvcClientHandler and TpSvcClientInterfaceRequests.

## Description

## Details

### struct ShellTpClientClass

    struct ShellTpClientClass {
    };

### struct ShellTpClient

    struct ShellTpClient;

### ShellTpClientObserveChannelsImpl ()

    void                (*ShellTpClientObserveChannelsImpl) (ShellTpClient *client,
                                                             TpAccount *account,
                                                             TpConnection *connection,
                                                             GList *channels,
                                                             TpChannelDispatchOperation *dispatch_operation,
                                                             GList *requests,
                                                             TpObserveChannelsContext *context,
                                                             gpointer user_data);

Signature of the implementation of the ObserveChannels method.

`client` : | a ShellTpClient instance
`account` : | a TpAccount having `TP_ACCOUNT_FEATURE_CORE` prepared if possible
`connection` : | a TpConnection having `TP_CONNECTION_FEATURE_CORE` prepared if possible
`channels` : | a GList of TpChannel, all having `TP_CHANNEL_FEATURE_CORE` prepared if possible. [element-type TelepathyGLib.Channel]
`dispatch_operation` : | a TpChannelDispatchOperation or `NULL`; the dispatch_operation is not guaranteed to be prepared. [allow-none]
`requests` : | a GList of TpChannelRequest, all having their object-path defined but are not guaranteed to be prepared. [element-type TelepathyGLib.ChannelRequest]
`context` : | a TpObserveChannelsContext representing the context of this D-Bus call

### shell_tp_client_set_observe_channels_func ()

    void                shell_tp_client_set_observe_channels_func
                                                            (ShellTpClient *self,
                                                             ShellTpClientObserveChannelsImpl observe_impl,
                                                             gpointer user_data,
                                                             GDestroyNotify destroy);

### ShellTpClientApproveChannelsImpl ()

    void                (*ShellTpClientApproveChannelsImpl) (ShellTpClient *client,
                                                             TpAccount *account,
                                                             TpConnection *connection,
                                                             GList *channels,
                                                             TpChannelDispatchOperation *dispatch_operation,
                                                             TpAddDispatchOperationContext *context,
                                                             gpointer user_data);

Signature of the implementation of the AddDispatchOperation method.

`client` : | a ShellTpClient instance
`account` : | a TpAccount having `TP_ACCOUNT_FEATURE_CORE` prepared if possible
`connection` : | a TpConnection having `TP_CONNECTION_FEATURE_CORE` prepared if possible
`channels` : | a GList of TpChannel, all having `TP_CHANNEL_FEATURE_CORE` prepared if possible. [element-type TelepathyGLib.Channel]
`dispatch_operation` : | a TpChannelDispatchOperation or `NULL`; the dispatch_operation is not guaranteed to be prepared. [allow-none]
`context` : | a TpAddDispatchOperationContext representing the context of this D-Bus call

### shell_tp_client_set_approve_channels_func ()

    void                shell_tp_client_set_approve_channels_func
                                                            (ShellTpClient *self,
                                                             ShellTpClientApproveChannelsImpl approve_impl,
                                                             gpointer user_data,
                                                             GDestroyNotify destroy);

### ShellTpClientHandleChannelsImpl ()

    void                (*ShellTpClientHandleChannelsImpl)  (ShellTpClient *client,
                                                             TpAccount *account,
                                                             TpConnection *connection,
                                                             GList *channels,
                                                             GList *requests_satisfied,
                                                             gint64 user_action_time,
                                                             TpHandleChannelsContext *context,
                                                             gpointer user_data);

Signature of the implementation of the HandleChannels method.

`client` : | a ShellTpClient instance
`account` : | a TpAccount having `TP_ACCOUNT_FEATURE_CORE` prepared if possible
`connection` : | a TpConnection having `TP_CONNECTION_FEATURE_CORE` prepared if possible
`channels` : | a GList of TpChannel, all having `TP_CHANNEL_FEATURE_CORE` prepared if possible. [element-type TelepathyGLib.Channel]
`requests_satisfied` : | a GList of TpChannelRequest having their object-path defined but are not guaranteed to be prepared. [element-type TelepathyGLib.ChannelRequest]
`user_action_time` : | the time at which user action occurred, or one of the special values `TP_USER_ACTION_TIME_NOT_USER_ACTION` or `TP_USER_ACTION_TIME_CURRENT_TIME` (see "user-action-time" for details)
`context` : | a TpHandleChannelsContext representing the context of this D-Bus call

### shell_tp_client_set_handle_channels_func ()

    void                shell_tp_client_set_handle_channels_func
                                                            (ShellTpClient *self,
                                                             ShellTpClientHandleChannelsImpl handle_channels_impl,
                                                             gpointer user_data,
                                                             GDestroyNotify destroy);

### ShellTpClientContactListChangedImpl ()

    void                (*ShellTpClientContactListChangedImpl)
                                                            (TpConnection *connection,
                                                             GPtrArray *added,
                                                             GPtrArray *removed,
                                                             gpointer user_data);

Signature of the implementation of the ContactListChanged method.

`connection` : | a TpConnection having `TP_CONNECTION_FEATURE_CORE` prepared if possible
`added` : | a GPtrArray of added TpContact. [element-type TelepathyGLib.Contact]
`removed` : | a GPtrArray of removed TpContact. [element-type TelepathyGLib.Contact]

### shell_tp_client_set_contact_list_changed_func ()

    void                shell_tp_client_set_contact_list_changed_func
                                                            (ShellTpClient *self,
                                                             ShellTpClientContactListChangedImpl contact_list_changed_impl,
                                                             gpointer user_data,
                                                             GDestroyNotify destroy);

### shell_tp_client_grab_contact_list_changed ()

    void                shell_tp_client_grab_contact_list_changed
                                                            (ShellTpClient *self,
                                                             TpConnection *conn);