diff --git a/sflphone-client-gnome/src/contacts/calltree.c b/sflphone-client-gnome/src/contacts/calltree.c index ba3ce9748835d00e731851f15b33b84cb14fa840..307338f03983d8e7654bef4338948a86587a83c1 100644 --- a/sflphone-client-gnome/src/contacts/calltree.c +++ b/sflphone-client-gnome/src/contacts/calltree.c @@ -306,6 +306,7 @@ calltree_create_conf_from_participant_list(GSList *list) { // concatenate for(i = 0; i < list_length; i++) { + gchar *number; gchar *participant_id = g_slist_nth_data(list, i); DEBUG("********************* participant %s ***************************", participant_id); callable_obj_t *call = calllist_get_call(history, participant_id); @@ -314,8 +315,10 @@ calltree_create_conf_from_participant_list(GSList *list) { participant_list = (void *) realloc(participant_list, (c+1) * sizeof(void *)); } - // allocate memory for teh participant number - *(participant_list+c) = g_strdup(call->_peer_number); + // allocate memory for the participant number + number = g_strconcat(call->_peer_number,",",call->_accountID, NULL); + + *(participant_list+c) = number; c++; } diff --git a/sflphone-common/src/managerimpl.cpp b/sflphone-common/src/managerimpl.cpp index a082cae1957e000aed4a2f22276ff17f4f88a21a..b2f3da14aedcb714f42b1428ce18bc523f070c02 100644 --- a/sflphone-common/src/managerimpl.cpp +++ b/sflphone-common/src/managerimpl.cpp @@ -1327,18 +1327,20 @@ void ManagerImpl::createConfFromParticipantList(const std::vector< std::string > iter++; } */ - - std::string generatedCallID = "callid"; - std::string accountstr = "Account:1307562458"; for(unsigned int i = 0; i < participantList.size(); i++) { - _debug("********************************************************************* PARTICIPANT LIST %s", participantList[i].c_str()); - std::string tostr = participantList[i].c_str(); - generatedCallID = generatedCallID + participantList[i]; + std::string numberaccount = participantList[i]; + _debug("********************************************************************* PARTICIPANT %s", numberaccount.c_str()); + std::string tostr = numberaccount.substr(0, numberaccount.find(",")); + _debug("********************************************************************* NUMBER %s", tostr.c_str()); + std::string account = numberaccount.substr(numberaccount.find(",")+1, numberaccount.size()); + _debug("********************************************************************* NUMBER %s", account.c_str()); + + std::string generatedCallID = getNewCallID(); conf->add(generatedCallID); - outgoingCall(accountstr, generatedCallID, tostr, conf->getConfID()); + outgoingCall(account, generatedCallID, tostr, conf->getConfID()); if(_dbus) { - _dbus->getCallManager()->newCallCreated(accountstr, generatedCallID, tostr); + _dbus->getCallManager()->newCallCreated(account, generatedCallID, tostr); } }