Having gathered a bit of experience with Funambol, I dared install the Funambol Domino Connector, called funambol-domino-3.0.11 and available on the Funambol Downloads page. The documentation is a bit light, but I can report having successfully connected Funambol to a Lotus Domino 6.5.4 running on my laptop (literally: I was sitting in my hotel room :-) ) After installing the module as per instructions in the enclosed PDF (basically copy the funambol-domino-3.0.11.s4j file to the ds-server/modules directory, add its name to the modules-to-install directive in ds- server/install.properties and run a ds-server/bin/install tomcat50, answering y to all the "create database" statements), I launched the Funambol server proper. In the Funambol Administration Tool, I then created two new sync sources in the domino branch, called ncon and ncal for Notes-Contacts and Notes-Calendar respectively (I named them with a leading "n" to both differenciate from other existing Syncsources and in honour of the "n"-tradition in Notes executable programs). sync sources for Domino The ncal SyncSource uses the SIF-E type and the ncon source the SIF-C type. Apart from that, both connect to a Domino server specified as either hostname or IP address and they connect via TCP port 63148 to Domino's DIIOP task (on Linux the default port number is 60148). According to the Lotus Domino Administrator Help file, the name by which the application connects to DIIOP must be allowed to run both restricted and unrestricted Java agents. Since I didn't know by which name the Funambol connector talks to Domino I tried Anonymous and it works (without these entries on the Security tab of the Server document, the user won't be able to connect. I don't feel very comfortable with that, but I don't at this moment exactly know how dangerous that is. Security Server Document After ensuring that the DIIOP task is refreshed (tel diiop refresh), it was time to test all this. I launched the Funambol Java GUI Plugin and configured it to use both the newly created SyncSources. Plugin configuration Note how both the sync sources created above (./ncon for contacts and ./ncal for calendar) are specified, and note that I use the distinguished name (Lotusspeak: username) of the user connecting. The password is not the password from the user's Lotus .id file, but the Internet Password as specified in the user's person document of the Domino directory. Keep an eye on your Funambol logs (ds- server/logs/funambol_ds.log) and start the synchronization from the plug-in:

[Oct 10, 2006 10:15:23 PM] INFO: Handling incoming request: http://localhost:8080/funambol/ds
[Oct 10, 2006 10:15:23 PM] INFO: Requested sessionId: null
[Oct 10, 2006 10:15:23 PM] INFO: foobar foobar/foobar/sc-pim-demo9904 logged in.
[Oct 10, 2006 10:15:23 PM] INFO: sc-pim-demo9904/foobar foobar/foobar: database './ncon' found
[Oct 10, 2006 10:15:23 PM] INFO: sc-pim-demo9904/foobar foobar/foobar: database './ncal' found
[Oct 10, 2006 10:15:23 PM] INFO: Handling incoming request: http://localhost:8080/funambol/ds
[Oct 10, 2006 10:15:23 PM] INFO: Requested sessionId: 397BF6C44E64B45BEBFDE966ED3F7990
[Oct 10, 2006 10:15:23 PM] INFO: Starting synchronization ...
[Oct 10, 2006 10:15:24 PM] INFO: Preparing fast synchronization of source './ncon' for sc-pim-demo9904/foobar foobar/foobar since 2006-10-10 22:03:31.864...
[Oct 10, 2006 10:15:24 PM] INFO: Last call
[Oct 10, 2006 10:15:24 PM] INFO: Preparation completed.
[Oct 10, 2006 10:15:24 PM] INFO: Synchronizing...
[Oct 10, 2006 10:15:24 PM] INFO: Preparing fast synchronization of source './ncal' for sc-pim-demo9904/foobar foobar/foobar since 2006-10-10 22:03:31.864...
[Oct 10, 2006 10:15:24 PM] INFO: Last call
[Oct 10, 2006 10:15:24 PM] INFO: Preparation completed.
[Oct 10, 2006 10:15:24 PM] INFO: Synchronizing...
[Oct 10, 2006 10:15:24 PM] INFO: Handling incoming request: http://localhost:8080/funambol/ds
[Oct 10, 2006 10:15:24 PM] INFO: Requested sessionId: 397BF6C44E64B45BEBFDE966ED3F7990
[Oct 10, 2006 10:15:24 PM] INFO: Handling incoming request: http://localhost:8080/funambol/ds
[Oct 10, 2006 10:15:24 PM] INFO: Requested sessionId: 397BF6C44E64B45BEBFDE966ED3F7990
[Oct 10, 2006 10:15:24 PM] INFO: Handling mapping ...
[Oct 10, 2006 10:15:24 PM] INFO: Performing mapping ...
[Oct 10, 2006 10:15:25 PM] INFO: sc-pim-demo9904/foobar foobar/foobar: synchronization completed

(to be honest, the above doesn't detail my first attempt. :-) Keen eyes will detect that the log above shows a fast and not a slow-sync.) So, that looks quite good. But where on Earth are the documents? Well, the calendar entries are in the ... drum roll ... Lotus Notes calendar of the user, and the contacts are in the Domino Web Access (a.k.a. iNotes) documents of the user's mail file. Open the mail file and use Actions/Synchronize Address Book to sync them from the Domino mail file (mail/foobar.nsf) into your personal address book (names.nsf on your workstation). Don't be afraid if you see reminders or appointments that are off by one or more hours: think Timezone. There are a number of things I haven't touched upon here, because I simply don't have the foggiest idea of what they do. For example, my Funambol installation uses the db module. In my MySQL-backend, I find a table called fnbl_domino_cache which appears to cache Domino UNIDS, perhaps to build GUIDs? It is a shame that neither Todo nor Journal (i.e. memos, notes) can be synchronized with this connector, but I could imagine there'd be business cases willing to finance development on the connector to add missing functionality. Caveat: I have only been able to try this out with Funambol's Java GUI Plugin and not with a real mobile phone, but that is next on my list. Anyways: another possible step towards solving in my quest for the holy sync grail and/or another few sleepless nights...

Flattr this
DomiNotes, MySQL, and SyncML :: 11 Oct 2006 :: e-mail

Comments

blog comments powered by Disqus