Mercurial > pidgin
annotate src/protocols/msn/switchboard.h @ 11851:3bfb2cffcef2
[gaim-migrate @ 14142]
inspired by Richard Stellingwerff's patch 1339606, this workaround for
annoying visible borders on tab close buttons is no longer required with
at least gtk 2.6 (if someone can confirm if it was fixed in 2.4 we could
remove it there too)
committer: Tailor Script <tailor@pidgin.im>
| author | Stu Tomlinson <stu@nosnilmot.com> |
|---|---|
| date | Thu, 27 Oct 2005 15:15:52 +0000 |
| parents | 95fa774d216d |
| children | a1aa681f1448 |
| rev | line source |
|---|---|
| 4542 | 1 /** |
| 2 * @file switchboard.h MSN switchboard functions | |
| 3 * | |
| 4 * gaim | |
| 5 * | |
|
9198
ab6636c5a136
[gaim-migrate @ 9993]
Christian Hammond <chipx86@chipx86.com>
parents:
9193
diff
changeset
|
6 * Gaim is the legal property of its developers, whose names are too numerous |
|
ab6636c5a136
[gaim-migrate @ 9993]
Christian Hammond <chipx86@chipx86.com>
parents:
9193
diff
changeset
|
7 * to list here. Please refer to the COPYRIGHT file distributed with this |
|
ab6636c5a136
[gaim-migrate @ 9993]
Christian Hammond <chipx86@chipx86.com>
parents:
9193
diff
changeset
|
8 * source distribution. |
|
6701
b7e113a59b51
[gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents:
5679
diff
changeset
|
9 * |
| 4542 | 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 #ifndef _MSN_SWITCHBOARD_H_ | |
| 25 #define _MSN_SWITCHBOARD_H_ | |
| 26 | |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
27 typedef struct _MsnSwitchBoard MsnSwitchBoard; |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
28 |
|
6701
b7e113a59b51
[gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents:
5679
diff
changeset
|
29 #include "conversation.h" |
|
b7e113a59b51
[gaim-migrate @ 7227]
Christian Hammond <chipx86@chipx86.com>
parents:
5679
diff
changeset
|
30 |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
31 #include "msg.h" |
|
9193
502707ca1836
[gaim-migrate @ 9988]
Christian Hammond <chipx86@chipx86.com>
parents:
9158
diff
changeset
|
32 #include "user.h" |
|
502707ca1836
[gaim-migrate @ 9988]
Christian Hammond <chipx86@chipx86.com>
parents:
9158
diff
changeset
|
33 |
|
6786
8efafdc38718
[gaim-migrate @ 7325]
Christian Hammond <chipx86@chipx86.com>
parents:
6701
diff
changeset
|
34 #include "servconn.h" |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
35 |
| 10345 | 36 #include "slplink.h" |
| 37 | |
| 10481 | 38 /** |
| 39 * A switchboard error. | |
| 10345 | 40 */ |
| 10225 | 41 typedef enum |
| 42 { | |
| 10346 | 43 MSN_SB_ERROR_NONE, /**< No error. */ |
| 44 MSN_SB_ERROR_CAL, /**< The user could not join (answer the call). */ | |
| 45 MSN_SB_ERROR_OFFLINE, /**< The account is offline. */ | |
| 46 MSN_SB_ERROR_USER_OFFLINE, /**< The user to call is offline. */ | |
| 47 MSN_SB_ERROR_CONNECTION, /**< There was a connection error. */ | |
| 10451 | 48 MSN_SB_ERROR_UNKNOWN /**< An unknown error occurred. */ |
| 10225 | 49 |
| 50 } MsnSBErrorType; | |
| 51 | |
| 10481 | 52 /** |
| 10602 | 53 * A switchboard flag. |
| 54 */ | |
| 55 typedef enum | |
| 56 { | |
| 10773 | 57 MSN_SB_FLAG_IM = 0x01, /**< This switchboard is being used for a conversation. */ |
| 58 MSN_SB_FLAG_FT = 0x02, /**< This switchboard is being used for file transfer. */ | |
| 10602 | 59 |
| 60 } MsnSBFlag; | |
| 61 | |
| 62 /** | |
| 10481 | 63 * A switchboard. |
| 64 * | |
| 65 * A place where a bunch of users send messages to the rest of the users. | |
| 10345 | 66 */ |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
67 struct _MsnSwitchBoard |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
68 { |
|
9193
502707ca1836
[gaim-migrate @ 9988]
Christian Hammond <chipx86@chipx86.com>
parents:
9158
diff
changeset
|
69 MsnSession *session; |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
70 MsnServConn *servconn; |
| 10463 | 71 MsnCmdProc *cmdproc; |
|
9193
502707ca1836
[gaim-migrate @ 9988]
Christian Hammond <chipx86@chipx86.com>
parents:
9158
diff
changeset
|
72 char *im_user; |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
73 |
| 10602 | 74 MsnSBFlag flag; |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
75 char *auth_key; |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
76 char *session_id; |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
77 |
| 10345 | 78 GaimConversation *conv; /**< The conversation that displays the |
| 79 messages of this switchboard, or @c NULL if | |
| 80 this is a helper switchboard. */ | |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
81 |
| 10403 | 82 gboolean empty; /**< A flag that states if the swithcboard has no |
| 83 users in it. */ | |
| 84 gboolean invited; /**< A flag that states if we were invited to the | |
| 85 switchboard. */ | |
| 86 gboolean ready; /**< A flag that states if this switchboard is | |
| 87 ready to be used. */ | |
| 88 gboolean closed; /**< A flag that states if the switchboard has | |
| 89 been closed by the user. */ | |
| 10773 | 90 gboolean destroying; /**< A flag that states if the switchboard is |
| 91 alredy on the process of destruction. */ | |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
92 |
|
9193
502707ca1836
[gaim-migrate @ 9988]
Christian Hammond <chipx86@chipx86.com>
parents:
9158
diff
changeset
|
93 int current_users; |
|
502707ca1836
[gaim-migrate @ 9988]
Christian Hammond <chipx86@chipx86.com>
parents:
9158
diff
changeset
|
94 int total_users; |
|
502707ca1836
[gaim-migrate @ 9988]
Christian Hammond <chipx86@chipx86.com>
parents:
9158
diff
changeset
|
95 GList *users; |
| 4542 | 96 |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
97 int chat_id; |
|
5351
2aa7e4237142
[gaim-migrate @ 5727]
Christian Hammond <chipx86@chipx86.com>
parents:
5309
diff
changeset
|
98 |
| 10481 | 99 GQueue *msg_queue; /**< Queue of messages to send. */ |
| 10403 | 100 GList *ack_list; /**< List of messages waiting for an ack. */ |
| 10225 | 101 |
| 10451 | 102 MsnSBErrorType error; /**< The error that occurred in this switchboard |
| 10345 | 103 (if applicable). */ |
| 104 MsnSlpLink *slplink; /**< The slplink that is using this switchboard. */ | |
| 4542 | 105 }; |
| 106 | |
| 107 /** | |
|
8808
bbd8cdaf0ad5
[gaim-migrate @ 9570]
Christian Hammond <chipx86@chipx86.com>
parents:
8583
diff
changeset
|
108 * Initialize the variables for switchboard creation. |
|
bbd8cdaf0ad5
[gaim-migrate @ 9570]
Christian Hammond <chipx86@chipx86.com>
parents:
8583
diff
changeset
|
109 */ |
|
bbd8cdaf0ad5
[gaim-migrate @ 9570]
Christian Hammond <chipx86@chipx86.com>
parents:
8583
diff
changeset
|
110 void msn_switchboard_init(void); |
|
bbd8cdaf0ad5
[gaim-migrate @ 9570]
Christian Hammond <chipx86@chipx86.com>
parents:
8583
diff
changeset
|
111 |
|
bbd8cdaf0ad5
[gaim-migrate @ 9570]
Christian Hammond <chipx86@chipx86.com>
parents:
8583
diff
changeset
|
112 /** |
|
bbd8cdaf0ad5
[gaim-migrate @ 9570]
Christian Hammond <chipx86@chipx86.com>
parents:
8583
diff
changeset
|
113 * Destroy the variables for switchboard creation. |
|
bbd8cdaf0ad5
[gaim-migrate @ 9570]
Christian Hammond <chipx86@chipx86.com>
parents:
8583
diff
changeset
|
114 */ |
|
bbd8cdaf0ad5
[gaim-migrate @ 9570]
Christian Hammond <chipx86@chipx86.com>
parents:
8583
diff
changeset
|
115 void msn_switchboard_end(void); |
|
bbd8cdaf0ad5
[gaim-migrate @ 9570]
Christian Hammond <chipx86@chipx86.com>
parents:
8583
diff
changeset
|
116 |
|
bbd8cdaf0ad5
[gaim-migrate @ 9570]
Christian Hammond <chipx86@chipx86.com>
parents:
8583
diff
changeset
|
117 /** |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
118 * Creates a new switchboard. |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
119 * |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
120 * @param session The MSN session. |
| 4542 | 121 * |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
122 * @return The new switchboard. |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
123 */ |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
124 MsnSwitchBoard *msn_switchboard_new(MsnSession *session); |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
125 |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
126 /** |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
127 * Destroys a switchboard. |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
128 * |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
129 * @param swboard The switchboard to destroy. |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
130 */ |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
131 void msn_switchboard_destroy(MsnSwitchBoard *swboard); |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
132 |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
133 /** |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
134 * Sets the auth key the switchboard must use when connecting. |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
135 * |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
136 * @param swboard The switchboard. |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
137 * @param key The auth key. |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
138 */ |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
139 void msn_switchboard_set_auth_key(MsnSwitchBoard *swboard, const char *key); |
| 4542 | 140 |
| 141 /** | |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
142 * Returns the auth key the switchboard must use when connecting. |
| 4542 | 143 * |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
144 * @param swboard The switchboard. |
| 4542 | 145 * |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
146 * @return The auth key. |
| 4542 | 147 */ |
|
9193
502707ca1836
[gaim-migrate @ 9988]
Christian Hammond <chipx86@chipx86.com>
parents:
9158
diff
changeset
|
148 const char *msn_switchboard_get_auth_key(MsnSwitchBoard *swboard); |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
149 |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
150 /** |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
151 * Sets the session ID the switchboard must use when connecting. |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
152 * |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
153 * @param swboard The switchboard. |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
154 * @param id The session ID. |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
155 */ |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
156 void msn_switchboard_set_session_id(MsnSwitchBoard *swboard, const char *id); |
| 4542 | 157 |
| 158 /** | |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
159 * Returns the session ID the switchboard must use when connecting. |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
160 * |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
161 * @param swboard The switchboard. |
| 4542 | 162 * |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
163 * @return The session ID. |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
164 */ |
|
9193
502707ca1836
[gaim-migrate @ 9988]
Christian Hammond <chipx86@chipx86.com>
parents:
9158
diff
changeset
|
165 const char *msn_switchboard_get_session_id(MsnSwitchBoard *swboard); |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
166 |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
167 /** |
| 10345 | 168 * Sets whether or not we were invited to this switchboard. |
| 4542 | 169 * |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
170 * @param swboard The switchboard. |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
171 * @param invite @c TRUE if invited, @c FALSE otherwise. |
| 4542 | 172 */ |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
173 void msn_switchboard_set_invited(MsnSwitchBoard *swboard, gboolean invited); |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
174 |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
175 /** |
| 10345 | 176 * Returns whether or not we were invited to this switchboard. |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
177 * |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
178 * @param swboard The switchboard. |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
179 * |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
180 * @return @c TRUE if invited, @c FALSE otherwise. |
|
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
181 */ |
|
9193
502707ca1836
[gaim-migrate @ 9988]
Christian Hammond <chipx86@chipx86.com>
parents:
9158
diff
changeset
|
182 gboolean msn_switchboard_is_invited(MsnSwitchBoard *swboard); |
| 4542 | 183 |
| 184 /** | |
| 185 * Connects to a switchboard. | |
| 186 * | |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
187 * @param swboard The switchboard. |
|
9158
c30d81b4dd22
[gaim-migrate @ 9942]
Christian Hammond <chipx86@chipx86.com>
parents:
8808
diff
changeset
|
188 * @param host The switchboard server host. |
|
c30d81b4dd22
[gaim-migrate @ 9942]
Christian Hammond <chipx86@chipx86.com>
parents:
8808
diff
changeset
|
189 * @param port The switcbharod server port. |
| 4542 | 190 * |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
191 * @return @c TRUE if able to connect, or @c FALSE otherwise. |
| 4542 | 192 */ |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
193 gboolean msn_switchboard_connect(MsnSwitchBoard *swboard, |
|
8583
fc27237783ee
[gaim-migrate @ 9333]
Christian Hammond <chipx86@chipx86.com>
parents:
8475
diff
changeset
|
194 const char *host, int port); |
| 10345 | 195 |
| 196 /** | |
| 197 * Disconnects from a switchboard. | |
| 198 * | |
| 199 * @param swboard The switchboard to disconnect from. | |
| 200 */ | |
|
9193
502707ca1836
[gaim-migrate @ 9988]
Christian Hammond <chipx86@chipx86.com>
parents:
9158
diff
changeset
|
201 void msn_switchboard_disconnect(MsnSwitchBoard *swboard); |
| 10345 | 202 |
| 10403 | 203 /** |
| 204 * Closes the switchboard. | |
| 205 * | |
| 206 * Called when a conversation is closed. | |
| 207 * | |
| 208 * @param swboard The switchboard to close. | |
| 209 */ | |
| 210 void msn_switchboard_close(MsnSwitchBoard *swboard); | |
| 211 | |
| 10481 | 212 /** |
| 10773 | 213 * Release a switchboard from a certain function. |
| 214 * | |
| 215 * @param swboard The switchboard to release. | |
| 216 * @param flag The flag that states the function. | |
| 217 * | |
| 218 * @return @c TRUE if the switchboard was closed, @c FALSE otherwise. | |
| 219 */ | |
| 220 gboolean msn_switchboard_release(MsnSwitchBoard *swboard, MsnSBFlag flag); | |
| 221 | |
| 222 /** | |
| 10481 | 223 * Returns whether or not we currently can send a message through this |
| 224 * switchboard. | |
| 225 * | |
| 226 * @param swboard The switchboard. | |
| 227 * | |
| 228 * @return @c TRUE if a message can be sent, @c FALSE otherwise. | |
| 229 */ | |
| 230 gboolean msn_switchboard_can_send(MsnSwitchBoard *swboard); | |
| 231 | |
| 232 /** | |
| 233 * Sends a message through this switchboard. | |
| 234 * | |
| 235 * @param swboard The switchboard. | |
| 236 * @param msg The message. | |
| 237 * @param queue A flag that states if we want this message to be queued (in | |
| 238 * the case it cannot currently be sent). | |
| 239 * | |
| 240 * @return @c TRUE if a message can be sent, @c FALSE otherwise. | |
| 241 */ | |
| 242 void msn_switchboard_send_msg(MsnSwitchBoard *swboard, MsnMessage *msg, | |
| 243 gboolean queue); | |
|
5309
e2e53316a21d
[gaim-migrate @ 5681]
Christian Hammond <chipx86@chipx86.com>
parents:
5166
diff
changeset
|
244 |
|
9193
502707ca1836
[gaim-migrate @ 9988]
Christian Hammond <chipx86@chipx86.com>
parents:
9158
diff
changeset
|
245 gboolean msn_switchboard_chat_leave(MsnSwitchBoard *swboard); |
|
502707ca1836
[gaim-migrate @ 9988]
Christian Hammond <chipx86@chipx86.com>
parents:
9158
diff
changeset
|
246 gboolean msn_switchboard_chat_invite(MsnSwitchBoard *swboard, const char *who); |
|
502707ca1836
[gaim-migrate @ 9988]
Christian Hammond <chipx86@chipx86.com>
parents:
9158
diff
changeset
|
247 |
|
502707ca1836
[gaim-migrate @ 9988]
Christian Hammond <chipx86@chipx86.com>
parents:
9158
diff
changeset
|
248 void msn_switchboard_request(MsnSwitchBoard *swboard); |
|
502707ca1836
[gaim-migrate @ 9988]
Christian Hammond <chipx86@chipx86.com>
parents:
9158
diff
changeset
|
249 void msn_switchboard_request_add_user(MsnSwitchBoard *swboard, const char *user); |
| 4542 | 250 |
| 251 /** | |
| 10481 | 252 * Processes peer to peer messages. |
| 4542 | 253 * |
|
9193
502707ca1836
[gaim-migrate @ 9988]
Christian Hammond <chipx86@chipx86.com>
parents:
9158
diff
changeset
|
254 * @param cmdproc The command processor. |
|
502707ca1836
[gaim-migrate @ 9988]
Christian Hammond <chipx86@chipx86.com>
parents:
9158
diff
changeset
|
255 * @param msg The message. |
| 4542 | 256 */ |
|
9193
502707ca1836
[gaim-migrate @ 9988]
Christian Hammond <chipx86@chipx86.com>
parents:
9158
diff
changeset
|
257 void msn_p2p_msg(MsnCmdProc *cmdproc, MsnMessage *msg); |
| 10481 | 258 |
| 259 /** | |
| 260 * Processes emoticon messages. | |
| 261 * | |
| 262 * @param cmdproc The command processor. | |
| 263 * @param msg The message. | |
| 264 */ | |
|
9193
502707ca1836
[gaim-migrate @ 9988]
Christian Hammond <chipx86@chipx86.com>
parents:
9158
diff
changeset
|
265 void msn_emoticon_msg(MsnCmdProc *cmdproc, MsnMessage *msg); |
| 10481 | 266 |
| 267 /** | |
| 11321 | 268 * Processes nudge messages. |
| 269 * | |
| 270 * @param cmdproc The command processor. | |
| 271 * @param msg The message. | |
| 272 */ | |
| 273 void msn_nudge_msg(MsnCmdProc *cmdproc, MsnMessage *msg); | |
| 274 | |
| 275 /** | |
| 10481 | 276 * Processes INVITE messages. |
| 277 * | |
| 278 * @param cmdproc The command processor. | |
| 279 * @param msg The message. | |
| 280 */ | |
|
9193
502707ca1836
[gaim-migrate @ 9988]
Christian Hammond <chipx86@chipx86.com>
parents:
9158
diff
changeset
|
281 void msn_invite_msg(MsnCmdProc *cmdproc, MsnMessage *msg); |
| 4542 | 282 |
| 283 #endif /* _MSN_SWITCHBOARD_H_ */ |
