Download presentation
Presentation is loading. Please wait.
Published byFranklin McKenzie Modified over 9 years ago
1
Patrick Ohly 01.02.2012 © Copyright, 2012 Intel
2
History © Copyright, 2012 Intel2 Spare time project since 2006, full-time since 2009 Initial focus SyncML, both over the air and directly over Bluetooth “Local Sync”: connects two backends CalDAV/CardDAV ActiveSync PIM storage backends: Evolution, plain files, QtContacts/KCal (Nokia N9), Akonadi (experimental), XMLRPC Different frontends: GTK UI, command line, Qt (experimental) “The Missing Link”
3
© Copyright, 2012 Intel HTTP POST Reply OBEX GET OBEX PUT Server Stubs Sync Engine + UIs Data Storage Transports Evolution Data Server syncevo-dbus-server SyncML Client (Netbook) SyncML Server (Desktop) HTTP Daemon OBEXD libopenobex libsoup Local Machine (Desktop, Netbook, Phone) SyncML Server (Internet) SyncML Client (Phone) Peers contacting us Peers contacted by us Panel Applet GUI: sync-ui CLI: syncevolution HTTP POST Reply OBEX PUT OBEX GET 3
4
activesyncd © Copyright, 2012 Intel EDS syncevo-dbus-server libsoup Local Machine (Desktop, Netbook, Phone) CalDAV/ CardDAV Server Exchange 4 WebDAV syncevo-local-sync libneon vCard, iCalendar ActiveSync WBXML activesyncd API + vCard/iCalendar/email via D-Bus daemon SyncML + vCard/iCalendar via direct D-Bus connection Evolution libcamel CalDAV/CardDAV + ActiveSync + PBAP + …
5
EDS Improvements © Copyright, 2012 Intel5 Store and pass photos as files, managed by EDS Avoid redundant item parsing Global DB revision string (similar to CTag in DAV) Retrieve item meta data for change detection in sync
6
Getting Involved © Copyright, 2012 Intel Confidential6 http://syncevolution.org In development: Better local sync syncevo-dbus-server rewrite Automatic syncing PBAP backend (BMW CarIT) Needs help: KDE Google Data API GTK UI
7
© Copyright, 2010 Intel7 PIM Sync Challenges: It can eat your data?! SyncML Server SyncML Clients
8
© Copyright, 2010 Intel8 Swiss company with >10y experience with SyncML, owned by the two main developers Synthesis SyncML Engine: C++ implementation of client and server, data merging and conversion LGPL 2.1+3.0 Synthesis
9
SyncML – Freedom of Choice, No Vendor Lock-In Over the Air SyncML Server Google, ScheduleWorld, Funambol, Memotoo, Mobical, Synthesis, ZYB... SyncML Server Google, ScheduleWorld, Funambol, Memotoo, Mobical, Synthesis, ZYB... Google SyncEvolution - Sync PIM (Contacts, Events, Tasks, Notes) © Copyright, 2009 Intel< Over The Air Sync SyncML (OMA DS): protocol vCard/vCalendar/iCalendar: payload
10
PIM Sync + Interoperability Challenges © Copyright, 2010 Intel10 1.No globally unique ID. 2.Different representation of data. 3.Offline updates allowed: what is the most recent data? 4.Must support standard formats, including legacy ones (vCalendar). 5.Must work with limited knowledge about peers (capabilities, behavior).
11
SyncML as Protocol © Copyright, 2010 Intel11 “slow sync” – client sends all items, server compares, sends updates back “normal sync” – exchange of updates Resilient – suspend&resume (voluntarily or due to loss of connection), resend messages Device Capability description
12
© Copyright, 2010 Intel12 Command line: syncevolution --configure \ --sync-property username=foo \ --sync-property password=bar \ scheduleworld syncevolution scheduleworld syncevolution --sync-properties ? syncevolution --source-properties ? Applet: Genesis, by Frederik Elwert GTK GUI (“sync-ui”) Usage
13
Sync-UI: Setup © Copyright, 2010 Intel13
14
Sync-UI: Houston, we’ve got a problem. © Copyright, 2010 Intel14
15
Sync-UI: We’ve got a solution. © Copyright, 2010 Intel15
16
© Copyright, 2010 Intel D-Bus Evolution Backend D-Bus Server Command Line CPPUnit Testing SyncEvolution Core Synthesis Glue Synthesis Coretransport lib Synthesis Glue SyncML Server HTTP(S) GNOME Evolution Data Server libecal/ebook D-Bus libical GTK GUI 16
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.