GNOME Bugzilla – Bug 733518
Make VOICE type optional for TEL in EContact
Last modified: 2014-11-21 10:16:40 UTC
Created attachment 281335 [details] screenshot illustrating the issue So, I have an OwnCloud server which I sync Evolution (3.12.4, Fedora 21) with using CalDAV. I have a lot of contacts on the server with phone numbers of this form (looking in the OwnCloud database): TEL;TYPE=WORK:+1 604-280-7355 Now if I actually *open* the contact - double-click on it - I see that phone number listed as "Business Phone". But if I set the contacts View to 'list view', and add a 'Business Phone' column to the list, that phone number doesn't show up in the column. It also doesn't show up in the 'preview' of the contact that shows up at the bottom of the list view when the contact is selected. See attached screenshot - note the same contact is selected in the UI and opened in a window, you can see the 'Business Phone' number in the contact window, but not in the main Evo UI, either in the table or in the 'preview pane' at the bottom.
So I think I have at least a lead on this. Looking at eab_phone_types[] in addressbook/util/eab-book-util.c , it looks like it expects to see business phone numbers that look like this: TEL;TYPE=WORK,VOICE:+1 604-280-7355 note the lack of the ,VOICE bit in mine. So I'm guessing the number isn't considered to be an E_CONTACT_PHONE_BUSINESS, which is what the contact list and minicard are looking for to display. If I'm reading the spec right, https://tools.ietf.org/html/rfc2426#section-3.3.1 , there's a whole bunch of 'type' values and no requirements as to how many or which should be specified, so there's nothing actually *invalid* about the form from my example. I'd suggest that it'd make sense to consider 'TYPE=WORK' with no other hints as a business voice number, and TYPE=HOME with no other hints as a home voice number; the spec kind of implies that you assume 'voice' unless otherwise specified, for phone numbers.
Thanks for a bug report. It makes sense to make the change and make the VOICE for TEL attributes optional on an EContact. The evolution adds there the VOICE type on a contact editing, the same as during import, but as this is for interoperability, then there are not many options for it. The change touches both evolution-data-server and evolution itself on master, though not on stable: Created commit a5333fd in eds master (3.13.8+) [1] Created commit a4f32cb in evo master (3.13.8+) [2] Created commit aa7eb97 in eds evolution-data-server-3-12 (3.12.9+) [1] https://git.gnome.org/browse/evolution-data-server/commit/?id=a5333fd [2] https://git.gnome.org/browse/evolution/commit/?id=a4f32cb