JobFlow Email Locations
Introduction
With Fiery JobFlow 2.9.2, we introduce a new feature: Email Locations. This allows you to create JobFlow workflows that monitor an email account for new jobs to be processed by Fiery JobFlow. You can also add an email as the output module, enabling the workflow results to be sent to an email recipient. Additionally, it's possible to combine email input and output in the same workflow, where results of jobs submitted via email are sent back to the sender.
Configuring Email Locations involves different setups for receiving (Email Input) and sending emails (Email Output) due to the distinct server configurations required for each.
Email Input
This is an Email Location that monitors an email account for specific emails to be processed with Fiery JobFlow.
Settings
Setting | Details |
---|---|
Name | Descriptive name for the Email Input Location |
IMAP Server | IMAP server address |
Port | IMAP server port |
Subject | Email subject must start with this phrase for processing |
Input Email Address | Email address to monitor |
Password | Password for the email account |
Gmail IMAP settings
Setting | Details |
---|---|
IMAP Server | imap.google.com |
Port | 993 |
Input Email Address | [email protected] or google business email |
Password | app password (see app password below) |
Email Output
To send emails from an account, enable and configure the JobFlow SMTP server via Admin > Services > SMTP settings
.
By default, JobFlow uses its built-in email template for the email body. To add a new template, place it in [JobFlow Install Location]\Neem\Neem\lib\email_templates\custom_templates
. Templates in this directory will become selectable options for the Email Output Location.
Setting | Details |
---|---|
Name | Descriptive name for the Email Output Location |
Output Email Address | Default email address for sending |
Subject | Default subject line for emails sent by JobFlow |
From Address | Default sender email address |
Template | Email body template to use |
Gmail SMTP settings
Setting | Details |
---|---|
SMTP server | smtp.gmail.com |
Port | 587 |
Domain | gmail.com or business domain |
User Name | Gmail or business email |
Password | app password (see app password below) |
Gmail app password
Gmail requires an app specific password for any 3rd party integration. Please follow these steps to create an app password:
- In https://myaccount.google.com/security, ensure 2-step verification is set to ON.
- If yes, then visiting https://myaccount.google.com/apppasswords should allow you to set up application specific passwords.
List of known SMTP and IMAP servers
https://www.arclab.com/en/kb/email/list-of-smtp-and-imap-servers-mailserver-list.html
Customization
Advanced Settings
For additional configuration, modify the settings in [JobFlow Install Location]\Neem\Neem\email_settings.config
.
Note: please restart JobFlow after modifying email_settings.config
for the changes to take effect.
{
"OUTPUT_EMAIL_ATTACH_JOB": 1, // Attach job file
"OUTPUT_EMAIL_REPORT_NAME": "report.pdf", // Default filename for Preflight report
"INPUT_EMAIL_FREQUENCY": 1800, // Frequency in seconds for checking new emails
"INPUT_EMAIL_EXTENSION_SUPPORTED": [".pdf"], // Supported file types for processing
"INPUT_EMAIL_NUMBER_OF_ATTACHMENTS": 1, // Maximum number of attachments to process
"INPUT_EMAIL_PROCESS_OLD_UNREAD_EMAILS": 0 // Option to process older unread emails
}
Email template example
An example of a minimal HTML template for custom email body text. Place in [JobFlow Install Location]\Neem\Neem\lib\email_templates\custom_templates
.
<!DOCTYPE html>
<html>
<head>
<style>
body {
font-family: Arial, sans-serif;
color: #333;
}
.content {
margin: 0 auto;
width: 80%;
padding: 20px;
background-color: #f7f7f7;
border-radius: 5px;
}
h1 {
color: #444;
}
p {
line-height: 1.6;
}
</style>
</head>
<body>
<div class="content">
{{#output_email}}
<h1>Greetings from Print-R-Us</h1>
<p>Dear customer,</p>
<p>Thank you for your order. We have checked your order and attached the preflight report.</p>
<p>Please review the report and let us know if you have any questions or concerns.</p>
{{#job_name}}<p>{{label}}: <b>{{value}}</b></p>{{/job_name}}
{{#workflow_used}}<p>{{label}}: <b>{{value}}</b></p>{{/workflow_used}}
<p>Best Regards,</p>
<p>Print-R-Us helpdesk</p>
{{/output_email}}
</div>
</body>
</html>