view README @ 7011:4375bf2d9020

[gaim-migrate @ 7574] The user-visible changes? Gaim now shows peep's away messages in their tooltip for AIM over oscar. Things to do: -Make sure this doesn't screw up with huge buddy lists -Replace %n with your screen name, etc. in the tooltip -Leave in b, i, u tags in the tooltip -Fix the 2 8 byte memleaks in locate.c Client authors that aren't me will want to read the following pretty closely... I made some internal libfaim changes. I desire to make libfaim cleaner. I don't know if this really helps or not. Here's what I've done: Changed all the SNAC-sending functions in info.c to NOT take a conn argument. The connection is looked up from the session. I'm trying to make oscar.c less-aware of connections. Added aim_locate_finduserinfo() - Use for getting the aim_userinfo_t for the given screenname. Added aim_locate_getinfoshort() - Use this to request that the servers send you profile info, away message, caps, or a combination of the above. It's like aim_locate_getinfo() but less rate limited. Renamed aim_bos_reqlocaterights() to aim_locate_reqrights() Renamed aim_getinfo() to aim_locate_getinfo() Renamed aim_setdirectoryinfo() to aim_locate_setdirinfo() Renamed aim_0002_000b() to aim_locate_000b() Renamed aim_setuserinterests() to aim_locate_setinterests() Removed aim_userinfo_sn() Removed aim_userinfo_flags() Removed aim_userinfo_idle() Removed aim_userinfo_warnlevel() Removed aim_userinfo_createtime() Removed aim_userinfo_membersince() Removed aim_userinfo_onlinesince() Removed aim_userinfo_sessionlen() Removed aim_userinfo_hascap() Renamed info.c to locate.c Made locate.c keep a static, linked list of nodes of sn, away message, available message, user info. This list is maintained by libfaim automatically. Now clients don't have to keep track of all this stuff themselves, and users won't have to wait for away message/info retrieval if the person is in your buddy list. libfaim uses the iChat way of retrieving stuff, which is not nearly as rate limited as the old way. I actually have a feeling WinAIM uses the same SNAC now (although I didn't check), but I like pluggin iChat because it's innovative. Moved sess->emailinfo to a static variable inside email.c. Removed evilhack from oscar.c I think that's about everything... committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Mon, 29 Sep 2003 12:30:03 +0000
parents 053b577e08f2
children e64060a18be7
line wrap: on
line source

gaim
========================
Rob Flynn <rob@marko.net> IM: RobFlynn (currnet maintainer)
Syd Logan - Super Hacker and Resident Designated Driver
Jim Duchek <jimduchek@ou.edu> IM: Zilding (former maintainer)
Eric Warmenhoven <eric@warmenhoven.org> (retired)
Mark Spencer <markster@marko.net>

Gaim is an IM client that supports many protocols, including AIM, ICQ,
MSN, IRC, and Jabber. Gaim is NOT endorsed by, nor affiliated with,
AOL nor any other company in ANY way.


BUILD
=====

Read the 'INSTALL' file for more detailed directions.

Gaim uses the standard ./configure ; make. You need to use gmake, BSD
make probably won't work. Remember, run ./configure --help to see what
build options are available.

In order to compile Gaim, you need to have GTK+ 2.0 installed (as
well as the development files!). The configure script will fail if you
don't. You can get it from http://www.gtk.org/.

For sound support, you also need libao
(http://freshmeat.net/projects/libao/) and libaudiofile
(http://www.68k.org/~michael/audiofile/). For spellchecking support, you
need libgtkspell (http://gtkspell.sf.net/). Your distro of choice
probably already includes these, just be sure to install the development
packages.

RUN
===

You should run 'make install' as root to make sure plugins and other files
get installed into locations they want to be in. Once you've done that,
you only need to run 'gaim'.

Protocol plugins (prpls) are now automaticly loaded. Simply to go the
account editor, add a new account, and all supported protocols will be
there. Be sure to use OSCAR (AIM/ICQ) and not the old TOC or ICQ plugins.

Read below for protocol-specific information.


PLUGINS
=======

If you do not wish to enable the plugin support within Gaim, run the
./configure script with the --disable-plugins option and recompile your
source code.  This will prevent the ability to load plugins.

'make install' puts the plugins in $PREFIX/lib/gaim (PREFIX being what
you specified when you ./configure'd - it defaults to /usr/local). Gaim
looks for the plugins in that directory by default, but they do not have
to be there to use them. Also, plugins have a .so extension by default,
though they do not have to.

To build a plugin from a .c file, put it in the plugins/ directory in
the source and run 'make filename.so', e.g. if you have the .c file
'kickass.c', put it in the plugins/ directory, and from that directory,
run 'make kickass.so'.


NOTES
=====

If you manually set a command for your browser or sound player options,
make sure to put double-quotes around the "%s", otherwise bad things may
happen.

If you come across a bug, please report it to http://gaim.sf.net/bug.php.

See README.CVS for information on the bleeding edge CVS version of Gaim.
You probably shouldn't use it, as it may eat your children, as well as
your settings.


PROTOCOL INFORMATION
====================

Each protocol is hacked by both Rob and Eric, though there is one person
that kind of "owns" a protocol (mostly indicating that they were the
person that originally wrote it). Their name will be next to the protocol;
they're the people to complain to when something doesn't work ;).


TOC (Rob)
===

You shouldn't use TOC, you should use Oscar instead. TOC can sync your
buddy list with the server (if it's not too long), and can respond to file
transfer requests (both sending and receiving). Other than that, there's
nothing it can do that Oscar can't, yet. The TOC protocol doesn't allow
retrieval of away messages; isn't capable of sending or receiving buddy
icons; it also can't make file transfer requests.


Oscar (Mark)
=====

Oscar is the default protocol. It is recommended that you use Oscar for
both AIM and ICQ, as TOC isn't very featureful and the old ICQ protocol no
longer works. 

For AIM, Oscar can get people's away messages. It can request and accept
Direct Connections, and has limited support for file transfer. IM Image 
does not currently work. It can send and receive buddy icons if you have 
GdkPixbuf.

For ICQ, it supports nearly everything that the old ICQ plugin supported,
which isn't much. To use Oscar for ICQ, enter your ICQ UIN as the
screenname. The default host/port will work. You'll need to use a different
client to register a new ICQ account if you don't have one yet.


Yahoo (Sean)
=====

Yahoo is currently using the new YMSG protocol that newer official Yahoo
clients are using. This protocol is much better than the old one, and
tends to be somewhat more reliable. However, the Yahoo service is still
flaky at best. 


IRC (Ethan)
===

There are three ways to join an IRC chat room. The first is the File->Join
A Chat menu option in the Buddy List window. The second is the "Chat"
button at the bottom of the buddy list. The third is to type "/join #name"
in an IM window where the "Send Message As" menu is set to your IRC
account. There are other / commands that work in IM and Chat windows for
IRC, /help will give you a list of them.


MSN (Christian)
===

With MSN you can join a conversation with several people, but you can't
invite people from the IM window yet.


ICQ (Eric)
===

The ICQ plugin is deprecated and will probably be removed soon. The
protocol only marginally works. You should use Oscar for ICQ. You'll
need a different client to register an ICQ account if you don't have
one yet.


Jabber (Nathan)
======

Transports aren't currently supported at all, though if you have a
transport already subscribed Gaim will use it (you can't add or remove
transports though). In order to use a server other than jabber.org, set
your username to include the server, e.g. warmenhoven@mycompany.com. This
is the actual format of the Jabber ID anyway; Jabber is email with online
notification. You'll need to use a different client to register a Jabber
account if you don't have one yet.


Napster (Rob)
=======

Heh.  Ok, so I (Rob) am on crack!  Gaim can sign on/off of Napster,
add/remove people to your hotlist (buddylist) as well as chat privately
and in chat rooms.  You can search for files and browse a list of other
user's files.  You can currently download files as long as the person
you're retrieving files from is not firewalled.


Zephyr (Eric)
======

Let me start off by saying how much I really despise Zephyr. They do a
lot of things that make me realize why this never caught on. For those
of you who are unfortunate enough to feel compelling need to use this,
gaim now has a Zephyr plugin. It can currently sign on/off, handles
presence/buddy lists (it even imports your .anyone file!), and can
send/receive personal messages. A lot of stuff is missing, this is just
a real rough first stab at it.


Gadu-Gadu (Eric)
=========

I really shouldn't be taking credit for Gadu-Gadu, I'm just the person who
commits the patches that Arkadiusz Miskiewicz gives me. Gadu-Gadu is an IM
system most similar to ICQ that is quite popular in Poland. It can manage
your server-side buddy list through the Protocol Actions menu. You'll need
to use a different client to register a new account if you don't have one
yet.