People skills

Tired of boring, impersonal applications? Always wanted to integrate your friends' details into your accounts payable application? Your boss's home address into your circus parade routing application? Or "accidentally" remove the support phone email address for your own company from your customer's phonebooks? Well, now¹ you can!

The Mobility project includes a component for accessing Contact information. This allows you to retrieve, create, update and delete address book information, as well as invoke actions on them (things like Send email, Dial or Invoke Voodoo). Just like QtSql, or Phonon, the Contacts component is intended to support accessing contact information from many different applications or services (at last count, we'd found over 20 candidates), including your favourite mobile phones, desktop programs and web services. The Contacts API is intended to be flexible and scalable enough to handle the wide range of capabilities of contacts engines - from SIM cards to RDF or LDAP backends. It's (very) early days yet, but people are working hard on filling in the holes. You can probably expect some API changes before we're done (particularly around filtering and asynchronous requests), but most of the foundations are stable.

The code is available on Gitorious. You'll notice that right now there's a lot of documentation and tests, and the addressbook tutorial from Qt has been modified to use this API. There are currently only a few actual backend engines - don't worry, those will come along soon. You can easily add support for a new contacts engine via a plugin, so we're expecting that not every plugin will make its way into our repository - but we'll certainly try to accept any contributions². We have an initial rough implementation of a KDE 4.2 (libkabc 4.2) engine for validating the design, and an in-memory "reference" engine. Engines for Symbian, Windows Mobile and other platforms will appear over time as well.

Feel free to send any feedback to qtmobility at trolltech.com - or code contributions via Gitorious.

¹ For values of now that are equal to soon :)
² Code, docs, feedback, or voodoo pins (we're running low).


Blog Topics:

Comments