whisperfish/presage

Unknown contact handling

nanu-c opened this issue · 4 comments

If i receive a message from an unknown contact it should create a new contact and fetch the profile for the username.

Maybe I misunderstand contacts and profiles, but what I think is that contacts are "known numbers" that may optionally be assigned a name in Signal, and profiles are what a person advertises itself to be. So in my opinion, contact names should not be assigned the profile names, instead the application should first query the contact name, and if that does not exist, fetch the profile and show that as a fallback.

Actually in Signal-Android every person, also all the persons in all groups are transformed to a contact in the contact list. The "name" of the person/chat will be the username until i define another name in the contact.

presage currently only fetches the contacts on registering from the "main" signal registration. When a "new" person sends me a message the contact isn't created and if it's created, the message doesn't contain a username. So for creating a new contact the profile has to be fetched.

I did not think so, but if that is how Signal-Android does it, presage can also do it like that. What made me a bit sceptical was if Signal-Android auto-sets the contact name, why do some contacts of a contact sync not contain the profile name, but instead None. But as mentioned, if that is how it is done in Signal Android, I am fine with doing it like you suggested.

Some time ago they changed the registration process, that it's not possible anymore to set no username. I think the Nones are historical relicts.