Picture of Distribution of Connect: Flow Outputs  | CI_Flow_004

Distribution of Connect: Flow Outputs | CI_Flow_004

Here, we will learn of the options available to distribute output files generated by the Connect: Flow plugin when orders are placed. Several methods are available, including: FTP API Email Hotfolder Webhooks Which one(s) you choose (you are able to enable more than one at once) will depend on your own configuration, and what your third-party application is capable of linking to.

Tutorial Video Transcript

A transcript of our tutorial video, ensuring you can find exactly what you need, when you need it.

You can search this page to find the relevant time-stamp in the video. Also, this text can be used as part of the tutorial search feature.

00:00:08:20 - 00:00:10:15
Here we’ll learn of the options

00:00:10:15 - 00:00:14:18
available to distribute output files
generated by the Connect Flow plugin.

00:00:14:18 - 00:00:16:20
When orders are placed.

00:00:16:20 - 00:00:18:10
There are several methods available.

00:00:18:10 - 00:00:20:03
This includes

00:00:20:11 - 00:00:23:12
posting to FTP, posting to API

00:00:23:28 - 00:00:27:06
emails, hot folders and web hooks.

00:00:28:02 - 00:00:30:23
Which one or multiple you choose

00:00:31:01 - 00:00:33:07
and you are able to choose
more than one at once

00:00:33:07 - 00:00:36:27
will depend on your own configuration
and what your third party

00:00:36:27 - 00:00:40:28
application is capable of linking to.

00:00:41:16 - 00:00:44:00
So we'll start off with post to FTP.

00:00:44:24 - 00:00:46:15
So I'm just going to activate that
first of all,

00:00:46:15 - 00:00:49:19
to get the additional settings.

00:00:51:29 - 00:00:54:27
So the first thing we need is FTP details.

00:00:55:06 - 00:01:00:12
So this allows output documents
to be sent directly to an FTP endpoint.

00:01:01:10 - 00:01:04:28
The expected format of the end
point would be an FTP link.

00:01:05:06 - 00:01:08:00
So for example, using the FTP name

00:01:08:05 - 00:01:11:25
or an IP address,
the format may look something similar to

00:01:13:22 - 00:01:15:16
say something like this.

00:01:15:16 - 00:01:16:19
So ftp.

00:01:16:19 - 00:01:18:27
Example dot com forward slash job tickets.

00:01:19:15 - 00:01:22:06
Alternatively, it might be an IP address,
so you might have

00:01:22:06 - 00:01:23:20
something like

00:01:25:29 - 00:01:26:13
this.

00:01:26:13 - 00:01:31:13
For example,
if the FTP needs authentication,

00:01:31:14 - 00:01:34:14
the username and password

00:01:34:14 - 00:01:37:07
and user
domain are required in these fields.

00:01:37:07 - 00:01:39:19
Here.

00:01:43:10 - 00:01:43:22
Okay.

00:01:43:22 - 00:01:46:05
So next we have post to API.

00:01:46:06 - 00:01:49:24
So again, we can just activate that
checkbox to see the additional settings.

00:01:51:05 - 00:01:53:21
The first thing we need
is the API end point.

00:01:53:21 - 00:01:54:22
URL

00:01:54:22 - 00:01:59:15
So enter an API end
point required to specify the destination

00:01:59:15 - 00:02:01:06
of the output file.

00:02:01:06 - 00:02:05:07
And this can either be http or https

00:02:05:07 - 00:02:07:19
endpoints.

00:02:09:18 - 00:02:13:18
We then have http headers,
so use this field.

00:02:13:18 - 00:02:16:24
If you require to configure HTTP headers

00:02:17:01 - 00:02:19:02
against your API endpoint.

00:02:20:00 - 00:02:23:00
So an example here might be for example.

00:02:24:06 - 00:02:24:16
Well, as

00:02:24:16 - 00:02:28:00
you can see in the example below,
it could be

00:02:28:19 - 00:02:31:05
something like this
header name colon value.

00:02:31:24 - 00:02:34:06
Each line is parsed individually

00:02:34:24 - 00:02:40:14
and the first colon is the divider.

00:02:40:14 - 00:02:43:29
So each line is divided into a key
and a value pair.

00:02:44:12 - 00:02:47:09
Data should be valid,
should be one per line,

00:02:47:16 - 00:02:55:28
and this is an optional setting.

00:02:58:20 - 00:03:01:06
We have one API call per order line.

00:03:01:12 - 00:03:05:18
So this selects whether we send one
API call for the entire order

00:03:05:28 - 00:03:09:08
or a separate API call for different order
lines.

00:03:09:26 - 00:03:12:14
Deselecting the checkbox as it is
by default

00:03:12:24 - 00:03:15:16
will send one API call
for the entire order.

00:03:16:03 - 00:03:20:03
Selecting this checkbox will send separate
API calls for each job

00:03:20:03 - 00:03:26:21
within the order.

00:03:26:21 - 00:03:30:29
So use basic authentication
so it's unchecked by default.

00:03:31:00 - 00:03:36:05
However, if your API end Point expects
authentication, select this checkbox

00:03:36:10 - 00:03:41:25
and enter the relevant username
and password in the fields below it.

00:03:45:06 - 00:03:48:11
The next section is API response handling.

00:03:48:11 - 00:03:52:17
So these settings provide the ability
to define some API response handling,

00:03:52:28 - 00:03:55:00
beginning with success flags.

00:03:56:14 - 00:03:58:24
So your API endpoint must allow

00:03:58:24 - 00:04:02:20
for this in order
to utilize this functionality to begin

00:04:02:20 - 00:04:05:04
select the format of the error handling

00:04:06:18 - 00:04:09:07
this is defining the formats
in which a response

00:04:09:07 - 00:04:13:21
will be received from your third
party system and your available options.

00:04:13:21 - 00:04:17:07
Here are JSON, XML Plain Text All

00:04:17:07 - 00:04:26:24
No handling at all.

00:04:26:24 - 00:04:28:23
If I select access now
in here, for example,

00:04:28:23 - 00:04:30:28
you can see if we get a new option
available

00:04:32:18 - 00:04:36:25
or few new options,
the first of which is success, flag, path.

00:04:36:25 - 00:04:41:13
So the expected response from your API
would be an object.

00:04:42:01 - 00:04:46:22
Within that object you may have entities
such as the success flag.

00:04:46:22 - 00:04:50:21
The Success Flag path
allows you to specify the specific path

00:04:50:27 - 00:04:52:22
to the required information.

00:04:52:22 - 00:04:55:06
And this could be, for example, such as

00:04:57:17 - 00:04:59:21
border dot success, dot response

00:05:06:00 - 00:05:08:21
next time we have available success
values.

00:05:09:01 - 00:05:12:03
This allows you to define
what success values are.

00:05:12:15 - 00:05:16:06
For example, here we have true t

00:05:16:12 - 00:05:19:27
success and 1 marked as success values.

00:05:20:11 - 00:05:24:14
If the response from the third party
system is any of these defined values,

00:05:24:21 - 00:05:27:03
then the action is considered
to be successful.

00:05:27:22 - 00:05:30:03
You can use a pipe delimiter to separate

00:05:30:03 - 00:05:33:03
those different success values

00:05:35:03 - 00:05:37:06
we then have negate success value.

00:05:37:15 - 00:05:40:23
So this is switching
the behavior of the above settings.

00:05:41:03 - 00:05:44:29
So any match with the success values
specified above will mean

00:05:44:29 - 00:05:57:02
the process has instead failed.

00:05:57:02 - 00:06:00:10
The next section down
is error information.

00:06:00:28 - 00:06:03:09
So here we can add a new error path

00:06:06:01 - 00:06:09:06
and we can add a new info path
if we wish to as well.

00:06:09:06 - 00:06:11:08
So we'll cover both of these at once.

00:06:11:08 - 00:06:14:17
We can specify error or information
pieces.

00:06:15:08 - 00:06:19:01
By clicking these buttons, you are
presented with some additional options.

00:06:20:03 - 00:06:21:20
So the additional path fields

00:06:21:20 - 00:06:24:29
that we get, so error path and info path.

00:06:25:13 - 00:06:29:17
As with the success section,
you specify a format type

00:06:29:25 - 00:06:35:08
and enter the path of the response
to look out for if the path exists at all.

00:06:35:08 - 00:06:36:25
In the response from the third party

00:06:36:25 - 00:06:40:17
system,
the status of the job is set to MIS failed

00:06:40:26 - 00:06:45:09
and the contents of that error path
is included for additional information,

00:06:46:01 - 00:06:49:24
a similar process is followed to obtain
additional information from the response

00:06:50:03 - 00:06:57:09
without specifying the job failed.

00:06:57:09 - 00:07:00:06
That's the API section completed there.

00:07:01:09 - 00:07:03:27
Hot folders
we covered in the initial setup.

00:07:04:19 - 00:07:05:25
But just as

00:07:06:14 - 00:07:10:24
for completeness context, in this case
it is possible to add your generated

00:07:10:24 - 00:07:15:07
output document to one of your specified
hot folders within your Infigo system.

00:07:15:24 - 00:07:20:08
If linked, using Infigo
sync to an external folder outside of the

00:07:20:08 - 00:07:23:27
iInfigo system,
it is also able to push the file

00:07:23:27 - 00:07:30:09
out of the specified folder.

00:07:30:09 - 00:07:33:11
So once you've activated the drop to hot
folder section,

00:07:33:18 - 00:07:36:15
we just need to enter the ID
number of the folder

00:07:36:26 - 00:07:39:15
and a list of available hot
folders is detailed

00:07:39:15 - 00:07:42:27
underneath here.

00:07:42:27 - 00:07:46:04
So these hot folders are configured
independently within Infigo

00:07:46:14 - 00:07:50:10
and more information on configuring hot
folders can be found

00:07:50:10 - 00:07:59:01
within the Infigo Academy.

00:07:59:01 - 00:08:02:20
We have send two emails,
so enter an email address.

00:08:02:20 - 00:08:04:19
Within the email address is field

00:08:04:19 - 00:08:08:06
to submit an email
containing the output document content.

00:08:08:06 - 00:08:12:12
So please note this places the output
document content within the email body,

00:08:12:19 - 00:08:14:05
not as an attachment,

00:08:15:08 - 00:08:16:19
and multiple email addresses

00:08:16:19 - 00:08:25:01
can be defined with a comma separator.

00:08:25:01 - 00:08:25:13
Okay.

00:08:25:14 - 00:08:29:00
So we can apply an XSLT
to the emails as well.

00:08:29:00 - 00:08:31:28
So this is an XSLT
transformations script

00:08:32:11 - 00:08:36:14
that can be selected
or inputs here aimed at reformatting

00:08:36:14 - 00:08:40:15
the text placed
into the body of the email.

00:08:40:15 - 00:08:43:11
So this works the same way
as the one we saw in a previous tutorial.

00:08:43:22 - 00:08:47:03
You can enter custom information
here, custom formatting,

00:08:47:15 - 00:08:58:01
or you can select from a predefined list.

00:08:58:01 - 00:09:00:23
We then have webhook.

00:09:00:23 - 00:09:03:24
So if for example, you wish to send status
updates

00:09:03:24 - 00:09:07:06
back to Infigo,
you can do this via web hooks.

00:09:07:23 - 00:09:11:00
Your third
party system must be specifically allowing

00:09:11:00 - 00:09:16:04
for this
in order to utilize this functionality.

00:09:16:04 - 00:09:19:29
So webhook links and additional
information related to web hooks

00:09:20:05 - 00:09:23:09
can be found at the very bottom
of the connect

00:09:23:09 - 00:09:31:24
flow configuration page.

00:09:31:24 - 00:09:39:27
You can also see additional information
by clicking on this button here.

00:09:39:27 - 00:09:42:20
So just to summarize
this additional webhook information,

00:09:43:02 - 00:09:48:11
this section contains detailed information
such as file format configurations.

00:09:48:19 - 00:09:52:24
The Infigo system is expecting,
along with order of actions

00:09:53:01 - 00:09:56:06
and a list of available statuses
that we can actually change

00:09:56:06 - 00:10:12:14
it to.

00:10:12:14 - 00:10:17:09
Going back up to the webhook configuration
settings, we also have a shared secret.

00:10:17:28 - 00:10:21:04
So this relates to authentication
around the use of web hooks

00:10:21:04 - 00:10:23:03
and is used to protect access.

00:10:24:01 - 00:10:25:17
Specify whether

00:10:25:17 - 00:10:29:27
the shared secret is shared in the XML
or in the header,

00:10:29:27 - 00:10:44:23
and generate the shared secret code
from within the interface.

00:10:44:23 - 00:10:47:16
So we've got allow CIDR ranges

00:10:47:28 - 00:10:52:29
so this specified allows us to specify IPs
which are allowed access

00:10:53:06 - 00:10:56:19
so you can leave this field empty
to allow all IPs to have access

00:11:00:25 - 00:11:03:06
XSLT for incoming calls.

00:11:03:15 - 00:11:08:23
This is the message which is received from
the third party system to update status.

00:11:08:23 - 00:11:12:27
It's used to transform incoming data
to a known JSON structure,

00:11:13:06 - 00:11:15:20
and this is required for webhook actions

00:11:18:18 - 00:11:20:25
and then XSLT for response.

00:11:20:25 - 00:11:25:11
This is the message which is sent to
the third party system in response used.

00:11:25:11 - 00:11:28:01
For example,
if the third party system requires

00:11:28:01 - 00:11:31:24
acknowledgment of success
or failure of the status update,

00:11:33:00 - 00:11:33:16
it's used to

00:11:33:16 - 00:11:38:23
transform incoming data to a known
JSON structure, and this is a requirement

00:11:39:00 - 00:11:44:16
for webhook actions.

 

Incomplete