(→Contact Storage) |
(→Mail Storage and Transports) |
||
| Line 52: | Line 52: | ||
== Mail Storage and Transports == | == Mail Storage and Transports == | ||
| - | '''Maemo solution''': QtMobility/QtMessaging API + Qt Messaging Framework (QMF, actual implementation)<br> | + | '''Maemo solution''': QtMobility/QtMessaging (API) + Qt Messaging Framework (QMF, actual implementation)<br> |
| - | '''EDS''': QMF-compatible API (?) + Camel library (part of EDS, but not running in the daemon itself yet)<br> | + | '''EDS proposal''': QtMobility/QtMessaging (API) + QMF-compatible API (?) + Camel library (part of EDS, but not running in the daemon itself yet)<br> |
'''Used by''': mail app ([mailto:carl.wong@intel.com Carl Wong]), SMS storage plugin ([mailto:benjamin.t.drucker@intel.com Ben Drucker]) | '''Used by''': mail app ([mailto:carl.wong@intel.com Carl Wong]), SMS storage plugin ([mailto:benjamin.t.drucker@intel.com Ben Drucker]) | ||
| Line 62: | Line 62: | ||
* kudos to [mailto:srinivasa.ragavan.venkateswaran@intel.com Srinivasa (Srini) Venkateswaran] for this proposal | * kudos to [mailto:srinivasa.ragavan.venkateswaran@intel.com Srinivasa (Srini) Venkateswaran] for this proposal | ||
* write simplistic server which runs Camel | * write simplistic server which runs Camel | ||
| - | * replace QMF client library with one which accesses that server - ideally this library is at least QMF API source code compatible (=> adapting apps requires recompilation, not rewriting) | + | * replace QMF client library with one which accesses that server - ideally this library is at least QMF API source code compatible (=> adapting apps and QtMobility/QtMessaging requires recompilation, not rewriting) |
* account setup UI | * account setup UI | ||
| + | |||
| + | Some possible variations of plan A: | ||
| + | * rewrite mail app and QtMobility/QtMessaging to use Camel daemon via D-Bus | ||
| + | * QMF (source code) compatible replacement, used by mail app and Messaging (proposal above) | ||
| + | * rewrite mail app to use Messaging, rewrite Messaging to use Camel via D-Bus | ||
'''Plan B''': | '''Plan B''': | ||
* keep QMF as mail infrastructure | * keep QMF as mail infrastructure | ||
| - | |||
== Data Synchronization == | == Data Synchronization == | ||
Contents |
The architecture decision to make the transition from Nokia-supported components for contacts and calendar data (PIM) storage, email storage and transports, and sync back to the components used in MeeGo Netbook (Evolution Data Server and SyncEvolution) was announced publicly on March 7th. Planning the execution of that change is currently (end of March 2011) in progress.
This page gathers information about the PIM + mail storages and sync. Main author and point of contact is Patrick Ohly. It includes information contributed by various people, mentioned with email address below.
Information that has not been confirmed is marked with a question mark.
Maemo solution: QtMobility/QtOrganizer (API) + KCalCore (KDE) + modifications + mKCal (sqlite storage)
EDS proposal: QtMobility/QtOrganizer (API) + /KCalCore-EDS + libecal/libical (client side) + EDS (server side, stored in iCalendar 2.0 text file)
Used by: calendar app (Sirisha Muppavarapu), clock app (originally Todd Brandt)
Advantages of mKCal:
Disadvantages of mKCal (current implementation):
Plan:
Maemo solution: QtContacts (API) + QtContacts-Tracker (glue code) + Tracker (storage) + contactsd (updating presence information in Tracker)
EDS proposal: QtContacts (API) + [[Architecture/planning/evolution-data-server/QtContacts storage plugin|QtContacts-EDS] + libebook (client side) + EDS (server side, storage of vCards in Berkley DB); libfolks as replacement for contactsd
Used by: libseaside/meego-app-contacts/meego-handset-people/ContactPicker.qml (Connie Berardi and [1]), SMS and Messaging apps (Ben Drucker), various parts of Tablet UX via QML binding, obexd for Phone Book Access Protocol (PBAP) plugin)
Advantages of Tracker:
Disadvantages of Tracker:
Plan:
Opens:
Maemo solution: QtMobility/QtMessaging (API) + Qt Messaging Framework (QMF, actual implementation)
EDS proposal: QtMobility/QtMessaging (API) + QMF-compatible API (?) + Camel library (part of EDS, but not running in the daemon itself yet)
Used by: mail app (Carl Wong), SMS storage plugin (Ben Drucker)
Advantages of QMF:
Plan A (details)
Some possible variations of plan A:
Plan B:
Maemo solution: Buteo Sync Framework, Buteo SyncML, Buteo Sync Plugins, Buteo Media Transfer Protocol (MTP)
Alternative: SyncEvolution, Synthesis SyncML, Buteo Media Transfer Protocol
Advantages of Buteo:
Disadvantages of Buteo:
Step 1:
Step 2:
Further improvements to SyncEvolution/MTP: