Chapter 12. Address Book

12.1. Adding and Deleting Addresses
12.2. Folders and Groups
12.3. Combination with Message Composition Window
12.4. Using your PDA addressbook (with Jpilot)
12.5. LDAP server connection

In the address book, accessible through Shift-Ctrl-A, the Addressbook button, or through the "Tools" menu, you store e-mail addresses of the people and places you want to write more often.

If the options have been compiled into Sylpheed, the address book can connect to a LDAP server for address lookup, and you can use the address book stored on your Palm PDA.

12.1. Adding and Deleting Addresses

Adding an address to the address book is quite easy too. Rightclick the folder or group you want to add the address to, select "new address" and fill in the dialog that comes up. You can also directly click the Add button in the address book window, and the dialog comes up. In this case the address is moved into the folder/group that is selected at the moment of adding.

In the "Basic data" tab, you can fill the first and last name and provide a nickname. The "Display name" will be used by the "Name" column of the address book window.

In the "E-Mail address" tab, fill the address field and use the "Add" button to add the address to the list. An alias can also be assigned to this address and used when searching for an address. Several addresses can be assigned to the same person in your address book by repeating the sequence described above. The addresses can then be sorted by using the "Move up" and "Move down" buttons. The address on the top will be the first one listed in the address book main window.

Deleting an address is equally simple. Find the address, click it once, and press the Delete button.

12.2. Folders and Groups

You can use groups and folders to organize your address book into categories, hierarchies and aliases. The folders are used to generate a hierarchical organization and contain the actual addresses, while the groups are used to group together addresses that lives in separate folders.

Sounds complicated, so let's see an example: consider your workmates, they are arnaud (arnaud@company.com), sandra (sandra@company.com), xavier (xavier@company.com) and the chief, helene (helene@company.com). You can create a folder named myGroup, create the entries for all your workmates in this folder. Now you can create one groupe named jokes that includes all but the boss to use when sending your daily jokes, another one named team that includes everybody for the usual group (serious) communication, and a third group named reports that includes the boss, and the one working with you on some projects for the weekly reports.

To generate this kind of addresses organization you only need to create the entries once, then when creating groups you can select among the existing entries to fill the groups.

The address book, like the mail folders, can be expanded into an entire tree of sections. For this you right-click on the folder where you want to add a new folder, and select "new folder". Then you can enter a descriptive name for the folder, click Ok, and your folder is created.

In this same way you can create a new group in a folder. Right-click on the folder, select "new group", enter a name for it, and that's it.

The group settings window pops up in order to fill the group with addresses. Use the two arrows to add to or remove from the group the selected address. Once the group contains the list of addresses you want it to contain, click the "OK" button to close the window.

12.3. Combination with Message Composition Window

You can either enter the first letters of an address (or alias) in the To: or Cc: field of the composition window and press the TAB key to let Sylpheed do the completion or open the address book, select addresses from there and use the To: and Cc: buttons to copy the selected addresses into the corresponding fields of the composition window.

When using the completion mode, when one or more address matches the start you have entered, a dropdown list appears. Select the correct address from this list and press enter to complete the composition window's field.

In completion mode, the search is made on the E-mail address and on the alias. The other fields of the address book entry are not used (name, nickname,...).

When the address book is opened, if you select a group, using the To: or Cc: buttons will copy all the addresses of the selected group into the corresponding field of the composition window.

Using our previous example, you can select the jokes group when sending you morning jokes, and the reports one when sending your weekly reports...

12.4. Using your PDA addressbook (with Jpilot)

Sylpheed can optionally use your PDA addressbook. This option is available if you have compiled Sylpheed with the support of Jpilot. For more details regarding the compilation of Sylpheed with (or without) optional features, see the compilation section.

Sylpheed uses the Jpilot side copy of your address book, so you do not need to put your PDA on the craddle to find an address (but do not forget to synchronize).

In order to use your PDA's addressbook in Sylpheed, open the addressbook window, select the JPilot icon in the left tree view, use the File -> New Jpilot menu entry and choose a name for this addressbook. Define the name of the Jpilot addressbook file (usually in: ~/.jpilot/AddressDB.pdb) and press OK. You can use one (or more) of the custom fields to store alternate Email addresses for the same person.

Now you can browse your PDA addressbook. Sylpheed only has read access to this addressbook, so you can't modify your PDA addressbook from Sylpheed.

12.5. LDAP server connection

Contributed by Tom Hollins.

In order to add an LDAP server to the sylpheed program, you will click on the Tools menu item, then click on Address book. Sylpheed will open the address book window. Select (click once) the LDAP Server line located in the left window pane of the address book. Now Click on the File menu item. Click on the New server menu item. Sylpheed opens a dialog box with standard LDAP text entry boxes.

We'll assume you work for Spacely Sprockets Corporation. This will be used in the examples below.

The NAME line is the name you want to give to the LDAP server. It can be anything but you should select, roughly the one that helps you to identify it quickly. If you are doing this at a company, just enter "Spacely LDAP" without the quotation marks.

The HOSTNAME line is the human name of the server from the DNS lookup entry, OR the IP address of the LDAP server (important if the LDAP server is used for authentication). So your company may have a server called ldap.spacely.com. Your company may use something like 10.0.0.200. Either of these should work. NOTE: if you are a home user, you can specify "localhost" (no quotes) or 127.0.0.1 as your hostname if your LDAP server runs on the same machine as your mail client. Sylpheed automatically assumes a local configuration and does this for you. I include this in case your configuration is changing back to a local.

The PORT entry shouldn't have to be modified unless your IT department has changed this. The normal port for LDAP is 389.

The SEARCH BASE text entry need not concern you since you can click the Check Server button on this dialog box. After clicking this button the SEARCH BASE will be automatically filled in. The following paragraph gets technical and can be skipped for the faint of heart.

For the sake of clarity, this is the DN (distinguished name) of the LDAP server with only the DC entries. So for our example the LDAP server has been setup with a DN = dc=spacely, dc=com. We would type into the SEARCH BASE line (without quotes) "dc=spacely, dc=com". I hope this is clear for the technically minded.

If your LDAP server allows anonymous binding and you do not have "virtual" LDAP domains then you should be able to click on the OK button. Now click once on the entry for your server so that it becomes highlighted. Click once in the NAME text entry field below the right pane. Enter someone's first name. Click once on the Lookup button. It should work. Below the lookup button is a status line which will tell you whether you have an error or not. Also, while it is searching it will blink (a good sign because this means the login to the server worked). If it does work you can skip the rest of this discussion.

If your LDAP server does not allow anonymous binding then you will need to look at the top of the dialog box and find the "tab" marked Extended and click it once. You may need to enter the top level DN because you may have an LDAP server which is setup with multiple virtual domains. Your IT guy needs to get involved here by telling you what the DN really is along with, maybe, its password. It really depends upon how it is setup. Maybe the DN includes a CN (common name). So for our example (and in the OpenLDAP examples) you have entered a DN = cn=manager, dc=spacely, dc=com. In the BIND DN text entry box enter (without quotes) "cn=manager, dc=spacely, dc=com". In the PASSWORD text entry box enter just the password itself no equals sign or anything. Click the OK and try the test lookup above.

If you are still experiencing a problem, then it may be the search criteria you are using or the attributes used by your LDAP server.

The attributes" of the server are "field names" that are being searched. The acceptable fields are automatically entered for the Sylpheed defaults, and they are (&(mail=*)(cn=%s*)). I will use words to now describe that line, just in case it is hard for you to figure out what is entered here: left open parenthesis, ampersand, left open parenthesis, the word mail (or any attribute in LDAP speak or called field in database speak), an equal sign, an asterisk (means search all), right closing parenthesis, left open parenthesis, the letters "cn", an equal sign,a percent sign, the letter "s", an asterisk, right closing parenthesis, right closing parenthesis. While not necessarily the best criteria it should work, but only if your IT department has formatted the Common Name (CN) the way you are searching for it. The entry essentially states "search on ALL email addresses, and the common name starts with" (whatever you have typed into the lookup field). Another way to test this is to work through the alphabet and enter one character only, and see if this retrieves some entries. Once you see some entries you will understand how to effectively search. If this doesn't work then you will need to get someone from your IT department involved. The "mail" or "cn" either isn't used in a normal way, doesn't exist, or it is stored some way that can not be debugged in a document like this one.

Additional searching for people who get some results but not exactly what they want: Try using and asterisk before your search criteria. This will say to the LDAP server "I want you to return all entries where this text exists anywhere in the CN field". By now you should realize that if you are entering this asterisk all the time then you right click your LDAP server entry in the left pane and choose Edit from the pop-up menu. Click on the Extended tab and change that first line to have an asterisk before the percent sign. I use this since I don't always know whether the name was entered as a formal name like Thomas or informal like Tom.

If you still can't do anything with LDAP then there is a proxy between you and the LDAP server that your IT department has to address, or there is something about the "attributes" (fields) of your LDAP database you will need to enter into that extended tab of the LDAP server edit dialog box.