Send E-Mail Smart Service

Overview

The Send E-Mail smart service is used to send an email to one or more recipients. The message body of the email supports HTML, in addition to normal text.

Data transferred using the Send E-Mail smart service is not encrypted. Exchange of unencrypted sensitive or confidential data is not a recommended practice. Application-level security is the responsibility of each customer.

Properties

  • Category: Communication
  • Icon: Send E-Mail icon
  • Assignment Options: Unattended

Use the Run as whoever designed this process model option if you are using an email to start another process model.

See also: Smart Services

Configuration Options

This section contains tab configuration details specific to this smart service. For more information about common configurations see the Process Node Properties page.

Setup Tab

Email Configuration section

From: Select one of the options listed below to display as the sender of the email.

  • Process - Displays the email address of the specific process instance with the display name taken from the process display name.
  • Process Model - Displays the email address of the process model with the display name taken from the process model display name.
  • Process Initiator - Displays the email address and display name of the user who started the process.
  • Process Designer - Displays the email address and display name of the user who last published the process.
  • Custom Sender - Allows the designer to specify an email address and display name from which an email should be sent via Appian. Selecting this option requires the designer to configure the Sender Display Name and Sender Email Address fields, which are used to construct the From email header. The email's domain will be sent in the Sender and Return-Path headers to specify that the email was sent from a system on behalf of the From address. To learn more, see Configuring Custom Email Senders.

To: Enter the Appian user and group names to receive the email.

  • You can add users or groups by typing the names and selecting them from the auto-complete list, typing a literal email address, selecting them from the Directory, or creating an expression that defines the addressee(s).
  • If entered manually or selected from the Directory, multiple display names and addresses must be separated by a semi-colon (;).
  • If entered as an expression, you can convert user names, group names, and process actors to type Email Recipient using the toemailrecipient() function. For example, if you want to send an email to the Process Initiator, enter the following: toemailrecipient(pp!initiator). Appian, however, automatically casts values of type User, Group, or People to Email Recipient.
  • If users and groups have already been entered in the textbox, the users and group are replaced with the expression.
  • NOTE: If you send an email to a Personal or Restricted group or one that has a High Privacy Policy, the other users within that group appear as "Undisclosed Recipients" in the To: field of the email when it is delivered.

Cc: Click Add Cc to enable the Cc: field and enter the Appian user and group names to receive a courtesy copy of the email.

  • This field behaves in the same manner as the To: field.

Bc: Click Add Bc to enable the Bc: field and enter the Appian user and group names to receive a blind courtesy copy of the email.

  • This field behaves in the same manner as the To: field.

Attachments: Click Add Attachments to enable the Attachments: field and add an attachment.

  • You can add an attachment by typing the name of a document stored in Document Management and selecting it from the auto-complete list, selecting it from a directory, or creating an expression that defines the document.

Subject: (Optional) Enter the desired subject line for the email or enter an expression that defines the subject.

Priority: (Optional) Select High or Low to define the priority of the email.

Message Body section

Message Body: Select Enter text here to type the message directly in the field using the Rich Text Area, or select Use a text or HTML template to look up and select a file to use as the message template.

Avoiding malicious HTML

If the Message Body of the email contains information that is input by an end user, wrap any user-entered process variables in fn!stripHtml. Otherwise an end user could try to send malicious HTML to the email recipients.

strip html from process variable

For example, say your process model has a Send E-Mail node and the body of the email displays information from a User Input Task. In the form for that User Input Task, a user could enter HTML into a paragraph field that includes something like a phishing message. You could avoid this by wrapping the process variable for that paragraph field in fn!stripHtml.

Entering text manually

If entering the message manually, click the Use Header Template and Use Footer Template links to look up and select a file to use as a template for the header and/or footer. A template file is specified by default from the E-mail Templates folder of the System Knowledge Center.

Using an HTML template
  • If selecting a template, click the Validate button to check the name of the file entered in the field. Once you have selected a template file, the substitution grid is populated with the keys found within the template file. The specified template is automatically parsed for substitution fields.

    substitutions

  • Substitution keys identified from the template file appear under Find in template document. Under Replace with, enter the text you wish to replace the substitution key with by entering an expression that results in a text string value enclosed by quotation marks in the expression. When the activity is executed, each expression is evaluated and displayed in the email. The field can be left blank, in which case the key is replaced with a blank space.
  • If you change the template document, click Re-scan Template. The template is then rescanned for substitution keys and the grid is repopulated. Whenever the template path is changed, the specified document is parsed for substitution keys. Any matching keys in the new document are retained in the grid, and their corresponding mappings are also retained. If, at runtime, the template document is found not to include any of the keys, processing continues normally — the appropriate substitutions are not performed.

Data tab

Node Outputs

Error Log Outputs

Name Data Type Description
Users with invalid email addresses User array List of Appian users with missing email addresses.
Invalid email addresses Text array List of invalid email addresses (per RFC822). For more information on the RFC 822 Standard, see also: http://www.faqs.org/rfcs/rfc822.html.

Additional Outputs

Name Data Type Description
Valid To email addresses Email Recipient array List of valid email addresses included in the email.
Valid Cc email addresses Email Recipient array List of valid email addresses included as a Cc in the email.
Valid Bcc email addresses Email Recipient array List of valid email addresses included as a Bcc in the email.

Apart from these outputs, you can also specify any kind of expression as a node output. Node outputs can be stored in process variables of the same data type for use elsewhere in the process model.

Exceptions

Email messages that are larger than allowed by your mail server or service provider fail without error notification, and do not trigger an activity exception.

  • An exception pauses the process at this node if you run it as a user that doesn't have the right to view the members of a group specified as recipients.
  • The node cannot automatically handle bounced-back emails. If your server administrator has a custom email sender defined in the From: field that has a valid and existing email address, bounce notifications are sent to this email address.
  • If the email addresses cannot be resolved (or if an invalid expression has been specified in the To:, Cc:, and Bcc: fields,) the process is paused at this node. A notification is then sent to all process administrators and the process initiator.
  • An exception pauses the process at this node if an expression used to specify your attachment doesn't return a document. This can also happen if you run the node under a user account that does not have the right to retrieve the documents included as attachments.
  • An exception pauses the process at this node if your template file is missing, or if the user selected to run the node does not have the right to access the template.
  • If you are unable to receive an email message sent through the Send E-Mail activity, contact your network administrator to ensure that your spam filters and security software are not blocking these messages (or communication with the SMTP server.)
Open in Github Built: Thu, Feb 23, 2023 (02:59:22 PM)

On This Page

FEEDBACK