view src/protocols/msn/switchboard.h @ 4916:d9b6b5ae34e4

[gaim-migrate @ 5250] Buddy list editing. Does this work? I don't know; I don't test things. It compiles though. It probably does work though, because I'm perfect. So, see, I did really terribly in school last semester (really terribly-- like, why didn't they kick me out terribly) and so I'm working really hard to do well this semester (and I am so far :)). Anyway, that's why you may have noticed I'm a bit slow with the development of late. In fact, I would test and fix this stuff up, but I really need to work on an English paper, so I figured it'd be best just to commit it as is and let Rob, Nathan, Chip and the boys work out the kinks. Besides, I've had most of this code written for weeks already. Thank you all for your patience. Oh, so there's now an Edit menu on your buddy list (which makes the minimum buddy list width wider :-D) and here you'll find things with which to edit your list and privacy, prefs and accounts. It should all be real intuitive. Feel free to IM me if you want to talk about my paper. committer: Tailor Script <tailor@pidgin.im>
author Sean Egan <seanegan@gmail.com>
date Mon, 31 Mar 2003 07:19:46 +0000
parents 86b0a0243be8
children cab5cd204956
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_

struct msn_switchboard {
	struct gaim_connection *gc;
	struct gaim_conversation *chat;
	int fd;
	int inpa;

	char *rxqueue;
	int rxlen;
	gboolean msg;
	char *msguser;
	int msglen;

	char *sessid;
	char *auth;
	uint32_t trId;
	int total;
	char *user;
	GSList *txqueue;
};

/**
 * Finds a switch with the given username.
 *
 * @param gc       The gaim connection.
 * @param username The username to search for.
 *
 * @return The switchboard, if found.
 */
struct msn_switchboard *msn_find_switch(struct gaim_connection *gc,
										const char *username);

/**
 * Finds a switchboard with the given chat ID.
 *
 * @param gc      The gaim connection.
 * @param chat_id The chat ID to search for.
 *
 * @return The switchboard, if found.
 */
struct msn_switchboard *msn_find_switch_by_id(struct gaim_connection *gc,
											  int chat_id);

/**
 * Finds the first writable switchboard.
 *
 * @param gc The gaim connection.
 *
 * @return The first writable switchboard, if found.
 */
struct msn_switchboard *msn_find_writable_switch(struct gaim_connection *gc);

/**
 * Connects to a switchboard.
 *
 * @param gc   The gaim connection.
 * @param host The hostname.
 * @param port The port.
 *
 * @return The new switchboard.
 */
struct msn_switchboard *msn_switchboard_connect(struct gaim_connection *gc,
												const char *host, int port);

/**
 * Kills a switchboard.
 *
 * @param ms The switchboard to kill.
 */
void msn_kill_switch(struct msn_switchboard *ms);

void msn_rng_connect(gpointer data, gint source, GaimInputCondition cond);

#endif /* _MSN_SWITCHBOARD_H_ */