What is a jump block?
The jump block allows you to navigate within the same flow or switch between different flows seamlessly. For example, after a user places an order, you might ask if they want to place another one. If they agree, you can loop back to the order block. If they decide to cancel, the Jump Block can redirect them to a separate flow dedicated to handling cancellations and refunds. This versatility enables the jump block to manage various user interactions efficiently.
This block allows navigation between:
Different blocks within the same conversation flow.
Various flows within the same department.
Flows across different departments.
The jump bock is particularly valuable for conversations that require cross-functional activities.
It’s essential to map both input and output variables in the jump block to establish a seamless connection between the flows.
Why use a jump block?
Seamless navigation: Allows smooth transitions within the same flow or across different flows.
Dynamic interaction: Adapts the conversation in real-time based on user responses.
Enhanced user experience: Ensures a seamless and uninterrupted conversation flow.
Versatile usage: Facilitates the management of various user paths, improving the overall chatbot functionality.
Steps to create a jump block
To add the Jump block to the flow:
1. Click the add block icon (+)
2. Choose Jump under the Action Cards section.
3. Add a unique name for the block in the Block name field.
If you input the name of a block that already exists, the following error message will appear.
4. Choose where you want to jump to, either Current flow or Other flow.
You can search the block to be jumped to as well.
Jumping within the current flow is possible only at the end of the flow to avoid missing out on the blocks which are under it.
5. Set up the Input variable mapping and Save.
6. Map Output variable mapping and Save.
This is used when you want to send data collected from your current flow to another flow during jumping.
7. The variables required by the other flow will be listed here. You need to map the variables of the current flow to the new flow.
If there are no variables to map in the jumped flow, an error message will be displayed as given below.
For example, you are in a flow called Reception. You are trying to jump to a block called view rooms in another flow called Room Booking. This view rooms block has two other blocks, say, name and address preceding it. When you are jumping, you have to carry the data for name and address block variables present in Room Booking. This is called Input Variable Mapping. After adding the Jump Block to Reception, enter the following details in the block panel:
Block name: Enter a name for the block. Example: Jump to view Rooms
Jump-to Flow: Select the flow you want to jump to. Example: Room Booking
Jump-to Block: Select the desired block from the list. Example: View Rooms
Input Variable Mapping: The variables required by the other flow will be listed here. You have to map the variables of the current flow to the new flow.
Output Variable Mapping:This is used when you try to get values from another flow to your current flow after jumping.
For example, after executing Room Booking flow,GC will return automatically to your parent flow, Reception, to finish the remaining blocks present. You are expecting the flow to bring data like Room details from Room Booking to Reception. To get this variable, you have to set Output Variable Mapping in your 'Jump to View Rooms' block. After completing Input Variable Mapping by following the above-mentioned steps from 1 to 4, enter the following details:
1. Select the variable you want to fetch from the Room Booking flow.
2. Map it to a new variable in the current flow.
3. Use Add Mapping to create and map more variables.
4. Enter an appropriate error message in the Error Message field, or proceed with the given error message.
5. Click Save.
Steps to edit an jump block
You can edit an jump block whenever required, even after the flow is published or in the drafts section, by following these steps:
1. Open the flow and click Edit.
2. Click the Jump Block, which you may have named differently.
3. Choose Edit Block from the displayed options.
4. Make the required changes to the block and click Save.
5. Click Save.
6. Publish the flow.
To be noted while editing an jump block:
- If you edit a block while an end user is engaged in a live session with the bot, the previous version of the flow will be rendered until they restart the conversation.
- After making changes, you will need to publish the flow for those changes to be reflected in an end user's session.
- If a change is made to an input variable, it will be updated automatically across all flows where the variable is used.
Steps to copy the jump block
The copy block option can be used when you need to reuse a block that you previously created; you can copy that block and add it to your flow as it is or edit it according to the requirement.
1. Click the Jump Block you wish to copy.
2. Choose the Copy Block option. The block will be pasted on the clipboard.
3. When you require to paste that block, click the Add block icon (+).
The pasted block would appear on the block listing section and be stated as From Clipboard.
4. Make any required edits, then click Paste.
To be noted while copying an jump block:
- The copied jump block can be pasted multiple times. If you no longer need to paste it, you can clear the clipboard by clicking the close icon corresponding to the clipboard option.
- When copying an existing jump block, all of its content, including any variables, will be copied as is. You can edit it as needed before adding it to the flow. Since the names of each block must be unique, the word '_copy' will be added to the copied blocks automatically; this can be changed if required.
- If you have copied a block and it is in the clipboard, deleting the copied block later will also remove it from the clipboard.
Steps to delete an jump block
1. Open the flow and click Edit.
2. Click the Jump block, which you may have named differently.
3. Select Delete Block from the displayed options.
4. Click Yes, Delete it to confirm.
You can use the undo option to restore a deleted block as your following action, but not otherwise.
5. Click Save.
6. Publish the flow.
To be noted while copying an jump block:
- If you delete an jump block while an end user is engaged in a live session with the bot, the previous version of the flow will be rendered until they restart the conversation.
- After making changes, you will need to publish the flow for those changes to be reflected in an end user's session.
If the deleted block has dependencies, such as those given below, errors will be displayed.
Path below the block:
If the block was used to jump to a different flow:
Use cases
Jumping from one flow to another
A travel agency provides different online bookings for flights, hotels, cabs, and more.
If the agency creates different flows for each type of booking in the respective departments, then the jump blocks can help users navigate between the types of bookings. By mapping the input and output variables, information between the bookings can be easily transferred, preventing the customer from repeating basic details for each booking.
Jumping to another block within the flow
A mobile phone manufacturer allows its customers to submit faulty devices and claim a refund or exchange.
Using the GC flow, the customers can select the device and choose "Faulty Device" from the list of options. Using the jump block, they will be directly navigated to select the type of problem they are facing. In the subsequent steps the customer is asked to enter the IMEI number and the date of purchase from where they will be prompted to choose whether the device should be returned (with amount refunded) or exchanged.
So, instead of showing all the intermediate blocks, based on the customer's input, they can be directly shown the appropriate block.
Input and Output Variable Mapping comes into play when you try to jump between flows.
Supported channels
The jump block is supported in the following channels:
If you exceed the limit of 500 blocks in a flow, you have a couple of options to continue building the flow:
- You can create a new flow and use a jump block to connect both flows.
- You can also remove any unnecessary blocks or paths to free up space within the existing flow.