diff --git a/sflphone-common/sequence2.yml b/sflphone-common/sequence2.yml index d8d04011dcbf805f5121fba525aaa63a1ba4a8f3..d60851089d5cd78dda3874319a921dba2e733d18 100755 --- a/sflphone-common/sequence2.yml +++ b/sflphone-common/sequence2.yml @@ -1,6 +1,6 @@ accounts: - id: IP2IP - alias: ip2ip + alias: username: password: hostname: @@ -10,11 +10,13 @@ accounts: interface: default port: 5060 mailbox: - publishAddr: 127.0.0.1 + publishAddr: 0.0.0.0 publishPort: 5060 sameasLocal: true resolveOnce: false codecs: 0/9/110/111/112/ + stunServer: stun.sflphone.org + stunEnabled: false credential: count: 0 srtp: @@ -41,7 +43,7 @@ accounts: verifyClient: false verifyServer: false - - id: Account:1278342101 + - id: Account:1278432417 alias: sfl-181 username: 181 password: sfl-181pw @@ -57,12 +59,14 @@ accounts: sameasLocal: true resolveOnce: false codecs: 0/9/110/111/112/ + stunServer: stun.sflphone.org + stunEnabled: false credential: count: 0 srtp: - enable: true + enable: false keyExchange: sdes - rtpFallback: true + rtpFallback: false zrtp: displaySas: false displaySasOnce: false @@ -73,7 +77,7 @@ accounts: certificate: /home/msavard/Development/sflphone/sflphone-client-gnome/config.guess calist: /home/msavard/Development/sflphone/sflphone-client-gnome/aclocal.m4 ciphers: - enable: true + enable: false method: TLSv1 timeout: 0 password: @@ -83,28 +87,30 @@ accounts: verifyClient: true verifyServer: true - - id: Account:1278343345 + - id: Account:1278432440 alias: sfl-431 username: 431 password: alexandre hostname: 192.168.50.3 - enable: false + enable: true type: SIP expire: 3600 - interface: lo + interface: default port: 5060 mailbox: 97 - publishAddr: 192.168.50.182 + publishAddr: 0.0.0.0 publishPort: 5060 sameasLocal: true resolveOnce: false codecs: 0/9/110/111/112/ + stunServer: stun.sflphone.org + stunEnabled: false credential: count: 0 srtp: - enable: true + enable: false keyExchange: sdes - rtpFallback: true + rtpFallback: false zrtp: displaySas: false displaySasOnce: false diff --git a/sflphone-common/src/managerimpl.cpp b/sflphone-common/src/managerimpl.cpp index f3a5e6ed637a2d16ee1eceeaea91e455559d7090..a138658c99dda85594019dcc884f5ebbecfd4f69 100755 --- a/sflphone-common/src/managerimpl.cpp +++ b/sflphone-common/src/managerimpl.cpp @@ -3410,6 +3410,7 @@ std::map<std::string, std::string> ManagerImpl::getAccountDetails ( a.insert(std::pair<std::string, std::string>(LOCAL_INTERFACE, sipaccount->getLocalInterface())); a.insert(std::pair<std::string, std::string>(PUBLISHED_SAMEAS_LOCAL, sipaccount->getPublishedSameasLocal() ? "true" : "false")); a.insert(std::pair<std::string, std::string>(PUBLISHED_ADDRESS, sipaccount->getPublishedAddress())); + std::stringstream localport; localport << sipaccount->getLocalPort(); a.insert(std::pair<std::string, std::string>(LOCAL_PORT, localport.str())); @@ -3428,7 +3429,7 @@ std::map<std::string, std::string> ManagerImpl::getAccountDetails ( a.insert(std::pair<std::string, std::string>(ZRTP_DISPLAY_SAS_ONCE, sipaccount->getZrtpDiaplaySasOnce() ? "true" : "false")); a.insert(std::pair<std::string, std::string>(ZRTP_HELLO_HASH, sipaccount->getZrtpHelloHash() ? "true" : "false")); a.insert(std::pair<std::string, std::string>(ZRTP_NOT_SUPP_WARNING, sipaccount->getZrtpNotSuppWarning() ? "true" : "false")); - + // TLS listener is unique and parameters are modified through IP2IP_PROFILE std::stringstream tlslistenerport; tlslistenerport << sipaccount->getTlsListenerPort(); diff --git a/sflphone-common/src/sip/sipaccount.cpp b/sflphone-common/src/sip/sipaccount.cpp index 10b33c10e333041e09bd15d43014455f3be27a20..e0e0a9d604957302b3dc1816c78bf8cd5ceca8da 100755 --- a/sflphone-common/src/sip/sipaccount.cpp +++ b/sflphone-common/src/sip/sipaccount.cpp @@ -190,6 +190,12 @@ void SIPAccount::unserialize(Conf::MappingNode *map) // _dtmfType = atoi(val->getValue(); // stun enabled + val = (Conf::ScalarNode *)(map->getValue(stunEnabledKey)); + if(val) { _stunEnabled = (val->getValue().compare("true") == 0) ? true : false; val = NULL; } + val = (Conf::ScalarNode *)(map->getValue(stunServerKey)); + if(val) { _stunServer = val->getValue(); val = NULL; } + _stunServerName = pj_str ( (char*) _stunServer.data()); + credMap = (Conf::MappingNode *)(map->getValue(credKey)); credentials.unserialize(credMap); @@ -495,7 +501,7 @@ void SIPAccount::initStunConfiguration (void) size_t pos; std::string stunServer, serverName, serverPort; - stunServer = Manager::instance().getConfigString (_accountID, STUN_SERVER); + stunServer = _stunServer; // Manager::instance().getConfigString (_accountID, STUN_SERVER); // Init STUN socket pos = stunServer.find (':'); diff --git a/sflphone-common/src/sip/sipaccount.h b/sflphone-common/src/sip/sipaccount.h index 1db6cebfa905f77849b8bf202e5c790373bd8395..0e61719e5a0138ca373e07020dc01cabf8873489 100755 --- a/sflphone-common/src/sip/sipaccount.h +++ b/sflphone-common/src/sip/sipaccount.h @@ -90,6 +90,9 @@ const Conf::Key serverKey("server"); const Conf::Key verifyClientKey("verifyClient"); const Conf::Key verifyServerKey("verifyServer"); +const Conf::Key stunEnabledKey("stunEnabled"); +const Conf::Key stunServerKey("stunServer"); + const Conf::Key credKey("credential"); const Conf::Key credentialCountKey("count"); @@ -293,6 +296,7 @@ class SIPAccount : public Account * account is set to OTHER. */ inline bool isStunEnabled(void) { return (_transportType == PJSIP_TRANSPORT_START_OTHER) ? true: false; } + inline void setStunEnabled(bool enabl) { _stunEnabled = enabl; } /* * @return pj_str_t "From" uri based on account information.