You can interlink dialogs to create a conditional based on a set of rules or logic to solve for your use-case in the bot builder. The ‘Conditions & Path’ tab under a dialog’s setting allows you to do this and more. You can set up multiple conditions for one dialog to connect to another at any point in the flow and also set up redirection based on customer input. 


With the ability to set up If-else conditions and AND - OR operators in the conditional flow, you can tighten your bot flow and tailor it to suit your business requirement.





Let’s take an example of a pricing bot for photo editing software subscription:

The pricing bot asks the customer if they are opting for a student plan or a business plan of the photo editing software. and depending on which country the user belongs to, it shows the price in the appropriate currency.


Pricing Policy


Country 

Type

USA

Germany

France

Student Plan

$5

€5

€5

Business Plan

$10

€10

€10


Dialog 6.10 - Ask for Subscription Plan



Dialog 3.11 - Ask for Country 





There are four possible unique scenarios:

  1. Business Plan - US            (Price is $10  [Dialog 6.12])

  2. Business Plan - Germany/France    (Price is €10  [Dialog 6.13])

  3. Student Plan - US            (Price is $5  [Dialog 6.14])

  4. Student Plan - Germany/France    (Price is €5  [Dialog 6.15])






Here is how you can use the Conditions:



  • Here A, B, C are condition expressions. Each condition expression consists of a left value and a right value separated by an operator. When a condition expression takes in these value its gives a TRUE or FALSE as its output.


  • The structure of the above condition is, if A & (B OR C) is TRUE then proceed to D Else proceed to E. 


  • D and E are dialogs to which the bot should proceed to next based on whether the condition is true or false.


The following is a condition expression:


Left Value         Operator        Right Value 




Examples of output : 


 3 < 4 gives TRUE 

‘CAR’ = ‘CAR’ gives TRUE 

 5 = 6 gives false.


Buttons and its usage :



  • The left-hand side and right-hand side values of the condition expression can be filled in by manually by typing in or using the content picker. 


        


  • A condition is built using one or more condition expressions separated by ‘AND’, ‘OR’ &  Brackets [ ]


             


     * Buttons add brackets before and after the condition expression to have nested condition expression


  • Within brackets, either ‘AND’ or ‘OR’ must be used to separate condition expressions. A mix of both is not feasible. 


              

Button is used to choose whether condition expressions should be separated by ‘AND’ ‘OR’