Lebih tepat judul diatas berbunyi “Open Source Mobile Calendar and Contact Synchronization”. Implementasi ini berhasil 100% persen saya terapakan pada server produksi client yang telah memiliki mailserver live dengan Zimbra Collaboration Suite (ZCS) 6.0 Open source Edition. Pertanyaannya menjadi, bagaimana membuat/menciptakan proses sinkronisasi(Synchronizing) Contact(Address Book) dan Calender yang ada pada Zimbra dengan handphone sejenis smartphone seperti Nokia,Iphone,Blackberrys,dsb. Untuk ini dibutuhkanlah Funambol Server dan Zimbra Connector untuk menjembatani keterbatasan pemakai Zimbra versi Open Source.

Environment setup/instalasi ini sbb :
1. Zimbra Collaboration Suite (ZCS) 6.0 Open source Edition terinstall pada platform Linux Debian 5 Lenny.
2. The Funambol Server package for GNU/Linux, saya gunakan versi terbaru yaitu funambol-8.0.1.bin (http://download.forge.objectweb.org/sync4j/funambol-8.0.1.bin)
3. Zimbra Connector (ZimbraConnector_0.5.02.s4j) (http://www.zimbra.com/forums/attachments/zimbra-mobile/3129d1252691925-zimbra-funambol-sync4j-code-zimbraconnector.zip)
4. Mobile devices untuk testing : Nokia E61i Black dengan tools Sync yang sudah ada secara default. Saat melakukan sinkronisasi harus terhubung ke internet baik dengan GPRS atau Wifi.
5. Funambol Admin Tool for Windows XP Profesional (http://download.forge.objectweb.org/sync4j/funambol-admin-8.0.0.exe) saya pakai ini karena server Zimbra tidak pakai GUI.

Perlu diketahui point 1,2,3 diatas berada dalam 1 server dan tidak terpisah. Pada proses ini juga Zimbra Collaboration Suite (ZCS) 6.0 Open source Edition sudah produksi dan live dengan baik. Jadi saya tinggal bermain di point 2,3,4,5 Dengan tahapan : Install Funambol server, install Zimbra Connector modules untuk Funambol, install Funambol Admin Tool dan conect ke Funambol Server, terakhir setting pengaturan Nokia e61i untuk Synchronizing.

Berikut jalannya instalasi dan konfigurasi yang berhasil saya dokumentasikan dengan lengkap dengan gambar capture/screenshot :

Instalasi The Funambol Server :

root# wget http://download.forge.objectweb.org/sync4j/funambol-8.0.1.bin—14:50:33— http://download.forge.objectweb.org/sync4j/funambol-8.0.1.bin
=> `funambol-8.0.1.bin’
Resolving download.forge.objectweb.org… 88.191.79.12, 2a01:e0b:1:79:2e0:f4ff:fe1b:b525
Connecting to download.forge.objectweb.org|88.191.79.12|:80… connected.
HTTP request sent, awaiting response… 200 OK
Length: 177,517,345 (169M) [application/octet-stream]
100%[========================================>] 177,517,345 457.47K/s ETA 00:00
14:57:16 (431.94 KB/s) – `funambol-8.0.1.bin’ saved [177517345/177517345]

root# sh funambol-8.0.1.bin

GNU AFFERO GENERAL PUBLIC LICENSE
Version 3, 19 November 2007

Copyright© 2007 Free Software Foundation, Inc.
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The GNU Affero General Public License is a free, copyleft license————-skip aja deh panjang banget——————
You should also get your employer (if you work as a programmer) or school,
if any, to sign a “copyright disclaimer” for the program, if necessary.
For more information on this, and how to apply and follow the GNU AGPL, see
.

Do you agree to the above license terms? [yes or no]
yes
Directory to extract Funambol [/opt] ?

Unpacking…
Checksumming…
Extracting… to /opt/Funambol
Do you want to start the server? [yes or no]
yes

root#

# ps axf |grep funambol

7924 pts/0 S+ 0:00 _ grep funambol
21886 ? Sl 11:25 /opt/Funambol/tools/jre-1.5.0/jre/bin/java Xmx512M -Dfunambol.debug=false -Dfunambol.home=/opt/Funambol -Dfile.encoding=UTF8 Djava.library.path=/opt/Funambol/dsserver/lib/linux Djavax.net.ssl.trustStore=/opt/Funambol/dsserver/lib/security/cacerts -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8101 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.net.preferIPv4Stack=true -Djava.awt.headless=true -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file=/opt/Funambol/tools/tomcat/conf/logging.properties -Djava.endorsed.dirs=/opt/Funambol/tools/tomcat/endorsed -classpath :/opt/Funambol/tools/tomcat/bin/bootstrap.jar -Dcatalina.base=/opt/Funambol/tools/tomcat -Dcatalina.home=/opt/Funambol/tools/tomcat -Djava.io.tmpdir=/opt/Funambol/tools/tomcat/temp org.apache.catalina.startup.Bootstrap start
22489 ? Sl 1:39 /opt/Funambol/tools/jre-1.5.0/jre/bin/java Xmx256M -Dfile.encoding=UTF8 org.hsqldb.Server -database.0 /opt/Funambol/tools/hypersonic/data/funambol -dbname.0 funambol
22494 ? Sl 1:34 /opt/Funambol/tools/jre-1.5.0/jre/bin/java Dfile.encoding=UTF8 -Dfunambol.home=/opt/Funambol -Djava.net.preferIPv4Stack=true -Xmx256M -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=7101 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false com.funambol.ctp.server.CTPServer
22528 ? Sl 1:22 /opt/Funambol/tools/jre-1.5.0/jre/bin/java Dfile.encoding=UTF8 Dfunambol.home=/opt/Funambol -Dfunambol.pushlistener.config.bean=com/funambol/email/inboxlistener/InboxListenerConfiguration.xml -Djava.library.path=/opt/Funambol/inboxlistener/lib/linux Djavax.net.ssl.trustStore=/opt/Funambol/inboxlistener/lib/security/cacerts -Djava.net.preferIPv4Stack=true -Xmx256M -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=4101 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false com.funambol.email.inboxlistener.service.InboxListener
22538 ? Sl 1:23 /opt/Funambol/tools/jre-1.5.0/jre/bin/java Dfile.encoding=UTF8 -Dfunambol.home=/opt/Funambol -Dfunambol.pushlistener.config.bean=com/funambol/pimlistener/PIMListenerConfiguration.xml -Djava.net.preferIPv4Stack=true -Xmx256M -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=3101 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false com.funambol.pimlistener.service.PimListener

root#
root# cd /opt/Funambol/
mail:/opt/Funambol# ls
admin bin config ctp-server ds-server inbox-listener LICENSES LICENSE.txt logs pim-listener plug-ins Readme.txt tools
mail:/opt/Funambol#

Sampai disini selesai instalasi Funambol Server, untuk melihat bisa browse ke http://202.5x.xxx.70:8080/funambol/

Untitled-1 copy2
kemudian test browse juga ke: http://202.5x.xxx.70:8080/funambol/ds akan keluar output sbb :

Funambol Data Synchronization Server v.8.0.0

Man=Funambol
Mod=DS Server
SwV=8.0.0
HwV=-
FwV=-
OEM=-
DevID=funambol
DevTyp=server
VerDTD=1.2
UTC=true
SupportLargeObjs=true
SupportNumberOfChanges=true
Ext=X-funambol-smartslow

Instalasi dan Konfigurasi Zimbra Connector

Zimbra Connector disini merupakan modules untuk Funambol. Download source file http://www.zimbra.com/forums/attachments/zimbra-mobile/3129d1252691925-zimbra-funambol-sync4j-code-zimbraconnector.zip kemudian unzip lalu pindahkan file ZimbraConnector_0.5.02.s4j ke dalam folder /opt/Funambol/ds-server/modules

Kemudian kita membuat file XML untuk dapat bekerja dengan ru.korusconsulting.connector.config sourcesnya bisa didownload di http://henry.gultom.or.id/download/ZimbraConnector.xml dan copy ke dalam folder : /opt/Funambol/config/connector/

Setiap modul yang akan diinstall harus kita definisikan dahulu pada file install.properties di folder ds-server.

mail:/opt/Funambol/config/connector# nano /opt/Funambol/ds-server/install.properties
———-skip—————modules-to-install=content-provider-8.0.0,email-connector-8.0.0,foundation-8.0.1,phones-support-8.0.1,webdemo-8.0.0,ZimbraConnector

mail:/opt/Funambol/bin# ./install-modules

[echo] Funambol Data Synchronization Server will be installed on the Tomcat 6.0.x application server
[echo] Undeploying funambol…
[echo] Pre installation for modules content-provider-8.0.0,email-connector-8.0.0,foundation-8.0.1,phones-support-8.0.1,webdemo-8.0.0,ZimbraConnector_0.6.00
[echo] content-provider-8.0.0 pre-installation…
[echo] content-provider-8.0.0 pre-installation successfully completed
[echo] email-connector-8.0.0 pre-installation…
[echo] email-connector-8.0.0 pre-installation successfully completed
[echo] foundation-8.0.1 pre-installation…
[echo] foundation-8.0.1 pre-installation successfully completed
[echo] phones-support-8.0.1 pre-installation…
[echo] phones-support-8.0.1 pre-installation successfully completed
[echo] webdemo-8.0.0 pre-installation…
[echo] webdemo-8.0.0 pre-installation successfully completed
[echo] ZimbraConnector_0.6.00 pre-installation…
[echo] ZimbraConnector_0.6.00 pre-installation successfully completed

[echo] Copying configuration files

[echo] Post installation for modules content-provider-8.0.0,email-connector-8.0.0,foundation-8.0.1,phones-support-8.0.1,webdemo-8.0.0,ZimbraConnector
[echo] has.install: true
[echo] Starting custom installation…
[echo] Install Funambol Content Provider on Tomcat (/opt/Funambol/ds-server/output/content-provider-8.0.0)
[echo] Funambol home: (/opt/Funambol/ds-server)
[echo] Content Provider installation successfully completed
[echo] content-provider-8.0.0 installation…
[echo] Database installation for module content-provider-8.0.0 on hypersonic (/opt/Funambol/ds-server)

[iterate] The Funambol Data Synchronization Server installation program can now create
[iterate] the database required by the module content-provider-8.0.0 (if any is needed).
[iterate] You can skip this step if you have already a valid database created
[iterate] or the module does not require a database.

[iterate] If you choose ‘y’ your existing data will be deleted.

[iterate] Do you want to recreate the database?
[iterate] (y,n)
y

[echo] content-provider-8.0.0 installation successfully completed
[echo] has.install: ${has.install}
[echo] email-connector-8.0.0 installation…
[echo] Deploying deploy.wsdd…
y [echo] Database installation for module email-connector-8.0.0 on hypersonic (/opt/Funambol/ds-server)

[iterate] The Funambol Data Synchronization Server installation program can now create
[iterate] the database required by the module email-connector-8.0.0 (if any is needed).
[iterate] You can skip this step if you have already a valid database created
[iterate] or the module does not require a database.

[iterate] If you choose ‘y’ your existing data will be deleted.

[iterate] Do you want to recreate the database?
[iterate] (y,n)
y

[iterate] The Funambol Data Synchronization Server installation program can now create
[iterate] the database required by the module email-connector-8.0.0 (if any is needed).
[iterate] You can skip this step if you have already a valid database created
[iterate] or the module does not require a database.

[iterate] If you choose ‘y’ your existing data will be deleted.

[iterate] Do you want to recreate the database?
[iterate] (y,n)
y

[echo] email-connector-8.0.0 installation successfully completed
[echo] has.install: true
[echo] Starting custom installation…
[echo] Foundation Installation
[echo] Foundation installation successfully completed
[echo] foundation-8.0.1 installation…
[echo] Database installation for module foundation-8.0.1 on hypersonic (/opt/Funambol/ds-server)

[iterate] The Funambol Data Synchronization Server installation program can now create
[iterate] the database required by the module foundation-8.0.1 (if any is needed).
[iterate] You can skip this step if you have already a valid database created
[iterate] or the module does not require a database.

[iterate] If you choose ‘y’ your existing data will be deleted.

[iterate] Do you want to recreate the database?
[iterate] (y,n)
y

[echo] foundation-8.0.1 installation successfully completed
[echo] has.install: ${has.install}
[echo] phones-support-8.0.1 installation…
[echo] Database installation for module phones-support-8.0.1 on hypersonic (/opt/Funambol/ds-server)

[iterate] The Funambol Data Synchronization Server installation program can now create
[iterate] the database required by the module phones-support-8.0.1 (if any is needed).
[iterate] You can skip this step if you have already a valid database created
[iterate] or the module does not require a database.

[iterate] If you choose ‘y’ your existing data will be deleted.

[iterate] Do you want to recreate the database?
[iterate] (y,n)
y

[echo] phones-support-8.0.1 installation successfully completed
[echo] has.install: true
[echo] Starting custom installation…
[echo] Install Funambol Web Demo Client on Tomcat (/opt/Funambol/ds-server/output/webdemo-8.0.0)
[echo] Funambol home: (/opt/Funambol/ds-server)
[echo] Web Demo Client installation successfully completed
[echo] webdemo-8.0.0 installation…
[echo] Database installation for module webdemo-8.0.0 on hypersonic (/opt/Funambol/ds-server)

[iterate] The Funambol Data Synchronization Server installation program can now create
[iterate] the database required by the module webdemo-8.0.0 (if any is needed).
[iterate] You can skip this step if you have already a valid database created
[iterate] or the module does not require a database.

[iterate] If you choose ‘y’ your existing data will be deleted.

[iterate] Do you want to recreate the database?
[iterate] (y,n)
y

[echo] webdemo-8.0.0 installation successfully completed
[echo] has.install: ${has.install}
[echo] ZimbraConnector installation…
[echo] Database installation for module ZimbraConnector on hypersonic (/opt/Funambol/ds-server)

[iterate] The Funambol Data Synchronization Server installation program can now create
[iterate] the database required by the module ZimbraConnector (if any is needed).
[iterate] You can skip this step if you have already a valid database created
[iterate] or the module does not require a database.

[iterate] If you choose ‘y’ your existing data will be deleted.

[iterate] Do you want to recreate the database?
[iterate] (y,n)
y

[echo] ZimbraConnector installation successfully completed
[war] Warning: selected war files include a WEB-INF/web.xml which will be ignored (please use webxml attribute to war task)
[echo] Remove output dir

BUILD SUCCESSFUL
Total time: 2 minutes 8 seconds

mail:/opt/Funambol/bin#

Selesai instalasi Zimbra Connector dan siap digunakan, tinggal mengkonfigurasi melalui Funambol Admin Tools.

Dikarenakan pada server produksi haram memakai GUI, maka untuk mengadminister Funambol server saya gunakan software Funambol Admin Tool for Windows XP Profesional yang bisa didonwload di http://download.forge.objectweb.org/sync4j/funambol-admin-8.0.0.exe . Lalu install file tersebut sampai selesai.

installfunamboladmintools

Untuk memulai administer Funambol Server : PIlih Start menu, Programs -> Funambol -> Administration Tool.

funamboladmintools

Setelah jendela Funambol Admin Tools kebuka, Pilih File > Login

Ganti Hostname/IP dengan Hostname/IP tempat Server Funambol/Zimbra terinstall bisa berupa hostname Zimbra atau IP Public pada server ini, Port : 8080 , kemudian Username : Admin dan Password ganti dari defaultnya ke password baru. Kemudian tutup jendela Funambol Admin Tools dan buka kembali, Lalu pilih File Login untuk masuk ke Funambol Server. Jika berhasil akan tampak seperti gambar dibawah ini :

funamboladmintools2

Terlihat IP/Hostname Funambol server pada menu sebelah kiri, dan pada tree Modules telah terisi email,foundation,zimbra. Untuk dapat mengedit tree Zimbra SyncSource kita harus menghapus beberapa tree pada foundation agar tidak bentrok penggunaannya.

Data yang harus didelete pada tree foundation connector :
PIM Calendar SyncSource—cal; event; scal; stask; task
PIM Contact SyncSource—card; scard

Setelah didelete slanjutnya kita Edit tree Zimbra untuk memasukkan SyncSource, fungsinya source ini akan menjadi template pada mobile devices yang kita ingin hubungkan dengan Zimbra. Terus terang diawal saya salah beberapa kali dalam memasukkan item yang benar sampai akhirnya sukses.

Ada 3 tree pada Modules Zimbra yang perlu diedit yaitu :
1. CalendarSyncSource(cal, event, scal, stask and task)
2. ContactSyncSource(card, scard)
3. GALSyncSource(zimbraGalContacts)

Berikut salah satu konfigurasi di tempat saya yang berjalan sukses :
Modules > zimbra > FunambolZimbraConnector>CalendarSyncSource

Source URI = cal
Name = cal
Zimbra URL = http://202.51.2xx.xx/service/soap/

Untuk event,scal,stask,taskcard,scardzimbraGalContacts, tinggal mengikut diatas. Selamat mencoba. Salah dikit tak bisa Sync dengan mobile devices🙂

Setelah selesai tampilannya akan sbb :

funamboladmintools3

Asministrasi Funambol lainnya menggunakan Funambol Admin Tools ini adalah menambah User yang isinya sama dengan user email di Zimbra. Misalnya di mailserver zimbra ada user dengan alamat email test@galxxxx.co.id maka pada Funambol Admin Tools bagian tree Users tambahkan user ini, misalnya : Username : test@galxxxx.co.id password : sama dengan password account user test di Zimbra. Setelah menambah User lanjut dengan menambah Devices, disini kita isikan data mobile devices yang hendak kita koneksikan :

ID : 351878010770661 (diisi nomer IMEI )
Type : Nokia E61i
Timezone(TZ) : Asia/Jakarta(GMT+07:00)
Conversion to current TZ : Enabled(default)
Charset : UTF-8
Address : – Phone Number : +6281392865642
Notification Type : OMA DS 1.2
Description : My Lovely E61i Black Version

Settingan terakhir adalah Principles dimana kita memasukkan user test@galxxxx.co.id ke dalam Devices Id : IMEI:351878010770661

prinsipal

Jika masih bingung sebaiknya baca dulu manualnya http://funambol.com/docs/v80/funambol-installation-and-administration-guide.pdf

Selesai proses Instalasi dan konfigurasi Funambol Server dan Zimbra Connector(point 2,3,5). Sekarang masuk ke Setting Mobile Devices(smartphone) yang untuk uji coba memakai Nokia E61i Black.

e61i

Synchronizing Zimbra with Nokia E61i

Settingan Sync pada E61i terletak pada :

Menu > Connect > Sync

Kita perlu membuat baru sync profile : Options > New sync profile

Berikut Nokia’s connection settings pada E61i :

Server version: 1.2
Server ID: funambol
Data bearer: Internet
Access point: Always ask
Host address: https://202.51.2xx.xx/funambol/ds
Port: 8080
Username: test@galxxxx.co.id
Password: ***********
Allow sync requests: Yes
Accept all sync reqs.: Yes
Network authentic.: No
Untuk menjalankan : Funambolzimbra > Option > Synchronise

Log sukses synchronise :

mail:/opt/Funambol/logs/ds-server# tail f dsserver.log
[2009-10-25 22:28:02,408] [funambol.transport.http] [INFO] [2ECC7044874ADE344ACD67042E50D096] [] [] [] Handling incoming request
[2009-10-25 22:28:02,408] [funambol.transport.http] [INFO] [2ECC7044874ADE344ACD67042E50D096] [] [] [] Request URL: http://202.5x.xxx.70:8080/funambol/ds
[2009-10-25 22:28:02,408] [funambol.transport.http] [INFO] [2ECC7044874ADE344ACD67042E50D096] [] [] [] Requested sessionId: null
[2009-10-25 22:28:03,418] [funambol.handler] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [] test@galxxxx.co.id/IMEI:351878010770661 logged in.
[2009-10-25 22:28:04,132] [funambol.zimbra] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [] LOAD ZimbraConnector 0.5.02
[2009-10-25 22:28:04,774] [funambol.engine.pipeline] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [] Output processing stopped by com.funambol.foundation.synclet.BeanShellSynclet@d11f32[script=com/funambol/server/engine/pipeline/phones-support/bsh/NokiaS60out.bsh,header=user-agent,pattern=Nokia SyncML HTTP Client|S60 SyncML HTTP Client] (reason: NokiaS60out Synclet finished)
[2009-10-25 22:28:04,779] [funambol.transport.http] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxxa.co.id] [] Request processed.
[2009-10-25 22:28:14,984] [funambol.transport.http] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxxa.co.id] [] Handling incoming request
[2009-10-25 22:28:14,984] [funambol.transport.http] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [] Request URL: http://202.5x.xxx.70:8080/funambol/ds
[2009-10-25 22:28:14,985] [funambol.transport.http] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [] Requested sessionId: 2ECC7044874ADE344ACD67042E50D096
[2009-10-25 22:28:23,193] [funambol.engine] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [] Starting synchronization …
[2009-10-25 22:28:23,445] [funambol.engine.strategy] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [card] Preparing slow synchronization
[2009-10-25 22:28:23,446] [funambol.engine.strategy] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxxa.co.id] [card] Last call
[2009-10-25 22:28:25,774] [funambol.engine.strategy] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [card] Preparation completed.
[2009-10-25 22:28:25,774] [funambol.engine.strategy] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [card] Synchronizing…
[2009-10-25 22:29:06,049] [funambol.engine.pipeline] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [] Output processing stopped by com.funambol.foundation.synclet.BeanShellSynclet@d11f32[script=com/funambol/server/engine/pipeline/phones-support/bsh/NokiaS60out.bsh,header=user-agent,pattern=Nokia SyncML HTTP Client|S60 SyncML HTTP Client] (reason: NokiaS60out Synclet finished)
[2009-10-25 22:29:06,312] [funambol.transport.http] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [] Request processed.
[2009-10-25 22:29:07,656] [funambol.transport.http] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [] Handling incoming request
[2009-10-25 22:29:07,656] [funambol.transport.http] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [] Request URL: http://202.5x.xxx.70:8080/funambol/ds
[2009-10-25 22:29:07,656] [funambol.transport.http] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [] Requested sessionId: 2ECC7044874ADE344ACD67042E50D096
[2009-10-25 22:29:09,866] [funambol.engine.pipeline] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [] Output processing stopped by com.funambol.foundation.synclet.BeanShellSynclet@d11f32[script=com/funambol/server/engine/pipeline/phones-support/bsh/NokiaS60out.bsh,header=user-agent,pattern=Nokia SyncML HTTP Client|S60 SyncML HTTP Client] (reason: NokiaS60out Synclet finished)
[2009-10-25 22:29:09,877] [funambol.transport.http] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [] Request processed.
[2009-10-25 22:29:11,044] [funambol.transport.http] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [] Handling incoming request
[2009-10-25 22:29:11,044] [funambol.transport.http] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [] Request URL: http://202.5x.xxx.70:8080/funambol/ds
[2009-10-25 22:29:11,044] [funambol.transport.http] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [] Requested sessionId: 2ECC7044874ADE344ACD67042E50D096
[2009-10-25 22:29:11,413] [funambol.handler] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [] Handling mapping …
[2009-10-25 22:29:11,413] [funambol.handler] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [] Performing mapping …
[2009-10-25 22:29:11,449] [funambol.zimbra] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [card] Status:’ITEM ADDED’ for a ‘Add’ for this items: , 258
[2009-10-25 22:29:11,450] [funambol.zimbra] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [card] Status:’ITEM ADDED’ for a ‘Add’ for this items: , 259
[2009-10-25 22:29:11,450] [funambol.zimbra] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [card] Status:’ITEM ADDED’ for a ‘Add’ for this items: , 263
[2009-10-25 22:29:11,451] [funambol.zimbra] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [card] Status:’ITEM ADDED’ for a ‘Add’ for this items: , 268
[2009-10-25 22:29:11,451] [funambol.zimbra] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [card] Status:’ITEM ADDED’ for a ‘Add’ for this items: , 269
[2009-10-25 22:29:11,452] [funambol.zimbra] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [card] Status:’ITEM ADDED’ for a ‘Add’ for this items: , 270
[2009-10-25 22:29:11,501] [funambol.engine.source] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [card] card: 0 new items added, 0 existing items updated, 0 items deleted.
[2009-10-25 22:29:11,502] [funambol.engine] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [] IMEI:351878010770661/test@galxxxx.co.id: synchronization completed
[2009-10-25 22:29:12,130] [funambol.engine.pipeline] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [] Output processing stopped by com.funambol.foundation.synclet.BeanShellSynclet@d11f32[script=com/funambol/server/engine/pipeline/phones-support/bsh/NokiaS60out.bsh,header=user-agent,pattern=Nokia SyncML HTTP Client|S60 SyncML HTTP Client] (reason: NokiaS60out Synclet finished)
[2009-10-25 22:29:12,132] [funambol.transport.http] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [] Request processed.
[2009-10-25 22:29:12,137] [funambol.transport.http] [INFO] [2ECC7044874ADE344ACD67042E50D096] [IMEI:351878010770661] [test@galxxxx.co.id] [] Closing session 2ECC7044874ADE344ACD67042E50D096
[2009-10-25 22:30:20,197] [funambol.transport.http] [INFO] [D45F8564B2C57679692C6F94B1B3C15E] [] [] [] Closing session D45F8564B2C57679692C6F94B1B3C15E
[2009-10-25 22:30:25,509] [funambol.transport.http] [INFO] [DA0F67EA1BFC0C825274858B2DC0F443] [] [] [] Closing session DA0F67EA1BFC0C825274858B2DC0F443
[2009-10-25 22:31:46,564] [funambol.transport.http] [INFO] [0E2FABB594CFD5EE62907DE63377A549] [] [] [] Closing session 0E2FABB594CFD5EE62907DE63377A549

Log /opt/Funambol/logs/ds-server/ds-server.log diatas menunjukkan proses sync berjalan lancar tanpa error. Untuk melihat data contact yang di sync dari Nokia E61i ke Zimbra, user test@galxxxx.co.id login ke Zimbra Desktop atau Webmailnya dan cek penambahan Address Booknya atau Calender.

Sebelumnya saya sempat gagal dengan dengan error : [funambol.zimbra] [ERROR] [card] I/O Error diikuti java.net.SocketException: Unexpected end of file from server, yang disebabkan tidak samanya username dan pasword pada user di Funambol dan email account di Zimbra. Prinsipnya settingan Modul Zimbra di Funambol dan settngan Sync di mobile devices haruslah benar.