diff --git a/daemon/src/dbus/configurationmanager-introspec.xml b/daemon/src/dbus/configurationmanager-introspec.xml index 152f42de6d6c3a315d46cce9c3417861cae41ba2..7168fbf0defda60e77109c7b546f9d61ab53afde 100755 --- a/daemon/src/dbus/configurationmanager-introspec.xml +++ b/daemon/src/dbus/configurationmanager-introspec.xml @@ -97,54 +97,42 @@ </method> <method name="getIp2IpDetails" tp:name-for-bindings="getIp2IpDetails"> - <tp:docstring> - Get configuration settings of the IP2IP_PROFILE. They are sligthly different from account settings since no VoIP accounts are involved. - </tp:docstring> - <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/> + <tp:docstring> + Get configuration settings of the IP2IP_PROFILE. They are sligthly different from account settings since no VoIP accounts are involved. + </tp:docstring> + <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/> <!--<annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="MapStringString"/>--> - <arg type="a{ss}" name="details" direction="out" tp:type="String_String_Map"> - <tp:docstring> - Available parameters are: - <ul> - <li>ACCOUNT_ID</li> - <li>SRTP_KEY_EXCHANGE</li> - <li>SRTP_ENABLE</li> - <li>SRTP_RTP_FALLBACK</li> - <li>ZRTP_DISPLAY_SAS</li> - <li>ZRTP_HELLO_HASH</li> - <li>ZRTP_NOT_SUPP_WARNING</li> - <li>ZRTP_DISPLAY_SAS_ONCE</li> - <li>LOCAL_INTERFACE</li> - <li>LOCAL_PORT</li> - <li>TLS_LISTENER_PORT</li> - <li>TLS_CA_LIST_FILE</li> - <li>TLS_CERTIFICATE_FILE</li> - <li>TLS_PRIVATE_KEY_FILE</li> - <li>TLS_PASSWORD</li> - <li>TLS_METHOD</li> - <li>TLS_CIPHERS</li> - <li>TLS_SERVER_NAME</li> - <li>TLS_VERIFY_SERVER</li> - <li>TLS_VERIFY_CLIENT</li> - <li>TLS_REQUIRE_CLIENT_CERTIFICATE</li> - <li>TLS_NEGOTIATION_TIMEOUT_SEC</li> - <li>TLS_NEGOTIATION_TIMEOUT_MSEC</li> - </ul> - </tp:docstring> - </arg> - </method> - - <method name="setIp2IpDetails" tp:name-for-bindings="setIp2IpDetails"> - <annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="MapStringString"/> - <tp:docstring> - Same as <tp:member-ref>getAccountDetails</tp:member-ref>, but for the IP-to-IP profile. - </tp:docstring> - <arg type="a{ss}" name="details" direction="in" tp:type="String_String_Map"> - <tp:docstring> - The map of parameters. See <tp:member-ref>getIp2IpDetails</tp:member-ref> for complete reference. - </tp:docstring> - </arg> - </method> + <arg type="a{ss}" name="details" direction="out" tp:type="String_String_Map"> + <tp:docstring> + Available parameters are: + <ul> + <li>ACCOUNT_ID</li> + <li>SRTP_KEY_EXCHANGE</li> + <li>SRTP_ENABLE</li> + <li>SRTP_RTP_FALLBACK</li> + <li>ZRTP_DISPLAY_SAS</li> + <li>ZRTP_HELLO_HASH</li> + <li>ZRTP_NOT_SUPP_WARNING</li> + <li>ZRTP_DISPLAY_SAS_ONCE</li> + <li>LOCAL_INTERFACE</li> + <li>LOCAL_PORT</li> + <li>TLS_LISTENER_PORT</li> + <li>TLS_CA_LIST_FILE</li> + <li>TLS_CERTIFICATE_FILE</li> + <li>TLS_PRIVATE_KEY_FILE</li> + <li>TLS_PASSWORD</li> + <li>TLS_METHOD</li> + <li>TLS_CIPHERS</li> + <li>TLS_SERVER_NAME</li> + <li>TLS_VERIFY_SERVER</li> + <li>TLS_VERIFY_CLIENT</li> + <li>TLS_REQUIRE_CLIENT_CERTIFICATE</li> + <li>TLS_NEGOTIATION_TIMEOUT_SEC</li> + <li>TLS_NEGOTIATION_TIMEOUT_MSEC</li> + </ul> + </tp:docstring> + </arg> + </method> <method name="getCredentials" tp:name-for-bindings="getCredentials"> <tp:docstring> @@ -284,22 +272,6 @@ </arg> </method> - <method name="isRingtoneEnabled" tp:name-for-bindings="isRingtoneEnabled"> - <tp:docstring> - </tp:docstring> - <arg type="s" name="accountID" direction="in" /> - <arg type="i" name="bool" direction="out"> - <tp:docstring> - </tp:docstring> - </arg> - </method> - - <method name="ringtoneEnabled" tp:name-for-bindings="ringtoneEnabled"> - <tp:docstring> - </tp:docstring> - <arg type="s" name="accountID" direction="in"/> - </method> - <method name="getRingtoneChoice" tp:name-for-bindings="getRingtoneChoice"> <tp:docstring> </tp:docstring> @@ -376,7 +348,7 @@ <!-- /////////////////////// --> - <!-- Audio Codecs-related methods --> + <!-- Codecs-related methods --> <method name="getAudioCodecList" tp:name-for-bindings="getAudioCodecList"> <tp:docstring> @@ -532,21 +504,7 @@ </arg> </method> - <method name="getNoiseSuppressState" tp:name-for-bindings="getNoiseSuppressState"> - <tp:docstring> - </tp:docstring> - <arg type="s" name="state" direction="out"> - <tp:docstring> - </tp:docstring> - </arg> - </method> - - <method name="setNoiseSuppressState" tp:name-for-bindings="setNoiseSuppressState"> - <arg type="s" name="state" direction="in"> - </arg> - </method> - - <method name="getEchoCancelState" tp:name-for-bindings="getEchoCancelState"> + <method name="getEchoCancelState" tp:name-for-bindings="getNoiseSuppressState"> <tp:docstring> </tp:docstring> <arg type="s" name="state" direction="out"> @@ -593,27 +551,22 @@ </method> - - <!-- General Settings Panel --> - - <method name="isMd5CredentialHashing" tp:name-for-bindings="isMd5CredentialHashing"> - <tp:docstring> + <method name="getNoiseSuppressState" tp:name-for-bindings="getEchoCancelState"> + <tp:docstring> </tp:docstring> - <arg type="b" name="res" direction="out"> - <tp:docstring> + <arg type="s" name="state" direction="out"> + <tp:docstring> </tp:docstring> </arg> </method> - <method name="setMd5CredentialHashing" tp:name-for-bindings="setMd5CredentialHashing"> - <tp:docstring> - </tp:docstring> - <arg type="b" name="enabled" direction="in"> - <tp:docstring> - </tp:docstring> - </arg> + <method name="setNoiseSuppressState" tp:name-for-bindings="setNoiseSuppressState"> + <arg type="s" name="state" direction="in"> + </arg> </method> + <!-- General Settings Panel --> + <method name="isIax2Enabled" tp:name-for-bindings="isIax2Enabled"> <tp:docstring> </tp:docstring> diff --git a/daemon/src/dbus/configurationmanager.cpp b/daemon/src/dbus/configurationmanager.cpp index a1d0df05c861a19b70bddfdc670d9b17466d695f..632f7280e1e585871af3ba56dcdb757ca8e7cafb 100644 --- a/daemon/src/dbus/configurationmanager.cpp +++ b/daemon/src/dbus/configurationmanager.cpp @@ -30,7 +30,6 @@ * as that of the covered work. */ -#include "global.h" #include <configurationmanager.h> #include <sstream> #include "../manager.h" @@ -50,142 +49,65 @@ ConfigurationManager::ConfigurationManager (DBus::Connection& connection) : shortcutsKeys.push_back ("toggle_hold"); } -std::map<std::string, std::string> ConfigurationManager::getAccountDetails ( - const std::string& accountID) -{ - return Manager::instance().getAccountDetails (accountID); -} - -std::map<std::string, std::string> ConfigurationManager::getTlsSettingsDefault ( - void) -{ - std::map<std::string, std::string> tlsSettingsDefault; - - std::stringstream portstr; - portstr << DEFAULT_SIP_TLS_PORT; - - tlsSettingsDefault.insert (std::pair<std::string, std::string> ( - TLS_LISTENER_PORT, portstr.str())); - tlsSettingsDefault.insert (std::pair<std::string, std::string> ( - TLS_CA_LIST_FILE, "")); - tlsSettingsDefault.insert (std::pair<std::string, std::string> ( - TLS_CERTIFICATE_FILE, "")); - tlsSettingsDefault.insert (std::pair<std::string, std::string> ( - TLS_PRIVATE_KEY_FILE, "")); - tlsSettingsDefault.insert (std::pair<std::string, std::string> (TLS_PASSWORD, - "")); - tlsSettingsDefault.insert (std::pair<std::string, std::string> (TLS_METHOD, - "TLSv1")); - tlsSettingsDefault.insert (std::pair<std::string, std::string> (TLS_CIPHERS, - "")); - tlsSettingsDefault.insert (std::pair<std::string, std::string> ( - TLS_SERVER_NAME, "")); - tlsSettingsDefault.insert (std::pair<std::string, std::string> ( - TLS_VERIFY_SERVER, "true")); - tlsSettingsDefault.insert (std::pair<std::string, std::string> ( - TLS_VERIFY_CLIENT, "true")); - tlsSettingsDefault.insert (std::pair<std::string, std::string> ( - TLS_REQUIRE_CLIENT_CERTIFICATE, "true")); - tlsSettingsDefault.insert (std::pair<std::string, std::string> ( - TLS_NEGOTIATION_TIMEOUT_SEC, "2")); - tlsSettingsDefault.insert (std::pair<std::string, std::string> ( - TLS_NEGOTIATION_TIMEOUT_MSEC, "0")); - - return tlsSettingsDefault; -} - std::map<std::string, std::string> ConfigurationManager::getIp2IpDetails (void) { - std::map<std::string, std::string> ip2ipAccountDetails; - SIPAccount *sipaccount = (SIPAccount *) Manager::instance().getAccount (IP2IP_PROFILE); - if (!sipaccount) { _error ("ConfigurationManager: could not find account"); return ip2ipAccountDetails; } - ip2ipAccountDetails.insert (std::pair<std::string, std::string> (ACCOUNT_ID, IP2IP_PROFILE)); - ip2ipAccountDetails.insert (std::pair<std::string, std::string> (SRTP_KEY_EXCHANGE, sipaccount->getSrtpKeyExchange())); - ip2ipAccountDetails.insert (std::pair<std::string, std::string> (SRTP_ENABLE, sipaccount->getSrtpEnable() ? "true" : "false")); - ip2ipAccountDetails.insert (std::pair<std::string, std::string> (SRTP_RTP_FALLBACK, sipaccount->getSrtpFallback() ? "true" : "false")); - ip2ipAccountDetails.insert (std::pair<std::string, std::string> (ZRTP_DISPLAY_SAS, sipaccount->getZrtpDisplaySas() ? "true" : "false")); - ip2ipAccountDetails.insert (std::pair<std::string, std::string> (ZRTP_HELLO_HASH, sipaccount->getZrtpHelloHash() ? "true" : "false")); - ip2ipAccountDetails.insert (std::pair<std::string, std::string> (ZRTP_NOT_SUPP_WARNING, sipaccount->getZrtpNotSuppWarning() ? "true" : "false")); - ip2ipAccountDetails.insert (std::pair<std::string, std::string> (ZRTP_DISPLAY_SAS_ONCE, sipaccount->getZrtpDiaplaySasOnce() ? "true" : "false")); - ip2ipAccountDetails.insert (std::pair<std::string, std::string> (LOCAL_INTERFACE, sipaccount->getLocalInterface())); + ip2ipAccountDetails[ACCOUNT_ID] = IP2IP_PROFILE; + ip2ipAccountDetails[SRTP_KEY_EXCHANGE] = sipaccount->getSrtpKeyExchange(); + ip2ipAccountDetails[SRTP_ENABLE] = sipaccount->getSrtpEnable() ? "true" : "false"; + ip2ipAccountDetails[SRTP_RTP_FALLBACK] = sipaccount->getSrtpFallback() ? "true" : "false"; + ip2ipAccountDetails[ZRTP_DISPLAY_SAS] = sipaccount->getZrtpDisplaySas() ? "true" : "false"; + ip2ipAccountDetails[ZRTP_HELLO_HASH] = sipaccount->getZrtpHelloHash() ? "true" : "false"; + ip2ipAccountDetails[ZRTP_NOT_SUPP_WARNING] = sipaccount->getZrtpNotSuppWarning() ? "true" : "false"; + ip2ipAccountDetails[ZRTP_DISPLAY_SAS_ONCE] = sipaccount->getZrtpDiaplaySasOnce() ? "true" : "false"; + ip2ipAccountDetails[LOCAL_INTERFACE] = sipaccount->getLocalInterface(); std::stringstream portstr; portstr << sipaccount->getLocalPort(); - ip2ipAccountDetails.insert (std::pair<std::string, std::string> (LOCAL_PORT, portstr.str())); + ip2ipAccountDetails[LOCAL_PORT] = portstr.str(); std::map<std::string, std::string> tlsSettings; tlsSettings = getTlsSettings(); std::copy (tlsSettings.begin(), tlsSettings.end(), std::inserter ( - ip2ipAccountDetails, ip2ipAccountDetails.end())); + ip2ipAccountDetails, ip2ipAccountDetails.end())); return ip2ipAccountDetails; } -void ConfigurationManager::setIp2IpDetails (const std::map<std::string, - std::string>& details) -{ - std::map<std::string, std::string> map_cpy = details; - std::map<std::string, std::string>::iterator it; - - SIPAccount *sipaccount = (SIPAccount *) Manager::instance().getAccount (IP2IP_PROFILE); - - if (!sipaccount) { - _error ("ConfigurationManager: could not find account"); - } - - - it = map_cpy.find (LOCAL_INTERFACE); - - if (it != details.end()) sipaccount->setLocalInterface (it->second); - - it = map_cpy.find (LOCAL_PORT); - - if (it != details.end()) sipaccount->setLocalPort (atoi (it->second.data())); - - it = map_cpy.find (SRTP_ENABLE); - - if (it != details.end()) sipaccount->setSrtpEnable ( (it->second == "true")); - - it = map_cpy.find (SRTP_RTP_FALLBACK); - - if (it != details.end()) sipaccount->setSrtpFallback ( (it->second == "true")); - - it = map_cpy.find (SRTP_KEY_EXCHANGE); - - if (it != details.end()) sipaccount->setSrtpKeyExchange (it->second); - - it = map_cpy.find (ZRTP_DISPLAY_SAS); - - if (it != details.end()) sipaccount->setZrtpDisplaySas ( (it->second == "true")); - - it = map_cpy.find (ZRTP_NOT_SUPP_WARNING); - if (it != details.end()) sipaccount->setZrtpNotSuppWarning ( (it->second == "true")); - - it = map_cpy.find (ZRTP_HELLO_HASH); - - if (it != details.end()) sipaccount->setZrtpHelloHash ( (it->second == "true")); - - it = map_cpy.find (ZRTP_DISPLAY_SAS_ONCE); - - if (it != details.end()) sipaccount->setZrtpDiaplaySasOnce ( (it->second == "true")); - - setTlsSettings (details); - - Manager::instance().saveConfig(); +std::map<std::string, std::string> ConfigurationManager::getAccountDetails ( + const std::string& accountID) +{ + return Manager::instance().getAccountDetails (accountID); +} - // Update account details to the client side - accountsChanged(); +std::map<std::string, std::string> +ConfigurationManager::getTlsSettingsDefault () +{ + std::stringstream portstr; + portstr << DEFAULT_SIP_TLS_PORT; - // Reload account settings from config - Manager::instance().getAccount (IP2IP_PROFILE)->loadConfig(); + std::map<std::string, std::string> tlsSettingsDefault; + tlsSettingsDefault[TLS_LISTENER_PORT] = portstr.str(); + tlsSettingsDefault[TLS_CA_LIST_FILE] = ""; + tlsSettingsDefault[TLS_CERTIFICATE_FILE] = ""; + tlsSettingsDefault[TLS_PRIVATE_KEY_FILE] = ""; + tlsSettingsDefault[TLS_PASSWORD] = ""; + tlsSettingsDefault[TLS_METHOD] = "TLSv1"; + tlsSettingsDefault[TLS_CIPHERS] = ""; + tlsSettingsDefault[TLS_SERVER_NAME] = ""; + tlsSettingsDefault[TLS_VERIFY_SERVER] = "true"; + tlsSettingsDefault[TLS_VERIFY_CLIENT] = "true"; + tlsSettingsDefault[TLS_REQUIRE_CLIENT_CERTIFICATE] = "true"; + tlsSettingsDefault[TLS_NEGOTIATION_TIMEOUT_SEC] = "2"; + tlsSettingsDefault[TLS_NEGOTIATION_TIMEOUT_MSEC] = "0"; + return tlsSettingsDefault; } std::map<std::string, std::string> ConfigurationManager::getTlsSettings() @@ -286,29 +208,6 @@ void ConfigurationManager::setTlsSettings (const std::map<std::string, std::stri accountsChanged(); } -std::vector<std::map<std::string, std::string> > ConfigurationManager::getCredentials ( - const std::string& accountID) -{ - Account *account = Manager::instance().getAccount (accountID); - std::vector<std::map<std::string, std::string> > credentialInformation; - - if (!account || account->getType() != "SIP") - return credentialInformation; - - SIPAccount *sipaccount = (SIPAccount *) account; - return sipaccount->getCredentials(); -} - -void ConfigurationManager::setCredentials (const std::string& accountID, - const std::vector<std::map<std::string, std::string> >& details) -{ - Account *account = Manager::instance().getAccount (accountID); - - if (account && account->getType() == "SIP") { - SIPAccount *sipaccount = (SIPAccount *) account; - sipaccount->setCredentials(details); - } -} void ConfigurationManager::setAccountDetails (const std::string& accountID, const std::map<std::string, std::string>& details) @@ -367,9 +266,9 @@ std::vector<std::string> ConfigurationManager::getAudioCodecList (void) { std::vector<std::string> list; - CodecsMap codecs = Manager::instance().getAudioCodecFactory().getCodecsMap(); + const CodecsMap &codecs(Manager::instance().getAudioCodecFactory().getCodecsMap()); - for (CodecsMap::iterator iter = codecs.begin(); iter != codecs.end(); ++iter) { + for (CodecsMap::const_iterator iter = codecs.begin(); iter != codecs.end(); ++iter) { std::stringstream ss; if (iter->second != NULL) { @@ -395,7 +294,6 @@ std::vector<std::string> ConfigurationManager::getSupportedTlsMethod (void) std::vector<std::string> ConfigurationManager::getAudioCodecDetails ( const int32_t& payload) { - return Manager::instance().getAudioCodecFactory().getCodecSpecifications ( payload); } @@ -404,33 +302,25 @@ std::vector<std::string> ConfigurationManager::getActiveAudioCodecList ( const std::string& accountID) { std::vector<std::string> v; - Account *acc; - CodecOrder active; - unsigned int i = 0; - size_t size; - acc = Manager::instance().getAccount (accountID); + Account *acc = Manager::instance().getAccount (accountID); if (acc != NULL) { - active = acc->getActiveCodecs(); - size = active.size(); + CodecOrder active(acc->getActiveCodecs()); - while (i < size) { + for (CodecOrder::const_iterator iter = active.begin(); iter != active.end(); ++iter) { std::stringstream ss; - ss << active[i]; - v.push_back ( (ss.str()).data()); - i++; + ss << *iter; + v.push_back(ss.str()); } } return v; - } void ConfigurationManager::setActiveAudioCodecList ( const std::vector<std::string>& list, const std::string& accountID) { - _debug ("ConfigurationManager: Active codec list received"); Account *acc; @@ -438,9 +328,8 @@ void ConfigurationManager::setActiveAudioCodecList ( // Save the codecs list per account acc = Manager::instance().getAccount (accountID); - if (acc != NULL) { + if (acc != NULL) acc->setActiveCodecs (list); - } Manager::instance().saveConfig(); } @@ -448,11 +337,9 @@ void ConfigurationManager::setActiveAudioCodecList ( std::vector<std::string> ConfigurationManager::getAudioPluginList() { - std::vector<std::string> v; v.push_back (PCM_DEFAULT); - // v.push_back(PCM_DMIX); v.push_back (PCM_DMIX_DSNOOP); return v; @@ -575,16 +462,6 @@ int32_t ConfigurationManager::isIax2Enabled (void) return Manager::instance().isIax2Enabled(); } -void ConfigurationManager::ringtoneEnabled (const std::string& accountID) -{ - Manager::instance().ringtoneEnabled (accountID); -} - -int32_t ConfigurationManager::isRingtoneEnabled (const std::string& accountID) -{ - return Manager::instance().isRingtoneEnabled (accountID); -} - std::string ConfigurationManager::getRingtoneChoice (const std::string& accountID) { return Manager::instance().getRingtoneChoice (accountID); @@ -710,7 +587,6 @@ std::vector<std::string> ConfigurationManager::getAllIpInterfaceByName (void) return SIPVoIPLink::instance()->getAllIpInterfaceByName(); } - std::map<std::string, std::string> ConfigurationManager::getShortcuts() { return Manager::instance().shortcutPreferences.getShortcuts(); @@ -723,3 +599,25 @@ void ConfigurationManager::setShortcuts ( Manager::instance().saveConfig(); } +std::vector<std::map<std::string, std::string> > ConfigurationManager::getCredentials ( + const std::string& accountID) +{ + Account *account = Manager::instance().getAccount (accountID); + std::vector<std::map<std::string, std::string> > credentialInformation; + if (!account or account->getType() != "SIP") + return credentialInformation; + + SIPAccount *sipaccount = static_cast<SIPAccount *>(account); + return sipaccount->getCredentials(); +} + +void ConfigurationManager::setCredentials (const std::string& accountID, + const std::vector<std::map<std::string, std::string> >& details) +{ + Account *account = Manager::instance().getAccount (accountID); + if (account and account->getType() == "SIP") { + SIPAccount *sipaccount = static_cast<SIPAccount*>(account); + sipaccount->setCredentials(details); + } +} + diff --git a/daemon/src/dbus/configurationmanager.h b/daemon/src/dbus/configurationmanager.h index e37aa0f0745c5993682ed0ca620dd98bb5adb56b..3360423eb3915b99d1aa6bc8438e154e733c5527 100644 --- a/daemon/src/dbus/configurationmanager.h +++ b/daemon/src/dbus/configurationmanager.h @@ -46,22 +46,19 @@ #include <dbus-c++/dbus.h> - class ConfigurationManager - : public org::sflphone::SFLphone::ConfigurationManager_adaptor, - public DBus::IntrospectableAdaptor, - public DBus::ObjectAdaptor +: public org::sflphone::SFLphone::ConfigurationManager_adaptor, + public DBus::IntrospectableAdaptor, + public DBus::ObjectAdaptor { - public: - - ConfigurationManager (DBus::Connection& connection); - static const char* SERVER_PATH; - private: std::vector<std::string> shortcutsKeys; public: + ConfigurationManager (DBus::Connection& connection); + static const char* SERVER_PATH; + std::map< std::string, std::string > getAccountDetails (const std::string& accountID); void setAccountDetails (const std::string& accountID, const std::map< std::string, std::string >& details); std::string addAccount (const std::map< std::string, std::string >& details); @@ -71,11 +68,6 @@ class ConfigurationManager void sendRegister (const std::string& accoundID , const int32_t& expire); std::map< std::string, std::string > getTlsSettingsDefault (void); - void setIp2IpDetails (const std::map< std::string, std::string >& details); - std::map< std::string, std::string > getIp2IpDetails (void); - - std::vector< std::map< std::string, std::string > > getCredentials (const std::string& accountID); - void setCredentials (const std::string& accountID, const std::vector< std::map< std::string, std::string > >& details); std::vector< std::string > getAudioCodecList (void); std::vector< std::string > getSupportedTlsMethod (void); @@ -102,7 +94,6 @@ class ConfigurationManager void setEchoCancelDelay(const int32_t& length); int getEchoCancelDelay(void); - std::vector< std::string > getToneLocaleList(); std::vector< std::string > getPlaybackDeviceList(); std::vector< std::string > getRecordDeviceList(); @@ -114,8 +105,6 @@ class ConfigurationManager bool isMd5CredentialHashing (void); void setMd5CredentialHashing (const bool& enabled); int32_t isIax2Enabled (void); - int32_t isRingtoneEnabled (const std::string& accountID); - void ringtoneEnabled (const std::string& accountID); std::string getRingtoneChoice (const std::string& accountID); void setRingtoneChoice (const std::string& accountID, const std::string& tone); std::string getRecordPath (void); @@ -140,11 +129,15 @@ class ConfigurationManager std::map<std::string, std::string> getHookSettings (void); void setHookSettings (const std::map<std::string, std::string>& settings); - std::vector<std::string> getHistory(void); + std::vector<std::string> getHistory(void); void setHistory (const std::vector<std::string> &entries); std::map<std::string, std::string> getTlsSettings (void); void setTlsSettings (const std::map< std::string, std::string >& details); + std::map< std::string, std::string > getIp2IpDetails (void); + + std::vector< std::map< std::string, std::string > > getCredentials (const std::string& accountID); + void setCredentials (const std::string& accountID, const std::vector< std::map< std::string, std::string > >& details); std::string getAddrFromInterfaceName (const std::string& interface); diff --git a/gnome/src/config/preferencesdialog.c b/gnome/src/config/preferencesdialog.c index 06c7adeb1646d72caf2e9095e06896efb1551443..1d0ec38ee96ef9dd1801b22b9366d31ec633dddb 100644 --- a/gnome/src/config/preferencesdialog.c +++ b/gnome/src/config/preferencesdialog.c @@ -294,8 +294,6 @@ save_configuration_parameters (void) // History config dbus_set_history_limit (history_limit); - // Direct IP calls config - // dbus_set_ip2ip_details (directIpCallsProperties); } void diff --git a/gnome/src/dbus/configurationmanager-introspec.xml b/gnome/src/dbus/configurationmanager-introspec.xml index 5d5e504914ef10a3c1b69f304e9e8f278037bd7a..7168fbf0defda60e77109c7b546f9d61ab53afde 100755 --- a/gnome/src/dbus/configurationmanager-introspec.xml +++ b/gnome/src/dbus/configurationmanager-introspec.xml @@ -97,54 +97,42 @@ </method> <method name="getIp2IpDetails" tp:name-for-bindings="getIp2IpDetails"> - <tp:docstring> - Get configuration settings of the IP2IP_PROFILE. They are sligthly different from account settings since no VoIP accounts are involved. - </tp:docstring> - <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/> + <tp:docstring> + Get configuration settings of the IP2IP_PROFILE. They are sligthly different from account settings since no VoIP accounts are involved. + </tp:docstring> + <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/> <!--<annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="MapStringString"/>--> - <arg type="a{ss}" name="details" direction="out" tp:type="String_String_Map"> - <tp:docstring> - Available parameters are: - <ul> - <li>ACCOUNT_ID</li> - <li>SRTP_KEY_EXCHANGE</li> - <li>SRTP_ENABLE</li> - <li>SRTP_RTP_FALLBACK</li> - <li>ZRTP_DISPLAY_SAS</li> - <li>ZRTP_HELLO_HASH</li> - <li>ZRTP_NOT_SUPP_WARNING</li> - <li>ZRTP_DISPLAY_SAS_ONCE</li> - <li>LOCAL_INTERFACE</li> - <li>LOCAL_PORT</li> - <li>TLS_LISTENER_PORT</li> - <li>TLS_CA_LIST_FILE</li> - <li>TLS_CERTIFICATE_FILE</li> - <li>TLS_PRIVATE_KEY_FILE</li> - <li>TLS_PASSWORD</li> - <li>TLS_METHOD</li> - <li>TLS_CIPHERS</li> - <li>TLS_SERVER_NAME</li> - <li>TLS_VERIFY_SERVER</li> - <li>TLS_VERIFY_CLIENT</li> - <li>TLS_REQUIRE_CLIENT_CERTIFICATE</li> - <li>TLS_NEGOTIATION_TIMEOUT_SEC</li> - <li>TLS_NEGOTIATION_TIMEOUT_MSEC</li> - </ul> - </tp:docstring> - </arg> - </method> - - <method name="setIp2IpDetails" tp:name-for-bindings="setIp2IpDetails"> - <annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="MapStringString"/> - <tp:docstring> - Same as <tp:member-ref>getAccountDetails</tp:member-ref>, but for the IP-to-IP profile. - </tp:docstring> - <arg type="a{ss}" name="details" direction="in" tp:type="String_String_Map"> - <tp:docstring> - The map of parameters. See <tp:member-ref>getIp2IpDetails</tp:member-ref> for complete reference. - </tp:docstring> - </arg> - </method> + <arg type="a{ss}" name="details" direction="out" tp:type="String_String_Map"> + <tp:docstring> + Available parameters are: + <ul> + <li>ACCOUNT_ID</li> + <li>SRTP_KEY_EXCHANGE</li> + <li>SRTP_ENABLE</li> + <li>SRTP_RTP_FALLBACK</li> + <li>ZRTP_DISPLAY_SAS</li> + <li>ZRTP_HELLO_HASH</li> + <li>ZRTP_NOT_SUPP_WARNING</li> + <li>ZRTP_DISPLAY_SAS_ONCE</li> + <li>LOCAL_INTERFACE</li> + <li>LOCAL_PORT</li> + <li>TLS_LISTENER_PORT</li> + <li>TLS_CA_LIST_FILE</li> + <li>TLS_CERTIFICATE_FILE</li> + <li>TLS_PRIVATE_KEY_FILE</li> + <li>TLS_PASSWORD</li> + <li>TLS_METHOD</li> + <li>TLS_CIPHERS</li> + <li>TLS_SERVER_NAME</li> + <li>TLS_VERIFY_SERVER</li> + <li>TLS_VERIFY_CLIENT</li> + <li>TLS_REQUIRE_CLIENT_CERTIFICATE</li> + <li>TLS_NEGOTIATION_TIMEOUT_SEC</li> + <li>TLS_NEGOTIATION_TIMEOUT_MSEC</li> + </ul> + </tp:docstring> + </arg> + </method> <method name="getCredentials" tp:name-for-bindings="getCredentials"> <tp:docstring> @@ -284,22 +272,6 @@ </arg> </method> - <method name="isRingtoneEnabled" tp:name-for-bindings="isRingtoneEnabled"> - <tp:docstring> - </tp:docstring> - <arg type="s" name="accountID" direction="in" /> - <arg type="i" name="bool" direction="out"> - <tp:docstring> - </tp:docstring> - </arg> - </method> - - <method name="ringtoneEnabled" tp:name-for-bindings="ringtoneEnabled"> - <tp:docstring> - </tp:docstring> - <arg type="s" name="accountID" direction="in"/> - </method> - <method name="getRingtoneChoice" tp:name-for-bindings="getRingtoneChoice"> <tp:docstring> </tp:docstring> @@ -545,7 +517,7 @@ <arg type="s" name="state" direction="in"> </arg> </method> - + <method name="setEchoCancelTailLength" tp:name-for-bindings="setEchoCancelTailLength"> <tp:docstring> </tp:docstring> @@ -595,24 +567,6 @@ <!-- General Settings Panel --> - <method name="isMd5CredentialHashing" tp:name-for-bindings="isMd5CredentialHashing"> - <tp:docstring> - </tp:docstring> - <arg type="b" name="res" direction="out"> - <tp:docstring> - </tp:docstring> - </arg> - </method> - - <method name="setMd5CredentialHashing" tp:name-for-bindings="setMd5CredentialHashing"> - <tp:docstring> - </tp:docstring> - <arg type="b" name="enabled" direction="in"> - <tp:docstring> - </tp:docstring> - </arg> - </method> - <method name="isIax2Enabled" tp:name-for-bindings="isIax2Enabled"> <tp:docstring> </tp:docstring> diff --git a/gnome/src/dbus/dbus.c b/gnome/src/dbus/dbus.c index f8444aa86f2be60aeef4693eb63cfadcdf40a53e..08eb4eaa315bd4a2d87f457a6cae68462cec566f 100644 --- a/gnome/src/dbus/dbus.c +++ b/gnome/src/dbus/dbus.c @@ -1232,20 +1232,6 @@ dbus_get_ip2_ip_details (void) } } -void -dbus_set_ip2ip_details (GHashTable * properties) -{ - GError *error = NULL; - org_sflphone_SFLphone_ConfigurationManager_set_ip2_ip_details ( - configurationManagerProxy, properties, &error); - - if (error) { - ERROR ("Failed to call set_ip_2ip_details() on ConfigurationManager: %s", - error->message); - g_error_free (error); - } -} - void dbus_send_register (gchar* accountID, const guint enable) { @@ -1804,61 +1790,6 @@ dbus_set_ringtone_choice (const gchar *accountID, const gchar* tone) } } -int -dbus_is_ringtone_enabled (const gchar *accountID) -{ - int res; - GError* error = NULL; - org_sflphone_SFLphone_ConfigurationManager_is_ringtone_enabled ( - configurationManagerProxy, accountID, &res, &error); - - if (error) { - g_error_free (error); - } - - return res; -} - -void -dbus_ringtone_enabled (const gchar *accountID) -{ - DEBUG ("DBUS: Ringtone enabled %s", accountID); - - GError* error = NULL; - org_sflphone_SFLphone_ConfigurationManager_ringtone_enabled ( - configurationManagerProxy, accountID, &error); - - if (error) { - g_error_free (error); - } -} - -gboolean -dbus_is_md5_credential_hashing() -{ - int res; - GError* error = NULL; - org_sflphone_SFLphone_ConfigurationManager_is_md5_credential_hashing ( - configurationManagerProxy, &res, &error); - - if (error) { - g_error_free (error); - } - - return res; -} - -void -dbus_set_md5_credential_hashing (gboolean enabled) -{ - GError* error = NULL; - org_sflphone_SFLphone_ConfigurationManager_set_md5_credential_hashing ( - configurationManagerProxy, enabled, &error); - - if (error) { - g_error_free (error); - } -} int dbus_is_iax2_enabled() diff --git a/gnome/src/dbus/dbus.h b/gnome/src/dbus/dbus.h index c611c2031ef91a9e6cb9e8759a911ccc4f72220b..91159ecf4355c9adf50eae96fa8298960359f496 100644 --- a/gnome/src/dbus/dbus.h +++ b/gnome/src/dbus/dbus.h @@ -149,11 +149,6 @@ void dbus_get_credentials (account_t *a); */ GHashTable * dbus_get_ip2_ip_details (void); -/** - * ConfigurationManager - Set the details for the ip2ip profile - */ -void dbus_set_ip2ip_details (GHashTable * properties); - /** * ConfigurationManager - Send registration request * @param accountID The account to register/unregister @@ -245,18 +240,6 @@ gchar** dbus_get_audio_plugin_list(); */ void dbus_set_audio_plugin (gchar* audioPlugin); -/** - * ConfigurationManager - Select an input audio plugin - * @param audioPlugin The string description of the plugin - */ -void dbus_set_input_audio_plugin (gchar* audioPlugin); - -/** - * ConfigurationManager - Select an output audio plugin - * @param audioPlugin The string description of the plugin - */ -void dbus_set_output_audio_plugin (gchar* audioPlugin); - /** * ConfigurationManager - Get the list of available output audio devices * @return gchar** The list of devices @@ -335,22 +318,6 @@ int dbus_get_echo_cancel_delay(void); void dbus_set_echo_cancel_delay(int delay); -/** - * ConfigurationManager - Query to server to - * know if MD5 credential hashing is enabled. - * @return True if enabled, false otherwise - * - */ -gboolean dbus_is_md5_credential_hashing(); - -/** - * ConfigurationManager - Set whether or not - * the server should store credential as - * a md5 hash. - * @param enabled - */ -void dbus_set_md5_credential_hashing (gboolean enabled); - /** * ConfigurationManager - Tells the GUI if IAX2 support is enabled * @return int 1 if IAX2 is enabled @@ -358,20 +325,6 @@ void dbus_set_md5_credential_hashing (gboolean enabled); */ int dbus_is_iax2_enabled (void); -/** - * ConfigurationManager - Query the server about the ringtone option. - * If ringtone is enabled, ringtone on incoming call use custom choice. If not, only standart tone. - * @return int 1 if enabled - * 0 otherwise - */ -int dbus_is_ringtone_enabled (const gchar *accountID); - -/** - * ConfigurationManager - Set the ringtone option - * Inverse current value - */ -void dbus_ringtone_enabled (const gchar *accountID); - /** * ConfigurationManager - Get the ringtone * @return gchar* The file name selected as a ringtone