Hello, Some while ago we started to discuss about an API to log and further manipulate information related to communication history.
We came out with a proposal to maintain a journal of communication data. The library is in early stage and can be found at http://svnweb.openmoko.org/trunk/src/target/OM-2007/openmoko-libs/libmokojournal/src/. The library has several key selling points: + it uses evolution data server (aka eds) under the hood to store journal information in the icalendar format, giving us a chance to share that information in an open and standard manner. + it exposes an API that hides the complexity of the eds API and provides a straightforward /journal/journal entry/ oriented abstraction Spirit of the API ----------------- libmokojournal exposes two main types: MokoJournal and MokoJournalEntry. MokoJournal can be loaded from and stored to persitent storage. Once loaded, it keeps instances of MokoJournalEntry in memory. Client code can then easily add or delete entries (instances of MokoJournalEntry), iterate over them etc ... Typical workflows are: + open and load a journal, create an entry, add it to the journal, write the journal to persitent storage, close the journal. + open and load a journal, get and entry, delete it, write the new journal state to persistent storage. This is a work in progress, so expect more to come toward a better completion of the API. You can look at the main header file at http://svnweb.openmoko.org/trunk/src/target/OM-2007/openmoko-libs/libmokojournal/src/moko-journal.h?rev=1731&view=auto You can also get some examples to learn how to + add journal entries: http://svnweb.openmoko.org/trunk/src/target/OM-2007/openmoko-libs/libmokojournal/tests/test-create.c?rev=1731&view=auto + remove journal entries: http://svnweb.openmoko.org/trunk/src/target/OM-2007/openmoko-libs/libmokojournal/tests/test-delete-uid.c?rev=1731&view=auto and http://svnweb.openmoko.org/trunk/src/target/OM-2007/openmoko-libs/libmokojournal/tests/test-delete.c?rev=1731&view=auto At this point, I would be happy to your hear comments so that we can add enhancement requests/bugs into bugzilla (for instance) to track the progress of this library. Cheers, -- Dodji Seketeli OpenedHand Ltd. 51 Great Brownings / London / SE21 7HP / UK Tel: +44 (0)20 8819 6559 Expert Open Source For Consumer Devices - http://o-hand.com/