Email Workflow Configuration

The workflow settings described in this section belong to Email Workflows.

Type = "EMAIL";

This specifies the workflow type. This must be EMAIL in order to be an email workflow.

SubType = "";

This specifies the sub-type of the workflow, depending on the Type.

Possible values for an email workflow are:

  • EXCHANGE2007SP1
  • EXCHANGE2010
  • EXCHANGE2010SP1
  • EXCHANGE2010SP2
  • EXCHANGE2013
  • EXCHANGE2013SP1
  • EXCHANGE
  • EXCHANGEONLINE
  • POP3
  • IMAP

EmailUsername = "";

The access account for the email inbox.

EmailPassword = "";

The password for the email inbox.

EmailIgnoreSSLErrors = $true;

If set to $true (default) SSL errors are ignored when connecting to the inbox.

Specific Settings for IMAP and POP3

EmailServerAddress = "imap.example.com";

EmailServerSecurity = "AUTO";

Security Settings. Valid values are:

  • AUTO (default)
  • NONE
  • SSLONCONNECT
  • STARTTLS
  • STARTTLSWHENAVAILABLE

EmailServerPort = -1;

This specifies the port of the mail server.

-1 is default: guess 'port' from _wfconfig.ps1 properties Subtype (IMAP, POP3) and EmailServerSecurity.

Specific settings for EXCHANCE

EmailDomain = "example.com";

For platform "Exchange" (on-premises or Online). Here you configure the mail domain.

EmailExchangeAutodiscoverEmailAddress = "";

E-Mail address of the monitored account - e.g. kenaflow@example.com - to auto-discover the Exchange server.

EmailExchangeServiceUrl = "";

URL of the Exchange Service.

SharePoint connected Email Workflow

Platform = "";

If the workflow is connected to PowerShell you need to specify the used SharePoint platform here:

  • sp2013
  • sp2016
  • sp2019
  • spo

spUser = ""; and spPwd = '';

The following two parameters can be used to specify credentials for the workflow for SharePoint access.

If not specified the executing user will be used to access SharePoint.

This user need to have permissions on all object the workflow need to access, e.g. workflow list, items, data list, config list, ...

However it is possible to store credentials in a protected fashion using the parameter --setusername on kenaflow.exe. This will write the encrypted credentials to these two parameters. - Encryption of credentials uses the kenaflow encryption passphrase configured in global configuration.

spoAppId = ""; and spoAppSecret = '';

Only if platform is 'spo' = SharePoint Online

Here you can specify "app credentials" to access SharePoint online.

Please read article App ID & App Secret.

You can store encrypted credentials here with program switch --appid on kenaflow.exe.

Web = "";

Full URL to the SharePoint web where the workflow list is in.

AlternateWebUrls = @();

A list of alternate URLS, e.g. if a web application has Alternate Access Mappings.

Remove Events could be received with such an alternate URL.

ConfigList = "WFconfig";

Defines the name of the workflow config list.

DataList = "WFData";

Defines the name of the workflow sata list

HistoryList = "WFHistory";

Defines the name of the workflow history list

ErrorList = "WFErrors";

Defines the name of the workflow error list

RetryOnVersionConflict = $false;

Force workflow script to run again in case of "version conflict" (parallel item modifications in SharePoint).

Default: $false

UserProfileCacheLifetime = 60;

With Get-KFUserInfo a workflow script can query the SharePoint user profile store.

To reduce the calls in case of querying the same account during the workflow run the requested profiles are cached.

Default: global configuration. There: 60 seconds.

Discussion