Configure the Mail Sender
The mail sender configuration refers the mail templates directory and the internationalization of the templates plus the sender itself. When accessing Mail Sender Configuration link, you will see the following screen:
Email Templates
Emails may be sent in multiple languages, based on the sender's language or on the receiver(s) language(s). The emails templates must be placed on disk, in a directory specified by you (see above), and must follow the convention below to get picked correctly by the SIL engine.
Let's see and example to understand how it works. Resolution of the file mytemplate.tpl for a given language (let's use French/France) is performed like this:
- Engine searches for fr_FR/mytemplate.tpl in the templates directory. If found, it is returned (we suppose the locale is French/France, and not for instance Canadian French). The directory searched there is the ISO 2 letter code of the language plus the ISO 2 letter country code.
- If it is not found, the engine searches next for fr/mytemplate.tpl . In other words, it drops the country code from the directory. If it is found, it will be returned.
- If still not found, the engine searches for mytemplate.tpl. This means that there's no localization available for this template. Again, if found, it is returned.
- If mytemplate.tpl is not found, the search results in error and the string may be interpreted as such.
With this algorithm cleared, let's see where the second parameter ('Mail language on sender/receiver') kicks in. If set on the sender, the locale is very easily determined - it is the sender's language - and the engine will send a single email, with the template resolved as above. If on the other hand, that parameter is set on the receiver, the engine will perform additional steps:
- Group recipients from TO, CC, BCC fields based on language.
- Resolve each template based on that language, as shown.
- Send mails to each group thus determined, to keep the language consistent.
Therefore, when setting the 'receiver' to determine the language, the engine may send multiple mails, one in each language; of course, maximum number of mails sent is equal with the length of unique recipient list. While this is a very useful feature, this also impacts the performance and the memory used (if you're using queues).
SIL Template Language
Within the templates, any standard or custom field defined in the issue that called the routine can be referenced using the notation $field$. In fact, we expanded this notation and we created, started with version 4.0, a meta language named STL (not from Standard, but SIL). This language allows embedding snippets of SIL within the template (so you can output multiple rows in a html table, for instance). You can read more about STL in its dedicated chapter.
Tip
You can create, edit, delete email templates using the built-in editor.
Email Sender
There are 4 email senders available:
Mail Sender | Description | When to use |
---|---|---|
Container Sender | Uses Jira to send mails; mails are enqueued in the standard Jira queue and the call returns immediately | In most cases, this is what you should use. It offers good performance and it relies on the standard Jira mechanism. |
Direct sender, custom | Connects to the SMTP server and sends the mail. You need to specify the mail server parameters | You need to configure another mail server for the mails and you want to wait for the send confirmation to arrive before continuing your SIL program |
Direct sender, defaults | Same as above, but takes the configuration from Jira SMTP server | You just want to wait for the send confirmation to arrive before continuing your SIL program. |
Null sender | Logs messages to be sent in the Jira log | Debug and Development |
Note that a mail that has been successfully sent does not mean that the recipient got the mail. It can be rejected along the way for multiple reasons. SMTP does not guarantee delivery!
If you choose Direct sender, custom, you will need to supply in some additional parameters:
These parameters are standard, and you can select between the 'smtp' and 'smtps' protocols, specify the SMTP host server and port, as well as the authentication tokens (username / password). If you are unsure what to fill in in this form, please ask your network administrator to provide details of your company mail setup.