28using namespace std::literals;
35 AccountConfig(
const std::string& type_,
const std::string& id_,
const std::filesystem::path& path_ = {})
46 virtual std::map<std::string, std::string>
toMap()
const;
47 virtual void fromMap(
const std::map<std::string, std::string>&);
58 const std::filesystem::path
path;
184 const std::filesystem::path& base);
void parseBool(const std::map< std::string, std::string > &details, const char *key, bool &s)
static constexpr const char TRUE_STR[]
void emitSignal(Args... args)
void parseInt(const std::map< std::string, std::string > &details, const char *key, T &s)
void parseString(const std::map< std::string, std::string > &details, const char *key, std::string &s)
void parsePath(const std::map< std::string, std::string > &details, const char *key, std::string &s, const std::filesystem::path &base)
constexpr const char *const DEFAULT_RINGTONE_PATH
std::string platform
Device push notification platform.
std::vector< unsigned > activeCodecs
std::string deviceKey
Device push notification token.
bool ringtoneEnabled
Play ringtone when receiving a call.
bool localModeratorsEnabled
bool enabled
True if the account is enabled.
std::string alias
A user-defined name for this account.
std::string hostname
SIP hostname (SIP account) or DHT bootstrap nodes (Jami account)
bool allModeratorsEnabled
AccountConfig(const std::string &type_, const std::string &id_, const std::filesystem::path &path_={})
bool autoAnswerEnabled
If true, automatically answer calls to this account.
std::set< std::string > defaultModerators
bool denySecondCallEnabled
If true, automatically deny new calls when already in one call to this account.
virtual void fromMap(const std::map< std::string, std::string > &)
const std::string type
Account type.
virtual std::map< std::string, std::string > toMap() const
int activeCallLimit
The number of concurrent calls for the account -1: Unlimited 0: Do not disturb 1: Single call +: Mult...
bool upnpEnabled
UPnP IGD controller and the mutex to access it.
virtual void serialize(YAML::Emitter &out) const =0
std::string uiCustomization
information about the customization of ui
std::string mailbox
Account mail box.
bool sendReadReceipt
If true, send displayed status (and emit to the client)
std::string notificationTopic
Push notification topic.
const std::filesystem::path path
Path where the configuration file is stored.
void serializeDiff(YAML::Emitter &out, const AccountConfig &def) const
bool isRendezVous
If true mix calls into a conference.
std::string displayName
Display name when calling.
std::string ringtonePath
Ringtone file used for this account.
bool videoEnabled
Allows user to temporarily disable video calling.
std::string customUserAgent
User-agent used for registration.
virtual void unserialize(const YAML::Node &node)
bool sendComposing
If true, send composing status (and emit to the client)
const std::string id
Account id.