Set up a Funambol server to sync Smartphone with Zimbra

| Posted in Funambol, Linux Server, Nokia, Zimbra

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 :

mail:/home/gtoms# 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]

mail:/home/gtoms# 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


mail:/home/gtoms#

mail:/home/gtoms# 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

mail:/home/gtoms#

mail:/home/gtoms# 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

Screenshootnya :

Screenshot0040

Screenshot0052

Screenshot0054

Screenshot0045

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.

Comments (28)

nice tutorial, 1 opsi sudah terjawab untuk melepaskan diri dari si exchange

mas gultom saya coba install funambol n berhasil saat saya panggil kluar error kaya gini

Not Found

The requested URL was not found on this server.

Please try again later.

« Go back

ERROR: 404

kira2 apa tuch ya….oh ya tu yg di panggil pada broeser ip public or ip mail server.

makasih

kalau sudah jalan tolong paste sini hasil :

netstat -nltup |grep 8080

ps axf |grep funambol

hasil nya itu tadi mas henry kya yg bawah ini :
———————————————————-
Not Found

The requested URL was not found on this server.

Please try again later.

« Go back

ERROR: 404
——————————————————————————-

saya panggil ip mailserver na

ini hasil yg di minta mas henry

[root@mail ~]# netstat -nltup |grep 8080
[root@mail ~]# ps axf |grep funambol
31643 pts/2 S+ 0:00 _ grep funambol
[root@mail ~]#

thx u

itu aja hasilnya ? kalau itu berarti belum running dong instalasi funambolnya, please baca berulang2 dokumentasi/wiki nya baik2.

kalau dah jalan hasilnya begini :
mail:/home/gtoms# ps axf |grep funambol
13528 pts/0 S+ 0:00 _ grep funambol
28473 ? Sl 1:46 /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
28479 ? Sl 1:49 /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
28505 ? Sl 6:29 /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
28513 ? Sl 1:55 /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
28518 ? Sl 1:34 /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
mail:/home/gtoms#

mail:/home/gtoms# netstat -nltup |grep 8080
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 28505/java
mail:/home/gtoms#

allow mas henry saya dah coba install ini hasil na

[root@mail Funambol]# ls
admin config ds-server LICENSES logs plug-ins tools
bin ctp-server inbox-listener LICENSE.txt pim-listener Readme.txt
[root@mail Funambol]#

Sepertinya anda malas membaca manual/readme nya deh.

push email nya sudah bisa juga ya pak?
untuk mengaktifkan fitur push email, bisa dipandu step by step nya pak?

ngk fahan juga aq, he he he

saya pingin pake yg opensource bwt kantor, tapi pengen rubah halaman depan

mas henry, mau tanya :

gimana caranya rubah tampilan depan zimbra?
btw.utk zzimbra yg open source katanya gak boleh dirubah ya?

maaf kk, udah pernah coba pake sogo conector blom ??

maap sebelumnya….
saya masih awam dengan funambol dan zimbra…
mohon bantuan dari mas henry…
saya ingin mengangkat topik ini sebagai judul skripsi,tp saya bngung apa yang harus dilakukan pertama kali…
saya sudah install dns server..tahap berikutnya saya kurang paham mas henry…
mohon petunjuk dari mas henry..
sekali lagi terimakasih banyak….

@Putu,

Sudah ada 2 orang yg mengangkat sebagian artikel saya menjadi skripsi mereka dan sukses meraih nilai baik. Ada baiknya Putu mengirimkan surat keterangan dahulu dari kampus mengenai judul yang akan anda angkat dan meminta ijin ke saya. suratnya kirim ke email setelah itu saya akan bantu.

mohon maap sebelumnya mas henry…
saya kurang mengerti ttg surat keterangan yang mas henry maksud..bagaimana formatnya mas henry??
dan juga surat izinnya??
mohon penjelasan dari mas henry
kalo boleh saya tau alamat email dari mas henry…
terimakasih mas henry

Met pagi Mas..Artikelnya bagus2 banget,kebetulan saya sedang belajar buat mail server..Mau nanya mas kalo misalnya kita pengen data user (misalnya alamat email user) yang ada diserver dilindungi ato dienkript itu gimana caranya?Terus bagusny pakai algoritma apa ya?
Mohon bantuannya..
Trimakasih mas :-)

@imam :

gunakan sistem kripto asimetris seperti RSA, zimbranya di integrasi dengan certificate authority(CA) yang dapat memproduksi public key dan private key.

yang pernah saya implementasi menggunakan EJBCA dan Dog Tag. Keduanya cukup populer sebagai open source untuk pembuatan public key infrastructure(PKI).

Wah mantab tutorialnya

salam kenal

mas henry mohon bimbingan dan petunjuk:
setelah sya ketikkan perinta ps axf |grep funambol keluar output spt dibawah
tapi saya masih bngung.,knp tidak ad coretan seperti output mas henry. dan sya tidak bsa mengakses FUnambolnya.
terimakasih….

root@zimbra:/opt/Funambol# ps axf |grep funambol

4651 pts/0 S+ 0:00 | _ grep funambol
26829 pts/0 Sl 0:01 /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
26837 pts/0 Sl 0:02 /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
26882 pts/0 Sl 0:02 /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
26893 pts/0 Sl 0:02 /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

maap nanya lg mas henry
untuk perintah: netstat -nltup |grep 8080
tidak mau jalan mas…
apa mungkin bentrok dengan mail zimbra??

karena setelah saya cek dengan perinta netstat -nltup tidak ada port 8080 yg terbuka mas.
mohon petunjuk dari mas henry
terimakasih..

mas henry maap menggaggu…

saya mau tanya ttg funambol administration tools. apakah diinstall pada satu server juga atau diinstall pada komputer yg lain??
saya sudah coba menginstall pada laptop pribadi,tp tidak bsa mengakses funambol servernya. selalu gagal dalam login dan muncul warning:
host not found or not reachable,please verify the connectioin parameters

mohon bimbingan dari mas henry…
terimakasih

@Putu
funambol administration tools itu tidak diinstall di server funambolnya, bisa diinstall di komputer lain dengan OS Windows XP.

untuk host not found or not reachable, please verify the connectioin parameters, pastikan dari laptop anda ke server terkoneksi dengan baik,test ping IP dan hostname jalan.

terimakasih mas henry…
ternyata saya masih salah dalam proses instalasi funambol servernya.
saat masuk opt/Funambol/bin:./install-modules
keluar output spt dbawah:
BUILD FAILED
/opt/Funambol/ds-server/install/install.xml:197: The following error occurred while executing this line:
/opt/Funambol/ds-server/install/install-modules.xml:101: The following error occurred while executing this line:
/opt/Funambol/ds-server/install/install-modules.xml:126: Error while expanding /opt/Funambol/ds-server/modules/ZimbraConnector.s4j

mohon petunjuk dari mas henry…
apakah zimbra connector harus mengikuti spesifikasi atau boleh bebas mas henry??
terimakasih…

@Putu :
Apa isi install.properties di folder ds-server anda ?

maaf mengganggu mas henry,,setelah ZimbraConnector_0.5.02.zip saya unzip filenya menjadi ru.korusconsulting kemudian file tersebut saya pindahkan ke /opt/Funambol/ds-server/modules :
apakah benar langkah yg saya lakukan tersebut mas henry??

isi dari install.properties di ds-server sudah saya samakan dg tutorial mas henry, yaitu ditambahkan ZimbraConnector. seperti dibawah:

  1. Modules definitions#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

mohon bimbingan dari mas henry.
TERIMAKASIH….

Maap saya mengganggu mas Henry,

bisakah setting di device pada funambol administration tool di reset??
karena pada search devices saya lupa descriptionnya…
mohon balasan dan petunjuk dari Mas Henry
terimakasih

maap mengganggu mas henry..
saat saya cek ds-server.log muncul output:
[2010-09-21 00:18:46,777] [funambol.engine] [ERROR] [9831E440D3949C8205D5D190001C5C5A] [IMEI:356059033306255] [adi@mail.zimbra.ource configuration for source notes
com.funambol.framework.server.store.NotFoundException: Source not found for notes

at com.funambol.server.store.SyncSourcePersistentStore.read(SyncSourcePersistentStore.java:183)
at com.funambol.server.store.PersistentStoreManager.read(PersistentStoreManager.java:167)
at com.funambol.server.engine.Sync4jEngine.getServerSource(Sync4jEngine.java:1186)
at com.funambol.server.engine.Sync4jEngine.checkServerDatabase(Sync4jEngine.java:2274)
at com.funambol.server.engine.Sync4jEngine.prepareDatabases(Sync4jEngine.java:1351)
at com.funambol.server.session.SyncSessionHandler.processInitMessage(SyncSessionHandler.java:1246)
at com.funambol.server.session.SyncSessionHandler.processInitSyncMapMessage(SyncSessionHandler.java:926)
at com.funambol.server.session.SyncSessionHandler.processMessage(SyncSessionHandler.java:526)
at com.funambol.server.engine.SyncAdapter.processInputMessage(SyncAdapter.java:533)
at com.funambol.server.engine.SyncAdapter.processWBXMLMessage(SyncAdapter.java:369)
at com.funambol.transport.http.server.LocalSyncHolder.processWBXMLMessage(LocalSyncHolder.java:118)
at com.funambol.transport.http.server.Sync4jServlet.doPost(Sync4jServlet.java:397)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.funambol.transport.http.server.LogContextFilter.doFilter(LogContextFilter.java:115)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Unknown Source)

mohon bimbingan dari mas henry. apa yang salah dalam settingan funambol server??
terimakasih mas henry

Mas Gultom,
Funambol saya sudah jalan , tetapi kenapa kl saya akses dari ip external tidak bisa ya?
kl diakses dari ip local 192.168.x.x bisa. mohon pencerahan?
tks

Write a comment