From 8404fe28b9668bbeed18aadc041bc5b328bc7707 Mon Sep 17 00:00:00 2001 From: Alexandre Savard <alexandre.savard@savoirfairelinux.com> Date: Fri, 9 Jul 2010 11:12:12 -0400 Subject: [PATCH] [#3649] Migrate sipvoiplink to new config engine --- sflphone-common/src/sip/sipvoiplink.cpp | 36 ++++++++++++++++--------- 1 file changed, 24 insertions(+), 12 deletions(-) diff --git a/sflphone-common/src/sip/sipvoiplink.cpp b/sflphone-common/src/sip/sipvoiplink.cpp index 0930a023a7..4780e3582e 100644 --- a/sflphone-common/src/sip/sipvoiplink.cpp +++ b/sflphone-common/src/sip/sipvoiplink.cpp @@ -446,13 +446,17 @@ std::string SIPVoIPLink::get_useragent_name (const AccountID& id) useragent << PROGNAME << "/" << SFLPHONED_VERSION; return useragent.str(); */ + + SIPAccount *account = (SIPAccount *)Manager::instance().getAccount(id); + std::ostringstream useragent; - useragent << Manager::instance ().getConfigString (id, USERAGENT); - if (useragent.str() == "sflphone" || useragent.str() == "") - useragent << "/" << SFLPHONED_VERSION; - - return useragent.str (); + // useragent << Manager::instance ().getConfigString (id, USERAGENT); + useragent << account->getUseragent(); + if (useragent.str() == "sflphone" || useragent.str() == "") + useragent << "/" << SFLPHONED_VERSION; + + return useragent.str (); } void @@ -1338,7 +1342,8 @@ SIPVoIPLink::dtmfSipInfo(SIPCall *call, char code) pjsip_media_type ctype; - duration = Manager::instance().getConfigInt (SIGNALISATION, PULSE_LENGTH); + duration = Manager::instance().voipPreferences.getPulseLength(); + // Manager::instance().getConfigInt (SIGNALISATION, PULSE_LENGTH); dtmf_body = new char[body_len]; @@ -3288,8 +3293,10 @@ void call_on_media_update (pjsip_inv_session *inv, pj_status_t status) // if RTPFALLBACK, change RTP session AccountID accountID = Manager::instance().getAccountFromCall (call->getCallId()); - if(Manager::instance().getConfigString (accountID, SRTP_RTP_FALLBACK) == "true") - call->getAudioRtp()->initAudioRtpSession(call); + SIPAccount *account = (SIPAccount *)Manager::instance().getAccount(accountID); + //if(Manager::instance().getConfigString (accountID, SRTP_RTP_FALLBACK) == "true") + if(account->getSrtpFallback()) + call->getAudioRtp()->initAudioRtpSession(call); } if(nego_success && call->getAudioRtp()->getAudioRtpType() != sfl::Sdes) { @@ -3430,7 +3437,8 @@ void regc_cb (struct pjsip_regc_cbparam *param) out << (expire_value * 2); std::string s = out.str(); - Manager::instance().setConfig(account->getAccountID(), CONFIG_ACCOUNT_REGISTRATION_EXPIRE, s); + // Manager::instance().setConfig(account->getAccountID(), CONFIG_ACCOUNT_REGISTRATION_EXPIRE, s); + account->setRegistrationExpire(s); account->registerVoIPLink(); } break; @@ -3638,18 +3646,22 @@ mod_on_rx_request (pjsip_rx_data *rdata) /******************************************* URL HOOK *********************************************/ - if (Manager::instance().getConfigString (HOOKS, URLHOOK_SIP_ENABLED) == "1") { + // if (Manager::instance().getConfigString (HOOKS, URLHOOK_SIP_ENABLED) == "1") { + if (Manager::instance().hookPreference.getSipEnabled()) { _debug("UserAgent: Set sip url hooks"); std::string header_value; - header_value = fetch_header_value (rdata->msg_info.msg, Manager::instance().getConfigString (HOOKS, URLHOOK_SIP_FIELD)); + header_value = fetch_header_value (rdata->msg_info.msg, + Manager::instance().hookPreference.getUrlSipField()); + // Manager::instance().getConfigString (HOOKS, URLHOOK_SIP_FIELD)); if (header_value.size () < header_value.max_size()) { if (header_value!="") { urlhook->addAction (header_value, - Manager::instance().getConfigString (HOOKS, URLHOOK_COMMAND)); + Manager::instance().hookPreference.getUrlCommand()); + //Manager::instance().getConfigString (HOOKS, URLHOOK_COMMAND)); } } else throw length_error ("UserAgent: Url exceeds std::string max_size"); -- GitLab