[documentation] People app
asked 2014-06-16 12:55:05 +0200
This post is a wiki. Anyone with karma >75 is welcome to improve it.
please provide a detailed documentation for contacts
or the people
app. addressing things like:
- how does the 'link' function work. how are we supposed to know what exactly are we linking.. if only the name is shown?
- does unlinking something from a contact leads to losing that info from phone?
- whats is the pivotal identifier for a contact entry.. is it the name? nickname or something else that uniquely identify a contact entry?
- telepathy integration and inability to edit 'nicknames'
and regarding integration:
- does removing an account removes the contact entry from the phonebook? and if the user had manually added a phone number to contact synced from a service like Facebook, will removing the account leads to losing the phonenumber also?
Linking a contact into another causes the backend to treat those two contacts as facets (constituents) of the same real contact (called an aggregate contact). It is a lossless operation, and you can unlink them later without losing data. When you unlink a contact, the backend will generate an aggregate for it, which contains just the details of that unlinked contact, just as if you had created a new local contact via the People app which did not get automatically linked into any other contact (eg due to name match).
Every contact has a unique identifier. Most contacts have a GUID also.
I can't provide much information on the telepathy integration. Generally, the nickname information provided by Telepathy comes from the buddy-roster of an XMPP chat service, so should not be modifiable.
Removing an account does remove any contacts from the phonebook which came from that account. If you manually added a phone number to a contact synced from Facebook, however, an "incidental" local contact is created which contains that phone number. When the Facebook account is removed, the incidental contact will remain (but the Facebook contact will be unlinked from the aggregate and its details will be removed from the disk). So, no, you won't lose the phone number.
If you're really interested in the semantics, see https://github.com/nemomobile/qtcontacts-sqlite
Hope this helps!
Cheers, Chris.
chris.adams ( 2014-06-17 04:46:04 +0200 )edit