Flows
Introduction
Flows are basically total design and step by step process of the IVR system like how the IVR will work once the customer gets connected. So for different kinds of functionalities like Inbound Calls, Outbound Calls etc, Phonon Central provides different types of flows. To add any new flow, click on Main → Flows → Add new Flow. The type of flows are as below -
- 1 Introduction
- 2 Types Of Flows
- 2.1 Inbound IVR and Call Distributor
- 2.1.1 1. Details
- 2.1.2 2. Designer
- 2.2 Outbound Multicast
- 2.2.1 1. Details
- 2.2.2 2. Configurator
- 2.2.2.1 Flow Variable Validation
- 2.2.3 3. Business Hours
- 2.2.4 4. Designer
- 2.3 Emergency Notification
- 2.3.1 1. Details
- 2.3.2 2. Param Configuration
- 2.3.3 3. Script Configuration
- 2.3.4 4. OutboundFlow Configuration
- 2.4 Outbound Dialer
- 2.4.1 1. Details
- 2.4.2 2. Configurator
- 2.4.3 3. Business Hours
- 2.4.3.1 Call falling condition
- 2.4.4 4. Designer
- 2.5 Masking Number
- 2.5.1 1. Details
- 2.5.2 2. Prompts
- 2.1 Inbound IVR and Call Distributor
- 3 Widgets In Central
- 3.1 How to use widgets in the design area ?
- 3.2 1. Answer Call
- 3.3 2. Agent Connect
- 3.4 3. Counter
- 3.5 4. Decision
- 3.6 5. Delay
- 3.7 6. Email
- 3.8 7. Hang Up
- 3.9 8. Make Call
- 3.9.1 Make Call for Dialer
- 3.10 9. Menu
- 3.10.1 1. Menu
- 3.10.2 2. Details
- 3.11 10. Multi-play
- 3.11.1 1. Configure
- 3.11.2 2. Details
- 3.11.3 3. Stop By
- 3.12 12. Operation
- 3.12.1 General Operations
- 3.12.2 String Manipulation
- 3.12.2.1 1. Calculate Length Of String
- 3.12.2.2 2. Concatenate Strings
- 3.12.2.3 3. Convert String To Lowercase
- 3.12.2.4 4. Convert String To Uppercase
- 3.12.2.5 5. Extract String
- 3.12.3 Number Manipulation
- 3.12.4 Date and Time Manipulation
- 3.12.4.1 1. Find Duration
- 3.12.4.2 2. Add Duration
- 3.12.4.3 3. Subtract Duration
- 3.12.4.4 4. Extract/Change Format
- 3.12.4.5 Using Formats:
- 3.13 13. Play
- 3.13.1 1. Play Type
- 3.13.2 2. Details
- 3.13.2.1 Play Type - From File
- 3.13.2.2 Play Type - Digit/Number
- 3.13.2.3 Play Type - Date/Time
- 3.13.2.4 Play Type - Text to Speech
- 3.13.3 3. Stop By
- 3.14 14. Play and Record
- 3.14.1 1. Play Type
- 3.14.2 2. Details
- 3.14.2.1 Play Type - From File
- 3.14.2.2 Play Type - Text to Speech
- 3.14.3 3. Record
- 3.15 15. Record
- 3.16 16. SMS
- 3.17 17. Speech Processing
- 3.18 18. Time Condition
- 3.19 19. Transfer Call
- 3.19.1 Transfer to -Queue
- 3.19.2 Transfer to - Phone number
- 3.20 20. Webhook
Types Of Flows
When you click on Main → Flow → Add Flow, you will be able to see all types of flows supported by central. Click on the '+' icon of any type to add that flow.
Inbound IVR and Call Distributor
Inbound means the customer calls on the given DID and according to the design of the flow the IVR will be played.
Click on ‘Add flow’, select ‘Inbound IVR and call distributor’ and you will be able to create your own inbound IVR flow with customized configurations
You will be able to view two tabs which are -
1. Details
Flow ID: Unique ID for every flow, automatically given by the system
Flow Name: Customized name for your flow (Only alphanumeric characters and underscore are allowed in name)
Assign DID: Assign DID to the flow. If no DID is available, visit setup → DID section to buy DID.
Webhook for Account is: To configure any webhook for the account user can click on the “Configure Webhook” link
Enable Webhook for Flow: Switch ON the option to enable webhook for the particular flow. To know more about this, you can click here.
Enable Call Recording: You can enable call recording of the entire flow using this option
Time Zone: Select the time zone basis the Caller zone or Custom zone
Accepted formats for Date/Time: Select the accepted Date and Time format. The format selected will be applied in the entire flow.
Accepted formats for date : Select the accepted Date format. The format selected will be applied in the entire flow.
Accepted formats for time : Select the accepted Time format. The format selected will be applied in the entire flow.
2. Designer
Widgets that are visible on the left corner of the screen can be used in the Designer Section using pick and drop to configure your customized flow.
Start: Flow’s execution begins from Start
On Remote Hangup: Widgets designed here will be executed when the customer hangups the call remotely
On Flow Complete: This will executed when the flow is completed
As this is an inbound flow, the first widget after the ‘Start’ should be compulsorily ‘Answer Call’, otherwise the flow will not be executed as per require.
To know more about the widgets, click here.
Once you have created the flow, you can click on the ‘save' and then further click on ‘commit to production’ to make it live.
If you just ‘save’ the flow, then the flow will be in testing state and you will be able to test the flow using whitelisted numbers.
To view some inbound flow templates, you can click here.
Outbound Multicast
Outbound flow means the calls are performed or broadcast to the customers by the system.
Once you have committed the flow to production, you just need to trigger the flow and the flow will be executed automatically.
Click on ‘Add flow’, select ‘Outbound Multicast’ and you will be able to create your own Outbound flow with customized configurations.
You will be able to see
1. Details
Flow ID: Unique ID for every flow, given by the system
Flow Name: Customized name for the flow(Only alphanumeric characters and underscore are allowed in name)
DID allocation type: Assign DID to the flow using common pool (any random DID will be selected from the DIDs available for the account to perform outbound calls) or exclusive DIDs (you can attach DIDs, from which you want to perform outbound calls).
Assign DID: Assign exclusive DID to the flow. If no DID is available, use this link to purchase a DID
Webhook for Account is: To configure any webhook for the account, you can click on the “Configure Webhook” link
Enable Webhook for Flow: Switch ON the option to enable webhook for the particular flow. To know more about this, you can click here.
Enable Call Recording: You can enable call recording of the entire flow using this option and then the recordings will be available in the reports section.
Enable International Calling: You can enable international calling for the flow using this option (if allowed for account, if not allowed send a mail on help@phonon.io for the same)
2. Configurator
Flow Type: Select the type of flow from Transactional or Marketing. Please note, once type of flow is selected and saved, it cannot be changed later.
Transactional - This type of flow can be used for important conversation calls like payment transaction, account information etc. For this type of flow, NDNC scrubbing will be performed. For some changes in the flow you need to submit the flow for support approval (for some checks) and once our support team approves it, you can commit the flow for production (make it live).
Marketing - This type of flow can be used to broadcast marketing calls. For this type of flow, NDNC scrubbing will not be performed.
Connect to DNC Numbers: Basis the type of flow, this field will be updated automatically
Flow Status: Show the status of the flow i.e whether it is In Production or In Testing
In Production : The flow is committed to production and is live.
In Testing : The flow is either submitted for approval, or in testing state and not committed to production yet.
Accepted formats for Date/Time: Select the accepted Date and Time format for the flow
Accepted formats for Date: Select the accepted Date format for the flow
Accepted formats for Time: Select the accepted Time format for the flow
Configure the flow variable validations, if required
There are two options to trigger outbound broadcast: Email Upload and Web Service. Click here to know how to use this details.
Flow Variable Validation
You can add flow variables in the flow, and then assign value in .csv file or API request when you trigger the outbound flow.
The flow variables can be of any type and in any form, But while uploading, it may happen that the data or values of flow variable are entered wrong by mistake and so it is not as per needed or does not contain the data of our concern, so that creates problems at run time and the customer encounters a bad experience.
To overcome this problem, a section of ‘flow variable validation' is present in the outbound flows.
In the ‘flow variable validation’ section, you can add and configure validation to put on the flow variables. So after uploading data if the flow variable suffices that conditions then only the system will proceed otherwise the record will be rejected with status ‘FLOW_VARIABLE_VALIDATION_FAILED’.
The flow variables added will be bound to specific flow only. That is, same flow variables can be used in different forms with different validations in other flows.
To add validation, click on ‘add flow variable’
You can give a name to the flow variable, select the type of input that the flow variable contains like - Text, Email, URL and can set the variable as mandatory or not.
If the you have selected type as ‘Text’, then you will have option to select on which parameter you want to put ‘validation on’
Value: The validation will be put on the content of the variable
Length: The validation will be put on the length of the input of the variable
If you select, validation on ‘value’, then you will have further ability to select the criterias like
None: No validation, if mandatory is enable then an input is required
Contains: The user can specify any value and the input should contain that value
Does not contain: The user can specify any value and the input should not contain that value
From list of items: The user can specify list of items separating it with comma and the input must be one of the items
Regex: The user can provide regex expression and the input will be validated with the regex expression.
If you select, validation on ‘length’ then you need to specify minimum and maximum length of the input which will be considered as valid.
Note:
For value: The input will be case insensitive.
For Length: Minimum and Maximum values are inclusive.
If the input does not follow the criteria specified by the user then that entry will be rejected with error reason “FLOW_VARIABLE_VALIDATION_FAILED”
Mandatory: You can set a flow variable as mandatory. If mandatory is enabled, value in that flow variable is required. If mandatory is disabled, value is not required and is optional but if provided, must satisfy the provided validation criterias.
For type as Email and URL, basic validations will be executed.
3. Business Hours
Call Dialing Business Hours: Select the business hours for the outbound calls.
Time Zone: Select the time zone basis the Caller zone or Custom zone
Working Days: If the Call Dialing Business Hours is Custom then user can configure Business Hours customized for every day of the week
If the Call is past Business Hours: Can be used to define the action to be taken when call is past business hours
Call Failing Conditions: You can define the condition of call failing
Reschedule the call in next dialing time
Reject the call
If calling fails: The reattempt logic is defined here
Number of Reattempts(Minimum 0 and maximum 50 times is valid)
Duration between Attempts(Minimum 0 and maximum 1440 mins valid)
4. Designer
Widgets that are visible on the left corner of the screen can be used in the Designer Section using pick and drop to configure your customized flow.
Start: Flow’s execution begins from Start
On Remote Hangup: Widgets designed here will be executed when the customer hangups the call remotely
On Flow Complete: This will executed when the flow is completed
As this is outbound flow, the first widget after the ‘start’ widget, must be ‘make call’ otherwise the call will not be dialed.
To know more about widgets, you can click here.
Emergency Notification
This type of flow is specially designed to send notifications via voice, SMSs and Email in any emergency situation. The emergency situation can be delay of flight, fligh crash, sudden thunderstorm etc.
To create emergency notification flow, first you need to create an outbound flow as shown in the template so that whenever you want to send notification, that outbound flow will get triggered.
Click on ‘Add flow’, select ‘Emergency Notification’ and you will be able to create your own notification flow with customized configurations.
1. Details
Flow ID: Unique ID for every flow, automatically given by the system
Flow Name: Customized name for your flow(Only alphanumeric characters and underscore are allowed in name)
2. Param Configuration
Parameters are the fields that will only change in the script, while sending notification. Parameter can be time, date, flight no., Location etc.
You can select the parameters that are required to be sent in the notification message via the channel selected by the user. The parameters selected here will be mandatory while sending the notification.
You can add parameters, by clicking on ‘add Parameter’ and the list of parameters will get appear. You can multi-select the parameters and later you need to add this variable in the script as and when required.
While sending the notification, the users will have to mandatorily enter the values for these parameters at the time of sending notification.
3. Script Configuration
The script configuration tab is used to configure the scripts that will be sent via the channels selected by the user to send the notification. Here you can draft the scripts that will used while sending the emergency notification for this scenario.
Here you can write different scripts for different channels. You can use the flow variables of the parameter in the script, so that when the user enters the parameter value in send notification, the flow variable will be replaced with the parameter value in the script.
4. OutboundFlow Configuration
You needs to select the outbound flow using which the notifications will be sent.
Select an outbound flow to be used for sending the notification and click on ‘save’ and thus your notification flow is ready. You can trigger this flow by using ‘send notification’ page.
Outbound Dialer
Generally, all outbound flows are based on ‘customer first’ logic. That is whenever any outbound call is performed first the customer is connected and then the call is transferred to the queue (based on flow) and the agent is fetched from logged in agents to allocate the call. Sometimes the agents are not available and the customers have to wait for a longer time in the queue and the time of customers gets wasted.
But outbound dialer flows, are specially designed based on logic of ‘Agent First’. In agent first logic, before even the outbound call is performed to customer, the agent will be acquired from the queue. Once the agent gets connected then and then only the customer will be dialled.
Click on ‘Add flow’, select ‘Outbound Dialer’ and you will be able to create your own Dialer flow with customized configurations.
1. Details
Flow ID: Unique ID for every flow, given by the system
Flow Name: Customized name for the flow(Only alphanumeric characters and underscore are allowed in name)
DID allocation type: Assign DID to the flow using common pool (any random DID will be selected from the DIDs available for the account to perform outbound calls) or exclusive DIDs (you can attach DIDs, from which you want to perform outbound calls).
Assign DID: Assign exclusive DID to the flow. If no DID is available, use this link to purchase a DID
Webhook for Account is: To configure any webhook for the account user can click on the “Configure Webhook” link
Enable Webhook for Flow: Switch ON the option to enable webhook for the particular flow. To know more about this, you can click here.
Enable Call Recording: User can enable call recording of the entire flow using this option
Enable International Calling: You can enable international calling for the flow using this option (if allowed for account, if not allowed send a mail on help@phonon.io for the same)
2. Configurator
Flow Type: Select the type of flow from Transactional or Marketing. Please note, once type of flow is selected and saved, it cannot be changed later.
Transactional - This type of flow can be used for important conversation calls like payment transaction, account information etc. For this type of flow, NDNC scrubbing will be performed. For some changes in the flow you need to submit the flow for support approval (for some checks) and once our support team approves it, you can commit the flow for production (make it live).
Marketing - This type of flow can be used to broadcast marketing calls. For this type of flow, NDNC scrubbing will not be performed.
Connect to DNC Numbers: Basis the type of flow, this field will be updated automatically
Flow Status: Show the status of the flow i.e whether it is In Production or In Testing
In Production : The flow is committed to production and is live.
In Testing : The flow is either submitted for approval, or in testing state and yet not committed to production.
Flow Type (Dialer Type) - The types can be
Manual Dialer : The agents will have to go on ‘manual break’ and dial the number of customer. Once the call is placed, first the agent will get the call and once the agent gets connected the customer will be called.
Automatic Dialer : You need to trigger this dialer flow, just like outbound flow (through Email upload, direct upload or API ) and automatically first the agent from the queue will get acquired and once the agent gets connected, the customer will be called.
Accepted formats for Date/Time: Select the accepted Date and Time format for the flow
Accepted formats for Date: Select the accepted Date format for the flow
Accepted formats for Time: Select the accepted Time format for the flow
There are two options to trigger outbound broadcast: Email Upload and Web Service. Click here to know how to use this details.
3. Business Hours
Call Dialing Business Hours: Select the business hours for the outbound calls.
Time Zone: Select the time zone basis the Caller zone or Custom zone
Working Days: If the Call Dialing Business Hours is Custom then user can configure Business Hours customized for every day of the week
If the Call is past Business Hours: Can be used to define the action to be taken when call is past business hours
Call Failing Conditions: User can define the condition of call failing
Reschedule the call in next dialing time
Reject the call
Call falling condition
As a user, you would always want to limit the number of times a customer is attempted, as well as the duration between them. Getting calls every 1 hour 5 times in a day is not good customer experience. In Customer First products, it's no issue. Set the attempts and the duration between them and flow will be rescheduled if the customer is not connected N times M duration apart.
But in Agent First, unless the agents gets connected, customer will not be attempted! This puts the user in a peculiar position, where you would want to still limit the number of times to attempt the customer, but keep some liberty in attempting agents.
You can now configure the Agent Attempts and Customer Attempts Configurations separately in Outbound Dialer Flow.
4. Designer
Widgets that are visible on the left corner of the screen can be used in the Designer Section using pick and drop to configure your customized flow.
Start: Flow’s execution begins from Start
On Remote Hangup: Widgets designed here will be executed when the customer hangups the call remotely
On Flow Complete: This will executed when the flow is completed
A simple dialer flow in which an agent is approached first can be as follows and to know more about widget, you can click here -
Masking Number
Masking any number is basically hiding the original number and displaying some other number. You can mask numbers by using the API for maksing or remove masking. To know more about masking number, you can click here.
Click on ‘Add flow’, select ‘masking number’ and you will be able to create your own flow with customized configurations.
1. Details
Flow ID: Unique ID for every flow, given by the system
Flow Name: Customized name for the flow(Only alphanumeric characters and underscore are allowed in name)
Security ID : Unique ID which will be used in the API to post the request.
Accepted formats for Date/Time: Select the accepted Date and Time format
Accepted formats for Date: Select the accepted Date format
Accepted formats for Time: Select the accepted Time format
Enabling call recording : You can enable it if you want to enable the call recording for the flow.
For making, you can use given API format and webservice end point
For unmasking, you can use given API format and webservice end point
2. Prompts
You can play different prompts at different situations, as defined below -
Welcome - You can play any prompt as a welcome prompt. To add prompt, you can select ‘yes’ and based on play type, you can play prompt
Enter Pin - You can play any prompt when the user enters the pin. To add prompt, you can select ‘yes’ and based on play type, you can play prompt
Incorrect pin entered - You can play any prompt when the user enters incorrect pin. To add prompt, you can select ‘yes’ and based on play type, you can play prompt
Widgets In Central
Phonon Central provides a wide range of widgets, using which you can design your IVR flows.
How to use widgets in the design area ?
→ To add any widget in the design area, you just need to left click on the widget and drag that widget to the design area (while the left click is pressed).
→ To connect any two widgets, you just need to left click on the end of the widget and a arrow will get appear, now connect the arrow to the widget whenever you want to connect that widget.
→ When you have added widgets in the design area, and you hover over that widget then you will be able to see title of that widget(if configured in the widget) and main configurations of that widget.
→ If you want to delete any portion, then just select the portion (by left clicking and dragging over the area) and once you see a border getting highlighted, click on the ‘delete icon’.
Common configuration in widgets
The common features in all the widgets are
Widget Title : You can give widget a friendly title according to its use in the flow.
Milestone Widget : You can enable this if you want to show the details of this widget in the milestone report.
1. Answer Call
This widget is only for ‘Inbound Flow’. After start widget, immediately this widget will come, as this widget states the call is incoming and the system will answer it to execute the flow.
You don’t need to configure anything in this widget.
2. Agent Connect
This widget is specially for outbound dialer flows. The main moto of this widget is to acquire the agents from the queue, before calling to the customer.
You need to configure following parameters for this widget.
Target - Target is the place from where the agents will be acquired. Currently they can only be acquired from queues.
Queue - You will be able to see all the queues assigned to this flow. To assign queue, you first need to configure queue. You can select any one queue from which you want to acquire agents for the customers.
Queue Type - This field will be auto-filled based on the queue selected by you. The queue type can be
Dynamic Queue : All the agents of that queue are having agent login interface.
Direct Dial Queue : All the agents of that queue are having direct dial numbers.
Preferred Agent - This field will only come if the ring strategy is selected as ‘provided’ in queue. In this field you can either provide the flow variable in which the preferred agents are stored or you can provide agent keys of the preferred agents separating it with comma.
Preferred Agents means the agents that will only be approached from the queue for dialing the customer. You can define a flow variable here for preferred and then upload that variable’s value (in terms of agent keys of agent) at the time of triggering dialer flow.
You can add multiple preferred agents separating it with comma.
Agent Connect - If the agent gets successfully connected, then the flow will move forward to line '0'.
Agent not connected - You can select the action you want to perform when the agent is not connected.
Reschedule : The call will get rescheduled and according to the configurations made in the business hours tab, the call will be placed again.
Continue : The flow will move forward to the next widget.
3. Counter
The counter widget is used to keep track of the number of times a flow passes through a certain path; the value of the counter changes accordingly.
Counter Function - You can select the function of the counter. The function can be
Create New Counter - A new counter will be created in the flow
Counter Variable Name : Give a flow variable name to the counter so that everytime the value of the counter will get stored in that variable. The variable can be of type ‘$flow.counter.<keyname>’.
Counter Initialization value : You can initialize the value of the counter so that the increment of the counter will get start from that number.
Modify existing counter - If you already have any counter in the flow and you want to use that counter and perform some action on it, then you can select this function.
Change value of count : You will be able to see all the counters present in the flow and you can select the counter which you want to modify.
Change Value : You can change the value of selected counter, each time the call passes through this widget like
Reset to 0
Increment by 1
Decrement by 1
4. Decision
The decision box is used to make certain choices that influence the direction of flow, depending on the DTMF/Voice input by the user or/and other flow variables.
Number of Breaks - The number of breaks are the number of conditions to be added. The flow goes into the respective break number once a condition is met. The number of breaks can vary from a minimum of 1 to a maximum of 7.
Condition Name - The condition names get added once their rules are specified and they are assigned a break number. The default condition on break 0 holds true once all of the other conditions are checked and none of them are met.
Condition Details - The condition which you need to check can be added in this section. You can click on '+' button to add condition. For any condition following things are to be configured
Variable Type : The type of variable. It can be integer, string, boolean, datetime etc.
If variable : Enter the variable which you need to check. The variable can be flow variable (defined in flow) or any system variable (fixed variable defined by system for a purpose)
Operator : You can select the operator which you want to put on variable. The operators can be equal to, not equal to, less than, greater than etc.
Value Type : The type of value through which the variable is compared. It can be static or variable
Value : The value through which the variable is to be compared. You can either enter static value or variable.
Add Rule/Add Group - You can add any rule or whole group as a condition to check along with the your condition using ‘OR’/'ADD' operator.
Breaks - Breaks are the number of condition in which it will go if the condition is satisfied. Break number will depend on the number of breaks selected by you.
5. Delay
This widget is used to pause the flow for the time configured (in order to have some delay).
Delay Timer - Enter the delay to be applied in seconds(User can add a delay of minimum 1 sec and maximum 50 seconds to the flow)
6. Email
This widget is used to send real time Emails to the customers. You can compose whole email in this widget and according to the configuration when the flow is reached on this widget, an email will be send.
Emails can be sent only through validated email IDs and using a cloud account enabled for sending emails.
From - Select the email sender ID. If no email sender ID is configured, please follow the steps mentioned here to complete the configuration
To/CC/BCC - Enter the static/variable recipients list for the email
Subject - Enter the Subject line for the email
Email body - Email content to be entered here
7. Hang Up
This widget is used to disconnect the call at any point of time in the flow. That is when flow reaches to this widget, it will disconnect the call without any configurations.
Any other widget branching out of it is not played on the call anymore. Although the flow is still maintained, off-call.
8. Make Call
Make call widget is specially used in outbound multicast flows only. The main function of this widget is to make a call to the uploaded phone number of the customer.
With the same widget, you can send verified calls to the customers (if configured in the cloud section).
This widget is must in outbound multicast flow, after the start widget in order to make a call.
Ring Timeout - Set the time in seconds,for which the customer will be ring before hanging up the call.
Consider voicemail as Failed call - Enable if you want to consider voicemail of customer as a failed call.
Enable Verified Calls - You can enable this if you want to send verified calls for this particular outbound flow.
Cloud Account - If you have enabled ‘verified calls’, then further you need to select the Google cloud account in which the ‘verified Call service' is available and you want to use for sending verified calls.
Call Reason - After selecting the cloud account, you need to enter the call reason, i.e for what purpose you are calling the customer (maximum 70 characters allowed). Make sure to provide call reasons from the already configured call reasons for the google cloud account, otherwise unverified calls will be send.
Make Call for Dialer
We have some modifications in make call widget for outbound dialer flow as in outbound dialer, the agent is connected first. The purpose of ‘make call’ widget in dialer is same as outbound multicast - to make a call to customer.
Customer Ring Timeout - Set the time in seconds,for which the customer will be ring before hanging up the call.
Customer Announcement - You can enable this if you want to play any announcement as soon as the customer gets connected. If you have enabled this, then you can play announcement with the help of either prompt or TTS.
On Customer Connect Failure - If the customer does not get connected, then you can select an action you want to perform. That is
Reschedule : If the customer does not get connected, the call will be rescheduled.
Continue : If the customer does not get connected, the execution will move to the next widget after the make call.
Customer and agent conversation ended - When the customer has picked up the call and the agent and customer have started the conversation. When either of them hangs up the call then the flow will move towards line 0 of this widget.
Customer not connected - When the customer is not connected, then the flow will move forward to line 1 of this widget.
Enable Verified Calls - You can enable this if you want to send verified calls for this particular outbound Dialer flow.
Cloud Account - If you have enabled ‘verified calls’, then further you need to select the Google cloud account in which the ‘verified Call service' is available and you want to use for sending verified calls.
Call Reason - After selecting the cloud account, you need to enter the call reason, i.e for what purpose you are calling the agents/customers (maximum 70 characters allowed). Make sure to provide call reasons from the already configured call reasons for the google cloud account, otherwise unverified calls will be send.
9. Menu
As the name of the widget suggest, this widget is used to give the menu in the IVR to the customer for the different DTMFs. IF you want to play a defined speech for different DTMFs as IVR then you can use this widget.
For example - If you have an IVR as
‘Please press 1 for English’.
‘Please press 2 for Hindi ’.
‘Please press 3 for Gujarati ’.
‘Please press 4 for Tamil ’ and so on then you can use this widget for executing the IVR in more holistic way.
1. Menu
1st tab is ‘menu’ in which you need to configure the menu for the IVR that you want to play. For that the following configurations are to be made.
Play Type - You can select the play type, that is through which you want to play the IVR. It can be
From File : You first need to select the language for playing the IVR and then further you can select the prompts or variables or DTMFs that you want to play in IVR.
TTS : You first need to select the cloud account, language, voice and format and then further you can enter the text that you want to play as IVR.
Prompt ‘N' - This the option in the menu that you want to play in IVR. You can add upto 12 prompts as there are 12 options for DTMF that can be pressed. You can define one prompt for one DTMF value. By clicking on ‘Add new prompt’ or 'Remove prompt’ you will be able to add or remove any prompt respectively. All the prompts will be played sequentially.
Part ‘1-5' - There are 5 parts in each prompt. You can add different parts to play one sentence as a prompt. → If the play type is ‘from file’ then you will get options as ‘Static’, ‘Variable’ and ‘DTMF’ to play as a part and then further you can select value according to the type. → If the play type is ‘TTS’ then you will get options as ‘Text’ and 'DTMF’ to play as a part and then further you can enter the value according to the type.
Label - You can set the prompt as label and give it a name so that you can use further this prompt in the flow. You can set label as ‘Text’ and give it a name or you can select label as ‘webhook’ and store in the webhook in any flow variable.
Test Play - You can click on ‘test play’ and listen to your whole prompt.
For the above example, if a prompt is “Please press 1 for English”, then you can select the parts as shown in the below figure.
2. Details
The second tab is of ‘details’ in which you will be able to configure some additional parameters as follows-
Max. attempts: This is the maximum attempts at invalid inputs that the user can try for. Post exceeding this value, the prompt from “Maximum Attempts” is played.
Wait for DTMF: This is the time (in seconds) that the flow waits for, for a DTMF input from the user. The minimum wait time is 5 seconds and the maximum wait time is 60 seconds.
Repeat prompt if no input: Once the “wait for DTMF” time has passed and no input has been received, the user can configure the prompt to be repeated.
Repeat prompt if invalid DTMF sequence: In case the DTMF exceeds the “Length of DTMF”, the user can configure the prompt to be repeated.
Store DTMF in: The DTMF entered can be stored in $call.lastdtmfreceived, default value or it can be stored in a custom variable by you.
Invalid Input: You can enable this if you want to play any speech on invalid input. The speech can be played using any static file, custom value file or using text to speech functionality.
No input: You can enable this if you want to play any speech on no input. The speech can be played using any static file, custom value file or using text to speech functionality.
Maximum Attempts: You can enable this if you want to play any speech on maximum attempts. The speech can be played using any static file, custom value file or using text to speech functionality.
10. Multi-play
This widget can be used to configure multiple play tracks in one go. You can configure a combination Text To Speech, Recorded prompts, using grammar i.e. Date/Time and Digit/Number.
1. Configure
This is the first tab, in which you can configure following things -
Skip if Interrupted: If enabled, it will skip the prompt if it has been interrupted
Play 'Beep' after Prompt: Enable to play a beep sound when the prompt ends
Enable Text to Speech: Select to enable text to speech for the prompt
Cloud Account: Select the cloud account for text to speech
Language: Select the language for text to speech
Voice: Select the language for text to speech
2. Details
This is the second tab, in which you will be able to configure the tracks that you wish to play.
Preview - Once you add the tracks, you will be able to see the preview of all the tracks that will be played consolidated. You can also ‘Test play track’ to check how the IVR will be played.
New Track -
Select play track : You can select the type of track that you want to play. The type can be
From file
Text to Speech
Date/Time
Digit/Number
Further according to the type selected, you can add some more details that you wish to play and then click on 'save track ' to add.
After adding track, you can play, edit or delete the track.
3. Stop By
This the third tab in which you will be able to configure some additional actions that you want to perform. They are
Enable User Input - You can enable this if you are expecting any input through user. If you enable then further more configurations will get appear.
Take user input in - You have two options to take user’s input. You can take user input through
DTMF : The number (0-9, *, # , ) from the mobile device
Voice : Through voice of user
If you select ‘DTMF’ then,
Terminate DTMF - The default, non-configurable DTMF to stop any prompt is “#”. Once pressed, flow will move forward and stop any further input for that DTMF.
Length of DTMF - Allows a dynamic length of DTMF upto the length entered. If length exceeds the maximum length, prompt from “Invalid Input” is played.(The minimum length of DTMF that can be entered is 1 and the maximum is 20.)
Wait for DTMF - This is the time (in seconds) that the flow waits for, for a DTMF input from the user.(The minimum wait time is 5 seconds and the maximum wait time is 60 seconds.)
Max. attempts - This is the maximum attempts at invalid inputs that the user can try for. Post exceeding this value, the prompt from “Maximum Attempts” is played.
Repeat prompt if no input - Once the “wait for DTMF” time has passed and no input has been received, the user can configure the prompt to be repeated.
Repeat prompt if invalid DTMF sequence - In case the DTMF exceeds the “Length of DTMF”, the user can configure the prompt to be repeated.
Enable DTMF validation - Once enabled, the DTMF can be validated for regular expressions, numbers or for an Aadhaar number. In case the DTMF is not validated against any of these, the prompt from “Invalid input” is played.
Store DTMF in - The DTMF entered can be stored in $call.lastdtmfreceived, default value or it can be stored in a custom variable by you.
Announcements - You can play any speech for below listed scenarios
Invalid Input: You can enable this if you want to play any speech on invalid input. The speech can be played using any static file, custom value file or using text to speech functionality.
No input: You can enable this if you want to play any speech on no input. The speech can be played using any static file, custom value file or using text to speech functionality.
Maximum Attempts: You can enable this if you want to play any speech on maximum attempts. The speech can be played using any static file, custom value file or using text to speech functionality.
If you select voice then,
Speech Adaption - You can use this section if you want to enhance the recognition of the voice input of user. To know more about speech adaption, click here.
Language of speech - There are a lot of language options for speech to text functionality. You can select the language in which you are expecting user’s input.
Duration of silence - You can set the duration of silence (in seconds), so that when this limit is reached, it will end taking input (At max you can set upto 15 seconds ).
Maximum Time for speech - You can set the time you want to give to the user for the speech(input). At max you can set 15 seconds.
Maximum re-attempts - This is the maximum number of attempts, a user will be given to provide input.
Repeat prompt if no input - Once the “duration of silence” time has passed and no input has been received, the user can configure the prompt to be repeated.
Allow barge in - Enable if you want the user to barge in the IVR.
Confidence - Confidence is basically the surety that the word detected is correct. You can set the confidence value to detect the speech.
Cloud subscription key - Select the Google cloud account for speech to text functionality usage. IF you don’t have account, configure in cloud section.
Store input in - The voice input of the user can be stored in $call.voiceinputreceived, default value or it can be stored in a custom variable by you.
Announcements - You can play any speech for below listed scenarios
Invalid Input: You can enable this if you want to play any speech on invalid input. The speech can be played using any static file, custom value file or using text to speech functionality.
No input: You can enable this if you want to play any speech on no input. The speech can be played using any static file, custom value file or using text to speech functionality.
Maximum Attempts: You can enable this if you want to play any speech on maximum attempts. The speech can be played using any static file, custom value file or using text to speech functionality.
12. Operation
This widget can be used to perform different types of manipulations of strings, date and time or arithmetic manipulations of numbers and many more.
You can click on ‘Add operation’ to add any operation. In single widget, you can add multiple numbers of operations and the added operation can also be seen as soon as you open the widget.
Alias - The name which you want to give to an operation. It can be of maximum 10 characters with no special characters.
Operation Type - The type of manipulation you want to perform. It can be
General Operation
String Manipulation
Number Manipulation
Date and Time Manipulation
Operation - After selecting the type of operation, you will be able to see the supported operations of that type.
Store In - The flow variable in which you can to store the value of manipulation as a result.
Persist - Enabling 'persist' will help to continue the flow forward if any value is not found.
General Operations
General Operation has only one operation which is 'assignment'.
Assignment operations helps to assign a value to a variable. The value can be anything- a name, string, number, email address, URL etc.
String Manipulation
For string manipulation, you have following operations -
1. Calculate Length Of String
By using this manipulation, you will be able to calculate the length of the string. For that you can provide either the input as a flow variable (which contains string whose value is to be find) or can enter the string and further can enter the flow variable in which you want to save the length of the string.
2. Concatenate Strings
This operation helps to join multiple strings. You can add as many number of strings you want to concatenate by clicking on 'add input'. You can enter input as variable or can directly enter the string.
You can also see the preview of the concatenated string as shown.
3. Convert String To Lowercase
This operation type will help to convert a string to lowercase. You can provide input string either by variable or by actual string.
4. Convert String To Uppercase
This operation type will help to convert a string to uppercase. You can provide input string either by variable or by actual string.
5. Extract String
This operation will help you to extract any part of the string using regex expression.
Position will help the system to extract that position's group if multiple groups are found.
Number Manipulation
Number manipulation will help to perform certain arithmetic operations as follows -
Addition - You can enter input as flow variables or numbers, perform addition of them and save the result in any variable. You can Add any number of inputs by clicking on 'add input'.
Subtraction - You can enter input as flow variable or numbers, perform addition of them and save the result in any variable. You can Add any number of inputs by clicking on 'add input'.
Multiplication - You can enter input as flow variable or numbers, perform addition of them and save the result in any variable. You can Add any number of inputs by clicking on 'add input'.
Division - You can enter input as flow variable or numbers, perform addition of them and save the result in any variable. You can Add any number of inputs by clicking on 'add input'.
Modulus - You can get remainder value of any division by using this operation.
Note - The numbers can only be floating numbers. That is integers or numbers with decimal point.
Date and Time Manipulation
Using 'Date and Time' manipulation, you can perform different operations on date, time or date and time. The operations are
1. Find Duration
By using this operation, you can find duration between any two date, time or date and time. For that you have to provide
Input : can be variable or value
Format : The format in which the date and time will be present
Unit of duration : The unit in which output will be stored, eg - hours, days, minutes etc.
Store in : The variable in which you want to store the result.
2. Add Duration
By using this operation, you can add any kind of duration to the date,time or date and time. For that you have to provide
Input : can be variable or value
Format : The format in which the date and time will be present
Duration : The duration which you want to add.
Store in : The variable in which you want to store the result.
3. Subtract Duration
By using this operation, you can subtract any kind of duration to the date,time or date and time. For that you have to provide
Input : can be variable or value
Format : The format in which the date and time will be present
Duration : The duration which you want to subtract.
Store in : The variable in which you want to store the result.
4. Extract/Change Format
By using this operation, you can either extract particular part of the date,time or date and time or change the format of date, time or date and time. For that you will have to provide -
Input : can be variable or value
Format 1 : The format in which the date and time will be present
Format 2 : The second format in which you want to change or extract.
Store in : The variable in which you want to store the result.
Using Formats:
Both format input supports Joda Time Format. You can find the time format documentation here: https://www.joda.org/joda-time/key_format.html.
To test the format with a sample input, you can use this tool to verify the format: https://codepen.io/ldhertert/pen/ayRjam . This tool however doesn’t support a
format.
Sample format change:
Input:
2021-12-14T15:48:36.317+05:30
Input Format:
yyyy-MM-dd'T'HH:mm:ss.SSSZ
Output Format:
dd/MM/yyyy h:mm:ss a
Output:
14/12/2021 3:34:30 PM
13. Play
As the name suggest, this widget is used to play the configured speech to the user. You can play the speech using prompts, from file, text to speech, using grammar etc. The following configurations are to be made -
1. Play Type
Play Type - It helps in configuring what should play when the user picks the call, or any action is taken by the user. There are multiple play types which can be chosen. It can be via a File, Digit/Numbers, Date/Time, Text to Speech, Digit/Number. On selection of this option the next configuration tab will appear as per the selection.
Reset DTMF / Speech Buffer - Select ‘yes’ if you do not want that the previous input of user (DTMF/Voice) affect this play widget. Select ‘No’ if Play is broken by previous DTMF / Speech and you want to skip this widget.
Play Beep After prompt - Enable to play a beep sound after the prompt gets played.
2. Details
This tab will appear according to the play type selected.
Play Type - From File
You have two options, you can play
Static file : Select this option if you want to play any prompt
Based on value : Select this option if have any prompt stored in the flow variable. The prompt stored in the variable must be approved !
Play Type - Digit/Number
You can use this play type when you want to play exclusively any digits or numbers based on language.
Language - Select the language in which you want to spell the digits or numbers (configured in Grammar)
Play - You have two options to play from
Static Value : You need to enter the value which you want to spell
From flow key value pair : You can select this if you have any flow variable in which the value is stored.
Play as - You can select the option which you want to play the value as
Digit : The value will be spelled as individual digits.
Number : The value will be spelled as a whole number.
Play Type - Date/Time
You can use this play type when you want to play exclusively any date, time or date and time based on language.
Language - Select the language in which you want to spell the date and time, configured in Grammar.
Play - You have two options to play from
Static Value : You need to enter the value which you want to spell
From flow key value pair : You can select this if you have any flow variable in which the value is stored.
Date and Time Value - The value that you want to play
Date and Time format - The format in which the date and time is present.
Play Type - Text to Speech
You can very easily use the power of Text-to-speech in your IVR to play automated voices to the customer without needing a Voice Artist. Whatever you write as text will be played as speech ! For TTS, you need to configure following things -
Cloud Account - The google cloud account you want to use for TTS service. Make sure to configure cloud account in order to use TTS.
Language - We provide all the languages provided by google for TTS, so you can select any language in which you want to play your speech.
Voice - For each language, different voices are available and you can select any voice according to your preference.
Speed - Set the speed at which you want to play the speech. Default speed is '1'.
Pitch - Pitch is the relative highness or lowness of a tone as perceived by the ear, which depends on the number of vibrations per second produced by the vocal cords. You can set the pitch value, default value is '0'.
Format - The text can be entered as
Plain text - Normal text
SSML - An XML-based markup language for speech synthesis applications. You can get more information by clicking on ‘SSML Help’ on the page
Text to Play - The text area where you can write the text for speech to play. After entering text, you must click on ‘test play’ to hear the speech which will get played.
3. Stop By
This the third tab in which you will be able to configure some additional actions that you want to perform. They are
Enable User Input - You can enable this if you are expecting any input through user. If you enable then further more configurations will get appear.
Take user input in - You have two options to take user’s input. You can take user input through
DTMF : The number (0-9, *, # , ) from the mobile device
Voice : Through voice of user
If you select ‘DTMF’ then,
Terminate DTMF - The default, non-configurable DTMF to stop any prompt is “#”. Once pressed, flow will move forward and stop any further input for that DTMF.
Length of DTMF - Allows a dynamic length of DTMF upto the length entered. If length exceeds the maximum length, prompt from “Invalid Input” is played.(The minimum length of DTMF that can be entered is 1 and the maximum is 20.)
Wait for DTMF - This is the time (in seconds) that the flow waits for, for a DTMF input from the user.(The minimum wait time is 5 seconds and the maximum wait time is 60 seconds.)
Max. attempts - This is the maximum attempts at invalid inputs that the user can try for. Post exceeding this value, the prompt from “Maximum Attempts” is played.
Repeat prompt if no input - Once the “wait for DTMF” time has passed and no input has been received, the user can configure the prompt to be repeated.
Repeat prompt if invalid DTMF sequence - In case the DTMF exceeds the “Length of DTMF”, the user can configure the prompt to be repeated.
Enable DTMF validation - Once enabled, the DTMF can be validated for regular expressions, numbers or for an Aadhaar number. In case the DTMF is not validated against any of these, the prompt from “Invalid input” is played.
Store DTMF in - The DTMF entered can be stored in $call.lastdtmfreceived, default value or it can be stored in a custom variable by you.
Announcements - You can play any speech for below listed scenarios
Invalid Input: You can enable this if you want to play any speech on invalid input. The speech can be played using any static file, custom value file or using text to speech functionality.
No input: You can enable this if you want to play any speech on no input. The speech can be played using any static file, custom value file or using text to speech functionality.
Maximum Attempts: You can enable this if you want to play any speech on maximum attempts. The speech can be played using any static file, custom value file or using text to speech functionality.
If you select voice then,
Speech Adaption - You can use this section if you want to enhance the recognition of the voice input of user. To know more about speech adaption, click here.
Language of speech - There are a lot of language options for speech to text functionality. You can select the language in which you are expecting user’s input.
Duration of silence - You can set the duration of silence (in seconds), so that when this limit is reached, it will end taking input (At max you can set upto 15 seconds ).
Maximum Time for speech - You can set the time you want to give to the user for the speech(input). At max you can set 15 seconds.
Maximum re-attempts - This is the maximum number of attempts, a user will be given to provide input.
Repeat prompt if no input - Once the “duration of silence” time has passed and no input has been received, the user can configure the prompt to be repeated.
Allow barge in - Enable if you want the user to barge in the IVR.
Confidence - Confidence is basically the surety that the word detected is correct. You can set the confidence value to detect the speech.
Cloud subscription key - Select the Google cloud account for speech to text functionality usage. IF you don’t have account, configure in cloud section.
Store input in - The voice input of the user can be stored in $call.voiceinputreceived, default value or it can be stored in a custom variable by you.
Announcements - You can play any speech for below listed scenarios
Invalid Input: You can enable this if you want to play any speech on invalid input. The speech can be played using any static file, custom value file or using text to speech functionality.
No input: You can enable this if you want to play any speech on no input. The speech can be played using any static file, custom value file or using text to speech functionality.
Maximum Attempts: You can enable this if you want to play any speech on maximum attempts. The speech can be played using any static file, custom value file or using text to speech functionality.
→ If the user input is enabled and the user gives a valid input, then the flow will move forward to ‘Line 0’ or else will move forward to ‘Line 1’.
14. Play and Record
This widget is specially designed to record the user’s input, after the prompt is played. You can access the recording of the user’s input from the report section.
Following configurations are required to use this widget -
1. Play Type
Please select play type - It helps in configuring what should play when the user picks the call, or any action is taken by the user. There are multiple play types which can be chosen. It can be via static file or through text to speech.
Play Beep after prompt - Select ‘yes’ if you want to play beep after the prompt gets completed.
2. Details
This tab will appear according to the play type selected.
Play Type - From File
You have two options, you can play
Static file : Select this option if you want to play any prompt
Based on value : Select this option if have any prompt stored in the flow variable. The prompt stored in the variable must be approved !
Play Type - Text to Speech
You can very easily use the power of Text-to-speech in your IVR to play automated voices to the customer without needing a Voice Artist. Whatever you write as text will be played as speech ! For TTS, you need to configure following things -
Cloud Account - The google cloud account you want to use for TTS service. Make sure to configure cloud account in order to use TTS.
Language - We provide all the languages provided by google for TTS, so you can select any language in which you want to play your speech.
Voice - For each language, different voices are available and you can select any voice according to your preference.
Speed - Set the speed at which you want to play the speech. Default speed is '1'.
Pitch - Pitch is the relative highness or lowness of a tone as perceived by the ear, which depends on the number of vibrations per second produced by the vocal cords. You can set the pitch value, default value is '0'.
Format - The text can be entered as
Plain text - Normal text
SSML - An XML-based markup language for speech synthesis applications. You can get more information by clicking on ‘SSML Help’ on the page
Text to Play - The text area where you can write the text for speech to play. After entering text, you must click on ‘test play’ to hear the speech which will get played.
3. Record
In this tab, you will be able to perform some configurations for recording, it includes
Module Name - A name to be given to the user’s input recording which will be part of recording name. Module name will help in recognizing for which prompt which input is present if there are multiple ‘play and record’ widget in the flow.
Maximum record duration - Maximum duration up to which the input of the user will be recorded.
End record at silence - Set the duration of silence after which the recording of user input will get stop.
File format - You can save the recording in the below two formats.
GSM
WAV
15. Record
This widget is used to record the whole flow. All the flow along with IVRs and the user input will get recorded. It can be used only once in the flow. Once placed, the call gets recorded until disconnected i.e until the hangup widget.
Submit recording to webhook - You can select ‘yes’ if you want to submit the recordings of call to the webhook after the call gets completed.
16. SMS
As the name of the widget suggest, this widget is used to send a real time SMS to the customer.
The Sender IDs are first added under set-up and then selected from the drop-down. Messages only through validated sender ID are sent. The messages can be sent to a static phone number, a variable phone number from the flow variables or to the callee.
Sender ID - An ID through which the SMS will get send. Sender ID can be configured from the setup → SMS section.
Send to - You can send SMS to
Static number : A static number to which the SMS will get send
Variable Number : A flow variable in which the phone numbers are stored to which the SMSs are to be send
Called number for this call : The number on which the call is made/from which the call is it has obtained
SMS Type - The type of SMS you want to send.
Normal : It is normal SMS and the SMSs will not contain any additional features.
Flash : Flash SMS is a type of SMS that appears directly on the main screen without user interaction and is not automatically stored in the inbox. We have integrated with Airtel SMPP to deliver Flash SMS to your customers for an elevated experience. This opens up many use-cases like sending an intimation to the customer before calling.
Template ID - The phonon’s telemarketers ID mentioned on setup → SMS page.
Message - The text message that you want to send as SMS to the customer (you can add text with maximum 450 characters).
17. Speech Processing
This widget is mainly used to process the speech input received from the user. In order to process the input, with the help of this widget you can fetch intents, entity etc.
You can use dialogFlow or IBM Watson’s NLP Engine account to process the speech.
Configurations for using this widget according to the flow :
Flow variable to be processed - The flow variable which is to be processed.
NLP Agent - Select the NLP agent account from the NLP Engines configured for your account, that will be used for processing.
ML Confidence threshold - Set the threshold limit of confidence score required for processing the speech.
Enable hold music - Enable this if you want to play any hold music when the speech is being processed.
Fetch Intent - Enable if you want fetch any intent (In order to fetch any intent, first you need to configure and train the intents in dialogFlow).
Store intent in - If ‘fetch intent’ is enabled, then you need to provide a variable in which you want to store the intent that is fetched after processing the speech.
Fetch Response - Enable if you want to fetch any response for the intent fetched (The response for the intents must be configured in dialogFlow in order to fetch the response).
Store fetched response in - You can go with the default variable or can select the ‘custom variable’ and enter the variable in which you want to store the fetched response.
Fetch Entity - Enable if you want fetch any entity.
Entity to be processed - Enter the name of the entity (configured in dialogFlow) that you want to process further.
Store Entity in - Enter the flow variable in which the output of the processed entity will get stored.
You can add multiple entities that you wish to fetch/process and store the output of those processed entity into different flow variables.
If full detection of the input speech has happened then the flow will move forward to line ‘0' and if partial or no detection has happened then the flow will move forward to line '1’.
18. Time Condition
This widget is specially used when you have to make any decision based on any time condition configured.
You can add breaks from 0 to 7. Break '0' will be the default which will be executed when no condition is matched or then is no other condition
The conditions can be set based off a weekly schedule or a specific date. If two or more conditions hold true, the one that has a higher priority in the time condition table is followed.
Time Condition name - The customized name for the condition to recognize it.
Match condition - By default the match condition is ‘matches’ so based on this you can configure the time condition.
Based on -Select where the condition should be applied on a specific date or a weekly schedule
Go to - The break number for this condition
For example - If you want that the flow should get executed if the time is from 9AM to 6PM for days monday to friday, then you can configure time condition as below and once the condition gets satisfied, the flow will move forward to its break number.
19. Transfer Call
This widget can be used when you want to transfer the call to actual agent via queue or phone number. widget the call will be transferred to the queue and based on the allocation strategy the call will get assigned to the agent.
This call will get transferred to - Select the option to which you want to transfer the call
Queue : The call will get transferred to the the selected queue whenever the flow will reach this widget and the call will get assigned to one agent of that queue. The agent will receive an incoming call, when the call is assigned to him/her.
Phone number : The call will get transferred to the phone number, provided by you.
Second Leg DID Strategy - When the call is get transferred to any agent or phone number then it is call ‘second leg'. You can choose the DID you want to use for dialing agents or phone number in case of second leg and it is called 'second leg DID strategy’. The strategy are
Default : The agents will be called from the same DID from which the customer is called (in case of outbound flows).
Custom : You can choose the DID from which you want to call the agents. You must have more than one DID in order to use different DID for second leg.
All DIDs attached on flow : The DID for second leg will get picked up randomly from the DIDs attached on the flow.
Fixed DID : you can select the DID(s) from the DIDs attached on the flow which you want to use for second leg calls.
Transfer to -Queue
Select Queue - If ‘transfer to queue’ is selected, then you need to choose the queue to which the call will get transferred. You must configure queue first and assign flow in which you want to use that queue, then only you will be able to see queue options here.
Transfer to - Phone number
Phone number is - The phone number can be
Static : Fixed number to which call will get transferred every time.
Variable : A flow variable in which the phone numbers are stored and the call will get transferred to a number from those numbers.
Ring Timeout - The duration(in seconds) up to which the number will be ringed in case she/he does not pick up.
Prompt required on agent connect - You can play any announcement as soon as the agent gets connected. The prompt can be played using
Static file : The announcement can be played from the approved prompts
Custom value file : The announcement can be played from the flow variable in which it is stored
Text to speech : The announcement can be played using text to speech functionality
20. Webhook
Webhooks are used to communicate between two different or same systems. You can use webhooks when you want central to send/receive any data from/to other systems. On Central, you can operate webhooks in 3 different manner, which are as follows -
Internal Webhooks: Use any of the pre-made internal functions. Use this when you need to use any of the commonly used functions.
Webhook Widget: Call any external API using dynamic data and configurable structure. Use this when you want to integrate and use any external API
Flow End Webhook: Call the default external webhook for any flow. Use this when you need to push flow details on a particular webhook.
Using webhook widget, you can also trigger outbound calls ! To know more about webhook widget, please refer to the webhook document.
This document has been developed by Phonon.io for the sole and exclusive use of the customer / prospective customer with whom this document is being shared. Further, this document has been provided by Phonon.io to the recipient in good faith and based on request from the recipient for the same. This document is a confidential document and contains confidential product technology, workflow and commercial details that are for the sole usage of the intended recipients of this document. Recipients are advised not to share this document with any third party that is not the intended recipient of this document and neither to bring this document in full or parts into the public domain. Any unauthorized access may be brought to Phonon.io’s notice immediately. Phonon.io is free to take any legal action it deems necessary against any person or entity that violates this confidentiality agreement. Phonon.io is bound and governed by the rules of the state of Gujarat in India. In case you are not in agreement with the terms set in this clause or are not an intended recipient of this document, please destroy the document and intimate us of the same at info@phonon.io.