Mercurial > pidgin.yaz
view src/protocols/msn/switchboard.h @ 8171:d0ba2f7b40e7
[gaim-migrate @ 8884]
Committing one of shx's MSN patches, which splits off the Nexus connection
code into nexus.[ch] and cleans it up a bit.
committer: Tailor Script <tailor@pidgin.im>
author | Christian Hammond <chipx86@chipx86.com> |
---|---|
date | Tue, 27 Jan 2004 04:46:05 +0000 |
parents | 5de4d9a4e0e2 |
children | 06f57183e29f |
line wrap: on
line source
/** * @file switchboard.h MSN switchboard functions * * gaim * * Copyright (C) 2003 Christian Hammond <chipx86@gnupdate.org> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ #ifndef _MSN_SWITCHBOARD_H_ #define _MSN_SWITCHBOARD_H_ typedef struct _MsnSwitchBoard MsnSwitchBoard; #include "conversation.h" #include "msg.h" #include "msnslp.h" #include "servconn.h" #include "user.h" struct _MsnSwitchBoard { MsnServConn *servconn; MsnUser *user; char *auth_key; char *session_id; gboolean invited; GaimConversation *chat; gboolean in_use; int total_users; gboolean msg; int msglen; int chat_id; int trId; gboolean hidden; MsnSlpSession *slp_session; }; /** * Creates a new switchboard. * * @param session The MSN session. * * @return The new switchboard. */ MsnSwitchBoard *msn_switchboard_new(MsnSession *session); /** * Destroys a switchboard. * * @param swboard The switchboard to destroy. */ void msn_switchboard_destroy(MsnSwitchBoard *swboard); /** * Sets the user the switchboard is supposed to connect to. * * @param swboard The switchboard. * @param user The user. */ void msn_switchboard_set_user(MsnSwitchBoard *swboard, MsnUser *user); /** * Returns the user the switchboard is supposed to connect to. * * @param swboard The switchboard. * * @return The user. */ MsnUser *msn_switchboard_get_user(const MsnSwitchBoard *swboard); /** * Sets the auth key the switchboard must use when connecting. * * @param swboard The switchboard. * @param key The auth key. */ void msn_switchboard_set_auth_key(MsnSwitchBoard *swboard, const char *key); /** * Returns the auth key the switchboard must use when connecting. * * @param swboard The switchboard. * * @return The auth key. */ const char *msn_switchboard_get_auth_key(const MsnSwitchBoard *swboard); /** * Sets the session ID the switchboard must use when connecting. * * @param swboard The switchboard. * @param id The session ID. */ void msn_switchboard_set_session_id(MsnSwitchBoard *swboard, const char *id); /** * Returns the session ID the switchboard must use when connecting. * * @param swboard The switchboard. * * @return The session ID. */ const char *msn_switchboard_get_session_id(const MsnSwitchBoard *swboard); /** * Sets whether or not the user was invited to this switchboard. * * @param swboard The switchboard. * @param invite @c TRUE if invited, @c FALSE otherwise. */ void msn_switchboard_set_invited(MsnSwitchBoard *swboard, gboolean invited); /** * Returns whether or not the user was invited to this switchboard. * * @param swboard The switchboard. * * @return @c TRUE if invited, @c FALSE otherwise. */ gboolean msn_switchboard_is_invited(const MsnSwitchBoard *swboard); /** * Connects to a switchboard. * * @param swboard The switchboard. * @param server The server. * @param port The port. * * @return @c TRUE if able to connect, or @c FALSE otherwise. */ gboolean msn_switchboard_connect(MsnSwitchBoard *swboard, const char *server, int port); /** * Disconnects from a switchboard. * * @param swboard The switchboard. */ void msn_switchboard_disconnect(MsnSwitchBoard *swboard); /** * Sends a message to a switchboard. * * @param swboard The switchboard. * @param msg The message to send. * * @return @c TRUE if successful, or @c FALSE otherwise. */ gboolean msn_switchboard_send_msg(MsnSwitchBoard *swboard, MsnMessage *msg); /** * Sends a command to the switchboard. * * @param swboard The switchboard. * @param command The command. * @param params The parameters. * * @return @c TRUE if successful, or @c FALSE otherwise. */ gboolean msn_switchboard_send_command(MsnSwitchBoard *swboard, const char *command, const char *params); #endif /* _MSN_SWITCHBOARD_H_ */