account.h
Go to the documentation of this file.
1 
7 /* purple
8  *
9  * Purple is the legal property of its developers, whose names are too numerous
10  * to list here. Please refer to the COPYRIGHT file distributed with this
11  * source distribution.
12  *
13  * This program is free software; you can redistribute it and/or modify
14  * it under the terms of the GNU General Public License as published by
15  * the Free Software Foundation; either version 2 of the License, or
16  * (at your option) any later version.
17  *
18  * This program is distributed in the hope that it will be useful,
19  * but WITHOUT ANY WARRANTY; without even the implied warranty of
20  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21  * GNU General Public License for more details.
22  *
23  * You should have received a copy of the GNU General Public License
24  * along with this program; if not, write to the Free Software
25  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
26  */
27 #ifndef _PURPLE_ACCOUNT_H_
28 #define _PURPLE_ACCOUNT_H_
29 
30 #include <glib.h>
31 #include <glib-object.h>
32 
39 
40 typedef gboolean (*PurpleFilterAccountFunc)(PurpleAccount *account);
41 typedef void (*PurpleAccountRequestAuthorizationCb)(void *);
42 typedef void (*PurpleAccountRegistrationCb)(PurpleAccount *account, gboolean succeeded, void *user_data);
43 typedef void (*PurpleAccountUnregistrationCb)(PurpleAccount *account, gboolean succeeded, void *user_data);
44 typedef void (*PurpleSetPublicAliasSuccessCallback)(PurpleAccount *account, const char *new_alias);
45 typedef void (*PurpleSetPublicAliasFailureCallback)(PurpleAccount *account, const char *error);
46 typedef void (*PurpleGetPublicAliasSuccessCallback)(PurpleAccount *account, const char *alias);
47 typedef void (*PurpleGetPublicAliasFailureCallback)(PurpleAccount *account, const char *error);
48 
49 #include "connection.h"
50 #include "log.h"
51 #include "privacy.h"
52 #include "proxy.h"
53 #include "prpl.h"
54 #include "status.h"
55 
59 typedef enum
60 {
61  PURPLE_ACCOUNT_REQUEST_AUTHORIZATION = 0 /* Account authorization request */
63 
67 typedef enum
68 {
69  PURPLE_ACCOUNT_RESPONSE_IGNORE = -2,
70  PURPLE_ACCOUNT_RESPONSE_DENY = -1,
71  PURPLE_ACCOUNT_RESPONSE_PASS = 0,
72  PURPLE_ACCOUNT_RESPONSE_ACCEPT = 1
74 
79 {
83  void (*notify_added)(PurpleAccount *account,
84  const char *remote_user,
85  const char *id,
86  const char *alias,
87  const char *message);
88 
90  void (*status_changed)(PurpleAccount *account,
91  PurpleStatus *status);
92 
94  void (*request_add)(PurpleAccount *account,
95  const char *remote_user,
96  const char *id,
97  const char *alias,
98  const char *message);
99 
105  void *(*request_authorize)(PurpleAccount *account,
106  const char *remote_user,
107  const char *id,
108  const char *alias,
109  const char *message,
110  gboolean on_list,
111  PurpleAccountRequestAuthorizationCb authorize_cb,
112  PurpleAccountRequestAuthorizationCb deny_cb,
113  void *user_data);
114 
118  void (*close_account_request)(void *ui_handle);
119 
120  void (*_purple_reserved1)(void);
121  void (*_purple_reserved2)(void);
122  void (*_purple_reserved3)(void);
123  void (*_purple_reserved4)(void);
124 };
125 
136 {
138  void (*set_int)(PurpleAccount *account, const char *name, int value);
139 
141  void (*set_string)(PurpleAccount *account, const char *name, const char *value);
142 
144  void (*set_bool)(PurpleAccount *account, const char *name, gboolean value);
145 
149  void (*load)(void);
150 
154  void (*save)(void);
155 
159  void (*schedule_save)(void);
160 
161  void (*_purple_reserved1)(void);
162  void (*_purple_reserved2)(void);
163  void (*_purple_reserved3)(void);
164  void (*_purple_reserved4)(void);
165 };
166 
170 {
171  char *username;
172  char *alias;
173  char *password;
174  char *user_info;
178  gboolean remember_pass;
180  char *protocol_id;
183  gboolean disconnecting;
185  GHashTable *settings;
186  GHashTable *ui_settings;
189  /* to NULL when the account inherits */
190  /* proxy settings from global prefs. */
191 
192  /*
193  * TODO: Supplementing the next two linked lists with hash tables
194  * should help performance a lot when these lists are long. This
195  * matters quite a bit for protocols, where all your
196  * buddies are added to your permit list. Currently we have to
197  * iterate through the entire list if we want to check if someone
198  * is permitted or denied. We should do this for 3.0.0.
199  * Or maybe use a GTree.
200  */
201  GSList *permit;
202  GSList *deny;
205  GList *status_types;
207  PurplePresence *presence;
210  void *ui_data;
211  PurpleAccountRegistrationCb registration_cb;
212  void *registration_cb_user_data;
213 
214  gpointer priv;
215 };
216 
217 #ifdef __cplusplus
218 extern "C" {
219 #endif
220 
221 /**************************************************************************/
223 /**************************************************************************/
234 PurpleAccount *purple_account_new(const char *username, const char *protocol_id);
235 
242 
249 
257 void purple_account_set_register_callback(PurpleAccount *account, PurpleAccountRegistrationCb cb, void *user_data);
258 
265 
273 void purple_account_unregister(PurpleAccount *account, PurpleAccountUnregistrationCb cb, void *user_data);
274 
281 
295 void purple_account_notify_added(PurpleAccount *account, const char *remote_user,
296  const char *id, const char *alias,
297  const char *message);
298 
314 void purple_account_request_add(PurpleAccount *account, const char *remote_user,
315  const char *id, const char *alias,
316  const char *message);
317 
337 void *purple_account_request_authorization(PurpleAccount *account, const char *remote_user,
338  const char *id, const char *alias, const char *message, gboolean on_list,
339  PurpleAccountRequestAuthorizationCb auth_cb, PurpleAccountRequestAuthorizationCb deny_cb, void *user_data);
340 
347 
353 void purple_account_request_close(void *ui_handle);
354 
364 void purple_account_request_password(PurpleAccount *account, GCallback ok_cb,
365  GCallback cancel_cb, void *user_data);
366 
373 
381 
388 void purple_account_set_username(PurpleAccount *account, const char *username);
389 
396 void purple_account_set_password(PurpleAccount *account, const char *password);
397 
404 void purple_account_set_alias(PurpleAccount *account, const char *alias);
405 
412 void purple_account_set_user_info(PurpleAccount *account, const char *user_info);
413 
420 void purple_account_set_buddy_icon_path(PurpleAccount *account, const char *path);
421 
429  const char *protocol_id);
430 
438 
445 void purple_account_set_remember_password(PurpleAccount *account, gboolean value);
446 
453 void purple_account_set_check_mail(PurpleAccount *account, gboolean value);
454 
463 void purple_account_set_enabled(PurpleAccount *account, const char *ui,
464  gboolean value);
465 
473 
483 
490 void purple_account_set_status_types(PurpleAccount *account, GList *status_types);
491 
498 void purple_account_set_status(PurpleAccount *account, const char *status_id,
499  gboolean active, ...) G_GNUC_NULL_TERMINATED;
500 
501 
520  const char *status_id, gboolean active, GList *attrs);
521 
541  const char *alias, PurpleSetPublicAliasSuccessCallback success_cb,
542  PurpleSetPublicAliasFailureCallback failure_cb);
543 
555  PurpleGetPublicAliasSuccessCallback success_cb,
556  PurpleGetPublicAliasFailureCallback failure_cb);
557 
566 
574  gboolean value);
575 
582 
591 void purple_account_remove_setting(PurpleAccount *account, const char *setting);
592 
600 void purple_account_set_int(PurpleAccount *account, const char *name, int value);
601 
609 void purple_account_set_string(PurpleAccount *account, const char *name,
610  const char *value);
611 
619 void purple_account_set_bool(PurpleAccount *account, const char *name,
620  gboolean value);
621 
630 void purple_account_set_ui_int(PurpleAccount *account, const char *ui,
631  const char *name, int value);
632 
641 void purple_account_set_ui_string(PurpleAccount *account, const char *ui,
642  const char *name, const char *value);
643 
652 void purple_account_set_ui_bool(PurpleAccount *account, const char *ui,
653  const char *name, gboolean value);
654 
662 gboolean purple_account_is_connected(const PurpleAccount *account);
663 
671 gboolean purple_account_is_connecting(const PurpleAccount *account);
672 
680 gboolean purple_account_is_disconnected(const PurpleAccount *account);
681 
689 const char *purple_account_get_username(const PurpleAccount *account);
690 
698 const char *purple_account_get_password(const PurpleAccount *account);
699 
707 const char *purple_account_get_alias(const PurpleAccount *account);
708 
716 const char *purple_account_get_user_info(const PurpleAccount *account);
717 
725 const char *purple_account_get_buddy_icon_path(const PurpleAccount *account);
726 
734 const char *purple_account_get_protocol_id(const PurpleAccount *account);
735 
743 const char *purple_account_get_protocol_name(const PurpleAccount *account);
744 
753 
766 const gchar *purple_account_get_name_for_display(const PurpleAccount *account);
767 
775 gboolean purple_account_get_remember_password(const PurpleAccount *account);
776 
784 gboolean purple_account_get_check_mail(const PurpleAccount *account);
785 
795 gboolean purple_account_get_enabled(const PurpleAccount *account,
796  const char *ui);
797 
806 
817 
828 PurpleStatus *purple_account_get_active_status(const PurpleAccount *account);
829 
841 PurpleStatus *purple_account_get_status(const PurpleAccount *account,
842  const char *status_id);
843 
853  const char *id);
854 
867  const PurpleAccount *account,
868  PurpleStatusPrimitive primitive);
869 
877 PurplePresence *purple_account_get_presence(const PurpleAccount *account);
878 
887 gboolean purple_account_is_status_active(const PurpleAccount *account,
888  const char *status_id);
889 
897 GList *purple_account_get_status_types(const PurpleAccount *account);
898 
908 int purple_account_get_int(const PurpleAccount *account, const char *name,
909  int default_value);
910 
920 const char *purple_account_get_string(const PurpleAccount *account,
921  const char *name,
922  const char *default_value);
923 
933 gboolean purple_account_get_bool(const PurpleAccount *account, const char *name,
934  gboolean default_value);
935 
946 int purple_account_get_ui_int(const PurpleAccount *account, const char *ui,
947  const char *name, int default_value);
948 
959 const char *purple_account_get_ui_string(const PurpleAccount *account,
960  const char *ui, const char *name,
961  const char *default_value);
962 
973 gboolean purple_account_get_ui_bool(const PurpleAccount *account, const char *ui,
974  const char *name, gboolean default_value);
975 
976 
990 PurpleLog *purple_account_get_log(PurpleAccount *account, gboolean create);
991 
998 
1007 void purple_account_add_buddy(PurpleAccount *account, PurpleBuddy *buddy);
1017 void purple_account_add_buddy_with_invite(PurpleAccount *account, PurpleBuddy *buddy, const char *message);
1018 
1027 void purple_account_add_buddies(PurpleAccount *account, GList *buddies);
1037 void purple_account_add_buddies_with_invite(PurpleAccount *account, GList *buddies, const char *message);
1038 
1047  PurpleGroup *group);
1048 
1060 void purple_account_remove_buddies(PurpleAccount *account, GList *buddies,
1061  GList *groups);
1062 
1070 
1078 void purple_account_change_password(PurpleAccount *account, const char *orig_pw,
1079  const char *new_pw);
1080 
1088 
1100 
1107 
1110 /**************************************************************************/
1112 /**************************************************************************/
1120 void purple_accounts_add(PurpleAccount *account);
1121 
1127 void purple_accounts_remove(PurpleAccount *account);
1128 
1138 void purple_accounts_delete(PurpleAccount *account);
1139 
1146 void purple_accounts_reorder(PurpleAccount *account, gint new_index);
1147 
1153 GList *purple_accounts_get_all(void);
1154 
1162 GList *purple_accounts_get_all_active(void);
1163 
1172 PurpleAccount *purple_accounts_find(const char *name, const char *protocol);
1173 
1184 
1188 /**************************************************************************/
1190 /**************************************************************************/
1198 
1205 
1213 
1221 
1225 /**************************************************************************/
1227 /**************************************************************************/
1235 void *purple_accounts_get_handle(void);
1236 
1240 void purple_accounts_init(void);
1241 
1245 void purple_accounts_uninit(void);
1246 
1249 #ifdef __cplusplus
1250 }
1251 #endif
1252 
1253 #endif /* _PURPLE_ACCOUNT_H_ */
purple_account_set_string
void purple_account_set_string(PurpleAccount *account, const char *name, const char *value)
Sets a protocol-specific string setting for an account.
_PurpleAccount::protocol_id
char * protocol_id
The ID of the protocol.
Definition: account.h:180
purple_account_new
PurpleAccount * purple_account_new(const char *username, const char *protocol_id)
Creates a new account.
PurpleProxyInfo
Information on proxy settings.
Definition: proxy.h:50
prpl.h
purple_account_prefs_set_ui_ops
void purple_account_prefs_set_ui_ops(PurpleAccountPrefsUiOps *ops)
Sets the UI operations structure to be used for account preferences.
_PurpleAccount::status_types
GList * status_types
Status types.
Definition: account.h:205
PurpleAccountRequestType
PurpleAccountRequestType
Account request types.
Definition: account.h:59
purple_account_get_ui_bool
gboolean purple_account_get_ui_bool(const PurpleAccount *account, const char *ui, const char *name, gboolean default_value)
Returns a UI-specific boolean setting for an account.
_PurpleAccount::username
char * username
The username.
Definition: account.h:171
purple_account_set_privacy_type
void purple_account_set_privacy_type(PurpleAccount *account, PurplePrivacyType privacy_type)
Sets the account's privacy type.
purple_account_clear_settings
void purple_account_clear_settings(PurpleAccount *account)
Clears all protocol-specific settings on an account.
purple_account_remove_buddies
void purple_account_remove_buddies(PurpleAccount *account, GList *buddies, GList *groups)
Removes a list of buddies from the server-side buddy list.
purple_account_unregister
void purple_account_unregister(PurpleAccount *account, PurpleAccountUnregistrationCb cb, void *user_data)
Unregisters an account (deleting it from the server).
_PurpleAccountUiOps::request_add
void(* request_add)(PurpleAccount *account, const char *remote_user, const char *id, const char *alias, const char *message)
Someone we don't have on our list added us; prompt to add them.
Definition: account.h:94
purple_account_set_status
void purple_account_set_status(PurpleAccount *account, const char *status_id, gboolean active,...) G_GNUC_NULL_TERMINATED
Variadic version of purple_account_set_status_list(); the variadic list replaces attrs,...
purple_account_register
void purple_account_register(PurpleAccount *account)
Registers an account.
purple_account_add_buddy_with_invite
void purple_account_add_buddy_with_invite(PurpleAccount *account, PurpleBuddy *buddy, const char *message)
Adds a buddy to the server-side buddy list for the specified account.
purple_account_get_proxy_info
PurpleProxyInfo * purple_account_get_proxy_info(const PurpleAccount *account)
Returns the account's proxy information.
PurpleStatusType
struct _PurpleStatusType PurpleStatusType
PurpleStatusType's are created by each PRPL.
Definition: status.h:85
purple_account_set_user_info
void purple_account_set_user_info(PurpleAccount *account, const char *user_info)
Sets the account's user information.
_PurpleAccount::password
char * password
The account password.
Definition: account.h:173
_PurpleLog
A log.
Definition: log.h:123
purple_account_get_public_alias
void purple_account_get_public_alias(PurpleAccount *account, PurpleGetPublicAliasSuccessCallback success_cb, PurpleGetPublicAliasFailureCallback failure_cb)
Fetch the server-side (public) alias for this account.
_PurpleAccount::disconnecting
gboolean disconnecting
The account is currently disconnecting.
Definition: account.h:183
purple_account_connect
void purple_account_connect(PurpleAccount *account)
Connects to an account.
purple_account_get_int
int purple_account_get_int(const PurpleAccount *account, const char *name, int default_value)
Returns a protocol-specific integer setting for an account.
_PurpleAccountPrefsUiOps::save
void(* save)(void)
If this is set, accounts.xml saving will be disabled and this function will be called instead.
Definition: account.h:154
_PurpleAccountUiOps::notify_added
void(* notify_added)(PurpleAccount *account, const char *remote_user, const char *id, const char *alias, const char *message)
A buddy who is already on this account's buddy list added this account to their buddy list.
Definition: account.h:83
purple_account_clear_current_error
void purple_account_clear_current_error(PurpleAccount *account)
Clear an account's current error state, resetting it to NULL.
_PurpleAccount::ui_data
void * ui_data
The UI can put data here.
Definition: account.h:210
_PurpleAccount::deny
GSList * deny
Deny list.
Definition: account.h:202
purple_account_set_proxy_info
void purple_account_set_proxy_info(PurpleAccount *account, PurpleProxyInfo *info)
Sets the account's proxy information.
purple_account_get_password
const char * purple_account_get_password(const PurpleAccount *account)
Returns the account's password.
purple_account_remove_buddy
void purple_account_remove_buddy(PurpleAccount *account, PurpleBuddy *buddy, PurpleGroup *group)
Removes a buddy from the server-side buddy list.
purple_accounts_reorder
void purple_accounts_reorder(PurpleAccount *account, gint new_index)
Reorders an account.
_PurpleAccount::remember_pass
gboolean remember_pass
Remember the password.
Definition: account.h:178
purple_account_get_log
PurpleLog * purple_account_get_log(PurpleAccount *account, gboolean create)
Returns the system log for an account.
purple_account_get_remember_password
gboolean purple_account_get_remember_password(const PurpleAccount *account)
Returns whether or not this account should save its password.
_PurpleAccount::gc
PurpleConnection * gc
The connection handle.
Definition: account.h:182
_PurpleAccount::system_log
PurpleLog * system_log
The system log
Definition: account.h:208
purple_account_get_active_status
PurpleStatus * purple_account_get_active_status(const PurpleAccount *account)
Returns the active status for this account.
purple_account_add_buddies
void purple_account_add_buddies(PurpleAccount *account, GList *buddies)
Adds a list of buddies to the server-side buddy list.
purple_account_get_protocol_name
const char * purple_account_get_protocol_name(const PurpleAccount *account)
Returns the account's protocol name.
purple_account_get_buddy_icon_path
const char * purple_account_get_buddy_icon_path(const PurpleAccount *account)
Gets the account's buddy icon path.
purple_accounts_get_handle
void * purple_accounts_get_handle(void)
Returns the accounts subsystem handle.
purple_account_notify_added
void purple_account_notify_added(PurpleAccount *account, const char *remote_user, const char *id, const char *alias, const char *message)
Notifies the user that the account was added to a remote user's buddy list.
_PurpleAccountPrefsUiOps
Account prefs UI operations, to allow the UI to catch account preference changes.
Definition: account.h:135
purple_account_set_check_mail
void purple_account_set_check_mail(PurpleAccount *account, gboolean value)
Sets whether or not this account should check for mail.
purple_account_set_status_types
void purple_account_set_status_types(PurpleAccount *account, GList *status_types)
Sets the account's status types.
purple_account_set_bool
void purple_account_set_bool(PurpleAccount *account, const char *name, gboolean value)
Sets a protocol-specific boolean setting for an account.
purple_account_is_connecting
gboolean purple_account_is_connecting(const PurpleAccount *account)
Returns whether or not the account is connecting.
purple_account_change_password
void purple_account_change_password(PurpleAccount *account, const char *orig_pw, const char *new_pw)
Changes the password on the specified account.
purple_accounts_init
void purple_accounts_init(void)
Initializes the accounts subsystem.
purple_account_supports_offline_message
gboolean purple_account_supports_offline_message(PurpleAccount *account, PurpleBuddy *buddy)
Whether the account supports sending offline messages to buddy.
purple_account_request_close
void purple_account_request_close(void *ui_handle)
Close the account request for the given ui handle.
_PurpleAccount::alias
char * alias
How you appear to yourself.
Definition: account.h:172
purple_account_get_user_info
const char * purple_account_get_user_info(const PurpleAccount *account)
Returns the account's user information.
purple_account_get_ui_int
int purple_account_get_ui_int(const PurpleAccount *account, const char *ui, const char *name, int default_value)
Returns a UI-specific integer setting for an account.
purple_account_get_string
const char * purple_account_get_string(const PurpleAccount *account, const char *name, const char *default_value)
Returns a protocol-specific string setting for an account.
purple_account_set_protocol_id
void purple_account_set_protocol_id(PurpleAccount *account, const char *protocol_id)
Sets the account's protocol ID.
purple_account_destroy_log
void purple_account_destroy_log(PurpleAccount *account)
Frees the system log of an account.
_PurpleAccountUiOps::status_changed
void(* status_changed)(PurpleAccount *account, PurpleStatus *status)
This account's status changed.
Definition: account.h:90
purple_account_request_change_password
void purple_account_request_change_password(PurpleAccount *account)
Requests information from the user to change the account's password.
purple_account_set_public_alias
void purple_account_set_public_alias(PurpleAccount *account, const char *alias, PurpleSetPublicAliasSuccessCallback success_cb, PurpleSetPublicAliasFailureCallback failure_cb)
Set a server-side (public) alias for this account.
purple_account_request_add
void purple_account_request_add(PurpleAccount *account, const char *remote_user, const char *id, const char *alias, const char *message)
Notifies the user that the account was addded to a remote user's buddy list and asks ther user if the...
_PurpleAccountPrefsUiOps::schedule_save
void(* schedule_save)(void)
If this is set, the UI will handle scheduling the timer to call the save function,...
Definition: account.h:159
purple_account_remove_setting
void purple_account_remove_setting(PurpleAccount *account, const char *setting)
Removes an account-specific setting by name.
purple_account_set_enabled
void purple_account_set_enabled(PurpleAccount *account, const char *ui, gboolean value)
Sets whether or not this account is enabled for the specified UI.
purple_account_set_ui_string
void purple_account_set_ui_string(PurpleAccount *account, const char *ui, const char *name, const char *value)
Sets a UI-specific string setting for an account.
purple_account_get_connection
PurpleConnection * purple_account_get_connection(const PurpleAccount *account)
Returns the account's connection.
purple_account_get_status_type_with_primitive
PurpleStatusType * purple_account_get_status_type_with_primitive(const PurpleAccount *account, PurpleStatusPrimitive primitive)
Returns the account status type with the specified primitive.
purple_account_get_status_types
GList * purple_account_get_status_types(const PurpleAccount *account)
Returns the account's status types.
purple_account_set_status_list
void purple_account_set_status_list(PurpleAccount *account, const char *status_id, gboolean active, GList *attrs)
Activates or deactivates a status.
purple_account_request_change_user_info
void purple_account_request_change_user_info(PurpleAccount *account)
Requests information from the user to change the account's user information.
purple_accounts_get_all
GList * purple_accounts_get_all(void)
Returns a list of all accounts.
_PurpleAccount
Structure representing an account.
Definition: account.h:169
_PurpleAccount::proxy_info
PurpleProxyInfo * proxy_info
Proxy information.
Definition: account.h:188
_PurpleAccountPrefsUiOps::set_string
void(* set_string)(PurpleAccount *account, const char *name, const char *value)
Notifies the UI that a string account setting was set.
Definition: account.h:141
_PurpleAccountUiOps
Account UI operations, used to notify the user of status changes and when buddies add this account to...
Definition: account.h:78
purple_account_set_connection
void purple_account_set_connection(PurpleAccount *account, PurpleConnection *gc)
Sets the account's connection.
purple_account_get_privacy_type
PurplePrivacyType purple_account_get_privacy_type(const PurpleAccount *account)
Returns the account's privacy type.
PurpleStatusPrimitive
PurpleStatusPrimitive
A primitive defining the basic structure of a status type.
Definition: status.h:117
purple_account_set_password
void purple_account_set_password(PurpleAccount *account, const char *password)
Sets the account's password.
purple_account_get_name_for_display
const gchar * purple_account_get_name_for_display(const PurpleAccount *account)
Returns a name for this account appropriate for display to the user.
purple_account_get_current_error
const PurpleConnectionErrorInfo * purple_account_get_current_error(PurpleAccount *account)
Get the error that caused the account to be disconnected, or NULL if the account is happily connected...
proxy.h
PurpleConnectionErrorInfo
Holds the type of an error along with its description.
Definition: connection.h:139
purple_account_request_password
void purple_account_request_password(PurpleAccount *account, GCallback ok_cb, GCallback cancel_cb, void *user_data)
Requests a password from the user for the account.
_PurpleGroup
A group.
Definition: blist.h:167
purple_account_set_register_callback
void purple_account_set_register_callback(PurpleAccount *account, PurpleAccountRegistrationCb cb, void *user_data)
Sets the callback for successful registration.
purple_account_set_username
void purple_account_set_username(PurpleAccount *account, const char *username)
Sets the account's username.
log.h
connection.h
_PurpleAccountPrefsUiOps::set_bool
void(* set_bool)(PurpleAccount *account, const char *name, gboolean value)
Notifies the UI that a boolean account setting was set.
Definition: account.h:144
purple_account_get_ui_string
const char * purple_account_get_ui_string(const PurpleAccount *account, const char *ui, const char *name, const char *default_value)
Returns a UI-specific string setting for an account.
_PurpleAccountUiOps::close_account_request
void(* close_account_request)(void *ui_handle)
Close a pending request for authorization.
Definition: account.h:118
purple_account_request_authorization
void * purple_account_request_authorization(PurpleAccount *account, const char *remote_user, const char *id, const char *alias, const char *message, gboolean on_list, PurpleAccountRequestAuthorizationCb auth_cb, PurpleAccountRequestAuthorizationCb deny_cb, void *user_data)
Notifies the user that a remote user has wants to add the local user to his or her buddy list and req...
purple_account_disconnect
void purple_account_disconnect(PurpleAccount *account)
Disconnects from an account.
_PurpleAccountPrefsUiOps::set_int
void(* set_int)(PurpleAccount *account, const char *name, int value)
Notifies the UI that an integer account setting was set.
Definition: account.h:138
_PurpleAccount::user_info
char * user_info
User information.
Definition: account.h:174
purple_accounts_remove
void purple_accounts_remove(PurpleAccount *account)
Removes an account from the list of accounts.
purple_account_destroy
void purple_account_destroy(PurpleAccount *account)
Destroys an account.
purple_accounts_uninit
void purple_accounts_uninit(void)
Uninitializes the accounts subsystem.
purple_account_prefs_get_ui_ops
PurpleAccountPrefsUiOps * purple_account_prefs_get_ui_ops(void)
Returns the UI operations structure used for account preferences.
_PurpleAccount::settings
GHashTable * settings
Protocol-specific settings.
Definition: account.h:185
_PurpleAccount::priv
gpointer priv
Pointer to opaque private data.
Definition: account.h:214
purple_account_get_status
PurpleStatus * purple_account_get_status(const PurpleAccount *account, const char *status_id)
Returns the account status with the specified ID.
PurpleAccountRequestResponse
PurpleAccountRequestResponse
Account request response types.
Definition: account.h:67
purple_account_set_ui_bool
void purple_account_set_ui_bool(PurpleAccount *account, const char *ui, const char *name, gboolean value)
Sets a UI-specific boolean setting for an account.
purple_account_set_buddy_icon_path
void purple_account_set_buddy_icon_path(PurpleAccount *account, const char *path)
Sets the account's buddy icon path.
_PurpleAccount::perm_deny
PurplePrivacyType perm_deny
The permit/deny setting.
Definition: account.h:203
purple_accounts_set_ui_ops
void purple_accounts_set_ui_ops(PurpleAccountUiOps *ops)
Sets the UI operations structure to be used for accounts.
purple_account_get_alias
const char * purple_account_get_alias(const PurpleAccount *account)
Returns the account's alias.
_PurpleAccount::presence
PurplePresence * presence
Presence.
Definition: account.h:207
privacy.h
purple_accounts_restore_current_statuses
void purple_accounts_restore_current_statuses(void)
This is called by the core after all subsystems and what not have been initialized.
purple_accounts_add
void purple_accounts_add(PurpleAccount *account)
Adds an account to the list of accounts.
purple_account_add_buddies_with_invite
void purple_account_add_buddies_with_invite(PurpleAccount *account, GList *buddies, const char *message)
Adds a list of buddies to the server-side buddy list.
PurplePrivacyType
enum _PurplePrivacyType PurplePrivacyType
Privacy data types.
purple_account_set_silence_suppression
void purple_account_set_silence_suppression(PurpleAccount *account, gboolean value)
Sets whether silence suppression is used during voice call.
purple_account_get_bool
gboolean purple_account_get_bool(const PurpleAccount *account, const char *name, gboolean default_value)
Returns a protocol-specific boolean setting for an account.
purple_account_set_alias
void purple_account_set_alias(PurpleAccount *account, const char *alias)
Sets the account's alias.
_PurpleAccount::buddy_icon_path
char * buddy_icon_path
The buddy icon's non-cached path.
Definition: account.h:176
_PurpleAccountPrefsUiOps::load
void(* load)(void)
If this is set, accounts.xml loading will be disabled and this function will be called instead.
Definition: account.h:149
purple_account_set_int
void purple_account_set_int(PurpleAccount *account, const char *name, int value)
Sets a protocol-specific integer setting for an account.
purple_account_get_enabled
gboolean purple_account_get_enabled(const PurpleAccount *account, const char *ui)
Returns whether or not this account is enabled for the specified UI.
purple_account_is_connected
gboolean purple_account_is_connected(const PurpleAccount *account)
Returns whether or not the account is connected.
purple_account_is_status_active
gboolean purple_account_is_status_active(const PurpleAccount *account, const char *status_id)
Returns whether or not an account status is active.
purple_account_set_ui_int
void purple_account_set_ui_int(PurpleAccount *account, const char *ui, const char *name, int value)
Sets a UI-specific integer setting for an account.
purple_account_get_username
const char * purple_account_get_username(const PurpleAccount *account)
Returns the account's username.
_PurpleConnection
Definition: connection.h:245
purple_account_add_buddy
void purple_account_add_buddy(PurpleAccount *account, PurpleBuddy *buddy)
Adds a buddy to the server-side buddy list for the specified account.
_PurpleAccount::ui_settings
GHashTable * ui_settings
UI-specific settings.
Definition: account.h:186
_PurpleAccount::permit
GSList * permit
Permit list.
Definition: account.h:201
purple_account_get_check_mail
gboolean purple_account_get_check_mail(const PurpleAccount *account)
Returns whether or not this account should check for mail.
purple_accounts_find
PurpleAccount * purple_accounts_find(const char *name, const char *protocol)
Finds an account with the specified name and protocol id.
purple_account_get_status_type
PurpleStatusType * purple_account_get_status_type(const PurpleAccount *account, const char *id)
Returns the account status type with the specified ID.
purple_accounts_get_all_active
GList * purple_accounts_get_all_active(void)
Returns a list of all enabled accounts.
purple_account_get_protocol_id
const char * purple_account_get_protocol_id(const PurpleAccount *account)
Returns the account's protocol ID.
purple_account_get_silence_suppression
gboolean purple_account_get_silence_suppression(const PurpleAccount *account)
Return whether silence suppression is used during voice call.
purple_account_get_presence
PurplePresence * purple_account_get_presence(const PurpleAccount *account)
Returns the account's presence.
_PurpleBuddy
A buddy.
Definition: blist.h:138
purple_account_remove_group
void purple_account_remove_group(PurpleAccount *account, PurpleGroup *group)
Removes a group from the server-side buddy list.
purple_account_is_disconnected
gboolean purple_account_is_disconnected(const PurpleAccount *account)
Returns whether or not the account is disconnected.
purple_accounts_get_ui_ops
PurpleAccountUiOps * purple_accounts_get_ui_ops(void)
Returns the UI operations structure used for accounts.
status.h
purple_account_request_close_with_account
void purple_account_request_close_with_account(PurpleAccount *account)
Close account requests registered for the given PurpleAccount.
purple_accounts_delete
void purple_accounts_delete(PurpleAccount *account)
Deletes an account.
purple_account_set_remember_password
void purple_account_set_remember_password(PurpleAccount *account, gboolean value)
Sets whether or not this account should save its password.