EVERYBUDDY(1)

NAME
everybuddy - Universal Instant Messaging client

SYNOPSIS

everybuddy

DESCRIPTION
This man page documents Everybuddy, version 0.1.2.

Everybuddy is designed to become a Universal Instant Messaging client designed to seamlessly integrate all existing Instant Messaging clients and provide a single consistent user interface.

Currently, Everybuddy supports AIM, ICQ, Yahoo, and MSN. Support for IRC is planned.

The following sections describe how to use Everybuddy.

Nomenclature
    Definition of terms used in Everybuddy (and this page)

Accounts
    How to use your online messenger accounts.

Contact list
    How to use and edit your contact list.

Communication
    How to send instant messages and files.

Preferences
    What the preferences do.

NOMENCLATURE
Here's a quick overview of the naming conventions used in Everybuddy.

ACCOUNT
    An account has two parts. There is a service and a handle. The common way for describing an account will be TOC/Zilding or ICQ/12345678.

CONTACT
    A contact is the representation of a real person, comprised of an identifying nickname nad a collection of accounts that the person has.

HANDLE
    A handle is how a person can be referred to while logged into a service. On AIM, an example of a handle would be Zilding. On ICQ, an example of a handle would be 12345678.

SERVICE
    A service is a protocol and a server. For example, the AIM service uses the TOC protocol (or Oscar...) and the server toc.oscar.aol.com. The reason the separation is made between the protocol and the server is that it is possible, in the future, that (if there are many open protocols) there may be several separate servers with the same protocol (or one server supporting multiple protocols) , and they will be considered separate services.

ACCOUNTS
The first time you start Everybuddy, you will be presented with a dialog box. Select a server, either AIM, ICQ, Yahoo or MSN. Then enter your AIM screen name, ICQ UIN, Yahoo Username, or MSN User Name in the Handle field and enter the password in the Passowrd field. To add multiple accounts, click the Add button. You must use existing accounts, because Everybuddy does not yet support creating accounts. You may add accounts later by selecting Edit Accounts from the Tools menu.

CONTACT LIST
The Everybuddy contact list contains Groups, Contacts, and Accounts. A Group is a collection of Contacts. A Contact is a person, who has one or more Accounts.

You may import contact lists from some other instant messaging clients by selecting Import from the File menu. You can also edit your contact list under the Edit Contacts tab.

To add a new contact, under the Edit Contacts tab, click on the Add button. In the Add Contact dialog: In the Protocol field, select the service, AIM, ICQ, Yahoo, or MSN, that their account is on. Enter their online handle in the Account field. Select the group you would like them to be a member of in the Group field. Enter their name in the Contact field. (You can create a new group or contact on the fly by typing into the Group and Contact fields instead of selecting one of the options.) By default, the Contact will be the same as the Account, but it does not have to be. Click on the Add button in the Add Contact dialog.

To add an account to an existing contact, under the Edit Contacts tab, click on the Add button. Fill in the Protocol, Account, and Group fields as above, and select the contact's name in the Contact field. Click on the Add button in the Add Contact dialog.

To create a new group, add a new account as above, and instead of selecting an existing group in the Group field, enter the name of the group you wish to create.

To delete a group, contact, or account, click on its name in the Edit Contacts tab, then click on the Remove button.

The default protocol is the protocol (AIM, ICQ, Yahoo or MSN) that Everybuddy will try first when communicating with a contact. You can change this by double clicking on the name of the contact in Edit Contacts tab.

COMMUNICATION
The Status tab shows your contact list, either all of them or only the contacts who are online, depending on the Online Only and Show All buttons. Idle and Away status are also shown for each account.

  Messages
To send a message to a contact, double click on the contact or account under the Status tab, and type your message in the field at the bottom of the conversation window. Messages received from a contact will use the existing conversation window with the contact or will open a new one if it does not exist. If the Ignore unknown users option is selected, messages from an unknown person will be ignored. Otherwise, such messages will add the unknown person to your contact list in the Unknown group, and will open a conversation window with an Add button, which you can click on to add them to your contact list.

  Files
To send a file to a contact, right click on the contact or account under the Status tab, select Send File, choose a file to send in the file selection window, and click on OK. Currently, file sending only works between two Everybuddy clients. And even then, it usually requires great amounts of incense and several holy prayer rituals to ensure successful file transmission.

  Group Chat
To join a group chat, select Group Chat from the Tools menu, select the Service Type, and enter the name of the chat room, then click Join.

To create a new chat room, do the above, and enter a new name in the Chat Room Name field.

Invite users with the Invite User button in the chat room window that will appear.

To leave the chat room, close its window.

PREFERENCES
The preferences are accessed by selecting Preferences from the Tools menu.

  Logs
The Log all conversations option logs all sent and received messages to ~/.everybuddy/logs/.

AIM messages contain formatting and font information as HTML. Set Strip HTML tags to keep these out of the logs.

  Sound
Set Enable sounds for sending/recieving messages to hear a sound every time you send or receive a message. (Gosh, imagine that.)

Set Enable signon/signoff sounds to play a sound every time someone in your contact list logs on or off of their service.

  Chat
Set Send idle/away status to servers if you want the servers and other users to know when you've been idle.

Set Raise wndow on incomming message if you want the conversation window (if one exists) for a contact to be raised automatically when they send a message.

Set Timestamp when a user logs on/off if you want the conversation window (if one exists) for a contact to reflects timestamps from the remote party logging on or off of their service.

Set Ignore unknown users if you want to ignore all messages from Unknown users. Note that if you set this option, the Unknown group will be hidden as well.

Set Enable multi-line chat for a multi-line input window.

When Press enter to send is not set, messages are sent with Enter, and newlines are typed with Shift-Enter. When it is set, messages are sent with Ctrl-Enter and newlines are typed with Enter. This option only affects multi-line chat. Set Timestamps on Messages to show timestamps for messages in the conversation window.

  Connections
This section allows you to set the servers to use for each service. You probably do not have to change these.

  Proxy
If you aren't behind a firewall, set Direct Connection. Otherwise, set either Use HTTP Proxy or Use SOCKS5 Proxy and enter the Proxy Server and Proxy Port. If you are unsure of these settings, ask your system administrator. Note: Not all services are available through proxy, please see the README for details.

FILES
$(HOME)/.everybuddy/accounts - information about your accounts
$(HOME)/.everybuddy/contacts - contact/buddy list
$(HOME)/.everybuddy/files/ - storage of received files
$(HOME)/.everybuddy/logs/ - conversation logs
$(HOME)/.everybuddy/prefs - preferences

BUGS
Everybuddy is in very early stages of development, so it is not completely stable and some features of the underlying services are not yet supported.

BUG REPORTS
If you find a bug in Everybuddy, please send electronic mail to everybuddy@valhalla.marko.net. Please include your operating system and its version, the version of Everybuddy, and the C compiler you used to compile it.

Before sending a bug report, please verify that you have the latest version of Everybuddy. Many bugs (major and minor) are fixed at each release, and if yours is out of date, the problem may already have been solved.

Bug reports that include diffs to correct them get higher priority than those that do not.

SEE ALSO
http://www.everybuddy.com/

LICENSE
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

AUTHORS
The authors of Everybuddy are:

Torrey Searle <tsearle@uci.edu>
Jim Duchek <jimduchek@ou.edu>
Rob Flynn <rflynn@blueridge.net>
Ben Rigas <ben@american-computer.net>
Jeramey Crawford <jacrawf@marko.net>
Jeff Miller <jm9468@cnsvax.albany.edu>
Jared Peterson <jared@web-feats.net>
Troy Morrison <troy@akropolys.com>

The manpage was written by Laurel Fan <lf25@andrew.cmu.edu>.

ACKNOWLEDGEMENTS
Special thanks to Mark Spencer, initial creator of GAIM, for all of the tremendous support he has given.

Everybuddy uses the following excellent libraries:

libmsn
    For the MSN service, written by Shane P. Brady for EveryBuddy.

libicq
    For the ICQ service, from http://www.korsoft.com/gicq/

yahoolib
    For the Yahoo service, from http://www.unixtools/gtkyahoo/

libtoc
    For the AIM service, written by Torrey Searle specifically for Everybuddy.