Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|
This page is for application designers who want to send notifications via email.
Overview
To send email notifications to application users, configure a File Exporter. This allows you to email information about data in PhixFlow and optionally to add a file as an attachment.
Email Accounts Setup
In order to send an emails, PhixFlow must have an Email Account from which to send emails. Email accounts are configured for the whole PhixFlow instance rather than in an application. This means you need administrator privileges to create an account.
Step 1 Create an email account
If there is no PhixFlow email account, ask your PhixFlow administrator to create one. If you are using a PhixFlow hosted instance, email support@phixflow.com. Also ask for permission to edit the account.
Step 2 Configure the email account
- In the repository, go to Full Repository → Email Accounts.
- Double-click the account name to open its properties.
- Make a note of the Login name as you will need to know it when testing.
- Configure the email account as required; see Email Account properties for details of the options. Set
- Outbound: tick
- Enabled: tick
- Save your changes.
Step 3 Test the email account
- Reopen the email account.
- In Test To enter your email address.
If If the Test To option is not visible, make sure Outbound is ticked. - In the properties toolbar, click
and select selectInsert excerpt _more_options _more_options nopanel true
.Insert excerpt _emailConfiguration _emailConfiguration nopanel true - PhixFlow sends an email to the address specified in Test to.
- Check your email. There should be an email address from the emal account's Login address, for example
notifications@phixflow.com
.
Sending an Email
You may want to add an attachment to an email.
In this example, we will send an email with an attachment that contains a list of processed employees for a particular day.
Tip |
---|
You can download the example data from the PhixFlow Learning Centre. |
Step 1 Create an analysis model to generate the attachment
- Create an analysis model or open one that contains the required data; see Analysis Models for Batch Processing Data and Exporting to a File.
- Add the table that contains the data you want to export. Hover your mouse pointer over the table and in the popup toolbar, click
. This means the data remains unaffected when you run the analysis model.Insert excerpt _static _static nopanel true - Add a second table called Send Email. This separates the data from generating the email, which gives you more control over the different tasks.
- From the analysis model toolbar drag in a
onto the canvas.Insert excerpt _file_exporter _file_exporter nopanel true - Connect the table Employees to the file exporter. This pipe will run the file exporter when you run analysis.
- Connect the table Employees to the file exporter a second time. PhixFlow opens the pipe properties.
- To configure the second pipe to count the records, set:
- Name:
recs
. - Type: select Look-up.
- Save your changes.
Your model should look like this.
- Name:
Step 2 Configure the File Exporter
- In the analysis model, click on the
to open its properties and inInsert excerpt _file_exporter _file_exporter nopanel true Insert excerpt _property_tabs _property_tabs name basic :→ .nopanel true - In Basic Settings, set:
- Name: to indicate the purpose of the email.
- Enabled: ticked.
Leave this unticked during testing to avoid generating lots of data and emails then tick it when you are ready for the file to be exported and emails to be sent. - File Name: specify the name for the exported file. The file extension must match the type of data being exported.
- For a simple name, enter text in quotes, for example:
"Employees.xlsx"
- For a dynamically generated name, enter an expression that returnd a string; see Expressions and PhixScripts. For example:
"Employees_"+today()+".xlsx"
generates the name Employees_20220831.xlsx.
- For a simple name, enter text in quotes, for example:
- Output Directory: enter an expression to specify where PhixFlow saves the file in the export directory on the server, unless Ignore Base Directory is ticked; see File Exporter for details.
- Export File as: select the file type for the exported file.
For this example we are using Excel Spreadsheet. - Overwrite existing file: optionally tick tick to overwrite files that have the same name,
for example to have only one Employees.xlsx file on the server at any one time. - Header: optionally tick to include column headers in the output file.→
- In Input Multiplier set:
- Input Multiplier: enter an expression that evaluates to a list of one or more values. For each value in the list, the internal variable _inputMultiplier will be set to that value.
For this example, we want to count the records in the recs pipe, so enter:if(countElements(recs) > 0, countElements(recs), 0)
→
- Input Multiplier: enter an expression that evaluates to a list of one or more values. For each value in the list, the internal variable _inputMultiplier will be set to that value.
- In Send by Email set:
- Email From: enter the email address set in the email account → Login. For example,
notifications@phixflow.com
- Subject Expression: enter an expression to generate the subject line of the email, for example,
"RE: Employee Records "+today()
- Attach File, Ticked if you want tick to attach the records exported file to the email. Leave
Alternatively, leave this unticked if you do not want to send the attachment with the emailwant the email to include a link to the exported file. - Message Expression, this is an expression field: enter an expression to generate the message. For example, the following incorporates the value from the Input Multiplier to create a message that tells the recipient how many records were processed:
"We have processed "+_inputMultiplier.1+" employee records today."
.
- → Recipient Expressions → TO Expression, This is enter an expression field. It must contain that contains the email addresses of the recipients of this information. For example : a single address like
"info@phixflow.com"
. - Save you changes.
- Email From: enter the email address set in the email account → Login. For example,
- Save you analysis model.
- Here is a screenshot of the input multiplier and file exporter configuration
- Save your changes to the file exporter and to the analysis model.
Step 3 Check the analysis model
- To run analysis on the table that is set to call calls the file exporter to , right-click and select
to test it works. For example, inInsert excerpt _run_analysis _run_analysis nopanel true
In our example this table is is called Send Email.
Here is an example screenshot of this configuration:
Step 4 Set up the Actionflow
- From the application home screen click on Screens.
- Open the screen that from which you want to send the email from or create a new screen to send the email. See ; see Designing Screens.Add
- From the theme 2.1 palette, drag in a Button to the screen that will be used to call the email. These are available from the palette.send the email.
- Right-click on the button and select Add Actionflow. Give the actionflow a meaningful name, for example:
Send Email Notification
. - In the actoinflow that opens, click on Connection, and select On Click.
- From the toolbar, drag an Analysis Task an analsyis node onto the Canvas.Provide a meaningful canvas and give it a name.
- From In the table section toolbar click
, from the pane that opens drag the Table we created earlier to call → List. From the list of tables, drag the table that calls the file exporter into onto the Analysis Taskanalysis node.Insert excerpt _tableOnly _tableOnly nopanel true - Save your changes to the actionflow.
- Connect To connect the On Click input to the Analysis Task by dragging analysis node, drag a line between the two. See ; see Wiring Actionflows.
- Save your changes.
The button is now
setconfigured to run
the Analysis Task that will result in the email being sent.Testing the Resultsan actionflow, which:
- runs an analysis on the model
- to generate a data file
- attach the file to an email
- and sends the email to the recipient.
Step 5 Testing the Configuration
- Run analysis on the table that drives the file exporter that sends the email.
- Open the
Insert excerpt _console _console nopanel true - In the Completed Tasks section, click on the Run Analysis Task you ran in the previous step.
- In the Messages for this completed task click on the Emails tab.
If it is not visible you may need to click on the more menu to see the option. - In the Status column, one Check the Status column. It can take a few minutes for an email to be sent and sometimes longer if the attached file is large.
One of the following common statuses will be set:- Ready, the email is produced
- Incomplete, PhixFlow is trying to send the email.
Test your email account is working correctly. - Sent, the email has been successfully sent.
- It can take a few minutes for an email to be sent and sometimes longer if the attached file is large.
- If the status stays as Incomplete, test your Email Account setup above is working correctly.
- The Files tab shows any Check the Files tab for details of the files produced as part of this completed task.
This is useful to see if the file exporter ran but the email portion has failed. - If you email has not been received do not receive the email,
- check your email client's Junk folder
- check the log for
- errors
- .
Sending an Email Incorporating Table Data
Following the example above we will now setup an example where an email will be sent to any employee that has a missing telephone number. To achieve this we will perform The following example shows you how to configure PhixFlow to email employee with no telephone number in their record. To identify these employees, we run a lookup that only returns the employee records without a telephone number, however you can easily amend this setup to suit your needs:
Create an Analysis Model.
You can adapt the steps by using a lookup that provides the email addressees that you require.
- Create an analysis model or open one that contains the required table.
- From the Toolbar toolbar, drag a
onto the canvas.Insert excerpt _file_exporter _file_exporter nopanel true - Connect the Table which contains the desired data to the File Exporter.Connect the Table which contains the desired data to the File Exporter, a table to the file exporter, and then connect them a second time.
- In the pipe properties which that open, set:
- Name
- :
recs
. - Type
- : select Look-up.
- Filter
- : set the filter criteria for the lookup,
- to return
- only the data you need.
In this example, the filter allows only
- records where Telephone is null, as illustrated
- below:
- Save your changes to the pipe.
The setup analysis model is similar to our previous example but with the addition of a filter on the lookup pipe, as illustrated here: - The setup for the
is the same as the Sending an Email example above, with the following changes:Insert excerpt _file_exporter _file_exporter nopanel true - Attach File: unticked as we do not want users to receive a file
unticked
- .
- Input Multiplier
- : the expression evaluates to the list of records from the lookup pipe. In our example the lookup pipe is called mtn so we set the _inputMultiplier to:
mtn
- Send HTML
- : tick
- to send our contacts a HTML email.
Message Expression
: as Send HTML is ticked, the message box is treated as
a HTML field. This means you can use HTML markup
. In our example we want to send a personalised message to the user with their first name
and a link to login to PhixFlow
.
Code Block firstline 1 title PhixFlow HTML Message linenumbers true do( "<p>Hi " + mtn.FirstName + ",</p>"+ "<p>Please login to PhixFlow and update your number.</p>"+ "<a href='https://services.phixflow.com/themes/start.html?application=Anthony'>PhixFlow Login</a>" )
Save
Youryour changes.
Run analysis on the table set to call that calls the file exporter to test it works. For example, in In our example this table is called Send Email Requests.
We can now
When you know the configuration works, connect the
tablebutton to an
button andactionflow as
outlinedexplained in the Sending an Email
example aboveabove.
Send Emails with Excel Template
See Excel Template.
More Information
For more information on the file exporter and a full list of email options see, File Exporter.
For more information on expressions and using them in expression fields see, Expressions and PhixScriptsLearn More
- Excel Template: for how to control which values from which input pipes are written to an Excel file.
- File Exporter: for details of properties and email options
- Expressions and PhixScripts for help on how to write expressions.