pidgin  2.13.0
About: Pidgin is a chat program (multi-protocol instant messaging client) which lets you log in to accounts on multiple chat networks simultaneously (old name "gaim").
  Fossies Dox: pidgin-2.13.0.tar.gz  ("inofficial" and yet experimental doxygen-generated source code documentation)  

prpl.h File Reference
#include "blist.h"
#include "conversation.h"
#include "ft.h"
#include "imgstore.h"
#include "media.h"
#include "notify.h"
#include "proxy.h"
#include "plugin.h"
#include "roomlist.h"
#include "status.h"
#include "whiteboard.h"
Include dependency graph for prpl.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  _PurpleBuddyIconSpec
 
struct  proto_chat_entry
 
struct  _PurpleAttentionType
 
struct  _PurplePluginProtocolInfo
 

Typedefs

typedef struct _PurplePluginProtocolInfo PurplePluginProtocolInfo
 
typedef struct _PurpleAttentionType PurpleAttentionType
 

Functions

Attention Type API
PurpleAttentionTypepurple_attention_type_new (const char *ulname, const char *name, const char *inc_desc, const char *out_desc)
 
void purple_attention_type_set_name (PurpleAttentionType *type, const char *name)
 
void purple_attention_type_set_incoming_desc (PurpleAttentionType *type, const char *desc)
 
void purple_attention_type_set_outgoing_desc (PurpleAttentionType *type, const char *desc)
 
void purple_attention_type_set_icon_name (PurpleAttentionType *type, const char *name)
 
void purple_attention_type_set_unlocalized_name (PurpleAttentionType *type, const char *ulname)
 
const char * purple_attention_type_get_name (const PurpleAttentionType *type)
 
const char * purple_attention_type_get_incoming_desc (const PurpleAttentionType *type)
 
const char * purple_attention_type_get_outgoing_desc (const PurpleAttentionType *type)
 
const char * purple_attention_type_get_icon_name (const PurpleAttentionType *type)
 
const char * purple_attention_type_get_unlocalized_name (const PurpleAttentionType *type)
 
Protocol Plugin API
void purple_prpl_got_account_idle (PurpleAccount *account, gboolean idle, time_t idle_time)
 
void purple_prpl_got_account_login_time (PurpleAccount *account, time_t login_time)
 
void purple_prpl_got_account_status (PurpleAccount *account, const char *status_id,...) G_GNUC_NULL_TERMINATED
 
void purple_prpl_got_account_actions (PurpleAccount *account)
 
void purple_prpl_got_user_idle (PurpleAccount *account, const char *name, gboolean idle, time_t idle_time)
 
void purple_prpl_got_user_login_time (PurpleAccount *account, const char *name, time_t login_time)
 
void purple_prpl_got_user_status (PurpleAccount *account, const char *name, const char *status_id,...) G_GNUC_NULL_TERMINATED
 
void purple_prpl_got_user_status_deactive (PurpleAccount *account, const char *name, const char *status_id)
 
void purple_prpl_change_account_status (PurpleAccount *account, PurpleStatus *old_status, PurpleStatus *new_status)
 
GList * purple_prpl_get_statuses (PurpleAccount *account, PurplePresence *presence)
 
void purple_prpl_send_attention (PurpleConnection *gc, const char *who, guint type_code)
 
void purple_prpl_got_attention (PurpleConnection *gc, const char *who, guint type_code)
 
void purple_prpl_got_attention_in_chat (PurpleConnection *gc, int id, const char *who, guint type_code)
 
PurpleMediaCaps purple_prpl_get_media_caps (PurpleAccount *account, const char *who)
 
gboolean purple_prpl_initiate_media (PurpleAccount *account, const char *who, PurpleMediaSessionType type)
 
void purple_prpl_got_media_caps (PurpleAccount *account, const char *who)
 
Protocol Plugin Subsystem API
PurplePluginpurple_find_prpl (const char *id)
 

Basic Protocol Information

#define NO_BUDDY_ICONS   {NULL, 0, 0, 0, 0, 0, 0}
 
#define PURPLE_PROTOCOL_PLUGIN_HAS_FUNC(prpl, member)
 
#define PURPLE_IS_PROTOCOL_PLUGIN(plugin)   ((plugin)->info->type == PURPLE_PLUGIN_PROTOCOL)
 
#define PURPLE_PLUGIN_PROTOCOL_INFO(plugin)   ((PurplePluginProtocolInfo *)(plugin)->info->extra_info)
 
enum  PurpleIconScaleRules { PURPLE_ICON_SCALE_DISPLAY = 0x01, PURPLE_ICON_SCALE_SEND = 0x02 }
 
enum  PurpleProtocolOptions {
  OPT_PROTO_UNIQUE_CHATNAME = 0x00000004, OPT_PROTO_CHAT_TOPIC = 0x00000008, OPT_PROTO_NO_PASSWORD = 0x00000010, OPT_PROTO_MAIL_CHECK = 0x00000020,
  OPT_PROTO_IM_IMAGE = 0x00000040, OPT_PROTO_PASSWORD_OPTIONAL = 0x00000080, OPT_PROTO_USE_POINTSIZE = 0x00000100, OPT_PROTO_REGISTER_NOSCREENNAME = 0x00000200,
  OPT_PROTO_SLASH_COMMANDS_NATIVE = 0x00000400, OPT_PROTO_INVITE_MESSAGE = 0x00000800
}
 
typedef struct _PurpleBuddyIconSpec PurpleBuddyIconSpec
 
typedef struct _PurpleThumbnailSpec PurpleThumbnailSpec
 

Detailed Description

Protocol Plugin functions

Definition in file prpl.h.

Macro Definition Documentation

◆ NO_BUDDY_ICONS

#define NO_BUDDY_ICONS   {NULL, 0, 0, 0, 0, 0, 0}

This #define exists just to make it easier to fill out the buddy icon field in the prpl info struct for protocols that couldn't care less.

Definition at line 65 of file prpl.h.

◆ PURPLE_IS_PROTOCOL_PLUGIN

#define PURPLE_IS_PROTOCOL_PLUGIN (   plugin)    ((plugin)->info->type == PURPLE_PLUGIN_PROTOCOL)

Definition at line 657 of file prpl.h.

◆ PURPLE_PLUGIN_PROTOCOL_INFO

#define PURPLE_PLUGIN_PROTOCOL_INFO (   plugin)    ((PurplePluginProtocolInfo *)(plugin)->info->extra_info)

Definition at line 660 of file prpl.h.

◆ PURPLE_PROTOCOL_PLUGIN_HAS_FUNC

#define PURPLE_PROTOCOL_PLUGIN_HAS_FUNC (   prpl,
  member 
)
Value:
(((G_STRUCT_OFFSET(PurplePluginProtocolInfo, member) < G_STRUCT_OFFSET(PurplePluginProtocolInfo, struct_size)) \
|| (G_STRUCT_OFFSET(PurplePluginProtocolInfo, member) < prpl->struct_size)) && \
prpl->member != NULL)
#define NULL
Definition: getopt1.c:52

Definition at line 651 of file prpl.h.

Typedef Documentation

◆ PurpleAttentionType

Represents "nudges" and "buzzes" that you may send to a buddy to attract their attention (or vice-versa).

Definition at line 35 of file prpl.h.

◆ PurpleBuddyIconSpec

A description of a Buddy Icon specification. This tells Purple what kind of image file it should give this prpl, and what kind of image file it should expect back. Dimensions less than 1 should be ignored and the image not scaled.

Definition at line 52 of file prpl.h.

◆ PurplePluginProtocolInfo

Definition at line 33 of file prpl.h.

◆ PurpleThumbnailSpec

typedef struct _PurpleThumbnailSpec PurpleThumbnailSpec

A description of a file transfer thumbnail specification. This tells the UI if and what image formats the prpl support for file transfer thumbnails.

Definition at line 59 of file prpl.h.

Enumeration Type Documentation

◆ PurpleIconScaleRules

Enumerator
PURPLE_ICON_SCALE_DISPLAY 

We scale the icon when we display it

PURPLE_ICON_SCALE_SEND 

We scale the icon before we send it to the server

Definition at line 41 of file prpl.h.

◆ PurpleProtocolOptions

Protocol options

These should all be stuff that some plugins can do and others can't.

Enumerator
OPT_PROTO_UNIQUE_CHATNAME 

User names are unique to a chat and are not shared between rooms.

XMPP lets you choose what name you want in chats, so it shouldn't be pulling the aliases from the buddy list for the chat list; it gets annoying.

OPT_PROTO_CHAT_TOPIC 

Chat rooms have topics.

IRC and XMPP support this.

OPT_PROTO_NO_PASSWORD 

Don't require passwords for sign-in.

Zephyr doesn't require passwords, so there's no need for a password prompt.

OPT_PROTO_MAIL_CHECK 

Notify on new mail.

If a protocol notifies you when you have new mail.

OPT_PROTO_IM_IMAGE 

Images in IMs.

Oscar lets you send images in direct IMs.

OPT_PROTO_PASSWORD_OPTIONAL 

Allow passwords to be optional.

Passwords in IRC are optional, and are needed for certain functionality.

OPT_PROTO_USE_POINTSIZE 

Allows font size to be specified in sane point size

Probably just XMPP and Y!M

OPT_PROTO_REGISTER_NOSCREENNAME 

Set the Register button active even when the username has not been specified.

Gadu-Gadu doesn't need a username to register new account (because usernames are assigned by the server).

OPT_PROTO_SLASH_COMMANDS_NATIVE 

Indicates that slash commands are native to this protocol. Used as a hint that unknown commands should not be sent as messages.

Since
2.1.0
OPT_PROTO_INVITE_MESSAGE 

Indicates that this protocol supports sending a user-supplied message along with an invitation.

Since
2.8.0

Definition at line 136 of file prpl.h.

Function Documentation

◆ purple_attention_type_get_icon_name()

const char* purple_attention_type_get_icon_name ( const PurpleAttentionType type)

Get the attention type's icon name.

Parameters
typeThe attention type.
Returns
The icon name or NULL if unset/empty.
Note
Icons are optional for attention events.
Since
2.4.0

Definition at line 115 of file prpl.c.

References NULL, and dbus-analyze-signals::type.

◆ purple_attention_type_get_incoming_desc()

const char* purple_attention_type_get_incoming_desc ( const PurpleAttentionType type)

Get the attention type's description shown when the event is received.

Parameters
typeThe attention type.
Returns
The description.
Since
2.4.0

Definition at line 99 of file prpl.c.

References NULL, and dbus-analyze-signals::type.

Referenced by got_attention().

Here is the caller graph for this function:

◆ purple_attention_type_get_name()

const char* purple_attention_type_get_name ( const PurpleAttentionType type)

Get the attention type's name as displayed by the UI.

Parameters
typeThe attention type.
Returns
The name.
Since
2.4.0

Definition at line 91 of file prpl.c.

References NULL, and dbus-analyze-signals::type.

◆ purple_attention_type_get_outgoing_desc()

const char* purple_attention_type_get_outgoing_desc ( const PurpleAttentionType type)

Get the attention type's description shown when the event is sent.

Parameters
typeThe attention type.
Returns
The description.
Since
2.4.0

Definition at line 107 of file prpl.c.

References NULL, and dbus-analyze-signals::type.

Referenced by jabber_cmd_buzz(), and purple_prpl_send_attention().

Here is the caller graph for this function:

◆ purple_attention_type_get_unlocalized_name()

const char* purple_attention_type_get_unlocalized_name ( const PurpleAttentionType type)

Get the attention type's unlocalized name; this is useful for some UIs.

Parameters
typeThe attention type
Returns
The unlocalized name.
Since
2.4.0

Definition at line 126 of file prpl.c.

References NULL, and dbus-analyze-signals::type.

◆ purple_attention_type_new()

PurpleAttentionType* purple_attention_type_new ( const char *  ulname,
const char *  name,
const char *  inc_desc,
const char *  out_desc 
)

Creates a new PurpleAttentionType object and sets its mandatory parameters.

Parameters
ulnameA non-localized string that can be used by UIs in need of such non-localized strings. This should be the same as name, without localization.
nameA localized string that the UI may display for the event. This should be the same string as ulname, with localization.
inc_descA localized description shown when the event is received.
out_descA localized description shown when the event is sent.
Returns
A pointer to the new object.
Since
2.4.0

Definition at line 36 of file prpl.c.

References name, purple_attention_type_set_incoming_desc(), purple_attention_type_set_name(), purple_attention_type_set_outgoing_desc(), and purple_attention_type_set_unlocalized_name().

Referenced by jabber_attention_types().

Here is the caller graph for this function:

◆ purple_attention_type_set_icon_name()

void purple_attention_type_set_icon_name ( PurpleAttentionType type,
const char *  name 
)

Sets the name of the icon to display for the attention event; this is optional.

Parameters
typeThe attention type.
nameThe icon's name.
Note
Icons are optional for attention events.
Since
2.4.0

Definition at line 75 of file prpl.c.

References name, NULL, and dbus-analyze-signals::type.

◆ purple_attention_type_set_incoming_desc()

void purple_attention_type_set_incoming_desc ( PurpleAttentionType type,
const char *  desc 
)

Sets the description of the attention-demanding event shown in conversations when the event is received.

Parameters
typeThe attention type.
descThe localized description for incoming events.
Since
2.4.0

Definition at line 59 of file prpl.c.

References NULL, and dbus-analyze-signals::type.

Referenced by purple_attention_type_new().

Here is the caller graph for this function:

◆ purple_attention_type_set_name()

void purple_attention_type_set_name ( PurpleAttentionType type,
const char *  name 
)

Sets the displayed name of the attention-demanding event.

Parameters
typeThe attention type.
nameThe localized name that will be displayed by UIs. This should be the same string given as the unlocalized name, but with localization.
Since
2.4.0

Definition at line 51 of file prpl.c.

References name, NULL, and dbus-analyze-signals::type.

Referenced by purple_attention_type_new().

Here is the caller graph for this function:

◆ purple_attention_type_set_outgoing_desc()

void purple_attention_type_set_outgoing_desc ( PurpleAttentionType type,
const char *  desc 
)

Sets the description of the attention-demanding event shown in conversations when the event is sent.

Parameters
typeThe attention type.
descThe localized description for outgoing events.
Since
2.4.0

Definition at line 67 of file prpl.c.

References NULL, and dbus-analyze-signals::type.

Referenced by purple_attention_type_new().

Here is the caller graph for this function:

◆ purple_attention_type_set_unlocalized_name()

void purple_attention_type_set_unlocalized_name ( PurpleAttentionType type,
const char *  ulname 
)

Sets the unlocalized name of the attention event; some UIs may need this, thus it is required.

Parameters
typeThe attention type.
ulnameThe unlocalized name. This should be the same string given as the localized name, but without localization.
Since
2.4.0

Definition at line 83 of file prpl.c.

References NULL, and dbus-analyze-signals::type.

Referenced by purple_attention_type_new().

Here is the caller graph for this function:

◆ purple_find_prpl()

◆ purple_prpl_change_account_status()

void purple_prpl_change_account_status ( PurpleAccount account,
PurpleStatus old_status,
PurpleStatus new_status 
)

Informs the server that our account's status changed.

Parameters
accountThe account the user is on.
old_statusThe previous status.
new_statusThe status that was activated, or deactivated (in the case of independent statuses).

Definition at line 378 of file prpl.c.

References account, do_prpl_change_account_status(), NULL, purple_accounts_get_handle(), purple_signal_emit(), and purple_status_is_exclusive().

Referenced by notify_status_update().

Here is the caller graph for this function:

◆ purple_prpl_get_media_caps()

PurpleMediaCaps purple_prpl_get_media_caps ( PurpleAccount account,
const char *  who 
)

Determines if the contact supports the given media session type.

Parameters
accountThe account the user is on.
whoThe name of the contact to check capabilities for.
Returns
The media caps the contact supports.

Definition at line 565 of file prpl.c.

References account, _PurplePluginProtocolInfo::get_media_caps, NULL, prpl_info, purple_account_get_connection(), purple_connection_get_prpl(), PURPLE_MEDIA_CAPS_NONE, PURPLE_PLUGIN_PROTOCOL_INFO, and PURPLE_PROTOCOL_PLUGIN_HAS_FUNC.

Referenced by pidgin_blist_make_buddy_menu(), purple_prpl_got_media_caps(), and regenerate_media_items().

Here is the caller graph for this function:

◆ purple_prpl_get_statuses()

GList* purple_prpl_get_statuses ( PurpleAccount account,
PurplePresence presence 
)

Retrieves the list of stock status types from a prpl.

Parameters
accountThe account the user is on.
presenceThe presence for which we're going to get statuses
Returns
List of statuses

Definition at line 395 of file prpl.c.

References account, NULL, purple_account_get_status_types(), purple_status_new(), status, and statuses.

Referenced by purple_presence_new_for_account(), and purple_presence_new_for_buddy().

Here is the caller graph for this function:

◆ purple_prpl_got_account_actions()

void purple_prpl_got_account_actions ( PurpleAccount account)

Notifies Purple that our account's actions have changed. This is only called after the initial connection. Emits the account-actions-changed signal.

This is meant to be called from protocol plugins.

Parameters
accountThe account.
See also
account-actions-changed
Since
2.6.0

Definition at line 185 of file prpl.c.

References account, NULL, purple_account_is_connected(), purple_accounts_get_handle(), and purple_signal_emit().

Referenced by jabber_adhoc_got_server_list().

Here is the caller graph for this function:

◆ purple_prpl_got_account_idle()

void purple_prpl_got_account_idle ( PurpleAccount account,
gboolean  idle,
time_t  idle_time 
)

Notifies Purple that our account's idle state and time have changed.

This is meant to be called from protocol plugins.

Parameters
accountThe account.
idleThe user's idle state.
idle_timeThe user's idle time.

Definition at line 137 of file prpl.c.

References account, idle, NULL, purple_account_get_presence(), purple_account_is_connected(), and purple_presence_set_idle().

◆ purple_prpl_got_account_login_time()

void purple_prpl_got_account_login_time ( PurpleAccount account,
time_t  login_time 
)

Notifies Purple of our account's log-in time.

This is meant to be called from protocol plugins.

Parameters
accountThe account the user is on.
login_timeThe user's log-in time.

Definition at line 148 of file prpl.c.

References account, NULL, purple_account_get_presence(), purple_account_is_connected(), purple_presence_set_login_time(), and time().

◆ purple_prpl_got_account_status()

void purple_prpl_got_account_status ( PurpleAccount account,
const char *  status_id,
  ... 
)

Notifies Purple that our account's status has changed.

This is meant to be called from protocol plugins.

Parameters
accountThe account the user is on.
status_idThe status ID.
...A NULL-terminated list of attribute IDs and values, beginning with the value for attr_id.

Definition at line 164 of file prpl.c.

References account, dbus-analyze-signals::args, NULL, purple_account_get_presence(), purple_account_is_connected(), purple_presence_get_status(), purple_status_set_active_with_attrs(), status, status_id, and TRUE.

◆ purple_prpl_got_attention()

void purple_prpl_got_attention ( PurpleConnection gc,
const char *  who,
guint  type_code 
)

Process an incoming attention message.

Parameters
gcThe connection that received the attention message.
whoWho requested your attention.
type_codeAn index into the prpl's attention_types list determining the type of the attention request command to send.
Since
2.5.0

Definition at line 520 of file prpl.c.

References account, got_attention(), NULL, purple_connection_get_account(), PURPLE_CONV_TYPE_ANY, purple_find_conversation_with_account(), PURPLE_MESSAGE_RECV, purple_prpl_attention(), and time().

Referenced by handle_buzz(), and serv_got_attention().

Here is the caller graph for this function:

◆ purple_prpl_got_attention_in_chat()

void purple_prpl_got_attention_in_chat ( PurpleConnection gc,
int  id,
const char *  who,
guint  type_code 
)

Process an incoming attention message in a chat.

Parameters
gcThe connection that received the attention message.
idThe chat id.
whoWho requested your attention.
type_codeAn index into the prpl's attention_types list determining the type of the attention request command to send.
Since
2.5.0

Definition at line 534 of file prpl.c.

References got_attention().

◆ purple_prpl_got_media_caps()

void purple_prpl_got_media_caps ( PurpleAccount account,
const char *  who 
)

Signals that the prpl received capabilities for the given contact.

This function is intended to be used only by prpls.

Parameters
accountThe account the user is on.
whoThe name of the contact for which capabilities have been received.
Since
2.7.0

Definition at line 588 of file prpl.c.

References account, name, NULL, purple_blist_get_handle(), purple_buddy_get_media_caps(), purple_buddy_get_name(), purple_buddy_set_media_caps(), purple_find_buddies(), purple_prpl_get_media_caps(), and purple_signal_emit().

Referenced by jabber_presence_set_capabilities(), and purple_prpl_got_user_status().

Here is the caller graph for this function:

◆ purple_prpl_got_user_idle()

void purple_prpl_got_user_idle ( PurpleAccount account,
const char *  name,
gboolean  idle,
time_t  idle_time 
)

Notifies Purple that a buddy's idle state and time have changed.

This is meant to be called from protocol plugins.

Parameters
accountThe account the user is on.
nameThe name of the buddy.
idleThe user's idle state.
idle_timeThe user's idle time. This is the time at which the user became idle, in seconds since the epoch. If the PRPL does not know this value then it should pass 0.

Definition at line 196 of file prpl.c.

References account, idle, name, NULL, purple_account_is_connected(), purple_account_is_connecting(), purple_buddy_get_presence(), purple_find_buddies(), and purple_presence_set_idle().

Referenced by _update_buddy_status(), bonjour_buddy_add_to_purple(), handle_presence_contact(), jabber_last_parse(), jabber_presence_fake_to_self(), mw_aware_list_on_aware(), and purple_parse_oncoming().

Here is the caller graph for this function:

◆ purple_prpl_got_user_login_time()

void purple_prpl_got_user_login_time ( PurpleAccount account,
const char *  name,
time_t  login_time 
)

Notifies Purple of a buddy's log-in time.

This is meant to be called from protocol plugins.

Parameters
accountThe account the user is on.
nameThe name of the buddy.
login_timeThe user's log-in time.

Definition at line 217 of file prpl.c.

References account, name, NULL, purple_blist_get_handle(), purple_buddy_get_presence(), purple_find_buddies(), purple_presence_get_login_time(), purple_presence_set_login_time(), purple_signal_emit(), and time().

Referenced by purple_parse_oncoming().

Here is the caller graph for this function:

◆ purple_prpl_got_user_status()

void purple_prpl_got_user_status ( PurpleAccount account,
const char *  name,
const char *  status_id,
  ... 
)

Notifies Purple that a buddy's status has been activated.

This is meant to be called from protocol plugins.

Parameters
accountThe account the user is on.
nameThe name of the buddy.
status_idThe status ID.
...A NULL-terminated list of attribute IDs and values, beginning with the value for attr_id.

Definition at line 247 of file prpl.c.

References account, dbus-analyze-signals::args, name, NULL, purple_account_get_connection(), purple_account_is_connected(), purple_account_is_connecting(), purple_blist_update_buddy_status(), purple_buddy_get_presence(), purple_find_buddies(), purple_presence_get_active_status(), purple_presence_get_status(), purple_prpl_got_media_caps(), purple_status_is_online(), purple_status_set_active_with_attrs(), serv_got_typing_stopped(), status, status_id, and TRUE.

Referenced by _update_buddy_status(), aim_info_extract(), bonjour_buddy_add_to_purple(), bonjour_buddy_signed_off(), check_loc(), check_notify_tzc(), clientautoresp(), discover_status(), ggp_generic_status_handler(), ggp_status_fake_to_self(), handle_message(), handle_presence_contact(), icqresponse(), irc_add_buddy(), irc_buddy_status(), jabber_google_presence_incoming(), jabber_google_roster_add_deny(), jabber_mood_cb(), jabber_presence_fake_to_self(), jabber_roster_add_buddy(), jabber_tune_cb(), mw_aware_list_on_aware(), oscar_add_buddy(), oscar_auth_sendrequest(), process_incoming_notify(), process_subscribe_response(), purple_parse_offgoing(), purple_parse_oncoming(), purple_ssi_parseaddmod(), purple_ssi_parselist(), silc_notify(), silcpurple_add_buddy_pk_no(), silcpurple_add_buddy_save(), and userinfo().

Here is the caller graph for this function:

◆ purple_prpl_got_user_status_deactive()

void purple_prpl_got_user_status_deactive ( PurpleAccount account,
const char *  name,
const char *  status_id 
)

Notifies libpurple that a buddy's status has been deactivated

This is meant to be called from protocol plugins.

Parameters
accountThe account the user is on.
nameThe name of the buddy.
status_idThe status ID.

Definition at line 297 of file prpl.c.

References account, FALSE, name, NULL, purple_account_is_connected(), purple_account_is_connecting(), purple_blist_update_buddy_status(), purple_buddy_get_presence(), purple_find_buddies(), purple_presence_get_status(), purple_status_is_active(), purple_status_set_active(), status, and status_id.

Referenced by aim_info_extract(), jabber_google_presence_incoming(), jabber_mood_cb(), jabber_tune_cb(), purple_parse_offgoing(), purple_parse_oncoming(), and userinfo().

Here is the caller graph for this function:

◆ purple_prpl_initiate_media()

gboolean purple_prpl_initiate_media ( PurpleAccount account,
const char *  who,
PurpleMediaSessionType  type 
)

Initiates a media session with the given contact.

Parameters
accountThe account the user is on.
whoThe name of the contact to start a session with.
typeThe type of media session to start.
Returns
TRUE if the call succeeded else FALSE. (Doesn't imply the media session or stream will be successfully created)

Definition at line 540 of file prpl.c.

References account, FALSE, _PurplePluginProtocolInfo::initiate_media, NULL, prpl_info, purple_account_get_connection(), purple_connection_get_prpl(), PURPLE_PLUGIN_PROTOCOL_INFO, PURPLE_PROTOCOL_PLUGIN_HAS_FUNC, and dbus-analyze-signals::type.

◆ purple_prpl_send_attention()

void purple_prpl_send_attention ( PurpleConnection gc,
const char *  who,
guint  type_code 
)

Send an attention request message.

Parameters
gcThe connection to send the message on.
whoWhose attention to request.
type_codeAn index into the prpl's attention_types list determining the type of the attention request command to send. 0 if prpl only defines one, but protocols are allowed to define more.

Note that you can't send arbitrary PurpleAttentionType's, because there is only a fixed set of attention commands.

Since
2.5.0

Definition at line 426 of file prpl.c.

References _(), _PurpleConnection::account, flags, mtime, NULL, purple_account_get_protocol_id(), purple_attention_type_get_outgoing_desc(), purple_buddy_get_contact_alias(), purple_connection_get_account(), PURPLE_CONV_IM(), purple_conv_im_write(), PURPLE_CONV_TYPE_IM, purple_conversation_new(), purple_debug_info(), purple_find_buddy(), purple_find_prpl(), purple_get_attention_type_from_code(), PURPLE_MESSAGE_NOTIFY, PURPLE_MESSAGE_SEND, PURPLE_MESSAGE_SYSTEM, PURPLE_PLUGIN_PROTOCOL_INFO, purple_prpl_attention(), and time().

Referenced by menu_get_attention_cb(), send_attention_cb(), and serv_send_attention().

Here is the caller graph for this function: