diff --git a/app/src/main/java/org/linphone/ui/main/contacts/viewmodel/ContactNewOrEditViewModel.kt b/app/src/main/java/org/linphone/ui/main/contacts/viewmodel/ContactNewOrEditViewModel.kt index f07f65424..fba16db33 100644 --- a/app/src/main/java/org/linphone/ui/main/contacts/viewmodel/ContactNewOrEditViewModel.kt +++ b/app/src/main/java/org/linphone/ui/main/contacts/viewmodel/ContactNewOrEditViewModel.kt @@ -210,15 +210,11 @@ class ContactNewOrEditViewModel @UiThread constructor() : GenericViewModel() { updatePhoneNumbers() if (isEdit.value == false) { - if (friend.vcard?.generateUniqueId() == true) { - friend.refKey = friend.vcard?.uid - Log.i( - "$TAG Newly created friend will have generated ref key [${friend.refKey}]" - ) - } else { - Log.e("$TAG Failed to generate a ref key using vCard's generateUniqueId()") - // TODO: generate unique ref key? - } + friend.vcard?.generateUniqueId() + friend.refKey = friend.vcard?.uid + Log.i( + "$TAG Newly created friend will have generated ref key [${friend.refKey}]" + ) friend.isSubscribesEnabled = false // Disable peer to peer short term presence diff --git a/app/src/main/java/org/linphone/ui/main/contacts/viewmodel/ContactsListViewModel.kt b/app/src/main/java/org/linphone/ui/main/contacts/viewmodel/ContactsListViewModel.kt index 4f54d1074..f231a5806 100644 --- a/app/src/main/java/org/linphone/ui/main/contacts/viewmodel/ContactsListViewModel.kt +++ b/app/src/main/java/org/linphone/ui/main/contacts/viewmodel/ContactsListViewModel.kt @@ -281,9 +281,13 @@ class ContactsListViewModel @UiThread constructor() : AbstractMainViewModel() { for (result in results) { val friend = result.friend - if (friend != null && result.sourceFlags == MagicSearch.Source.LdapServers.toInt()) { - // TODO FIXME: Fix issue in SDK, each LDAP friend should have a proper refKey - friend.refKey = friend.name + if (friend != null && friend.refKey.orEmpty().isEmpty()) { + if (friend.vcard != null) { + friend.vcard?.generateUniqueId() + friend.refKey = friend.vcard?.uid + } else { + friend.refKey = friend.name + } } val model = if (friend != null) {