PDA

View Full Version : [Implemented] Automatically grab avatars from social services for Contacts app


qgil
2009-10-26, 11:51
This is the discussion thread of this Brainstorm proposal: Automatically grab avatars from social services for Contacts app (http://maemo.org/community/brainstorm/view/enhance_contacts/)

allnameswereout
2009-10-26, 12:11
Gravatar is popular service to host avatar to allow to sync with other platforms. To access their API you can implement in plugin for your software. They have tons reference implementations and reference implementations in tons of languages. (http://en.gravatar.com/site/implement) (I've never the platform btw.)

hasselmm
2009-10-26, 14:12
For grabbing contacts from Facebook I am experimenting with telepathy-gruschler right now:
http://cgit.freedesktop.org/~hasselmm/telepathy-gruschler

Still Facebook can hardly be used to automatically annotate contacts with Avatars: The API is too closed. For instance it doesn't export any reliable information like email addresses or phone numbers for privacy reasons.

Gravatar support? Yes, this would make sense. It's an easy to use service.

Texrat
2009-10-26, 16:33
I would hope we could eventually have avatars distinct per Contact group, with a default master avatar. I would not want my ugly rat icon displayed to business contacts. ;)

zerojay
2009-10-26, 17:50
For grabbing contacts from Facebook I am experimenting with telepathy-gruschler right now:
http://cgit.freedesktop.org/~hasselmm/telepathy-gruschler

Still Facebook can hardly be used to automatically annotate contacts with Avatars: The API is too closed. For instance it doesn't export any reliable information like email addresses or phone numbers for privacy reasons.

Gravatar support? Yes, this would make sense. It's an easy to use service.

Didn't know about this telepathy plugin. Interesting.

Jaffa
2009-10-26, 18:16
I'd argue you can use the Facebook API to get avatars, because I already do in Hermes (http://hermes.garage.maemo.org/index.htm). The point is that most people probably don't have three "Dave Smith"s as Facebook friends and in their Contacts.

Hermes currently does:


Facebook
Twitter


Future possibilities:

Google Contacts (Mail for Exchange doesn't retrieve images, I'm told)
gravatar.com
maemo.org ;-)

sjgadsby
2009-10-26, 18:30
...most people probably don't have three "Dave Smith"s as Facebook friends and in their Contacts.

That's probably true, but my family and my wife's family each have their own set of "favorite" names, used again and again. I've resorted to including middle initials, nicknames, and other tie breakers in the "first name" fields for a number of my contacts to stop Hermes from assigning every person with a particular name the same avatar and birthday.

allnameswereout
2009-10-26, 20:21
The point is that most people probably don't have three "Dave Smith"s as Facebook friends and in their Contacts.There are common first names in every language, such as 'John', 'Avi', 'Mohammed'. Same for last name. Collisions are bound to occur.

Jaffa
2009-10-26, 22:22
That's probably true, but my family and my wife's family each have their own set of "favorite" names, used again and again. I've resorted to including middle initials, nicknames, and other tie breakers in the "first name" fields for a number of my contacts to stop Hermes from assigning every person with a particular name the same avatar and birthday.

Have you raised a bug (https://bugs.maemo.org/buglist.cgi?product=Hermes) about not using the same social network friend more than once? ;-)

Jaffa
2009-10-26, 22:23
There are common first names in every language, such as 'John', 'Avi', 'Mohammed'. Same for last name. Collisions are bound to occur.

Is this actually a problem? I don't know anyone with the same first name and last name combination, and I don't know if I'm abnormal in that.

qgil
2009-10-26, 23:00
Can this proposal be moved to Under Development choosing Solution 3?

Hrw
2009-10-27, 09:53
There should be possibility to add own plugins for other services. For example I would like to get all people from my LinkedIn profile fetched into Contacts (Palm Pre do that).

Some people would like to get Blip (Polish clone of Twitter) support etc.

benny1967
2009-10-27, 10:17
There's one thing that's not explicitely mentioned in this proposal, so I just want to ask:

I assume (but didn't read anywhere) that whenever you manually add a photo to a contact (either on the N900 itself or by syncing a contact that as a photo assigned), this photo will override any automatically fetched avatars, no matter if they are taken from social networks as proposed here or (as usual) from the instant messaging application.

Is this what you are discussing here or would you prefer to see the automatically fetched avatar overwrite a manually set image?

benny1967
2009-10-27, 10:23
Is this actually a problem? I don't know anyone with the same first name and last name combination, and I don't know if I'm abnormal in that.

Everyone in my family knows two people with the same first name / last name combinations: my father and me.

Two of the people I regularly work with share the same name.

If I'd use an N900 not as a private, but as a professional phone, I'd have even more name conflicts because they are quite common in our company and we have a lot of mail addresses like firstname3.lastname@company.at (in case there's three people with the same name).

Jaffa
2009-10-27, 11:46
Everyone in my family knows two people with the same first name / last name combinations: my father and me.

And how are those entered in Contacts? Two entries with the same name? How do you differentiate them?

Jaffa
2009-10-27, 11:49
There should be possibility to add own plugins for other services. For example I would like to get all people from my LinkedIn profile fetched into Contacts (Palm Pre do that).

Some people would like to get Blip (Polish clone of Twitter) support etc.

There are two things here which overlap but have different amounts of work. I want to avoid designing a system which is so generic that it becomes unusable in the "normal" cases (see some of the problems with Mauku 2.0, for example).

So, is it:


I want to be able to write a plugin for an arbitrary website (e.g. work Intranet) which has both UI and service components.
I want Blip, LinkedIn, ... support.


Now, #2 may be easiest to implement (if there are many services) with a nice generic framework internally; but it might not.

benny1967
2009-10-27, 13:34
And how are those entered in Contacts? Two entries with the same name? How do you differentiate them?

Sure. Two entries with the same name. To be precise, even I have it that way because I keep myself as a contact on my N810/phone/desktop so I can easily send my vCard to people.

I know my brother and I both use photos with each contact, so it's easy to tell them apart from the lists. My mother's phone shows a primary number under each contact entry, so she knows which is which.
(Same with my company phone where I have stored the two co-workers that have the same name. It doesn't have the ability to show photos with contacts, but it shows the primary number, so I can tell them apart.)

Even if all of us would use different strategies based on names (like include our middle names, use my nickname instead of my first name, .....), that wouldn't help much when you try to match against an online service that does not keep this kind of additional information. Assume we had such online accounts (neither my father nor I have any of them, so it's a theoretical issue), we certainly wouldn't have used the name variations there that are usual within our family. ;)
(And pls. don't shoot me now, I have little knowledge of how Hermes really works other than the descriptions found on the garage homepage. So maybe I'm really far off.)

Jaffa
2009-10-27, 14:31
I know my brother and I both use photos with each contact, so it's easy to tell them apart from the lists.

So you don't need Hermes to handle it! ;-p

My mother's phone shows a primary number under each contact entry, so she knows which is which.

Not an approach which'd work on the N900 :-(

Even if all of us would use different strategies based on names (like include our middle names, use my nickname instead of my first name, .....), that wouldn't help much when you try to match against an online service that does not keep this kind of additional information. Assume we had such online accounts (neither my father nor I have any of them, so it's a theoretical issue), we certainly wouldn't have used the name variations there that are usual within our family. ;)

Which is why manual mapping has been on the roadmap since day one!

(And pls. don't shoot me now, I have little knowledge of how Hermes really works other than the descriptions found on the garage homepage. So maybe I'm really far off.)

I'm trying to understand the use cases. In this circumstance, Hermes should do the following:


Load your list of social network friends.
Load your address book.
Identify that there are two address book contacts with the same name.
Not perform any automatic enrichment of either of those contacts.
Allow you to manually map each of the contacts separately (although how you'd distinguish them in the mapper with only the name to go on, I'm not sure)
Enrich each contact based on the manual mapping.

Hrw
2009-11-13, 13:51
So, is it:


I want to be able to write a plugin for an arbitrary website (e.g. work Intranet) which has both UI and service components.
I want Blip, LinkedIn, ... support.


Now, #2 may be easiest to implement (if there are many services) with a nice generic framework internally; but it might not.

When will get device I can look at Hermes source and decide which way to go - maybe even try to write something for LinkedIn which will need improving but should work more or less.

qgil
2009-12-10, 07:18
http://maemo.org/community/brainstorm/view/enhance_contacts/ filed under Implemented

Solution #3: Use Hermes

Thank you for the discussion and the work!

qgil
2009-12-10, 07:18
http://maemo.org/community/brainstorm/view/enhance_contacts/ filed under Implemented

Solution #3: Use Hermes

Thank you for the discussion and the work!