KB-1197 Custom email senders send from old email addresses and do not use new values

Symptoms

Users observe that a process model that uses a custom email sender retains the email address value of the original environment where it was created instead of using the sender’s email in the new environment when imported.

In addition, the process model continues to display the old email address even when the email address has changed in the configuration files.

Cause

The custom sender used in the process model is configured with a static email address instead of a dynamic one such as a constant. Therefore, it is internally mapped to the hard-coded email address value that gets stored in the XML of the process model. As a result, the sender cannot be automatically mapped to new values when the configurations are modified or the process model is exported and imported.

Action

These issues can be resolved in two ways:

  1. Manually re-select the custom sender in the Send Email Smart Service for each process model that uses the sender. This forces the remapping and allows new values to be used.
    1. Open the process model.
    2. Temporarily select another email sender on each Send E-mail activity.
    3. Save and publish.
    4. Select the desired custom email sender on each Send E-Mail activity.
    5. Save and publish.
  2. Use the Process Model Utilities plugin to perform the same operation automatically.
    1. Install the plug-in under <APPIAN_HOME>/_admin/plugins.
    2. Create a process model with the "Update Custom Sender" activity located under "Process Model Utilities".
    3. Configure the activity by passing all the process model Ids or UUIDs to be updated as part of the input named "Process Model Ids Or Uuids".
    4. Configure the input named "Custom Sender Name" with the name of the sender that needs to be updated.
    5. Provide the new expression for this custom e-mail sender in the input called "Custom Sender Address Or Expression".
    6. Save and publish, then start a new instance of this model.

That being said, the best practice for custom email senders is to use a constant (see Expression Email Address for more information) to ensure that the value remains dynamic. The same constant can be imported on all environments once and each environment can then have the email address that belongs to that environment.

Affected Versions

This article applies to all versions of Appian.

Last Reviewed: March 2017

Related
Recommended