sugar and spice - linking sugarcrm with funambol
TRANSCRIPT
Sugar and SpiceLinking SugarCRM
with Funambol
Phil ShottonNovember 2008
2
Agenda
IntroductionCompany BackgroundRequirements for SyncWhy SugarCRM and Funambol?Taking it onConnector architectureChallengesFuture plansValue proposition
3
Introduction – Phil Shotton
□25+ years in software industry□Specialise in high-performance distributed systems development□Java, C++, C, Unix/Linux□'Bedrock' software□Founder and principal PSJ Solutions
4
Other Talents!
5
Introduction - PSJ Solutions
□Founded 2005□High performance custom solutions□Finance (pricing and trading)□Telecoms□Fortune 100 companies□Java and Open Source
6
Software/Platforms
□Java J2SE / JEE□Spring□Hibernate□Javaspaces / Gigaspaces□Eclipse RCP□Linux / Solaris / Microsoft
7
Typical Projects
□Order Management and Pricing for Asian Broker□Order Process Management for major UK Mobile Telecoms Company□Mobile / Backoffice integration for large multi-national corporate
8
Business Requirements
□ Client Management□ Shared and Personal Calendars□ Shared and Personal Contacts□ Contact and Calendar
Synchronisation□ Centralised Repository (under our
control)□ Low-cost
9
Technical Requirements
□ Linux Server□ Multiple client devices
◊ Windows, Linux◊ Mobile phones/palmtops
□ Multiple client software◊ Outlook, Thunderbird
□ Remote-accessible
10
Why Funambol/SugarCRM?
□ New company, new infrastructure□ Heterogenous environment□ Embracing Open Source Solutions
◊ Cost, flexibility□ Requirements fit□ Interesting technologies□
11
SugarCRM Home
12
SugarCRM Dashboard
13
Taking It On – Jun 2005!
□Problems with sync:◊ Dates, missing fields◊ Failed syncs
□New versions of SugarCRM and Sync4J not supported□But of course – we have the Source!□Oct '05 - become project maintainer
14
Overall Architecture
file:///usr/share/icons/gnome/48x48/apps/visor.png
file:///usr/share/icons/gnome/48x48/apps/palm-pilot.png
file:///usr/share/icons/Human/48x48/apps/kscreensaver.png
file:///usr/share/icons/Human/48x48/devices/gnome-dev-keyboard.png
file:///usr/share/icons/Human/48x48/devices/computer.png
file:///usr/share/icons/Human/48x48/devices/gnome-dev-keyboard.png
??
15
SugarCRM SOAP API
□49 methods□Connector uses 5
◊ get_entry_list◊ get_entry◊ set_entry◊ login◊ logout
16
Connector Architecture
17
Authentication
□SugarcrmOfficer – implements Officer□Uses Funambol credentials to attempt login to SugarCRM□Session used for all further SugarCRM calls
18
Administration
19
Admin Implementation
□Primarily to manage differences between different versions of SugarCRM.
20
Challenges
□Multi-layer – which one is the problem?□Debugging php, SOAP, Funambol□Understanding multiple technologies□Database use□No test harnesses□Build, release process□Multiple versions of EVERYTHING
21
Testing
file:///usr/share/icons/gnome/48x48/apps/visor.png
file:///usr/share/icons/gnome/48x48/apps/palm-pilot.png
file:///usr/share/icons/Human/48x48/apps/kscreensaver.png
file:///usr/share/icons/Human/48x48/devices/gnome-dev-keyboard.png
file:///usr/share/icons/Human/48x48/devices/computer.png
file:///usr/share/icons/Human/48x48/devices/gnome-dev-keyboard.png
??
Eclipse AxisTCPMonitor
22
SugarForge POM
23
Future Plans
□ General◊ Code cleanup, test harnesses, better
logging□ Selective sync, personal and/or
group calendar, contacts□ Email address handling□ Email sync
24
Making my life easier
□Documentation◊ Server call sequence and expected
behaviour◊ Utility API features◊ Howtos and examples◊ Database format, installation routines
□Test harnesses□Version change information
25
The Costs for PSJ
□Time, time and more time!□ file:///usr/share/icons/gnome/48x48/stock/generic/stock_alarm.png
26
The Benefits for PSJ
□Warm, fuzzy feeling :-)□Control of our own utility software□Exposure to potential client base□Exposure to interesting (marketable) technologies□Potential business from commercial support offerings
27
The End
28
Overview
□Outline 1□Outline 2□Outline 3
29
Overview
□Outline 1□Outline 2□Outline 3