More Address Book Stuff
Novell Cool Solutions: Feature
By Daren Deadmond
Digg This -
Posted: 3 Jun 1999
So you thought you knew everything about the GroupWise Address Book? Well, there's more, lots more. For starters, there's a way to import non-Novell address books. It may not be pretty (not yet, anyway), but you can get those entries in there. And how about LDAP? You can now use the GroupWise Address Book to look up addresses in a foreign (Internet) address book, like Four11, Bigfoot, and others. The GroupWise Address Book is so useful, we'll put out more articles whenever we have room, so don't go away. Sometimes we'll get into the nitty gritty (like this time), and sometimes we'll give you the pretty stuff (like last time). But we'll always give you the good stuff.
How to Import Non-Novell Address Books
We often hear from readers who want to import non-Novell address books into GroupWise. In fact, here is just one of the many letters we've received on this subject:
Lawrence D. wrote: I have GW5.1 and would like to import the address book from Eudora Pro 3.01. The Eudora address book is an ASCII file. Also, I would like to import a Pegasus mail address books.
Non-Novell address books (such as Pegasus or MS Mail) can be imported into GroupWise with a little elbow grease and keystroking (spare the duct tape, though). We'll start with a little primer on how Novell address books are formatted (along with a glossary at the end of the article). Once you understand the basic formatting, you can make your address book conform to the Novell format. After you import everything, you're ready to roll.
The Novell Format
Novell address book files are in what's called ANSI delimited format. This format allows each address book entry, and the fields within each entry, to be defined. Each line in the file represents an entry (as long as the line hasn't wrapped), and each field is surrounded by quotation marks and is delimited (separated from the others) by a comma.
Now, take a few deep breaths if you have to. Here's a small example of what this file must look like followed by an example of the address book this delightful file will create:
:::TAGMAP:::0FFE0003:***,3001001E:Name,3A06001E:First Name,3A11001E:Last Name,
"C","The Best Company","The Best","Company",
"R","Conference Room One",,,
Cool, huh? If that format spooked you, we're confident that once you get in and tinker with it, you'll see that importing address books can be successful.
Here's How You Do the Import
1. Export the address book you want to import from your non-Novell e-mail program.
The address book is saved as a file with an extension that's probably tied to the product name somehow. For example, if you were to export a GroupWise address book, it would be saved with a .NAB extension (NAB stands for Novell Address Book).
2. Open a DOS editor or Notepad, then open the address book file.
You can also open the file in any word processor. This is useful if you need the tools a word processor can give you (search, replace, and so forth). We prefer Notepad or the DOS editor though because they do not wrap the lines (thus keeping each entry on one line) and they're simple.
Now, you want to make this file look like a Novell exported file. An easy way to do this is to export a small Novell address book, then open it in a second copy of Notepad or in a split window of the DOS editor.
3. Copy the first line of a Novell address book file, then add it to the first line of your imported address book file.
This line defines the fields for each entry and the order in which they appear. You can delete fields from this first line if you don't
want to import all of the fields. No matter what, though, the characters up to the first comma must be EXACT for each imported
address book: these characters are:
After that, you have some hex numbers followed by a title. These are the fields of your address book. Notice that each field title follows a comma. The hexadecimal numbers represent the MAPI tags. Some of the fields at the end of the list may share the same hex number (8000001E). Each of these is a user-defined field.
4. Make the entries you want to import mirror the Novell address book's format.
If you look at a Novell address book, you'll notice that each entry starts with C, U, or R. These stand for the following:
c = company entry
u = user entry
r = resource entry
Notice that all the "C" entries come first, followed by "U" and "R." The ordering of entries must be exact if you want User entries to be linked to their organizations and Resource entries to be linked to their owners. Company entries must be defined first in case they are needed inside the User entries. User entries must be second because Resource entries have a user as an owner.
Next, type the information for each field, enclosing the information in quotes, like this:
"Savvy GroupWise User"
Now look at that first line again. The order of the fields in each entry must correspond to the order of the fields in that first line. For
example, if the Name field follows the first comma in the first line, the Name field information must also follow the first comma in the
entry's line, like this:
"U","Savvy GroupWise User",
If you want to leave a field blank for an entry, you have to type the comma. This way you keep the fields lined up, so that, for example, all information following the tenth comma of each entry goes to the same field. There can be spaces inside of the quotes, but you must delete all spaces outside of the quotes.
5. Delete all extra spaces at the end of each line.
6. Save your formatted file.
7. In GroupWise, open the Address Book.
Do you want to import the new address book into its own address book or as part of an existing one?
8. To create a new address book, click the File menu, then click New Book. Type a name, then click OK.
Open the existing book you want to import the names into.
9. Click the File menu, then click Import. Select the address book file, then click OK.
The file is imported. That wasn't so bad. What's next? Well, unless you are super human, you'll probably need to do a little tweaking.
A Little Import Troubleshooting
What? It didn't work? First of all, these things happen, so don't take it personally. In fact, if you can pull this off on the first try, your new nickname is "Pentium," because it takes an attention to detail that only processors and a few gifted mortal souls possess.
My address book didn't import at all. What happened?
It could be that there are null characters in your address book. Null characters will stop the import process. The Novell Address Book reads the first null character as an ending code (i.e., "There's an End code. I'm done importing. Goodbye."). If your import doesn't work, look through your address book file to make sure there are no null characters (hex 0x00) outside the quotes. Unless you have a way of looking at files at the binary level (so you can see if there are any 0x00's), it will be hard to differentiate between null characters and spaces. We suggest you get rid of extra spaces, too (these are spaces outside of quotes). Open your address book file in Notepad, go to the end of each line, and press the right arrow key. If it wraps from the last character to the first character of the next line, you have no extra spaces or characters between lines. Next, check for extra spaces within the lines themselves. Save, then try again.
The import worked, but the E-Mail Address field reads "Accounting." In fact, a lot of my fields have the wrong information. What happened?
It sounds like the commas somehow didn't get lined up. For example, if the E-mail Address field follows the 11th comma, this information must follow the 11th comma for each entry. If an entry is missing a comma somewhere in there, the Novell Address Book won't know it; it only counts the commas. That is how the text for the Department field (the 12th comma in a correct entry of our example) can be placed in the E-mail Address field (the 11th comma in a correct entry).
To check entries, from the Novell Address Book, select an imported name, then click Information.
To repair entries, open the address book file in Notepad or a DOS editor. Make sure the commas in the entries correspond to the commas in the first line of your imported address book. For example, does the field information following the second comma of the entry correspond to the field name following the second comma of the first line?
Import Address Book Glossary
ANSI American National Standards Institute. One of the standard formats for representing characters on a computer. The ANSI character set consists of 256 characters, the first 128 of which are the same as the ASCII characters set.
delimiter A character (such as a comma) that marks the beginning or end of a unit of data.
entry An individual record in an address book. For example, you and the information about you constitute an address book entry. In GroupWise, entries can be users, companies, resources, and groups. Groups are not currently supported in the import/export process.
field The most basic piece of information included in an entry. A group of fields make up an entry. Common fields in Novell address books are First Name, Last Name, Department, E-mail Address, and Phone Number.
file The address book file to be imported.
Hexadecimal A set of numbers with a base of sixteen (hexa = six and decimal = 10) commonly used in computer programming.
line In an ANSI-delimited file, all the field information of an entry is contained on one line.
Non-Novell Address Book An address book exported from a product that is not GroupWise.
null In math, of or pertaining to a set with no members. In an address book file, a character with no meaning other than to give headaches to the one trying to import the file.
[ Top of Page ]
Farzon A. wrote: Ok. Now we have the much awaited GroupWise 5.1. Where is the LDAP support? I know the LDAP server wasn't included in this release but the client support is supposed to. Where is it?
Greg N., Washington, D.C., USA, wrote: We are moving from GW4.1a to GW5 in the next two months. I am looking at a 3rd-party product to integrate the Address Book with a MAPI-compatible component that allows you to query an LDAP server. However, I have heard that the coming GW5.2 will have LDAP support. What will this entail? Will you be able to use the Address Book to query LDAP services without a 3rd party? I am really excited about the possibilities of such a solution, to be able to have company-wide address books queryable from wherever, searchable, and centrally updated.
Well, the GroupWise Address Book just got a whole lot bigger. GroupWise now supports LDAP (Lightweight Directory Access Protocol), the technology necessary to look up addresses in a foreign directory (like Internet address books such as Four11, Bigfoot, InfoSpace, and so on).
Get the Connection
First, you need an LDAP MAPI address book provider. Of the many that work, we like the following:
Nexor's LDAP Address Book Service Provider (located at http://www.nexor.com/).
Please be aware that there may be a fee for certain providers. Regardless, you'll have to download the provider, possibly unzip it, then run the setup program. During the setup, you may be prompted to set some defaults for LDAP and the GroupWise Address Book in the MAPI Services Configuration dialog box. Here's what you need to do at this point:
1. Click the Connection tab, then type the name of your server in the Server Name box.
2. Type your server port in the Server Port box. The default is 389, and most likely this will work.
3. Click the Searching tab, then type the search base in the Search Base text box.
This specifies the level of the directory tree to use as the root for any search operations.
To access the MAPI Services Configuration dialog box from the GroupWise Address Book, click the File menu, then click Services. Click the information service you just added, then click Properties.
Next, you want Name Completion to search the foreign address book after it searches the Frequent Contacts address book. To set this up, do this:
1. Open the GroupWise Address Book.
2. Click File, then click Define Search Order.
3. Click the Selected Books radio button.
4. From the Available Books list box, click the foreign address book, then click Add.
5. If necessary, click the foreign address book again from the Selected list box, then click Up until the address book is at the top of the list.
If you want to search the foreign address book before the Frequent Contacts address book, you will need to close the Frequent Contacts address book. This will come in handy if you want to use LDAP to search for a user that is already in your Frequent Contacts address book.
Using LDAP From Within GroupWise
1. Start typing in the To: box or the Address Book Name box of the LDAP address book tab, then press Ctrl+Enter.
If you type in part of a name and GroupWise completes the name for you by adding highlighted text, the highlighted text is included in your search when you press Ctrl+Enter. Basically, what you see is what you get. To make sure you get what you want, don't press Ctrl+Enter until the text in the To: box is exactly what you are searching for. You may need to delete all or part of the highlighted portion of the name before pressing Ctrl+Enter.
When you press Ctrl+Enter, the Address Book goes out to the server you specified in the Properties dialog box and searches for names matching the information you've typed in the To: or Name boxes.
If there is one matching entry, LDAP places the entry in the appropriate box. If there are no entries matching your criteria, the criteria itself is entered into the appropriate box. If there are multiple entries matching your criteria, a dialog box appears with the entries listed. You are asked to select the entry or entries you want, then click OK. You may also be able to cancel out of this dialog, click Address, click the LDAP address book tab, then click the entries you want.
"Gotchas" to Watch Out For
Gotcha 1: If you make changes to the configuration of your provider, the changes do not take effect immediately. In order to see your changes, you must exit then restart GroupWise (not Exchange, as the prompt tells you). This shuts down and restarts the MAPI session.
Gotcha 2: In many foreign address books, the e-mail type field is "SMTP." If you type such an entry into the To: box and mail a message, it appears that the message was mailed just fine, but in reality it was never sent (to check, open the Sent Items folder, right-click the item, then click Properties. If the status is Pending, the message has not been delivered out to the Internet). A coming GroupWise patch will fix this problem, but until you receive this patch, you can do the following:
1. Copy the names from the LDAP tab into a personal address book.
2. From the personal address book, click each name, Information.
3. Click Edit, delete any text in the E-mail Type box, then click OK.
4. Click the name again, then click OK. This places the name in the To: box, and it should arrive at its destination properly.
Gotcha 3: The entries in the Frequent Contacts address book, though complete enough to send mail with, may be missing some information fields (such as City, Country, etc). This is because some fields in foreign address books cannot be read by the Frequent Contacts address book when they are copied as part of a reference (each time you send or receive an item, a reference is created in the Frequent Contacts address book). If these fields are important to you, here's how you can get them:
1. Click the names you want to copy.
2. Click Edit, Copy To.
3. Click the Frequent Contacts address book, then click OK.
The process of manually copying names from the foreign address book into the Frequent Contacts address book allows for the copying of all fields, so all the fields are copied.
Gotcha 4: If you use the Boldon James provider version 2.0.3, you will receive a General Protection Fault (GPF) if you try to define a Address Book filter. This problem is corrected in version 2.0.4.
Novell Cool Solutions (corporate web communities) are produced by WebWise Solutions. www.webwiseone.com