diff --git a/src/app/lrcinstance.cpp b/src/app/lrcinstance.cpp
index e2f87e644a38925039a0c9acb89e54823556eab6..de8ec2f522ddfbc8be37bd87594680d917e0a878 100644
--- a/src/app/lrcinstance.cpp
+++ b/src/app/lrcinstance.cpp
@@ -412,7 +412,7 @@ LRCInstance::indexOfActiveCall(const QString& confId, const QString& uri, const
 {
     if (auto optConv = getCurrentConversationModel()->getConversationForUid(selectedConvUid_)) {
         auto& convInfo = optConv->get();
-        return convInfo.indexOfActiveCall({{"confId", confId}, {"uri", uri}, {"device", deviceId}});
+        return convInfo.indexOfActiveCall(confId, uri, deviceId);
     }
     return -1;
 }
diff --git a/src/libclient/api/conversation.h b/src/libclient/api/conversation.h
index 4368ab985ed850629f467deba1a3f65a408aed8b..a80831a4ae99388223123ea1e5d629748341ddc4 100644
--- a/src/libclient/api/conversation.h
+++ b/src/libclient/api/conversation.h
@@ -95,12 +95,11 @@ struct Info
     MapStringString infos {};
     MapStringString preferences {};
 
-    int indexOfActiveCall(const MapStringString& commit)
+    int indexOfActiveCall(const QString& confId, const QString& uri, const QString& deviceId)
     {
         for (auto idx = 0; idx != activeCalls.size(); ++idx) {
             const auto& call = activeCalls[idx];
-            if (call["id"] == commit["confId"] && call["uri"] == commit["uri"]
-                && call["device"] == commit["device"]) {
+            if (call["id"] == confId && call["uri"] == uri && call["device"] == deviceId) {
                 return idx;
             }
         }