callwidget: remove references to CallModel

Change-Id: Iaa7f805e50d02f234c77083cd68198a00e8884c5
diff --git a/utils.cpp b/utils.cpp
index 381fc32..e6e9028 100644
--- a/utils.cpp
+++ b/utils.cpp
@@ -430,18 +430,23 @@
     return QPixmap::fromImage(tmpImage);
 }
 
-std::string
-Utils::getConversationFromCallId(const std::string& callId)
+lrc::api::conversation::Info
+Utils::getConversationFromCallId(const std::string & callId)
 {
     auto convModel = LRCInstance::getCurrentConversationModel();
-    auto conversations = convModel->allFilteredConversations();
-    std::string convUid;
-    for (auto conversation : conversations) {
-        if (conversation.callId == callId) {
-            return conversation.uid;
+    using namespace lrc::api::profile;
+    for (int i = toUnderlyingValue(Type::RING); i <= toUnderlyingValue(Type::TEMPORARY); ++i) {
+        auto filter = toEnum<lrc::api::profile::Type>(i);
+        auto conversations = convModel->getFilteredConversations(filter);
+        auto conv = std::find_if(conversations.begin(), conversations.end(),
+            [&](const lrc::api::conversation::Info& conv) {
+                return callId == conv.callId;
+            });
+        if (conv != conversations.end()) {
+            return *conv;
         }
     }
-    return "";
+    return lrc::api::conversation::Info();
 }
 
 lrc::api::conversation::Info