Interface

PurpleProtocolChat

Description [src]

interface Purple.ProtocolChat : Purple.Protocol

PurpleProtocolChat describes the API that protocols need to implement for handling multiple user conversations.

Available since:3.0.0

Prerequisite

In order to implement ProtocolChat, your type must inherit from PurpleProtocol.

Instance methods

purple_protocol_chat_get_name

Gets the name from components.

Available since: 3.0.0

purple_protocol_chat_get_user_real_name

Gets the real name of who.

Available since: 3.0.0

purple_protocol_chat_info

Gets the list of PurpleProtocolChatEntrys that are required to join a multi user chat.

Available since: 3.0.0

purple_protocol_chat_info_defaults

Returns a GHashTable of the default protocol dependent components that will be passed to purple_protocol_chat_join().

Available since: 3.0.0

purple_protocol_chat_invite

Sends an invite to who with message.

Available since: 3.0.0

purple_protocol_chat_join

Joins the chat described in components.

Available since: 3.0.0

purple_protocol_chat_leave

Leaves the chat identified by id.

Available since: 3.0.0

purple_protocol_chat_reject

Used to reject a chat invite.

Available since: 3.0.0

purple_protocol_chat_send

Sends message to the chat identified by id.

Available since: 3.0.0

purple_protocol_chat_set_topic

Sets the topic for the chat with id id to topic.

Available since: 3.0.0

Interface structure

struct PurpleProtocolChatInterface {
  GList* (* info) (
    PurpleProtocolChat* protocol_chat,
    PurpleConnection* connection
  );
  GHashTable* (* info_defaults) (
    PurpleProtocolChat* protocol_chat,
    PurpleConnection* connection,
    const gchar* chat_name
  );
  void (* join) (
    PurpleProtocolChat* protocol_chat,
    PurpleConnection* connection,
    GHashTable* components
  );
  void (* reject) (
    PurpleProtocolChat* protocol_chat,
    PurpleConnection* connection,
    GHashTable* components
  );
  gchar* (* get_name) (
    PurpleProtocolChat* protocol_chat,
    GHashTable* components
  );
  void (* invite) (
    PurpleProtocolChat* protocol_chat,
    PurpleConnection* connection,
    gint id,
    const gchar* message,
    const gchar* who
  );
  void (* leave) (
    PurpleProtocolChat* protocol_chat,
    PurpleConnection* connection,
    gint id
  );
  gint (* send) (
    PurpleProtocolChat* protocol_chat,
    PurpleConnection* connection,
    gint id,
    PurpleMessage* message
  );
  gchar* (* get_user_real_name) (
    PurpleProtocolChat* protocol_chat,
    PurpleConnection* connection,
    gint id,
    const gchar* who
  );
  void (* set_topic) (
    PurpleProtocolChat* protocol_chat,
    PurpleConnection* connection,
    gint id,
    const gchar* topic
  );
  
}

The protocol chat interface.

This interface provides callbacks needed by protocols that implement chats.

Interface members
info
GList* (* info) (
    PurpleProtocolChat* protocol_chat,
    PurpleConnection* connection
  )
 No description available.
info_defaults
GHashTable* (* info_defaults) (
    PurpleProtocolChat* protocol_chat,
    PurpleConnection* connection,
    const gchar* chat_name
  )
 No description available.
join
void (* join) (
    PurpleProtocolChat* protocol_chat,
    PurpleConnection* connection,
    GHashTable* components
  )
 No description available.
reject
void (* reject) (
    PurpleProtocolChat* protocol_chat,
    PurpleConnection* connection,
    GHashTable* components
  )
 No description available.
get_name
gchar* (* get_name) (
    PurpleProtocolChat* protocol_chat,
    GHashTable* components
  )
 No description available.
invite
void (* invite) (
    PurpleProtocolChat* protocol_chat,
    PurpleConnection* connection,
    gint id,
    const gchar* message,
    const gchar* who
  )
 No description available.
leave
void (* leave) (
    PurpleProtocolChat* protocol_chat,
    PurpleConnection* connection,
    gint id
  )
 No description available.
send
gint (* send) (
    PurpleProtocolChat* protocol_chat,
    PurpleConnection* connection,
    gint id,
    PurpleMessage* message
  )
 No description available.
get_user_real_name
gchar* (* get_user_real_name) (
    PurpleProtocolChat* protocol_chat,
    PurpleConnection* connection,
    gint id,
    const gchar* who
  )
 No description available.
set_topic
void (* set_topic) (
    PurpleProtocolChat* protocol_chat,
    PurpleConnection* connection,
    gint id,
    const gchar* topic
  )
 No description available.

Virtual methods

Purple.ProtocolChat.get_name

Gets the name from components.

Purple.ProtocolChat.get_user_real_name

Gets the real name of who.

Purple.ProtocolChat.info

Gets the list of PurpleProtocolChatEntrys that are required to join a multi user chat.

Purple.ProtocolChat.info_defaults

Returns a GHashTable of the default protocol dependent components that will be passed to purple_protocol_chat_join().

Purple.ProtocolChat.invite

Sends an invite to who with message.

Purple.ProtocolChat.join

Joins the chat described in components.

Purple.ProtocolChat.leave

Leaves the chat identified by id.

Purple.ProtocolChat.reject

Used to reject a chat invite.

Purple.ProtocolChat.send

Sends message to the chat identified by id.

Purple.ProtocolChat.set_topic

Sets the topic for the chat with id id to topic.