Reusable flows define a repeatable customer or resource experience as a single object to be used within other flows. Once published, reusable flows are included as individual objects in the Reusable Flows section of the flow designer palette for the applicable tenant(s).
|For example, you may have a series of individual media prompts or activities that you want to provide to each caller. Rather than configuring them individually in each applicable call flow, you can create one reusable flow for the entire sequence that can then be inserted into any call flow.|
Reusable flows can be created on a specific tenant for that tenant's use, or created on a parent tenant and inherited by the child tenants below it.
You can create a reusable flow using specific configuration details such as a defined media file, or you can use input variables that allow you to individually configure selected parameters each time that reusable flow is used.
Creating Reusable Flows
To create a reusable flow that uses specific parameter configurations, follow the steps to create a new flow using Reusable as the type of flow.
To create a reusable flow that uses input variables, refer to Creating a Reusable Flow with Input Variables.
Input variables allow for designated parameters to be configured separately each time the reusable flow is used as an object within a flow. The input variables appear as configurable parameters when the reusable flow is inserted as an object into another flow.
|For example, your reusable flow may include a Forward object to send callers to another number such as a voice mail service. By using a string variable instead of a specific phone number, you can configure that number field each time the reusable object is used. This means you can use the same reusable flow multiple times in one or more flows and have each instance forward participants to a different number.|
Input variables are predefined in the flow settings. Any flow object in a reusable flow can have their configurable parameters switched to a variable input instead of a static configuration. The variable options for each parameter depend on the type of data used for that field. For example, a media related parameter will display the predefined input variables with a type of Media.
Input variables can be used for the following types of data:
|Boolean||A data type with only two possible values, true or false.|
|Business Hours||A selection from the Business Hour rules available for this tenant.|
|Disposition code list||A selection from the Disposition Code lists available for this tenant.|
|Expression||A combination of one or more explicit values, constraints, variables, operators, and functions that the platform interprets and uses to produce another value.|
|Integration||A selection from the enabled integrations available for this tenant.|
|Media||A selection from the media files available for this tenant. Use the Sub Type field to specify if the media presented includes audio, TTS, or both. The options are presented in the form of a drop down menu, allowing you to select one.|
A piece of media. The media can be:
|Multi Select||A list of options and their value definitions. The options are presented in the form of a list, allowing you to select more than one of the options.|
|Participant||A specification of the type of participant for an interaction, such as a customer or a resource.|
|Queue||A selection from the queues available for this tenant.|
|Reason code list||A selection from the Reason Code lists available for this tenant.|
|Resource||A specification of the resource value for an interaction.|
|Reusable Flow||A selection from the existing reusable flows published on this tenant that can be invoked into a new flow as a variable in this reusable flow.|
|Select||A list of options and their value definitions. The options are presented in the form of a drop down menu, allowing you to select one of the options.|
|String||A string of text data that includes any combination of letters, numbers, spaces, and special characters.|
|Timestamp||A variable to represent a date and time value, including fractional seconds.|
To create a reusable flow that uses input variables that are configured each time this reusable flow is used:
- Determine what pieces of the flow are being created as a variable instead of a specific configuration.
- Create a new flow, selecting Reusable as the type of flow.
- Add an Entry event to begin the flow.
- Access the configuration details for the Entry event, and click on the "+" symbol next to Inputs.
- Enter a Label name for this input variable. This is the name of the configurable parameter that will be displayed when using this reusable flow within other flows. For example, "Hold Music"
- Enter the Variable name for this input variable. This is the name that will be used to identify this variable later in this flow. For example, "hold_music".
- In the drop down menu, select the Type of data being used for this input. For example, "Media".
- Depending on the type of input selected, select the SubType from the drop down menu to make your selection.
- Depending on the type of input selected, you may enter a Default value. The default value will be used as the value for this parameter when the reusable flow is used as a notation within a flow, if no other selection is made when configuring the new flow.
- Repeat steps 3 through 6 for each input variable to be used within this reusable flow.
- Design and build the flow to create the customer or resource experience that you want.
- For each of the object parameters that you want to use a variable for, click to enable the Variable toggle above the parameter name.
The data entry field updates to a variable name field with a menu that includes the predefined variables created in the previous steps that match the type of data required for this parameter.
- In the variable name field, select the input variable that you want to use for this parameter.
- When ready, publish the flow.
The reusable flow appears as an object in the flow designer palette.
Using a Reusable Flow
To use a reusable flow:
- Create a Customer or Resource flow.
- Insert the applicable reusable flow object into the section of the flow that you want on the designer canvas, as you would with any other type of flow object.
- If this reusable flow uses input variables, configure the object parameter fields.
- When ready, publish the flow.