...
Create an email account to send out emails to users that register with EMM (e.g., no-reply@foo.com).
Note If you are using a Google mail account, you need to note that Google has restricted third party apps or less secure apps from sending emails. Therefore, you need to configure your account to enable this setting as WSO2 EMM acts as a third party application when sending emails to confirm user registrations or inviting existing users to register devices with WSO2 EMM.
Expand title Click here for more information. Follow the steps given below to enable your Google mail account to provide access to third party applications.
- Navigate to https://myaccount.google.com/security.
- Click Signing in to Google on the left menu and make sure that the 2-step Verification is disabled or off.
- Click Connected apps and sites on the left menu and enable Allow less secure apps.
Open the
<EMM_HOME>/repository/conf/axis2/axis2.xml
file, uncomment themailto
transportSender section, and configure the EMM email account.Code Block <transportSender name="mailto" class="org.apache.axis2.transport.mail.MailTransportSender"> <parameter name="mail.smtp.host">smtp.gmail.com</parameter> <parameter name="mail.smtp.port">587</parameter> <parameter name="mail.smtp.starttls.enable">true</parameter> <parameter name="mail.smtp.auth">true</parameter> <parameter name="mail.smtp.user">synapse.demo.0</parameter> <parameter name="mail.smtp.password">mailpassword</parameter> <parameter name="mail.smtp.from">synapse.demo.0@gmail.com</parameter> </transportSender>
Info For
mail.smtp.from
,mail.smtp.user
, andmail.smtp.password
, use the email address, username, and password (respectively) from the mail account you set up.Example:
Code Block <transportSender name="mailto" class="org.apache.axis2.transport.mail.MailTransportSender"> <parameter name="mail.smtp.host">smtp.gmail.com</parameter> <parameter name="mail.smtp.port">587</parameter> <parameter name="mail.smtp.starttls.enable">true</parameter> <parameter name="mail.smtp.auth">true</parameter> <parameter name="mail.smtp.user">foo</parameter> <parameter name="mail.smtp.password">$foo1234</parameter> <parameter name="mail.smtp.from">no-reply@foo.com</parameter> </transportSender>
Configure the email sender thread pool.
Navigate to theemail-sender-config.xml
file, which is in the<EMM_HOME>/repository/conf/etc
directory, and configure the following fields under<EmailSenderConfig>
.MinThreads
: Defines the minimum number of threads that needs to be available in the underlying thread pool when the email sender functionality is initialized.MaxThreads
: Defines the maximum number of threads that should serve email sending at any given time.KeepAliveDuration
: Defines the duration a connection should be kept alive. If the thread pool has initialized more connections than what was defined inMinThreads
, and they have been idle for more than theKeepAliveDuration
, those idle connections will be terminatedThreadQueueCapacity
: Defines the maximum concurrent email sending tasks that can be queued up.
Example:
Code Block <EmailSenderConfig> <MinThreads>8</MinThreads> <MaxThreads>100</MaxThreads> <KeepAliveDuration>20</KeepAliveDuration> <ThreadQueueCapacity>1000</ThreadQueueCapacity> </EmailSenderConfig>
Customize the email templates that are in the
<EMM_HOME>/repository/resources/email-templates
directory.Info The email templating functionality of WSO2 EMM is implemented on top of Apache Velocity, which is a free and open-source template engine.
- Open the email template that you wish to edit based on the requirement, such as the
user-invitation.
vm oruser-registration.
vm file. - Edit the
<Subject>
and<Body>
to suite your requirement. - Restart WSO2 EMM.
Tip If you need to access
HTTP
orHTTPS
base URLs of the server within your custom template configs, use the$base-url-http
and$base-url-https
variables, respectively.- Open the email template that you wish to edit based on the requirement, such as the
...