|
Ring Daemon
|
#include <sipaccount_config.h>


Classes | |
| struct | Credentials |
| Map of credential for this account. More... | |
Public Member Functions | |
| void | fromMap (const std::map< std::string, std::string > &) override |
| std::vector< std::map< std::string, std::string > > | getCredentials () const |
| void | serialize (YAML::Emitter &out) const override |
| void | setCredentials (const std::vector< std::map< std::string, std::string > > &creds) |
| SipAccountConfig (const std::string &id={}, const std::filesystem::path &path={}) | |
| std::map< std::string, std::string > | toMap () const override |
| void | unserialize (const YAML::Node &node) override |
Public Member Functions inherited from jami::SipAccountBaseConfig | |
| void | serializeDiff (YAML::Emitter &out, const SipAccountBaseConfig &def) const |
| SipAccountBaseConfig (const std::string &type, const std::string &id, const std::filesystem::path &path) | |
Public Member Functions inherited from jami::AccountConfig | |
| AccountConfig (const std::string &type_, const std::string &id_, const std::filesystem::path &path_={}) | |
| void | serializeDiff (YAML::Emitter &out, const AccountConfig &def) const |
Public Member Functions inherited from jami::Serializable | |
| virtual | ~Serializable () |
Public Attributes | |
| bool | allowIPAutoRewrite {true} |
| std::string | bindAddress {} |
| Potential ip addresss on which this account is bound. | |
| std::vector< Credentials > | credentials |
| std::string | interface {dhtnet::ip_utils::DEFAULT_INTERFACE} |
| interface name on which this account is bound | |
| uint16_t | localPort {sip_utils::DEFAULT_SIP_PORT} |
| Local port to whih this account is bound. | |
| bool | presenceEnabled {false} |
| uint16_t | publishedPort {sip_utils::DEFAULT_SIP_PORT} |
| Published port, used only if defined by the user. | |
| bool | publishSupported {false} |
| unsigned | registrationExpire {3600} |
| Network settings. | |
| bool | registrationRefreshEnabled {true} |
| std::string | serviceRoute |
| Input Outbound Proxy Server Address. | |
| KeyExchangeProtocol | srtpKeyExchange {KeyExchangeProtocol::SDES} |
| Specifies the type of key exchange used for SRTP, if any. | |
| bool | stunEnabled {false} |
| Determine if STUN public address resolution is required to register this account. | |
| std::string | stunServer {} |
| The STUN server hostname (optional), used to provide the public IP address in case the softphone stay behind a NAT. | |
| bool | subscribeSupported {false} |
| std::string | tlsCiphers |
| bool | tlsDisableSecureDlgCheck {true} |
| bool | tlsEnable {false} |
| uint16_t | tlsListenerPort {sip_utils::DEFAULT_SIP_TLS_PORT} |
| The TLS listener port. | |
| std::string | tlsMethod |
| int | tlsNegotiationTimeout {2} |
| bool | tlsRequireClientCertificate {true} |
| std::string | tlsServerName |
| bool | tlsVerifyClient {true} |
| bool | tlsVerifyServer {true} |
Public Attributes inherited from jami::SipAccountBaseConfig | |
| std::pair< uint16_t, uint16_t > | audioPortRange {16384, 32766} |
| std::string | dtmfType {OVERRTP_STR} |
| std::string | interface {"default"} |
| interface name on which this account is bound | |
| std::string | publishedIp |
| bool | publishedSameasLocal {true} |
| Flag which determine if localIpAddress_ or publishedIpAddress_ is used in sip headers. | |
| std::string | tlsCaListFile |
| std::string | tlsCertificateFile |
| std::string | tlsPassword |
| std::string | tlsPrivateKeyFile |
| bool | turnEnabled {false} |
| Determine if TURN public address resolution is required to register this account. | |
| std::string | turnServer |
| The TURN server hostname (optional), used to provide the public IP address in case the softphone stay behind a NAT. | |
| std::string | turnServerPwd |
| std::string | turnServerRealm |
| std::string | turnServerUserName |
| std::pair< uint16_t, uint16_t > | videoPortRange {49152, (65536) - 2} |
| Port range for video RTP ports. | |
Public Attributes inherited from jami::AccountConfig | |
| int | activeCallLimit {-1} |
| The number of concurrent calls for the account -1: Unlimited 0: Do not disturb 1: Single call +: Multi line. | |
| std::vector< unsigned > | activeCodecs {} |
| std::string | alias {} |
| A user-defined name for this account. | |
| bool | allModeratorsEnabled {true} |
| bool | autoAnswerEnabled {false} |
| If true, automatically answer calls to this account. | |
| std::string | customUserAgent {} |
| User-agent used for registration. | |
| std::set< std::string > | defaultModerators {} |
| bool | denySecondCallEnabled {false} |
| If true, automatically deny new calls when already in one call to this account. | |
| std::string | deviceKey {} |
| Device push notification token. | |
| std::string | displayName {} |
| Display name when calling. | |
| bool | enabled {true} |
| True if the account is enabled. | |
| std::string | hostname {} |
| SIP hostname (SIP account) or DHT bootstrap nodes (Jami account) | |
| const std::string | id |
| Account id. | |
| bool | isRendezVous {false} |
| If true mix calls into a conference. | |
| bool | localModeratorsEnabled {true} |
| std::string | mailbox {} |
| Account mail box. | |
| std::string | notificationTopic {} |
| Push notification topic. | |
| const std::filesystem::path | path |
| Path where the configuration file is stored. | |
| std::string | platform {} |
| Device push notification platform. | |
| bool | ringtoneEnabled {true} |
| Play ringtone when receiving a call. | |
| std::string | ringtonePath {DEFAULT_RINGTONE_PATH} |
| Ringtone file used for this account. | |
| bool | sendComposing {true} |
| If true, send composing status (and emit to the client) | |
| bool | sendReadReceipt {true} |
| If true, send displayed status (and emit to the client) | |
| const std::string | type |
| Account type. | |
| std::string | uiCustomization {} |
| information about the customization of ui | |
| bool | upnpEnabled {true} |
| UPnP IGD controller and the mutex to access it. | |
| std::string | username {} |
| bool | videoEnabled {true} |
| Allows user to temporarily disable video calling. | |
Definition at line 24 of file sipaccount_config.h.
|
inline |
Definition at line 26 of file sipaccount_config.h.
|
overridevirtual |
Reimplemented from jami::SipAccountBaseConfig.
Definition at line 230 of file sipaccount_config.cpp.
References allowIPAutoRewrite, bindAddress, jami::Conf::CONFIG_ACCOUNT_DTMF_TYPE, jami::Conf::CONFIG_ACCOUNT_IP_AUTO_REWRITE, jami::Conf::CONFIG_ACCOUNT_PASSWORD, jami::Conf::CONFIG_ACCOUNT_REALM, jami::Conf::CONFIG_ACCOUNT_REGISTRATION_EXPIRE, jami::Conf::CONFIG_ACCOUNT_ROUTESET, jami::Conf::CONFIG_ACCOUNT_USERNAME, jami::Conf::CONFIG_BIND_ADDRESS, jami::Conf::CONFIG_KEEP_ALIVE_ENABLED, jami::Conf::CONFIG_LOCAL_INTERFACE, jami::Conf::CONFIG_LOCAL_PORT, jami::Conf::CONFIG_PRESENCE_ENABLED, jami::Conf::CONFIG_PUBLISHED_ADDRESS, jami::Conf::CONFIG_PUBLISHED_PORT, jami::Conf::CONFIG_PUBLISHED_SAMEAS_LOCAL, jami::Conf::CONFIG_SRTP_KEY_EXCHANGE, jami::Conf::CONFIG_STUN_ENABLE, jami::Conf::CONFIG_STUN_SERVER, jami::Conf::CONFIG_TLS_CA_LIST_FILE, jami::Conf::CONFIG_TLS_CERTIFICATE_FILE, jami::Conf::CONFIG_TLS_CIPHERS, jami::Conf::CONFIG_TLS_DISABLE_SECURE_DLG_CHECK, jami::Conf::CONFIG_TLS_ENABLE, jami::Conf::CONFIG_TLS_LISTENER_PORT, jami::Conf::CONFIG_TLS_METHOD, jami::Conf::CONFIG_TLS_NEGOTIATION_TIMEOUT_SEC, jami::Conf::CONFIG_TLS_PASSWORD, jami::Conf::CONFIG_TLS_PRIVATE_KEY_FILE, jami::Conf::CONFIG_TLS_REQUIRE_CLIENT_CERTIFICATE, jami::Conf::CONFIG_TLS_SERVER_NAME, jami::Conf::CONFIG_TLS_VERIFY_CLIENT, jami::Conf::CONFIG_TLS_VERIFY_SERVER, credentials, jami::SipAccountBaseConfig::dtmfType, jami::emitSignal(), jami::SipAccountBaseConfig::fromMap(), jami::sip_utils::getKeyExchangeProtocol(), interface, JAMI_WARN, localPort, jami::parseBool(), jami::parseInt(), jami::parsePath(), jami::parseString(), jami::AccountConfig::path, presenceEnabled, jami::SipAccountBaseConfig::publishedIp, publishedPort, jami::SipAccountBaseConfig::publishedSameasLocal, registrationExpire, registrationRefreshEnabled, serviceRoute, setCredentials(), srtpKeyExchange, stunEnabled, stunServer, jami::SipAccountBaseConfig::tlsCaListFile, jami::SipAccountBaseConfig::tlsCertificateFile, tlsCiphers, tlsDisableSecureDlgCheck, tlsEnable, tlsListenerPort, tlsMethod, tlsNegotiationTimeout, jami::SipAccountBaseConfig::tlsPassword, jami::SipAccountBaseConfig::tlsPrivateKeyFile, tlsRequireClientCertificate, tlsServerName, tlsVerifyClient, tlsVerifyServer, and jami::AccountConfig::username.

| std::vector< std::map< std::string, std::string > > jami::SipAccountConfig::getCredentials | ( | ) | const |
Definition at line 328 of file sipaccount_config.cpp.
References credentials, and jami::emitSignal().
Referenced by jami::SIPAccount::getCredentials(), and serialize().

|
overridevirtual |
Implements jami::AccountConfig.
Definition at line 72 of file sipaccount_config.cpp.
References jami::Conf::ALLOW_IP_AUTO_REWRITE, allowIPAutoRewrite, jami::Conf::BIND_ADDRESS_KEY, bindAddress, jami::Conf::CALIST_KEY, jami::Conf::CERTIFICATE_KEY, jami::Conf::CIPHERS_KEY, jami::Conf::CONFIG_ACCOUNT_REGISTRATION_EXPIRE, jami::Conf::CRED_KEY, jami::DEFAULT_CONFIG, jami::Conf::DISABLE_SECURE_DLG_CHECK, jami::emitSignal(), getCredentials(), jami::sip_utils::getKeyExchangeName(), jami::AccountConfig::id, jami::Conf::ID_KEY, jami::Conf::KEEP_ALIVE_ENABLED, jami::Conf::KEY_EXCHANGE_KEY, localPort, jami::Conf::METHOD_KEY, jami::Conf::PORT_KEY, jami::Conf::PRIVATE_KEY_KEY, jami::Conf::PUBLISH_PORT_KEY, publishedPort, registrationExpire, registrationRefreshEnabled, jami::Conf::REQUIRE_CERTIF_KEY, jami::SipAccountBaseConfig::serializeDiff(), jami::Conf::SERVER_KEY, jami::Conf::SERVICE_ROUTE_KEY, serviceRoute, jami::Conf::SRTP_KEY, srtpKeyExchange, jami::Conf::STUN_ENABLED_KEY, jami::Conf::STUN_SERVER_KEY, stunEnabled, stunServer, jami::Conf::TIMEOUT_KEY, jami::Conf::TLS_ENABLE_KEY, jami::Conf::TLS_KEY, jami::Conf::TLS_PASSWORD_KEY, jami::Conf::TLS_PORT_KEY, jami::SipAccountBaseConfig::tlsCaListFile, jami::SipAccountBaseConfig::tlsCertificateFile, tlsCiphers, tlsDisableSecureDlgCheck, tlsEnable, tlsListenerPort, tlsMethod, tlsNegotiationTimeout, jami::SipAccountBaseConfig::tlsPassword, jami::SipAccountBaseConfig::tlsPrivateKeyFile, tlsRequireClientCertificate, tlsServerName, tlsVerifyClient, tlsVerifyServer, jami::AccountConfig::username, jami::Conf::USERNAME_KEY, jami::Conf::VERIFY_CLIENT_KEY, and jami::Conf::VERIFY_SERVER_KEY.

| void jami::SipAccountConfig::setCredentials | ( | const std::vector< std::map< std::string, std::string > > & | creds | ) |
Definition at line 339 of file sipaccount_config.cpp.
References credentials, and jami::emitSignal().
Referenced by fromMap(), libjami::setCredentials(), and unserialize().

|
overridevirtual |
Reimplemented from jami::SipAccountBaseConfig.
Definition at line 180 of file sipaccount_config.cpp.
References allowIPAutoRewrite, bindAddress, jami::Conf::CONFIG_ACCOUNT_DTMF_TYPE, jami::Conf::CONFIG_ACCOUNT_IP_AUTO_REWRITE, jami::Conf::CONFIG_ACCOUNT_PASSWORD, jami::Conf::CONFIG_ACCOUNT_REGISTRATION_EXPIRE, jami::Conf::CONFIG_ACCOUNT_ROUTESET, jami::Conf::CONFIG_ACCOUNT_USERNAME, jami::Conf::CONFIG_BIND_ADDRESS, jami::Conf::CONFIG_KEEP_ALIVE_ENABLED, jami::Conf::CONFIG_LOCAL_INTERFACE, jami::Conf::CONFIG_LOCAL_PORT, jami::Conf::CONFIG_PRESENCE_ENABLED, jami::Conf::CONFIG_PUBLISHED_ADDRESS, jami::Conf::CONFIG_PUBLISHED_PORT, jami::Conf::CONFIG_PUBLISHED_SAMEAS_LOCAL, jami::Conf::CONFIG_SRTP_KEY_EXCHANGE, jami::Conf::CONFIG_STUN_ENABLE, jami::Conf::CONFIG_STUN_SERVER, jami::Conf::CONFIG_TLS_CA_LIST_FILE, jami::Conf::CONFIG_TLS_CERTIFICATE_FILE, jami::Conf::CONFIG_TLS_CIPHERS, jami::Conf::CONFIG_TLS_DISABLE_SECURE_DLG_CHECK, jami::Conf::CONFIG_TLS_ENABLE, jami::Conf::CONFIG_TLS_LISTENER_PORT, jami::Conf::CONFIG_TLS_METHOD, jami::Conf::CONFIG_TLS_NEGOTIATION_TIMEOUT_SEC, jami::Conf::CONFIG_TLS_PASSWORD, jami::Conf::CONFIG_TLS_PRIVATE_KEY_FILE, jami::Conf::CONFIG_TLS_REQUIRE_CLIENT_CERTIFICATE, jami::Conf::CONFIG_TLS_SERVER_NAME, jami::Conf::CONFIG_TLS_VERIFY_CLIENT, jami::Conf::CONFIG_TLS_VERIFY_SERVER, credentials, jami::SipAccountBaseConfig::dtmfType, jami::emitSignal(), jami::FALSE_STR, jami::sip_utils::getKeyExchangeName(), interface, localPort, presenceEnabled, jami::SipAccountBaseConfig::publishedIp, publishedPort, jami::SipAccountBaseConfig::publishedSameasLocal, registrationExpire, registrationRefreshEnabled, serviceRoute, srtpKeyExchange, stunEnabled, stunServer, jami::SipAccountBaseConfig::tlsCaListFile, jami::SipAccountBaseConfig::tlsCertificateFile, tlsCiphers, tlsDisableSecureDlgCheck, tlsEnable, tlsListenerPort, tlsMethod, tlsNegotiationTimeout, jami::SipAccountBaseConfig::tlsPassword, jami::SipAccountBaseConfig::tlsPrivateKeyFile, tlsRequireClientCertificate, tlsServerName, tlsVerifyClient, tlsVerifyServer, jami::SipAccountBaseConfig::toMap(), jami::TRUE_STR, and jami::AccountConfig::username.
Referenced by libjami::getAccountTemplate().

Reimplemented from jami::SipAccountBaseConfig.
Definition at line 125 of file sipaccount_config.cpp.
References jami::Conf::ALLOW_IP_AUTO_REWRITE, allowIPAutoRewrite, jami::Conf::BIND_ADDRESS_KEY, bindAddress, jami::Conf::CALIST_KEY, jami::Conf::CERTIFICATE_KEY, jami::Conf::CIPHERS_KEY, jami::Conf::CONFIG_ACCOUNT_PASSWORD, jami::Conf::CONFIG_ACCOUNT_REALM, jami::Conf::CONFIG_ACCOUNT_REGISTRATION_EXPIRE, jami::Conf::CONFIG_ACCOUNT_USERNAME, jami::Conf::CRED_KEY, jami::Conf::DISABLE_SECURE_DLG_CHECK, jami::emitSignal(), jami::sip_utils::getKeyExchangeProtocol(), JAMI_WARNING, jami::Conf::KEEP_ALIVE_ENABLED, jami::Conf::KEY_EXCHANGE_KEY, localPort, jami::Conf::METHOD_KEY, jami::MIN_REGISTRATION_TIME, jami::Conf::PORT_KEY, jami::Conf::PRESENCE_MODULE_ENABLED_KEY, jami::Conf::PRESENCE_PUBLISH_SUPPORTED_KEY, jami::Conf::PRESENCE_SUBSCRIBE_SUPPORTED_KEY, presenceEnabled, jami::Conf::PRIVATE_KEY_KEY, jami::Conf::PUBLISH_PORT_KEY, publishedPort, publishSupported, registrationExpire, registrationRefreshEnabled, jami::Conf::REQUIRE_CERTIF_KEY, jami::Conf::SERVER_KEY, jami::Conf::SERVICE_ROUTE_KEY, serviceRoute, setCredentials(), jami::Conf::SRTP_KEY, srtpKeyExchange, jami::Conf::STUN_ENABLED_KEY, jami::Conf::STUN_SERVER_KEY, stunEnabled, stunServer, subscribeSupported, jami::Conf::TIMEOUT_KEY, jami::Conf::TLS_ENABLE_KEY, jami::Conf::TLS_KEY, jami::Conf::TLS_PASSWORD_KEY, jami::Conf::TLS_PORT_KEY, jami::SipAccountBaseConfig::tlsCaListFile, jami::SipAccountBaseConfig::tlsCertificateFile, tlsCiphers, tlsDisableSecureDlgCheck, tlsEnable, tlsListenerPort, tlsMethod, tlsNegotiationTimeout, jami::SipAccountBaseConfig::tlsPassword, jami::SipAccountBaseConfig::tlsPrivateKeyFile, tlsRequireClientCertificate, tlsServerName, tlsVerifyClient, tlsVerifyServer, jami::SipAccountBaseConfig::unserialize(), jami::AccountConfig::username, jami::Conf::USERNAME_KEY, jami::Conf::VERIFY_CLIENT_KEY, and jami::Conf::VERIFY_SERVER_KEY.

Definition at line 74 of file sipaccount_config.h.
Referenced by fromMap(), serialize(), toMap(), and unserialize().
| std::string jami::SipAccountConfig::bindAddress {} |
Potential ip addresss on which this account is bound.
Definition at line 42 of file sipaccount_config.h.
Referenced by fromMap(), serialize(), toMap(), and unserialize().
| std::vector<Credentials> jami::SipAccountConfig::credentials |
Definition at line 123 of file sipaccount_config.h.
Referenced by fromMap(), jami::SIPAccount::getCredentialCount(), getCredentials(), jami::SIPAccount::hasCredentials(), setCredentials(), and toMap().
| std::string jami::SipAccountConfig::interface {dhtnet::ip_utils::DEFAULT_INTERFACE} |
interface name on which this account is bound
Definition at line 52 of file sipaccount_config.h.
| uint16_t jami::SipAccountConfig::localPort {sip_utils::DEFAULT_SIP_PORT} |
Local port to whih this account is bound.
Definition at line 37 of file sipaccount_config.h.
Referenced by fromMap(), jami::SIPAccount::getLocalPort(), jami::SIPAccount::getRPort(), serialize(), jami::SIPAccount::setLocalPort(), toMap(), and unserialize().
Definition at line 101 of file sipaccount_config.h.
Referenced by fromMap(), toMap(), and unserialize().
| uint16_t jami::SipAccountConfig::publishedPort {sip_utils::DEFAULT_SIP_PORT} |
Published port, used only if defined by the user.
Definition at line 47 of file sipaccount_config.h.
Referenced by fromMap(), serialize(), toMap(), and unserialize().
Definition at line 102 of file sipaccount_config.h.
Referenced by unserialize().
| unsigned jami::SipAccountConfig::registrationExpire {3600} |
Network settings.
Definition at line 69 of file sipaccount_config.h.
Referenced by fromMap(), jami::SIPAccount::getRegistrationExpire(), serialize(), toMap(), and unserialize().
Definition at line 70 of file sipaccount_config.h.
Referenced by fromMap(), jami::SIPAccount::isRegistrationRefreshEnabled(), serialize(), toMap(), and unserialize().
| std::string jami::SipAccountConfig::serviceRoute |
Input Outbound Proxy Server Address.
Definition at line 79 of file sipaccount_config.h.
Referenced by fromMap(), jami::SIPAccount::getServiceRoute(), jami::SIPAccount::hasServiceRoute(), serialize(), toMap(), and unserialize().
| KeyExchangeProtocol jami::SipAccountConfig::srtpKeyExchange {KeyExchangeProtocol::SDES} |
Specifies the type of key exchange used for SRTP, if any.
This only determine if the media channel is secured.
Definition at line 99 of file sipaccount_config.h.
Referenced by fromMap(), jami::SIPAccount::isSrtpEnabled(), serialize(), toMap(), and unserialize().
Determine if STUN public address resolution is required to register this account.
In this case a STUN server hostname must be specified.
Definition at line 58 of file sipaccount_config.h.
Referenced by fromMap(), jami::SIPAccount::isStunEnabled(), serialize(), toMap(), and unserialize().
| std::string jami::SipAccountConfig::stunServer {} |
The STUN server hostname (optional), used to provide the public IP address in case the softphone stay behind a NAT.
Definition at line 64 of file sipaccount_config.h.
Referenced by fromMap(), jami::SIPAccount::getStunServer(), serialize(), toMap(), and unserialize().
Definition at line 103 of file sipaccount_config.h.
Referenced by unserialize().
| std::string jami::SipAccountConfig::tlsCiphers |
Definition at line 87 of file sipaccount_config.h.
Referenced by fromMap(), serialize(), toMap(), and unserialize().
Definition at line 92 of file sipaccount_config.h.
Referenced by fromMap(), serialize(), toMap(), and unserialize().
Definition at line 85 of file sipaccount_config.h.
Referenced by fromMap(), jami::SIPAccount::isTlsEnabled(), serialize(), toMap(), and unserialize().
| uint16_t jami::SipAccountConfig::tlsListenerPort {sip_utils::DEFAULT_SIP_TLS_PORT} |
The TLS listener port.
Definition at line 84 of file sipaccount_config.h.
Referenced by fromMap(), jami::SIPAccount::getTlsListenerPort(), serialize(), toMap(), and unserialize().
| std::string jami::SipAccountConfig::tlsMethod |
Definition at line 86 of file sipaccount_config.h.
Referenced by fromMap(), serialize(), toMap(), and unserialize().
| int jami::SipAccountConfig::tlsNegotiationTimeout {2} |
Definition at line 93 of file sipaccount_config.h.
Referenced by fromMap(), serialize(), toMap(), and unserialize().
Definition at line 91 of file sipaccount_config.h.
Referenced by fromMap(), serialize(), toMap(), and unserialize().
| std::string jami::SipAccountConfig::tlsServerName |
Definition at line 88 of file sipaccount_config.h.
Referenced by fromMap(), serialize(), toMap(), and unserialize().
Definition at line 90 of file sipaccount_config.h.
Referenced by fromMap(), serialize(), toMap(), and unserialize().
Definition at line 89 of file sipaccount_config.h.
Referenced by fromMap(), serialize(), toMap(), and unserialize().