Meego - Qt Mobility Contacts Backend?
-
What are the "qt mobility contacts backends" available and planned for the future on meego?
I noticed that the "people" (handset) and the "contacts" (netbook) application store data in different places. The default backend seems to be "tracker" and it did not get data from any of the two applications.
[edit: title fixed / Denis Kormalev]
-
would it be ok if qt mobility recognizes whether it's a handset or netbook and gets data respectively from one or the other place
-
Hi,
The backend is qtcontacts-tracker. Note that I believe that there was a bug in the tracker-0.9.26-1.6armv7l package - it didn't include the ontologies required to save (and, presumably, load) contacts - which could have caused the problem you were seeing. The problem is should go away if you use tracker-0.9.26-3 package instead. The meego-handset-ia32-mtf-1.1.80.8.20101130.1 and ivi-1.1.80.8.20101130.1 should both work as intended, I believe. I'm not sure about the netbook image, but I presume that it will eventually store data to tracker also.
If you are interested in developing on MeeGo and want to help iron out any bugs in the backend, or ask for help etc, please feel free to join #qtcontacts-tracker on freenode.
Cheers,
Chris. -
[quote author="chriadam" date="1291591195"]Hi,
The backend is qtcontacts-tracker. Note that I believe that there was a bug in the tracker-0.9.26-1.6armv7l package - it didn't include the ontologies required to save (and, presumably, load) contacts - which could have caused the problem you were seeing. The problem is should go away if you use tracker-0.9.26-3 package instead. The meego-handset-ia32-mtf-1.1.80.8.20101130.1 and ivi-1.1.80.8.20101130.1 should both work as intended, I believe. I'm not sure about the netbook image, but I presume that it will eventually store data to tracker also.
If you are interested in developing on MeeGo and want to help iron out any bugs in the backend, or ask for help etc, please feel free to join #qtcontacts-tracker on freenode.
Cheers,
Chris.[/quote]Chris,
I am looking into the possibility/usefulness of porting mycontacts to meego. I thought would be a very interesting exercise because I will have to deal with qt mobility and telepathy (I have also created some qml views for it).I am not sure when I will get a chance to start poking around but I will check with you on freenode when I do.
In the meanwhile I have a question: is tracker going to be the only backend? It was my understanding the tracker was more of an "search index database" for the entire system and not intended to become the main repository of any single type of data (contacts, emails, sms, ...). Did I get the picture wrong?
Thanks,
Felipe -
Hi Felipe,
To be honest, I'm the wrong person to ask. I know, for example, that the calendar/organizer data is stored to an SQLite storage of mKCal (KCal extensions library, available on gitorious), so perhaps tracker only stores metadata for indexing those data. But the contacts backend does, as far as I am aware, store all of its data to tracker. It uses "contactsd" to cross-index contact data from Telepathy, if I remember correctly.
In terms of which other backends are available, there is an sqlite backend available from our gitorious (contacts repo, sqlite branch) but it's not optimised and still very much a work in progress. We're hoping at some stage to complete it, because it would be a nice persistent, cross-platform, default-schema-supporting backend which could be used for testing purposes or for real data. But yeah, it's quite a while off being complete, as we are only able to work on it when we aren't busy with other things ;-)
Cheers,
Chris. -
Hi Chris,
[quote author="chriadam" date="1291678464"]Hi Felipe,
To be honest, I'm the wrong person to ask. I know, for example, that the calendar/organizer data is stored to an SQLite storage of mKCal (KCal extensions library, available on gitorious), so perhaps tracker only stores metadata for indexing those data. But the contacts backend does, as far as I am aware, store all of its data to tracker. It uses "contactsd" to cross-index contact data from Telepathy, if I remember correctly.
[/quote]
I would assume each contacts application (people or contacts) stores data in some kind of database not related to tracker. Maybe tracker will be "smart" and efficient enough that no other backend will have to exist to deal with them. Of course the backend will need to be able to store the information back too. I assume the telepathy information, like you said, will be aggregated by tracker.[quote author="chriadam" date="1291678464"]
In terms of which other backends are available, there is an sqlite backend available from our gitorious (contacts repo, sqlite branch) but it's not optimised and still very much a work in progress. We're hoping at some stage to complete it, because it would be a nice persistent, cross-platform, default-schema-supporting backend which could be used for testing purposes or for real data. But yeah, it's quite a while off being complete, as we are only able to work on it when we aren't busy with other things ;-)
Cheers,
Chris.[/quote]
Funny you said that. For a long time I have had this plan of creating a "full fledged" implementation of the contacts backend using sqlite. For instance it would be great for the maemo platform because, most likely, we will never have support to anything more than we have already (e.g. grouping contacts, multiple notes fields, ...)
That is one piece of code that I would like to help with! I will check it out... Do you know if anybody is actively working on it?BR
Felipe -
Hi,
Yep, I think the idea is that the tracker backend for contacts at least is smart enough so that other applications simply talk to it (rather than having to access any other databases such as Telepathy) for contact information. For more information, I'd suggest talking to Aleksandar on #qtcontacts-tracker :-)
For the sqlite engine, no, no-one is actively working on it. The public gitorious url for that branch is http://qt.gitorious.org/qt-mobility/contacts/commits/qtsw/sqlite. The code can be found in the usual location under /plugins/contacts/sqlite - it probably needs fairly extensive rewriting ;-)
Cheers,
Chris.