24#ifndef NAWA_SMTPMAILER_H
25#define NAWA_SMTPMAILER_H
67 explicit SmtpMailer(std::string serverDomain =
"localhost",
unsigned int serverPort = 25,
69 std::string authUsername =
"",
70 std::string authPassword =
"",
long connectionTimeout = 10000);
82 bool verifyTlsCert =
true);
89 void setAuth(std::string username, std::string password);
121 std::shared_ptr<EmailAddress> from,
122 std::shared_ptr<ReplacementRules> replacementRules = std::shared_ptr<ReplacementRules>());
136 void bulkEnqueue(std::shared_ptr<Email> email, std::vector<EmailAddress> recipients,
137 std::shared_ptr<EmailAddress> from,
138 std::shared_ptr<ReplacementRules> replacementRules = std::shared_ptr<ReplacementRules>());
Structure representing an email address.
Base structure for emails.
void setConnectionTimeout(long timeout)
void processQueue() const
void bulkEnqueue(std::shared_ptr< Email > email, std::vector< EmailAddress > recipients, std::shared_ptr< EmailAddress > from, std::shared_ptr< ReplacementRules > replacementRules=std::shared_ptr< ReplacementRules >())
void setServer(std::string domain, unsigned int port=25, TlsMode tlsMode=TlsMode::NONE, bool verifyTlsCert=true)
SmtpMailer(std::string serverDomain="localhost", unsigned int serverPort=25, TlsMode serverTlsMode=TlsMode::NONE, bool verifyServerTlsCert=true, std::string authUsername="", std::string authPassword="", long connectionTimeout=10000)
void enqueue(std::shared_ptr< Email > email, EmailAddress to, std::shared_ptr< EmailAddress > from, std::shared_ptr< ReplacementRules > replacementRules=std::shared_ptr< ReplacementRules >())
void setAuth(std::string username, std::string password)
Macros for frequently used patterns.
#define NAWA_DEFAULT_DESTRUCTOR_DEF(Class)
#define NAWA_PRIVATE_DATA()