Imported contacts are not recognized as such on incoming SMS

So, I have a brand new FP6 with the latest /e/os. After initial setup I imported all my contacts from a .vcf file. Now the problem is that when a contact, that does not yet have a message history on the FP writes me a SMS, the contact is not recognized a such and the message is displayed with the phone number as sender instead of the name. That implicates that I do not know who sent me the message, which is quiet, yeah … no so much awesome. Only if I add the phone number from the chat to contacts again, the sync works.

In case I first wrote a message to a certain contact, the reply is also displayed as new chat with the phone number. After adding to contact again from, via the message app, I end and up with two chats: the first holds my initial message and is headlined by the contacts phone number, the second holds everything starting from the contact’s reply and is correctly displayed with the contact name instead.

Any ideas how to fix this as I would like to avoid adding all my contacts by hand.

After months, I finally found what caused the problem.

The phone number were stored with an optimal zero after the country code, for example:

+49 (0) 178 2437 67886

The “optimal” zero is only needed, if you omitted the county code, that’s why it’s in brackets. When the contacts app imported the number, it did not recognise the format and thus stored it as +490178243767886, false including that zero. When other texted me, their messages appeared with the correct number, that is, without the zero. And so I ended up with two chats.

Now I have to go through all my contacts and manually remove this wrongly included zero.

A mess that is!

Well, the (0) is a holdover from the days before mobile phones, it’s an incorrect format for electronic systems.

I’d say your Contacts app was at fault and should have notifiied the problem or refused the import.

Depending on how many contacts you have, you could do a fresh export and correct the numbers using a spreadsheet.

That you for you suggestions.

I’m not so sure about that. As I mentioned above, this zero is required if you dial a number without country code in Germany, at least. An example:

  • +49 1576 345 23435 # ok
  • 01576 345 23435 # ok
  • +49 01576 345 23435 # does not connect
  • 1576 345 23435 # does not connect

Moreover, there are also other import issues. For example, mobile numbers that I actually stored without country code in my previous address book, like "01578 3834213” are imported as “015-783-834213”, adding these dashes. Also the the land line numbers are messed up. The correct format in Germany is 5-digit area code + number, e.g. 03435 784524. My FP address book stores (displays) such numbers as 034-357-84524, which is totally weird to see.

Well normally you should be able to use the first format, +country code followed by number without leading zero, in any situation, even if you’re in the country indicated by the code.

Using that format avoids having to modify the number according to where you’re dialing from.

The correct format in Germany is (as everywhere) the E.164 format (consisting of county code CC, national destination code NDC and subscriber number SN). In your case/examples “+49 1576 34523435”. This format is used in modern phones and makes sure that it works for every country and defines worlwide unique phone numbers.
As mentioned by @OldRoutard only use this format within your address book and you’ll always be fine.

The example “+49 (0) 171 2345 67890” is how icloud exported my phone book. And I makes perfect sense: it illustrates that the zero depends on the context. I had never in my whole life a problem with the number format when transferring to a new phone. Neither on android nor on ios.

Enter murena. Now I had to manually edit all my contacts to adhere to E.164. I would have been an easy thing to write an import routine that recognizes different formats and converts them to E.164. An really, from a modern OS I expect such a thing to just work.