The E-Mail Send/Receive application allows to send and receive e-mails.
You can perform following operations:
The following properties can be specified:
Figure: Properties - Script Invocation Application
In case you switch to the Integrator profile, UUID and ID options are displayed additionally.
Figure: UUID and UI Properties
Predefined IN access points are created for to, from, cc, bcc and subject. You cannot create OUT access points. If IN data mappings are defined on predefined IN access points for meta-information, then at runtime available value overwrites the value defined in the UI. However, the OUT access point returnValue (String primitive) is created as soon as a response type is selected.
icon. The parameter gets added to parameter
definition table.
Figure: Parameter Mapping
Figure: Primitive Data
Figure: Structured Data
Figure: Document Data
Note: It is recommended to use small documents, because big files may cause memory issue and could be rejected by email server.
The default and added parameters can be set as input access points in data flow to the E-Mail application.
Figure: Mail Application access points
The http response type is supported which allows correlating back process data information via MailReceptionServlet. The http response type requires a server base URL. For example, http://myippruntime/mycontextroot. The E-Mail Overlay is implemented as asynchronous Camel application type if a response type is selected.
Figure: Response
The http response type requires an Enumeration type (SDT of type Enumeration) where each element in the Enumeration becomes a link in the email (e.g. Approve, Rejected, etc).
Figure: Response
You can use configuration variables for user and password.
The e-mail editor is provided to format and write email contents. You can format an email using the following icons:
| Icon | Function | Description |
|---|---|---|
![]() |
Source | Displays source of the content |
![]() |
Cut | Using this icon you can move the content. It is enabled when some text is selected in the editor. |
![]() |
Copy | Using this icon you can copy the cut or selected content in the editor. It is enabled when some text is selected. |
![]() |
Paste | Using this icon you can paste the copied or cut content in the editor. |
![]() |
Paste as Plain Text | Using this icon you can paste the copied content as plain text. |
![]() |
Paste from Word | Using this icon you can paste the copied content from Microsoft Word. |
![]() |
Undo/Redo | Using this icon you can undo or redo the most recent action taken. |
![]() |
Spell-check | Enables you to check the spellings in the content. |
![]() |
Bold, Italic and Strike through | Applies bold, italic and strike through formatting to selected text. |
![]() |
Insert/Remove Numbered List | Inserts or removes numbered list |
![]() |
Insert/Remove Bulleted List | Inserts or removes bulleted list |
![]() |
Increase or Decrease Indent | Increases or decreases the text indentation. |
![]() |
Block Quote | Format a block of text to identify quotations. |
![]() |
Link, Unlink and Anchor | Adds link to the selected text or unlink the linked text or provide anchor for the text. |
![]() |
Image | Inserts an image at specified location. |
![]() |
Table | Inserts a table at specified location. |
![]() |
Horizontal Line | Inserts horizontal line at specified location. |
![]() |
Special Character | Inserts special characters at specified location. |
![]() |
Styles | Enables you to specify styles for the content. |
![]() |
Normal | Enables you to format paragraph of the content. |
![]() |
Maximize | Increases the size of the editor. |
![]() |
About CKEditor | Displays information about editor. |
You can test the application in this tab. Click Reset to initialize the input data and then click Run. You can view the email content to be sent. If you have provided response type as HTTP then the data values provided in the enumeration type are displayed as links.
Figure: Test
You can add customized templates for attachments. The templates source could be:
For the embedded attachments, the details below should be defined.

Figure: Attachment templates configuration
More details about template creation are described here.
In many situations, the end user would like to specify the attachments and the templates dynamically at runtime.
The following model shows how to do that. It has a manual activity where a "Person" details and "Template configuration" are entered. In the second activity, an email application is invoked using the entered data.
Figure: Dynamic email attachments model
Below the main steps to create the model.
Figure: Template configuration structured data
The SDT is a list of attachments with the attributes below:
Figure: Dynamic Template Attachments
Figure: Template configuration access point
Figure: Dynamic Template runtime
If the template has the following content:
Dear Mr. $person.firstname $person.lastname!
Figure: Email sample with dynamic attachment
Figure: Email sample with pdf dynamic attachment
The attachment tab allows to define documents to be attached to the e-mail sent. Those documents have usually being processed by a template engine where the template is located in the document repository or class path and the actual values are derived from process data. This section explains how attachment documents could be derived from process data and sent as e-mail attachment too.
The following model shows how to derive templates from process data. It has a manual activity where a "Person" details and two templates are entered. In the second activity, an email application is invoked using the entered data.
Figure: Templates derived from process data model
The email application has two templates (document type) defined as IN parameters.
Figure: Email template Parameters
The two document types defined as IN access point are listed in attachment tab with "Source = Data" and "Path = EMPTY". The others are located in the Repository and ClassPath.
Figure: Email template Attachments
At runtime, enter person details and upload the template files as follow..
Figure: Email template Data Attachments Runtime
An email as follow is sent having four files as attachement.
Figure: Email sample with process data attachment
To manage the correspondences with their clients, Clerks or Business Analysts want a model to indicate which documents are received, which one are missing, etc. In many cases, they want to send an email to:
To achieve this task, E-Mail overlay has been extented to derive attachments from a process data DOCUMENT_REQUEST. If Document Request is selected in the Attachment tab, an IN access point of type DOCUMENT_REQUEST is created.
The "DOCUMENT_REQUEST" data type is a list of "REQUEST_ITEM". Each REQUEST_ITEM has the following attributes:
A document is attached to the Email, if IsAttachment is TRUE. The configuration is mapped as follows:
In case DOCUMENT_REQUEST is selected, the additional attachments via IN data mappings (document type) are ignored (not possible anymore).
TemplatingThe variable $docreq could be used in an email template to access all/accepted/missing/required documents:
The following example shows how to loop over the documents and access their attributes
#foreach ( $item in $DOCUMENT_REQUEST.Documents) Document: $item.Name Comment: $item.Comment Exits: $item.Exists Accepted: $item.Accepted Required: $item.Required DocumentType: $item.DocumentType #endExample
The following example illustrates how to use the document request with email application
Figure: Doc Request model
Figure: DocRequest SDT
Figure: Doc Request attach source
Figure: Email Doc Request Parameter
The email body is based on the following template file
Hi $person.firstname $person.lastname $docreq.existing
Deploy the model and run it
Figure: Enter Document Request
In this example, the UserNotification document is a template (.docx) located in the Document Repository. It will be converted to PDF format and attached to the output email
Figure: The Document Request Template/attachment/Pdf
Enter a person details (first/lastname). Here is a sample email output:
Figure: Email with document request
The attachment is as follow:
Figure: Email with document request attachment
Click the Comments tab to add comments for the application. The newest comment gets displayed at the top of the table. To add the comment, specify the comment in the text box and click Submit. To delete the comment, select the comment and click the Delete icon. The user, who has submitted the comment, can delete that comment. If the other user selects the comment or no comment is selected, the Delete icon remains in disabled state.
Figure: Comments
To use templating functionality, you have to add the following dependencies in your pom.xml file:
<dependency> <groupId>com.infinity.integration</groupId> <artifactId>camel-templating</artifactId> <version>3.0.1</version> </dependency>
To use templating functionality, you have also to add the defaultTemplatingRoutes context reference to your Camel Context file (e.g.:default-camel-context.xml file under \WEB-INF\config\ipp\spring folder.)
<camelContext id="defaultCamelContext" trace="true"
xmlns="http://camel.apache.org/schema/spring">
<routeContextRef ref="defaultTemplatingRoutes"/>
</camelContext>