diff --git a/ring-android/app/src/main/java/cx/ring/fragments/ConversationFragment.java b/ring-android/app/src/main/java/cx/ring/fragments/ConversationFragment.java
index 034e88443557ce35f4ca9123d9a1efdaf4f5e6e1..a832ac44142daa9badcdbf6b91f8337ce47dc09c 100644
--- a/ring-android/app/src/main/java/cx/ring/fragments/ConversationFragment.java
+++ b/ring-android/app/src/main/java/cx/ring/fragments/ConversationFragment.java
@@ -126,8 +126,6 @@ public class ConversationFragment extends BaseSupportFragment<ConversationPresen
 
     public static final int REQ_ADD_CONTACT = 42;
 
-    public static final String KEY_CONTACT_RING_ID = BuildConfig.APPLICATION_ID + ".CONTACT_RING_ID";
-    public static final String KEY_ACCOUNT_ID = BuildConfig.APPLICATION_ID + ".ACCOUNT_ID";
     public static final String KEY_PREFERENCE_PENDING_MESSAGE = "pendingMessage";
     public static final String KEY_PREFERENCE_CONVERSATION_COLOR = "color";
     public static final String KEY_PREFERENCE_CONVERSATION_LAST_READ = "lastRead";
diff --git a/ring-android/app/src/main/java/cx/ring/fragments/ShareWithFragment.java b/ring-android/app/src/main/java/cx/ring/fragments/ShareWithFragment.java
index 75738a0cf38486bb45f3523dd6160c533b150a9e..7e8941ff8ff9a2f5cecbfbd398295c5566206ccb 100644
--- a/ring-android/app/src/main/java/cx/ring/fragments/ShareWithFragment.java
+++ b/ring-android/app/src/main/java/cx/ring/fragments/ShareWithFragment.java
@@ -145,8 +145,7 @@ public class ShareWithFragment extends Fragment {
                     if (type != null && type.startsWith("text/")) {
                         intent.putExtra(Intent.EXTRA_TEXT, previewText.getText().toString());
                     }
-                    intent.putExtra(ConversationFragment.KEY_ACCOUNT_ID, smartListViewModel.getAccountId());
-                    intent.putExtra(ConversationFragment.KEY_CONTACT_RING_ID, smartListViewModel.getUri().getUri());
+                    intent.putExtras(ConversationPath.toBundle(smartListViewModel.getAccountId(), smartListViewModel.getUri()));
                     intent.setClass(requireActivity(), ConversationActivity.class);
                     startActivity(intent);
                 }
diff --git a/ring-android/app/src/main/java/cx/ring/fragments/SmartListFragment.java b/ring-android/app/src/main/java/cx/ring/fragments/SmartListFragment.java
index bf708184b9e3d450e1b29814d0e21614178f70fc..8984f90944ed74cb240af7ce8606e4b6b2d7494d 100644
--- a/ring-android/app/src/main/java/cx/ring/fragments/SmartListFragment.java
+++ b/ring-android/app/src/main/java/cx/ring/fragments/SmartListFragment.java
@@ -426,7 +426,7 @@ public class SmartListFragment extends BaseSupportFragment<SmartListPresenter> i
     public void onActivityResult(int requestCode, int resultCode, Intent data) {
         super.onActivityResult(requestCode, resultCode, data);
         if (requestCode == HomeActivity.REQUEST_CODE_QR_CONVERSATION && data != null && resultCode == Activity.RESULT_OK) {
-            String contactId = data.getStringExtra(ConversationFragment.KEY_CONTACT_RING_ID);
+            String contactId = data.getStringExtra(ConversationPath.KEY_CONVERSATION_URI);
             if (contactId != null) {
                 presenter.startConversation(net.jami.model.Uri.fromString(contactId));
             }
diff --git a/ring-android/app/src/main/java/cx/ring/tv/call/TVCallActivity.java b/ring-android/app/src/main/java/cx/ring/tv/call/TVCallActivity.java
index a167743112064c11cced7716e6ed41fcfad259c0..eda7b028cb715fb235d15327746336b90b6e4d8e 100644
--- a/ring-android/app/src/main/java/cx/ring/tv/call/TVCallActivity.java
+++ b/ring-android/app/src/main/java/cx/ring/tv/call/TVCallActivity.java
@@ -22,7 +22,6 @@ import android.content.Intent;
 import android.media.AudioManager;
 import android.os.Build;
 import android.os.Bundle;
-import android.text.TextUtils;
 import android.view.KeyEvent;
 import android.view.MotionEvent;
 import android.view.WindowManager;
@@ -34,8 +33,11 @@ import androidx.fragment.app.FragmentTransaction;
 
 import cx.ring.R;
 import cx.ring.application.JamiApplication;
+
 import net.jami.call.CallView;
-import cx.ring.fragments.ConversationFragment;
+
+import cx.ring.utils.ConversationPath;
+
 import net.jami.services.NotificationService;
 import net.jami.utils.Log;
 
@@ -59,7 +61,7 @@ public class TVCallActivity extends FragmentActivity {
             setTurnScreenOn(true);
             setShowWhenLocked(true);
         } else {
-            getWindow().addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED|
+            getWindow().addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED |
                     WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
         }
         setContentView(R.layout.tv_activity_call);
@@ -69,19 +71,18 @@ public class TVCallActivity extends FragmentActivity {
         JamiApplication.getInstance().getInjectionComponent().inject(this);
         JamiApplication.getInstance().startDaemon();
 
-        boolean audioOnly = false;
-        String accountId = getIntent().getStringExtra(ConversationFragment.KEY_ACCOUNT_ID);
-        String ringId = getIntent().getStringExtra(ConversationFragment.KEY_CONTACT_RING_ID);
+        ConversationPath path = ConversationPath.fromIntent(intent);
 
         FragmentManager fragmentManager = getSupportFragmentManager();
         FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
 
-        if (!TextUtils.isEmpty(ringId)) {
-            Log.d(TAG, "onCreate: outgoing call");
-            callFragment = TVCallFragment.newInstance(TVCallFragment.ACTION_PLACE_CALL,
-                    accountId,
-                    ringId,
-                    audioOnly);
+        if (path != null) {
+            Log.d(TAG, "onCreate: outgoing call " + path);
+            callFragment = TVCallFragment.newInstance(intent.getAction(),
+                    path.getAccountId(),
+                    path.getConversationId(),
+                    intent.getExtras().getString(Intent.EXTRA_PHONE_NUMBER, path.getConversationId()),
+                    false);
             fragmentTransaction.replace(R.id.main_call_layout, callFragment, CALL_FRAGMENT_TAG).commit();
         } else {
             Log.d(TAG, "onCreate: incoming call");
@@ -89,14 +90,13 @@ public class TVCallActivity extends FragmentActivity {
             String confId = getIntent().getStringExtra(NotificationService.KEY_CALL_ID);
             Log.d(TAG, "onCreate: conf " + confId);
 
-            callFragment = TVCallFragment.newInstance(TVCallFragment.ACTION_GET_CALL, confId);
+            callFragment = TVCallFragment.newInstance(Intent.ACTION_VIEW, confId);
             fragmentTransaction.replace(R.id.main_call_layout, callFragment, CALL_FRAGMENT_TAG).commit();
         }
     }
 
-
     @Override
-    public void onUserLeaveHint () {
+    public void onUserLeaveHint() {
         Fragment fragment = getSupportFragmentManager().findFragmentByTag(CALL_FRAGMENT_TAG);
         if (fragment instanceof CallView) {
             CallView callFragment = (CallView) fragment;
diff --git a/ring-android/app/src/main/java/cx/ring/tv/call/TVCallFragment.java b/ring-android/app/src/main/java/cx/ring/tv/call/TVCallFragment.java
index a38fd4d13fc5da3ca9c4a70828c485492b77a7d6..0d140715d382ab533a000aee041a5a8bedc78410 100644
--- a/ring-android/app/src/main/java/cx/ring/tv/call/TVCallFragment.java
+++ b/ring-android/app/src/main/java/cx/ring/tv/call/TVCallFragment.java
@@ -100,13 +100,8 @@ public class TVCallFragment extends BaseSupportFragment<CallPresenter> implement
 
     public static final String TAG = TVCallFragment.class.getSimpleName();
 
-    public static final String ACTION_PLACE_CALL = "PLACE_CALL";
-    public static final String ACTION_GET_CALL = "GET_CALL";
-
     public static final String KEY_ACTION = "action";
-    public static final String KEY_ACCOUNT_ID = "accountId";
     public static final String KEY_CONF_ID = "confId";
-    public static final String KEY_CONTACT_RING_ID = "CONTACT_RING_ID";
     public static final String KEY_AUDIO_ONLY = "AUDIO_ONLY";
 
     private static final int REQUEST_CODE_ADD_PARTICIPANT = 6;
@@ -137,15 +132,15 @@ public class TVCallFragment extends BaseSupportFragment<CallPresenter> implement
     @Inject
     DeviceRuntimeService mDeviceRuntimeService;
 
-    public static TVCallFragment newInstance(@NonNull String action, @Nullable String accountID, @Nullable String contactRingId, boolean audioOnly) {
+    public static TVCallFragment newInstance(@NonNull String action, @NonNull String accountId, @NonNull String conversationId, @NonNull String contactUri, boolean audioOnly) {
         Bundle bundle = new Bundle();
         bundle.putString(KEY_ACTION, action);
-        bundle.putString(KEY_ACCOUNT_ID, accountID);
-        bundle.putSerializable(KEY_CONTACT_RING_ID, contactRingId);
+        bundle.putAll(ConversationPath.toBundle(accountId, conversationId));
+        bundle.putString(Intent.EXTRA_PHONE_NUMBER, contactUri);
         bundle.putBoolean(KEY_AUDIO_ONLY, audioOnly);
-        TVCallFragment countDownFragment = new TVCallFragment();
-        countDownFragment.setArguments(bundle);
-        return countDownFragment;
+        TVCallFragment fragment = new TVCallFragment();
+        fragment.setArguments(bundle);
+        return fragment;
     }
 
     public static TVCallFragment newInstance(@NonNull String action, @Nullable String confId) {
@@ -168,9 +163,9 @@ public class TVCallFragment extends BaseSupportFragment<CallPresenter> implement
         super.initPresenter(presenter);
         String action = getArguments().getString(KEY_ACTION);
         if (action != null) {
-            if (action.equals(ACTION_PLACE_CALL)) {
+            if (action.equals(Intent.ACTION_CALL)) {
                 prepareCall(false);
-            } else if (action.equals(ACTION_GET_CALL)) {
+            } else if (action.equals(Intent.ACTION_VIEW)) {
                 presenter.initIncomingCall(getArguments().getString(KEY_CONF_ID), true);
             }
         }
@@ -451,15 +446,13 @@ public class TVCallFragment extends BaseSupportFragment<CallPresenter> implement
                     PopupMenu popup = new PopupMenu(context, view);
                     popup.inflate(R.menu.conference_participant_actions);
                     popup.setOnMenuItemClickListener(item -> {
-                        switch (item.getItemId()) {
-                            case R.id.conv_contact_details:
-                                presenter.openParticipantContact(call);
-                                break;
-                            case R.id.conv_contact_hangup:
-                                presenter.hangupParticipant(call);
-                                break;
-                            default:
-                                return false;
+                        int itemId = item.getItemId();
+                        if (itemId == R.id.conv_contact_details) {
+                            presenter.openParticipantContact(call);
+                        } else if (itemId == R.id.conv_contact_hangup) {
+                            presenter.hangupParticipant(call);
+                        } else {
+                            return false;
                         }
                         return true;
                     });
diff --git a/ring-android/app/src/main/java/cx/ring/tv/contact/TVContactFragment.java b/ring-android/app/src/main/java/cx/ring/tv/contact/TVContactFragment.java
index 62530c26415e5cbdd81a0f9eae3dda025a688c5b..5db0ccb3c3ab9a6f78d71e1c20725a07c3d8c51d 100644
--- a/ring-android/app/src/main/java/cx/ring/tv/contact/TVContactFragment.java
+++ b/ring-android/app/src/main/java/cx/ring/tv/contact/TVContactFragment.java
@@ -15,8 +15,7 @@
  *  GNU General Public License for more details.
  *
  *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ *  along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 package cx.ring.tv.contact;
 
@@ -46,6 +45,9 @@ import com.google.android.material.dialog.MaterialAlertDialogBuilder;
 
 import cx.ring.R;
 import cx.ring.application.JamiApplication;
+import cx.ring.client.CallActivity;
+import cx.ring.client.HomeActivity;
+import cx.ring.fragments.CallFragment;
 import cx.ring.fragments.ConversationFragment;
 import net.jami.model.Uri;
 import net.jami.services.NotificationService;
@@ -195,20 +197,17 @@ public class TVContactFragment extends BaseDetailFragment<TVContactPresenter> im
     }
 
     @Override
-    public void callContact(String accountID, Uri uri) {
-        Context context = requireContext();
-        Intent intent = new Intent(context, TVCallActivity.class);
-        intent.putExtra(ConversationFragment.KEY_ACCOUNT_ID, accountID);
-        intent.putExtra(ConversationFragment.KEY_CONTACT_RING_ID, uri.getRawUriString());
-        context.startActivity(intent, null);
+    public void callContact(String accountId, Uri conversationUri, Uri uri) {
+        startActivity(new Intent(Intent.ACTION_CALL)
+                .setClass(requireContext(), TVCallActivity.class)
+                .putExtras(ConversationPath.toBundle(accountId, conversationUri))
+                .putExtra(Intent.EXTRA_PHONE_NUMBER, uri.getUri()));
     }
 
     @Override
     public void goToCallActivity(String id) {
-        Context context = requireContext();
-        Intent intent = new Intent(context, TVCallActivity.class);
-        intent.putExtra(NotificationService.KEY_CALL_ID, id);
-        context.startActivity(intent, null);
+        startActivity(new Intent(requireContext(), TVCallActivity.class)
+                .putExtra(NotificationService.KEY_CALL_ID, id));
     }
 
     @Override
diff --git a/ring-android/app/src/main/java/cx/ring/tv/contact/TVContactPresenter.java b/ring-android/app/src/main/java/cx/ring/tv/contact/TVContactPresenter.java
index cfd0056e1274d4c45ae278a3f20dbee68f65b648..527218aaea8174e377065b020a298935fb238ee8 100644
--- a/ring-android/app/src/main/java/cx/ring/tv/contact/TVContactPresenter.java
+++ b/ring-android/app/src/main/java/cx/ring/tv/contact/TVContactPresenter.java
@@ -77,14 +77,19 @@ public class TVContactPresenter extends RootPresenter<TVContactView> {
     public void contactClicked() {
         Account account = mAccountService.getAccount(mAccountId);
         if (account != null) {
-            Conference conf = account.getByUri(mUri).getCurrentCall();
+            Conversation conversation = account.getByUri(mUri);
+            Conference conf = conversation.getCurrentCall();
             if (conf != null
                     && !conf.getParticipants().isEmpty()
                     && conf.getParticipants().get(0).getCallStatus() != Call.CallStatus.INACTIVE
                     && conf.getParticipants().get(0).getCallStatus() != Call.CallStatus.FAILURE) {
                 getView().goToCallActivity(conf.getId());
             } else {
-                getView().callContact(mAccountId, mUri);
+                if (conversation.isSwarm()) {
+                    getView().callContact(mAccountId, mUri, conversation.getContact().getUri());
+                } else {
+                    getView().callContact(mAccountId, mUri, mUri);
+                }
             }
         }
     }
diff --git a/ring-android/app/src/main/java/cx/ring/tv/contact/TVContactView.java b/ring-android/app/src/main/java/cx/ring/tv/contact/TVContactView.java
index 629c454359fcd67b503308f64fbabb7df97f47dd..d891d3bc08c8981f47df5eab2700d2adb5eb328f 100644
--- a/ring-android/app/src/main/java/cx/ring/tv/contact/TVContactView.java
+++ b/ring-android/app/src/main/java/cx/ring/tv/contact/TVContactView.java
@@ -27,7 +27,7 @@ import net.jami.smartlist.SmartListViewModel;
 public interface TVContactView extends BaseView {
     void showContact(SmartListViewModel model);
 
-    void callContact(String accountID, Uri uri);
+    void callContact(String accountID, Uri conversationUri, Uri uri);
 
     void goToCallActivity(String id);
 
diff --git a/ring-android/app/src/main/java/cx/ring/tv/conversation/TvConversationAdapter.java b/ring-android/app/src/main/java/cx/ring/tv/conversation/TvConversationAdapter.java
index 7fa1975dd254fe7f703c458c3770ba97f68ebc91..be71fb6d6b0690d40d56b4aea72b287912ccd074 100644
--- a/ring-android/app/src/main/java/cx/ring/tv/conversation/TvConversationAdapter.java
+++ b/ring-android/app/src/main/java/cx/ring/tv/conversation/TvConversationAdapter.java
@@ -365,7 +365,7 @@ public class TvConversationAdapter extends RecyclerView.Adapter<TvConversationVi
     private void configureForFileInfoTextMessage(@NonNull final TvConversationViewHolder viewHolder,
                                                  @NonNull final Interaction interaction, int position) {
         DataTransfer file = (DataTransfer) interaction;
-        File path = presenter.getDeviceRuntimeService().getConversationPath(file.getConversationId(), file.getStoragePath());
+        File path = presenter.getDeviceRuntimeService().getConversationPath(interaction.getConversationId() == null ? interaction.getConversation().getParticipant() : interaction.getConversationId(), file.getStoragePath());
         file.setSize(path.length());
 
         String timeString = timestampToDetailString(viewHolder.itemView.getContext(), file.getTimestamp());
diff --git a/ring-android/app/src/main/java/cx/ring/tv/main/MainFragment.java b/ring-android/app/src/main/java/cx/ring/tv/main/MainFragment.java
index cd6b6edd9e15126804b8fc9ae8cee0841ab45835..92d37c83f48721617b4baee89bd4ef3b0a619d13 100644
--- a/ring-android/app/src/main/java/cx/ring/tv/main/MainFragment.java
+++ b/ring-android/app/src/main/java/cx/ring/tv/main/MainFragment.java
@@ -14,8 +14,7 @@
  *  GNU General Public License for more details.
  *
  *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ *  along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 package cx.ring.tv.main;
 
@@ -362,9 +361,7 @@ public class MainFragment extends BaseBrowseFragment<MainPresenter> implements M
 
     @Override
     public void callContact(String accountID, String number) {
-        Intent intent = new Intent(getActivity(), TVCallActivity.class);
-        intent.putExtra(ConversationFragment.KEY_ACCOUNT_ID, accountID);
-        intent.putExtra(ConversationFragment.KEY_CONTACT_RING_ID, number);
+        Intent intent = new Intent(Intent.ACTION_CALL, ConversationPath.toUri(accountID, number), getActivity(), TVCallActivity.class);
         startActivity(intent, null);
     }
 
diff --git a/ring-android/app/src/main/java/cx/ring/tv/search/ContactSearchFragment.java b/ring-android/app/src/main/java/cx/ring/tv/search/ContactSearchFragment.java
index 2b4ec6cb93499dfbfea7fefe8b86ce524ffb128c..8e92f0a043af7478643d6ed888b8bea82ce5ef5d 100644
--- a/ring-android/app/src/main/java/cx/ring/tv/search/ContactSearchFragment.java
+++ b/ring-android/app/src/main/java/cx/ring/tv/search/ContactSearchFragment.java
@@ -14,8 +14,7 @@
  *  GNU General Public License for more details.
  *
  *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ *  along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 package cx.ring.tv.search;
 
@@ -36,7 +35,6 @@ import android.view.View;
 import cx.ring.R;
 import cx.ring.application.JamiApplication;
 import cx.ring.client.CallActivity;
-import cx.ring.fragments.ConversationFragment;
 import net.jami.model.Contact;
 import net.jami.smartlist.SmartListViewModel;
 import cx.ring.tv.call.TVCallActivity;
@@ -138,7 +136,6 @@ public class ContactSearchFragment extends BaseSearchFragment<ContactSearchPrese
     @Override
     public void startCall(String accountID, String number) {
         Intent intent = new Intent(CallActivity.ACTION_CALL, ConversationPath.toUri(accountID, number), getActivity(), TVCallActivity.class);
-        intent.putExtra(ConversationFragment.KEY_ACCOUNT_ID, accountID);
         intent.putExtra(Intent.EXTRA_PHONE_NUMBER, number);
         startActivity(intent);
         getActivity().finish();
diff --git a/ring-android/app/src/main/java/cx/ring/utils/ConversationPath.java b/ring-android/app/src/main/java/cx/ring/utils/ConversationPath.java
index 6ea001131a008bd570b13c0da6bdefbd4864421d..255ed21426b11f0d61e4c8ec79fb3eaf7abefe77 100644
--- a/ring-android/app/src/main/java/cx/ring/utils/ConversationPath.java
+++ b/ring-android/app/src/main/java/cx/ring/utils/ConversationPath.java
@@ -1,3 +1,21 @@
+/*
+ *  Copyright (C) 2004-2021 Savoir-faire Linux Inc.
+ *
+ *  Authors: Adrien Béraud <adrien.beraud@savoirfairelinux.com>
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 3 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
 package cx.ring.utils;
 
 import android.content.Intent;
@@ -8,17 +26,21 @@ import android.text.TextUtils;
 import androidx.annotation.NonNull;
 import androidx.annotation.Nullable;
 
-import java.util.Arrays;
-import java.util.List;
-import java.util.Objects;
-
-import cx.ring.fragments.ConversationFragment;
 import net.jami.model.Conversation;
 import net.jami.model.Interaction;
 import net.jami.utils.StringUtils;
 import net.jami.utils.Tuple;
 
+import java.util.Arrays;
+import java.util.List;
+import java.util.Objects;
+
+import cx.ring.BuildConfig;
+
 public class ConversationPath {
+    public static final String KEY_CONVERSATION_URI = BuildConfig.APPLICATION_ID + ".conversationUri";
+    public static final String KEY_ACCOUNT_ID = BuildConfig.APPLICATION_ID + ".accountId";
+
     private final String accountId;
     private final String conversationId;
     public ConversationPath(String account, String contact) {
@@ -84,14 +106,14 @@ public class ConversationPath {
         return toBundle(accountId, conversationId);
     }
     public void toBundle(Bundle bundle) {
-        bundle.putString(ConversationFragment.KEY_CONTACT_RING_ID, conversationId);
-        bundle.putString(ConversationFragment.KEY_ACCOUNT_ID, accountId);
+        bundle.putString(KEY_CONVERSATION_URI, conversationId);
+        bundle.putString(KEY_ACCOUNT_ID, accountId);
     }
 
     public static Bundle toBundle(String accountId, String uri) {
         Bundle bundle = new Bundle();
-        bundle.putString(ConversationFragment.KEY_CONTACT_RING_ID, uri);
-        bundle.putString(ConversationFragment.KEY_ACCOUNT_ID, accountId);
+        bundle.putString(KEY_CONVERSATION_URI, uri);
+        bundle.putString(KEY_ACCOUNT_ID, accountId);
         return bundle;
     }
     public static Bundle toBundle(String accountId, net.jami.model.Uri uri) {
@@ -135,8 +157,8 @@ public class ConversationPath {
 
     public static ConversationPath fromBundle(@Nullable Bundle bundle) {
         if (bundle != null) {
-            String accountId = bundle.getString(ConversationFragment.KEY_ACCOUNT_ID);
-            String contactId = bundle.getString(ConversationFragment.KEY_CONTACT_RING_ID);
+            String accountId = bundle.getString(KEY_ACCOUNT_ID);
+            String contactId = bundle.getString(KEY_CONVERSATION_URI);
             if (accountId != null && contactId != null) {
                 return new ConversationPath(accountId, contactId);
             }