Email Service

Intrexx allows you to send emails automatically. There are two ways to trigger the sending of an email:

  • When you click a button that has been configured accordingly

  • In processes with the corresponding process elements

The basic requirement for sending emails is to configure the email service in the "Tools" module. So, first set up the email service, test it, and activate it.

You can find all the information you need about configuring buttons in email-sending applications here.

You can find all the information about automatically sending emails in processes here.

Configure

Clicking this button opens a wizard where you can set up the service.

Default Sender

Name

Enter the name of the default sender here. The default sender is used when no specific sender has been defined in an application or process.

Email

Enter the email address of the default sender here.

Click "Next."

Email Server

Up to Intrexx version 12.1.0:

SMTP Server / SMTP Port

Enter the name or IP address of the SMTP server here.

The default port is 25. If you have any questions, please contact your system administrator. The mail server used does not necessarily have to be located on the Intrexx Portal Server's local network.

Authentication

The settings in this section depend on the settings required by your mail server.

Connection Reliability

For connection security, you can select "None," "STARTTLS," or "SSL/TLS."

Authentication Methods

Here you can specify how passwords are transmitted.

PLAIN

Transmits the password in plain text without encryption.

Login

Retrieves the password in plain text from the user's input on the device.

CRAM-MD5

Encrypts the password using the CRAM-MD5 algorithm.

NTLM

Authentication is performed using NTLM.

Username / Password

Enter your username and password here.

Click "Next."

Starting with Intrexx version 12.1.0:

OAuth2 Authentication for Exchange Online

Starting with Intrexx version 12.1.0, you'll find the "Type" drop-down list here. This allows you to select OAuth2 authentication for Exchange Online instead of the default authentication.

Preparation for Microsoft Entra ID

To set up OAuth2 authentication for Exchange Online in Intrexx, follow these steps:

1. Register a new app at https://entra.microsoft.com/#view/Microsoft_AAD_RegisteredApps/ApplicationsListBlade/quickStartType.

2. Select "New Registration."

3. Enter a name of your choice for the application. The name must not contain any spaces.

4. For the supported account types, select the "Only accounts in this organizational directory" option.

5. Click "Register."

API Permissions

1. Click "API Permissions" in the menu on the left.

2. Click "Add Permissions" here.

3. Select the "APIs used by my organization" option here.

4. Type "Office 365 Exchange Online" into the search box.

5. Under "App Permissions," search for "SMTP.SendAsApp" in the search field.

6. Enable the "SMTP.SendAsApp" option.

7. Click "Add Permissions." The permission is then added to the app registration.

Next, you must click "Grant Administrator Approval for <TENANT>" to enable these settings for the organization/tenant.

Certificates and Secrets

1. Select the "Certificates and Secrets" menu item.

2. Click "New Secret Client Key."

3. Enter a description and click "Add."

This will generate a new client key for the email service in your Intrexx portal.

Important: Copy the client key ("Value") immediately after it is generated, as it will no longer be displayed later! You will need the client key to continue configuring the email service in your Intrexx portal.

PowerShell

To ensure that Intrexx can send emails correctly, a new service principal must be added in Exchange Online. This step must be performed using PowerShell.

  • Install-Module -Name ExchangeOnlineManagement

  • Import-Module ExchangeOnlineManagement

  • Connect-ExchangeOnline -Organization <Tenant ID>

  • New-ServicePrincipal -AppId <Application ID> -ObjectId <Object ID> -DisplayName <Display Name>

  • In some scenarios—especially when access control is strictly enforced—the previously created enterprise application must be granted access to the SMTP mailbox:

    Add-MailboxPermission -Identity "[Email address used to send messages]" -User [Object ID] -AccessRights FullAccess

You can find the "Application ID," "Object ID," "Display Name," and "Tenant ID" values on the following page for the app registration you just created:

https://entra.microsoft.com/#view/Microsoft_AAD_IAM/StartboardApplicationsMenuBlade/~/AppAppsPreview

Configuration in Intrexx

Finally, you can configure the email service in your Intrexx portal. You can find the information required there in the app registration you created at

https://entra.microsoft.com/#view/Microsoft_AAD_IAM/StartboardApplicationsMenuBlade/~/AppAppsPreview

as well as the client key created earlier.

Please enter the following information here:

SMTP server:

smtp.office365.com

SMTP port

587

Client

Your Microsoft 365 tenant ID

User Principal Name

The email address of the user that Intrexx should use to log in to Exchange Online

Application ID

Application ID for your app registration

Application Secrets

Value of the generated client key

Broadcast Settings

Maximum email size

Limits the size of outgoing emails. If this field is left blank, the size of the emails will not be taken into account. Select the desired unit from the drop-down list to the right of the size input field.

By default, there is a size limit of 10 MB here. This corresponds to the typical maximum expected message size.

Maximum number of emails per session

Here, you can set a limit on the maximum number of emails per SMTP session. If there are multiple emails ready to be sent at the same time, the SMTP session is terminated once this limit is reached, and a new SMTP session is created during the next iteration of the sending loop to send additional emails. The wait time between two iterations of the send loop is determined by the property de.uplanet.lucy.sendmail.sleepInterval (default value: 1000 ms).

Archive Sent Emails

With this setting, sent emails are stored in an archive file. You can change the corresponding path in the advanced settings.

Create a process event if an email cannot be sent

If this setting is enabled, after an email delivery has definitively failed, a

            de.uplanet.lucy.server.mailservice.workflow.event.IBadMailWorkflowEvent
        

generated, which can be handled, for example, using the generic event handler

            de.uplanet.lucy.server.mailservice.workflow.eventhandler.BadMailWorkflowEventHandler
        

can be responded to.

You can find more information on this here.

Maximum Number of Repetitions

This setting determines how many times the system will retry sending an undeliverable email.

Repetition Intervals

Set the duration of the first, second, third, and subsequent repetition intervals here. Each interval is calculated starting from the time of the most recent attempt.

We recommend keeping the settings for resending messages as they are set by default here.

Click "Next."

Connection Test

Click the "Test" button to test the configuration. If error messages appear, the configuration must be changed, or there is no mail server that can be used for the SMTP service. If you have any questions, please contact your system administrator.

Click "Finish" to save the email service configuration and close the wizard.

Once the email service has been set up, the settings will be displayed in the right-hand pane. You can enable, disable, or update the email service here by clicking the corresponding buttons.

If you click "Configure" again here, the configuration overview will open. In addition to the settings you're already familiar with, you'll find the advanced settings here.

Advanced Settings

You can edit the value of a transmission setting by double-clicking it.

Add a setting

Opens a dialog box where you can create a new property.

New Feature

In the "Name" field, select the desired JavaMail property and enter its value. You can also enter your own properties directly here. You can find information about the available settings here.

Determine which portal the message was sent from

Global headers can be set when sending emails. These are set in every email sent through the Intrexx email service. It is a common convention to prefix the names of custom headers—those not defined by standards—with "X-". To define a global header, set the new property de.uplanet.lucy.sendmail.header in the expert settings as described above. followed by a sequential number, such as here, for example:

            de.uplanet.lucy.sendmail.header.1
        

In the key value, enter the prefix "X-", the header name, followed by a colon and the portal name, as shown here, for example:

            X-Intrexx-Portal:MeinPortal
        

This allows you to filter all emails sent from the MeinPortal portal, for example, in Outlook. In our example, the message header would be X-Intrexx-Portal:MyPortal.

Click "OK" to save the new setting and close the dialog box.

Delete Setting

Removes the currently selected property.

Set the path for the email archive

In the sending settings, you'll find the option "Archive sent emails." The directory where archived emails are stored is specified by the de.uplanet.lucy.sendmail.sentMailDirectory setting and can be changed here.

Gmail as an email provider

As of May 2022, you can no longer use the password associated with your Google account to use Gmail as your email provider in Intrexx.

Instead, you must now use what is known as an app password. To do this, two-factor authentication must be enabled in your Gmail account.

In existing portals, the problem can be identified by errors of the following types:

            Error:
        javax.mail.AuthenticationFailedException:
        534-5.7.9 Application-specific password required. Learn more at 534 5.7.9
        https://support.google.com/mail/?p=InvalidSecondFactor y12-20020a170906470c00b00711d0b41bcfsm2837429ejq.0 - gsmtp
        

 

More Information

Applications: Configuring Buttons for Sending Emails

Processes: Automatic Email Sending