Have you had enough of your BES not being able to see your GroupWise System Address Book in lookups from blackberries ? Have you had enough of not being able to find someone's mobile number from your blackberry device ? At last here is the solution, without waiting on RIM or Novell, to sync your GroupWise System Address Book to your BES !!!!
Warning : this is unsupported by Novell and/or RIM. Use this script at your own risk !
===========*******************************================ TESTED AGAINST BES4.1 SP4 ONLY.
BE SURE YOU KNOW WHAT YOU ARE DOING BEFORE RUNNING THIS ! IF YOU MESS UP, YOU WILL BREAK THE BES.
You may be able to recreate the System Address Book in the BES by choosing 'Delete & sync system address book', under the service control tab in Blackberry Manager. This will undo all the changes made by this script. ===========*******************************================
This is an UNSUPPORTED (by vodafone & RIM etc) script, written by Alan Pearson, to populate the BES system address book with information from LDAP, as currently (16/09/08) the BES does not have the facility to populate more than the work number of a record in the address book from a GW system.
This means lookups from blackberries show all relevant fields, including mobile number etc. Full List of fields we populate : BES Field=LDAP Field WorkPhone=telephoneNumber MobilePhone=mobile Address1=street City=city State=st postalCode=postalcode country=co companyName=sitelocation notes=notes FirstName=givenName LastName=sn pager=pager
NEVER mess with the WorkEmail field in BES, as this will break dist lists.
For any users which exist in the BES but not LDAP (it's possible because we move deleted users to another container which ldap can't view, but GW can ) we set the FirstName & LastName fields to _deleted_record_ which is good enough to hide it in lookups. We could just delete it from the BES db, but I really don't want to do that !
This perl script runs as a scheduled Windows job.
Debugging is available in the script by setting the $DEBUG and $QTV_LDAP_DEBUG to 1.
[ IMPORTANT UPDATE 19/07/09 ] - The CN attribute MUST be visible to public or your ldap proxy user by the use of an ACL (preferably on your o= object). By default this is only the case for LUM enabled users. If you don't do this, then non-LUM users will not be found by the script.
Enjoy. Alan Pearson firstname.lastname@example.org
Requirements ------------------- ActiveState Perl for Windows Net::LDAP IO::Socket::SSL Perl::DBD Authen::SASL OpenSSL for windows
Novell eDirectory LDAP server configured to allow relevant information (above) to be extracted either through anonymous LDAP bind or via a proxy user.
BES server 4.1.4 GroupWise edition MSDE database (sql server may well work, if tables are the same)
Put this directory on your BES server and run it using a scheduled job.
Edit updateBesAddrBook.pl and set the details of your LDAP server and BES database appropriately.
Enable LDAP_DEBUG when running the first few times to see what is going on.
TEST ON A NON-PRODUCTION SYSTEM FIRST !
Windows guys, not the scripts are all in Unix file format, so you will need an editor that can understand unix line endings !