diff --git a/daemon/src/account_schema.h b/daemon/src/account_schema.h
index 1e769cdb75a77894656c879f7c0ec91177ca2a02..6e661f245dc3c4b47fea39a84eda9ee0db82d166 100644
--- a/daemon/src/account_schema.h
+++ b/daemon/src/account_schema.h
@@ -38,68 +38,75 @@
  */
 
 // Account identifier
-static const char *const CONFIG_ACCOUNT_ID                   = "Account.id";
+static const char *const CONFIG_ACCOUNT_ID                      = "Account.id";
 
 // Common account parameters
-static const char *const CONFIG_ACCOUNT_TYPE                 = "Account.type";
-static const char *const CONFIG_ACCOUNT_ALIAS                = "Account.alias";
-static const char *const CONFIG_ACCOUNT_MAILBOX              = "Account.mailbox";
-static const char *const CONFIG_ACCOUNT_ENABLE               = "Account.enable";
-static const char *const CONFIG_ACCOUNT_REGISTRATION_EXPIRE  = "Account.registrationExpire";
-static const char *const CONFIG_ACCOUNT_REGISTRATION_STATUS = "Account.registrationStatus";
+static const char *const CONFIG_ACCOUNT_TYPE                    = "Account.type";
+static const char *const CONFIG_ACCOUNT_ALIAS                   = "Account.alias";
+static const char *const CONFIG_ACCOUNT_MAILBOX                 = "Account.mailbox";
+static const char *const CONFIG_ACCOUNT_ENABLE                  = "Account.enable";
+static const char *const CONFIG_ACCOUNT_REGISTRATION_EXPIRE     = "Account.registrationExpire";
+static const char *const CONFIG_ACCOUNT_REGISTRATION_STATUS     = "Account.registrationStatus";
 static const char *const CONFIG_ACCOUNT_REGISTRATION_STATE_CODE = "Account.registrationCode";
 static const char *const CONFIG_ACCOUNT_REGISTRATION_STATE_DESC = "Account.registrationDescription";
-static const char *const CONFIG_CREDENTIAL_NUMBER            = "Credential.count";
-static const char *const CONFIG_ACCOUNT_DTMF_TYPE            = "Account.dtmfType";
-static const char *const CONFIG_RINGTONE_PATH                = "Account.ringtonePath";
-static const char *const CONFIG_RINGTONE_ENABLED             = "Account.ringtoneEnabled";
-static const char *const CONFIG_KEEP_ALIVE_ENABLED           = "Account.keepAliveEnabled";
+static const char *const CONFIG_CREDENTIAL_NUMBER               = "Credential.count";
+static const char *const CONFIG_ACCOUNT_DTMF_TYPE               = "Account.dtmfType";
+static const char *const CONFIG_RINGTONE_PATH                   = "Account.ringtonePath";
+static const char *const CONFIG_RINGTONE_ENABLED                = "Account.ringtoneEnabled";
+static const char *const CONFIG_KEEP_ALIVE_ENABLED              = "Account.keepAliveEnabled";
 
-static const char *const CONFIG_ACCOUNT_HOSTNAME             = "Account.hostname";
-static const char *const CONFIG_ACCOUNT_USERNAME             = "Account.username";
-static const char *const CONFIG_ACCOUNT_ROUTESET             = "Account.routeset";
-static const char *const CONFIG_ACCOUNT_PASSWORD             = "Account.password";
-static const char *const CONFIG_ACCOUNT_REALM                = "Account.realm";
-static const char *const CONFIG_ACCOUNT_DEFAULT_REALM        = "*";
-static const char *const CONFIG_ACCOUNT_USERAGENT            = "Account.useragent";
 
-static const char *const CONFIG_LOCAL_INTERFACE              = "Account.localInterface";
-static const char *const CONFIG_PUBLISHED_SAMEAS_LOCAL       = "Account.publishedSameAsLocal";
-static const char *const CONFIG_LOCAL_PORT                   = "Account.localPort";
-static const char *const CONFIG_PUBLISHED_PORT               = "Account.publishedPort";
-static const char *const CONFIG_PUBLISHED_ADDRESS            = "Account.publishedAddress";
+static const char *const CONFIG_DEFAULT_REGISTRATION_EXPIRE     = "60";
 
-static const char *const CONFIG_DISPLAY_NAME                 = "Account.displayName";
-static const char *const CONFIG_DEFAULT_ADDRESS              = "0.0.0.0";
+static const char *const CONFIG_ACCOUNT_HOSTNAME                = "Account.hostname";
+static const char *const CONFIG_ACCOUNT_USERNAME                = "Account.username";
+static const char *const CONFIG_ACCOUNT_ROUTESET                = "Account.routeset";
+static const char *const CONFIG_ACCOUNT_PASSWORD                = "Account.password";
+static const char *const CONFIG_ACCOUNT_REALM                   = "Account.realm";
+static const char *const CONFIG_ACCOUNT_DEFAULT_REALM           = "*";
+static const char *const CONFIG_ACCOUNT_USERAGENT               = "Account.useragent";
+
+static const char *const CONFIG_LOCAL_INTERFACE                 = "Account.localInterface";
+static const char *const CONFIG_PUBLISHED_SAMEAS_LOCAL          = "Account.publishedSameAsLocal";
+static const char *const CONFIG_LOCAL_PORT                      = "Account.localPort";
+static const char *const CONFIG_PUBLISHED_PORT                  = "Account.publishedPort";
+static const char *const CONFIG_PUBLISHED_ADDRESS               = "Account.publishedAddress";
+static const char *const CONFIG_DEFAULT_LOCAL_PORT              = "5060";
+static const char *const CONFIG_DEFAULT_PUBLISHED_PORT          = "5060";
+static const char *const CONFIG_DEFAULT_PUBLISHED_SAMEAS_LOCAL  = "true";
+static const char *const CONFIG_DEFAULT_LOCAL_INTERFACE         = "default";
+
+static const char *const CONFIG_DISPLAY_NAME                    = "Account.displayName";
+static const char *const CONFIG_DEFAULT_ADDRESS                 = "0.0.0.0";
 
 // SIP specific parameters
-static const char *const CONFIG_SIP_PROXY                    = "SIP.proxy";
-static const char *const CONFIG_STUN_SERVER                  = "STUN.server";
-static const char *const CONFIG_STUN_ENABLE                  = "STUN.enable";
+static const char *const CONFIG_SIP_PROXY                       = "SIP.proxy";
+static const char *const CONFIG_STUN_SERVER                     = "STUN.server";
+static const char *const CONFIG_STUN_ENABLE                     = "STUN.enable";
 
 // SRTP specific parameters
-static const char *const CONFIG_SRTP_ENABLE                  = "SRTP.enable";
-static const char *const CONFIG_SRTP_KEY_EXCHANGE            = "SRTP.keyExchange";
-static const char *const CONFIG_SRTP_ENCRYPTION_ALGO         = "SRTP.encryptionAlgorithm";  // Provided by ccRTP,0=NULL,1=AESCM,2=AESF8
-static const char *const CONFIG_SRTP_RTP_FALLBACK            = "SRTP.rtpFallback";
-static const char *const CONFIG_ZRTP_HELLO_HASH              = "ZRTP.helloHashEnable";
-static const char *const CONFIG_ZRTP_DISPLAY_SAS             = "ZRTP.displaySAS";
-static const char *const CONFIG_ZRTP_NOT_SUPP_WARNING        = "ZRTP.notSuppWarning";
-static const char *const CONFIG_ZRTP_DISPLAY_SAS_ONCE        = "ZRTP.displaySasOnce";
+static const char *const CONFIG_SRTP_ENABLE                     = "SRTP.enable";
+static const char *const CONFIG_SRTP_KEY_EXCHANGE               = "SRTP.keyExchange";
+static const char *const CONFIG_SRTP_ENCRYPTION_ALGO            = "SRTP.encryptionAlgorithm";  // Provided by ccRTP,0=NULL,1=AESCM,2=AESF8
+static const char *const CONFIG_SRTP_RTP_FALLBACK               = "SRTP.rtpFallback";
+static const char *const CONFIG_ZRTP_HELLO_HASH                 = "ZRTP.helloHashEnable";
+static const char *const CONFIG_ZRTP_DISPLAY_SAS                = "ZRTP.displaySAS";
+static const char *const CONFIG_ZRTP_NOT_SUPP_WARNING           = "ZRTP.notSuppWarning";
+static const char *const CONFIG_ZRTP_DISPLAY_SAS_ONCE           = "ZRTP.displaySasOnce";
 
-static const char *const CONFIG_TLS_LISTENER_PORT            = "TLS.listenerPort";
-static const char *const CONFIG_TLS_ENABLE                   = "TLS.enable";
-static const char *const CONFIG_TLS_CA_LIST_FILE             = "TLS.certificateListFile";
-static const char *const CONFIG_TLS_CERTIFICATE_FILE         = "TLS.certificateFile";
-static const char *const CONFIG_TLS_PRIVATE_KEY_FILE         = "TLS.privateKeyFile";
-static const char *const CONFIG_TLS_PASSWORD                 = "TLS.password";
-static const char *const CONFIG_TLS_METHOD                   = "TLS.method";
-static const char *const CONFIG_TLS_CIPHERS                  = "TLS.ciphers";
-static const char *const CONFIG_TLS_SERVER_NAME              = "TLS.serverName";
-static const char *const CONFIG_TLS_VERIFY_SERVER            = "TLS.verifyServer";
-static const char *const CONFIG_TLS_VERIFY_CLIENT            = "TLS.verifyClient";
-static const char *const CONFIG_TLS_REQUIRE_CLIENT_CERTIFICATE = "TLS.requireClientCertificate";
-static const char *const CONFIG_TLS_NEGOTIATION_TIMEOUT_SEC  = "TLS.negotiationTimeoutSec";
-static const char *const CONFIG_TLS_NEGOTIATION_TIMEOUT_MSEC = "TLS.negotiationTimemoutMsec";
+static const char *const CONFIG_TLS_LISTENER_PORT               = "TLS.listenerPort";
+static const char *const CONFIG_TLS_ENABLE                      = "TLS.enable";
+static const char *const CONFIG_TLS_CA_LIST_FILE                = "TLS.certificateListFile";
+static const char *const CONFIG_TLS_CERTIFICATE_FILE            = "TLS.certificateFile";
+static const char *const CONFIG_TLS_PRIVATE_KEY_FILE            = "TLS.privateKeyFile";
+static const char *const CONFIG_TLS_PASSWORD                    = "TLS.password";
+static const char *const CONFIG_TLS_METHOD                      = "TLS.method";
+static const char *const CONFIG_TLS_CIPHERS                     = "TLS.ciphers";
+static const char *const CONFIG_TLS_SERVER_NAME                 = "TLS.serverName";
+static const char *const CONFIG_TLS_VERIFY_SERVER               = "TLS.verifyServer";
+static const char *const CONFIG_TLS_VERIFY_CLIENT               = "TLS.verifyClient";
+static const char *const CONFIG_TLS_REQUIRE_CLIENT_CERTIFICATE  = "TLS.requireClientCertificate";
+static const char *const CONFIG_TLS_NEGOTIATION_TIMEOUT_SEC     = "TLS.negotiationTimeoutSec";
+static const char *const CONFIG_TLS_NEGOTIATION_TIMEOUT_MSEC    = "TLS.negotiationTimemoutMsec";
 
 #endif
diff --git a/daemon/src/dbus/configurationmanager-introspec.xml b/daemon/src/dbus/configurationmanager-introspec.xml
index 7efc7a85f89c6cea1bbbc03e28041415762aa8e6..a6324749868c8fe4c05b949f79db61fbd516805b 100644
--- a/daemon/src/dbus/configurationmanager-introspec.xml
+++ b/daemon/src/dbus/configurationmanager-introspec.xml
@@ -6,6 +6,12 @@
             Used to handle the configuration stuff: accounts settings, account registration, user preferences, ...
         </tp:docstring>
 
+        <method name="getAccountTemplate" tp:name-for-bindings="getAccountTemplate">
+            <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/>
+            <arg type="a{ss}" name="details" direction="out" tp:type="String_String_Map">
+            </arg>
+        </method>
+
         <method name="getAccountDetails" tp:name-for-bindings="getAccountDetails">
             <tp:docstring>
                 Get all parameters of the specified account.
diff --git a/daemon/src/dbus/configurationmanager.cpp b/daemon/src/dbus/configurationmanager.cpp
index 76362a79ef8ed8dea807eac735e6b73f0094b8bf..2a7d48ccf637273ae92e945cbccfd0e57e2379f1 100644
--- a/daemon/src/dbus/configurationmanager.cpp
+++ b/daemon/src/dbus/configurationmanager.cpp
@@ -150,6 +150,18 @@ void ConfigurationManager::registerAllAccounts()
     Manager::instance().registerAllAccounts();
 }
 
+///This function is used as a base for new accounts for clients that support it
+std::map<std::string, std::string> ConfigurationManager::getAccountTemplate()
+{
+   std::map<std::string, std::string> accTemplate;
+   accTemplate[ CONFIG_LOCAL_PORT                  ] = CONFIG_DEFAULT_LOCAL_PORT;
+   accTemplate[ CONFIG_PUBLISHED_PORT              ] = CONFIG_DEFAULT_PUBLISHED_PORT;
+   accTemplate[ CONFIG_PUBLISHED_SAMEAS_LOCAL      ] = CONFIG_DEFAULT_PUBLISHED_SAMEAS_LOCAL;
+   accTemplate[ CONFIG_LOCAL_INTERFACE             ] = CONFIG_DEFAULT_LOCAL_INTERFACE;
+   accTemplate[ CONFIG_ACCOUNT_REGISTRATION_EXPIRE ] = CONFIG_DEFAULT_REGISTRATION_EXPIRE;
+   return accTemplate;
+}
+
 std::string ConfigurationManager::addAccount(const std::map<std::string, std::string>& details)
 {
     return Manager::instance().addAccount(details);
diff --git a/daemon/src/dbus/configurationmanager.h b/daemon/src/dbus/configurationmanager.h
index abc4ea74227d571cd78850b6a5771072aaa8c150..f5df87b8f16950895870be34425ff08d75cb1d17 100644
--- a/daemon/src/dbus/configurationmanager.h
+++ b/daemon/src/dbus/configurationmanager.h
@@ -61,6 +61,7 @@ class ConfigurationManager
         ConfigurationManager(DBus::Connection& connection);
         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::map<std::string, std::string> getAccountTemplate();
         std::string addAccount(const std::map< std::string, std::string >& details);
         void removeAccount(const std::string& accoundID);
         void deleteAllCredential(const std::string& accountID);