pidgin 2.14.5

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
34 typedef struct _PurpleAccountUiOps PurpleAccountUiOps;
36 typedef struct _PurpleAccountPrefsUiOps PurpleAccountPrefsUiOps;
38 typedef struct _PurpleAccount PurpleAccount;
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 */
62 } PurpleAccountRequestType;
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
73 } PurpleAccountRequestResponse;
74
78 struct _PurpleAccountUiOps
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
135 struct _PurpleAccountPrefsUiOps
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
169 struct _PurpleAccount
170 {
171 char *username;
172 char *alias;
173 char *password;
174 char *user_info;
176 char *buddy_icon_path;
178 gboolean remember_pass;
180 char *protocol_id;
182 PurpleConnection *gc;
183 gboolean disconnecting;
185 GHashTable *settings;
186 GHashTable *ui_settings;
188 PurpleProxyInfo *proxy_info;
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;
203 PurplePrivacyType perm_deny;
205 GList *status_types;
207 PurplePresence *presence;
208 PurpleLog *system_log;
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
241 void purple_account_destroy(PurpleAccount *account);
242
248 void purple_account_connect(PurpleAccount *account);
249
257 void purple_account_set_register_callback(PurpleAccount *account, PurpleAccountRegistrationCb cb, void *user_data);
258
264 void purple_account_register(PurpleAccount *account);
265
273 void purple_account_unregister(PurpleAccount *account, PurpleAccountUnregistrationCb cb, void *user_data);
274
280 void purple_account_disconnect(PurpleAccount *account);
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
346 void purple_account_request_close_with_account(PurpleAccount *account);
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
372 void purple_account_request_change_password(PurpleAccount *account);
373
380 void purple_account_request_change_user_info(PurpleAccount *account);
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
428 void purple_account_set_protocol_id(PurpleAccount *account,
429 const char *protocol_id);
430
437 void purple_account_set_connection(PurpleAccount *account, PurpleConnection *gc);
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
472 void purple_account_set_proxy_info(PurpleAccount *account, PurpleProxyInfo *info);
473
482 void purple_account_set_privacy_type(PurpleAccount *account, PurplePrivacyType privacy_type);
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
519 void purple_account_set_status_list(PurpleAccount *account,
520 const char *status_id, gboolean active, GList *attrs);
521
540 void purple_account_set_public_alias(PurpleAccount *account,
541 const char *alias, PurpleSetPublicAliasSuccessCallback success_cb,
542 PurpleSetPublicAliasFailureCallback failure_cb);
543
554 void purple_account_get_public_alias(PurpleAccount *account,
555 PurpleGetPublicAliasSuccessCallback success_cb,
556 PurpleGetPublicAliasFailureCallback failure_cb);
557
565 gboolean purple_account_get_silence_suppression(const PurpleAccount *account);
566
573 void purple_account_set_silence_suppression(PurpleAccount *account,
574 gboolean value);
575
581 void purple_account_clear_settings(PurpleAccount *account);
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
752 PurpleConnection *purple_account_get_connection(const PurpleAccount *account);
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
805 PurpleProxyInfo *purple_account_get_proxy_info(const PurpleAccount *account);
806
816 PurplePrivacyType purple_account_get_privacy_type(const PurpleAccount *account);
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
852 PurpleStatusType *purple_account_get_status_type(const PurpleAccount *account,
853 const char *id);
854
866 PurpleStatusType *purple_account_get_status_type_with_primitive(
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
997 void purple_account_destroy_log(PurpleAccount *account);
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
1046 void purple_account_remove_buddy(PurpleAccount *account, PurpleBuddy *buddy,
1047 PurpleGroup *group);
1048
1060 void purple_account_remove_buddies(PurpleAccount *account, GList *buddies,
1061 GList *groups);
1062
1069 void purple_account_remove_group(PurpleAccount *account, PurpleGroup *group);
1070
1078 void purple_account_change_password(PurpleAccount *account, const char *orig_pw,
1079 const char *new_pw);
1080
1087 gboolean purple_account_supports_offline_message(PurpleAccount *account, PurpleBuddy *buddy);
1088
1099 const PurpleConnectionErrorInfo *purple_account_get_current_error(PurpleAccount *account);
1100
1106 void purple_account_clear_current_error(PurpleAccount *account);
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
1183 void purple_accounts_restore_current_statuses(void);
1184
1188 /**************************************************************************/
1190 /**************************************************************************/
1197 void purple_accounts_set_ui_ops(PurpleAccountUiOps *ops);
1198
1204 PurpleAccountUiOps *purple_accounts_get_ui_ops(void);
1205
1212 void purple_account_prefs_set_ui_ops(PurpleAccountPrefsUiOps *ops);
1213
1220 PurpleAccountPrefsUiOps *purple_account_prefs_get_ui_ops(void);
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:124
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:169
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.
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
PurplePrivacyType
enum _PurplePrivacyType PurplePrivacyType
Privacy data types.
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:140
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.