LDAP V3 Interoperability
From Sw
Contents |
[edit] Generic Settings
- Server: ldap.scheduleworld.com
- Port: 389
- Protocol: Version 3
- Bind Name: uid=yyy,dc=scheduleworld,dc=com
Note: yyy is your ScheduleWorld account number and you can find this on the preferences page.
- Bind Password: The password you use to log in to the ScheduleWorld calendar.
- Base DN: Same as the Bind Name above.
- Filter: (objectclass=*)
[edit] KAddressbook
[edit] Authentication
- Server ldap.scheduleworld.com
- Port 389
- Account name / Bind DN uid=yyy,dc=scheduleworld,dc=com
Note: yyy is your ScheduleWorld account number and you can find this on the preferences page.
- Authentication Type simple
- SSL no (not yet)
[edit] Search
- Scope One Level
- Search Base / Base DN uid=yyy,dc=scheduleworld,dc=com
Note: yyy is your ScheduleWorld account number and you can find this on the preferences page.
- Maximum matches 20
- Filter leave this empty, or use objectClass=* (cn=* will not work)
[edit] Read / Write / Delete Access
- You have full read/write/delete access to your personal LDAP data.
- Special note: KDE / KMail / KAddressbook now has full LDAP read/write/delete capabilities and is fully supported with ScheduleWorld. Tested with Kubuntu 7.0.4 / KDE 3.5.6. Note: The KDE ldapkio address book doesn't notice changes to ScheduleWorld contacts. A workaround is to unselect the ldapkio address book and then reselect it to refresh the KAddressbook view.
[edit] Mozilla Eudora / Mozilla Thunderbird
- Tools -> Address Book
- File -> New -> LDAP Directory
- General ->
- Name: Schedule World
- -Hostname: ldap.scheduleworld.com
- -Base DN: uid=####,dc=ScheduleWorld,dc=com
- -Port Number: 389
- -Bind DN: uid=####,dc=ScheduleWorld,dc=com
- Advanced ->
- -Don't return more than 20 results
- -Scope: Subtree
- -Search Filter: (cn=*)
When you first try to search you will be prompted for a password - enter the one you login to the Schedule World website.
Replace #### with your Schedule World account number, this can be found by logging in, clicking preferences and the number is the last part of the main heading - i.e. "General Preferences for ####"
[edit] Evolution
[edit] Microsoft Outlook
The following notes are from Outlook 2003, other versions may differ.
- Tools -> Email Accounts...
- Add a new Directory or Address Book
- Internet Directory Service (LDAP)
- Server Name: ldap.scheduleworld.com
- Username: uid=####,dc=scheduleworld,dc=com
- Password: The password you use to login to ScheduleWorld
- More Settings ->
- -Connection ->
- --Display Name: Schedule World
- --Port:389
- -Search ->
- --Search Base: uid=####,dc=scheduleworld,dc=com
Close Outlook
When you restart Outlook type in as much of a name as you know to be correct - e.g. Ma - when composing an email then click the "Check Names" button or press "Ctrl+K" and it will show all names that match - e.g. Matt Smith, Matthew Jones, and James Mansfield.
Replace #### with your Schedule World account number, this can be found by logging in, clicking preferences and the number is the last part of the main heading - i.e. "General Preferences for ####"
[edit] Mulberry
- Select
File -> Preferences -> Accounts Pane - In the <code>Account pop-up menu select
New... and give it a reasonable name (SW-LDAP). - From the
Account Type:pop-up menu selectLDAP-Address Search-> OK. - Server is
'ldap.scheduleworld.com:389' - In the
Authenticatesub-pane select from theMethod:pop-up menuPlain Text - In the
Userfield enter'uid=####,dc=scheduleworld,dc=com'where #### is your user ID (the log-in number for scheduleworld) - You probably want to save User ID and Password, so check those boxes.
- There is no security
- From the
Optionspane you might want to check the boxes for address expansion and search - From the
Attributes 1sub-pane enter in theRoot:field'uid=####,dc=scheduleworld,dc=com'(same as above) - remember to
"Save Default"to fix your preferences so you don't have to do it again.
[edit] Microsoft Windows Mail
The following notes are from Outlook 2003, other versions may differ.
- Tools -> Accounts...
- Add...
- Directory Service
- Server Name: ldap.scheduleworld.com
- My LDAP Server requires me to log on: Tick
- Account Name: uid=####,dc=scheduleworld,dc=com
- Password: The password you use to login to ScheduleWorld
- Do you want to check email addresses using this directory service? - read the message and then choose
- Tools -> Accounts...
- Click the account you just created
- Properties ->
- -Advanced ->
- --Search Base: uid=####,dc=scheduleworld,dc=com
Type in as much of a name as you know to be correct - e.g. Ma - when composing an email then click the "Check Names" button or press "Ctrl+K" and it will show all names that match - e.g. Matt Smith, Matthew Jones, and James Mansfield.
Replace #### with your Schedule World account number, this can be found by logging in, clicking preferences and the number is the last part of the main heading - i.e. "General Preferences for ####"
[edit] Mutt
You can use The Little Brother's Database (lbdb) with m_ldap as a backend for mutt. As mentioned in the description, you need Net::LDAP Perl (in Debian libnet-ldap-perl).
Configure /etc/lbdb_ldap.rc an add an array on %ldap_server_db like this:
---- 8-< --- snip
%ldap_server_db = (
'four11' => ['ldap.four11.com', 'c=US',
'givenname sn cn mail', 'givenname cn sn mail o',
'${mail}', '${givenname} ${sn}', '${o}' ],
---- >8 --- snip
...
---- 8< --- snip
'scheduleworld' => ['ldap.scheduleworld.com', 'uid=#####,dc=scheduleworld,dc=com',
'DisplayName GivenName cn mail l', 'DisplayName GivenName cn mail l',
'${mail}', '${cn}', '${l}' , 1 ,'uid=#####,dc=scheduleworld,dc=com' ,'yourpasswd' ]
);
---- >8 --- snip
now edit your .lbdbrc and add the line
METHODS="m_ldap"
you can test your setup with
lbdbq John Doe
Finaly add something like this to your .muttrc or .mutt/muttrc
# query command for using little brotherdb set query_command = "lbdbq '%s'"
Use Q to query or ^t (STRG+t) to complete if you are in the the To: field
Tip: You can also use evolution as a backend for mutt (synced with scheduleworld by syncevolution)
[edit] Known limitations of the LDAP service
This is a non-exhaustive list gathered from discussions in the forums.
- Schema is unavailable (N.B. this prevents usage of ruby-activeldap)
- Search query results always return all attributes
- Substring matching is used instead of equality in (attr=val) filter syntax
- Subtree scope is not supported - use one level scope instead, e.g.
export SW_UID=12345 # change as appropriate read -s SW_PASS # now enter password export SW_PASS SW_DN="uid=$SW_UID,dc=scheduleworld,dc=com" ldapsearch -h ldap.scheduleworld.com -D $SW_DN -x -w $SW_PASS -s one -b $SW_DN "$FILTER"
- jpegPhoto only supported as a boolean not as a binary blob - but there is a task to provide an option to enable it.
- There may be other attributes unsupported and there are better alternatives for batch backup.

