| |
1 /** |
| |
2 * @file yahoochat.h The Yahoo! protocol plugin, chat and conference stuff |
| |
3 * |
| |
4 * gaim |
| |
5 * |
| |
6 * Gaim is the legal property of its developers, whose names are too numerous |
| |
7 * to list here. Please refer to the COPYRIGHT file distributed with this |
| |
8 * source distribution. |
| |
9 * |
| |
10 * This program is free software; you can redistribute it and/or modify |
| |
11 * it under the terms of the GNU General Public License as published by |
| |
12 * the Free Software Foundation; either version 2 of the License, or |
| |
13 * (at your option) any later version. |
| |
14 * |
| |
15 * This program is distributed in the hope that it will be useful, |
| |
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| |
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| |
18 * GNU General Public License for more details. |
| |
19 * |
| |
20 * You should have received a copy of the GNU General Public License |
| |
21 * along with this program; if not, write to the Free Software |
| |
22 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| |
23 */ |
| |
24 |
| |
25 #ifndef _YAHOOCHAT_H_ |
| |
26 #define _YAHOOCHAT_H_ |
| |
27 |
| |
28 #include "roomlist.h" |
| |
29 #include "yahoo_packet.h" |
| |
30 |
| |
31 void yahoo_process_conference_invite(GaimConnection *gc, struct yahoo_packet *pkt); |
| |
32 void yahoo_process_conference_decline(GaimConnection *gc, struct yahoo_packet *pkt); |
| |
33 void yahoo_process_conference_logon(GaimConnection *gc, struct yahoo_packet *pkt); |
| |
34 void yahoo_process_conference_logoff(GaimConnection *gc, struct yahoo_packet *pkt); |
| |
35 void yahoo_process_conference_message(GaimConnection *gc, struct yahoo_packet *pkt); |
| |
36 |
| |
37 void yahoo_process_chat_online(GaimConnection *gc, struct yahoo_packet *pkt); |
| |
38 void yahoo_process_chat_logout(GaimConnection *gc, struct yahoo_packet *pkt); |
| |
39 void yahoo_process_chat_join(GaimConnection *gc, struct yahoo_packet *pkt); |
| |
40 void yahoo_process_chat_exit(GaimConnection *gc, struct yahoo_packet *pkt); |
| |
41 void yahoo_process_chat_message(GaimConnection *gc, struct yahoo_packet *pkt); |
| |
42 void yahoo_process_chat_addinvite(GaimConnection *gc, struct yahoo_packet *pkt); |
| |
43 void yahoo_process_chat_goto(GaimConnection *gc, struct yahoo_packet *pkt); |
| |
44 |
| |
45 void yahoo_c_leave(GaimConnection *gc, int id); |
| |
46 int yahoo_c_send(GaimConnection *gc, int id, const char *what, GaimMessageFlags flags); |
| |
47 GList *yahoo_c_info(GaimConnection *gc); |
| |
48 GHashTable *yahoo_c_info_defaults(GaimConnection *gc, const char *chat_name); |
| |
49 void yahoo_c_join(GaimConnection *gc, GHashTable *data); |
| |
50 char *yahoo_get_chat_name(GHashTable *data); |
| |
51 void yahoo_c_invite(GaimConnection *gc, int id, const char *msg, const char *name); |
| |
52 |
| |
53 void yahoo_conf_leave(struct yahoo_data *yd, const char *room, const char *dn, GList *who); |
| |
54 |
| |
55 void yahoo_chat_goto(GaimConnection *gc, const char *name); |
| |
56 |
| |
57 /* room listing functions */ |
| |
58 GaimRoomlist *yahoo_roomlist_get_list(GaimConnection *gc); |
| |
59 void yahoo_roomlist_cancel(GaimRoomlist *list); |
| |
60 void yahoo_roomlist_expand_category(GaimRoomlist *list, GaimRoomlistRoom *category); |
| |
61 |
| |
62 /* util */ |
| |
63 void yahoo_chat_add_users(GaimConvChat *chat, GList *newusers); |
| |
64 void yahoo_chat_add_user(GaimConvChat *chat, const char *user, const char *reason); |
| |
65 |
| |
66 #endif /* _YAHOO_CHAT_H_ */ |