This chapter will explain the role of Request Block and how to use it.
Request Block is an important part of the dialogue flow. When the bot needs to ask the user and obtain necessary and critical information from the user's reply message, the request block is used. At the same time, the bot will also decide which block the dialogue process should jump to next based on the information extracted from the user's reply, thereby realizing dialogue management.
Slot to fill
The request block needs to be associated with a word slot. When the bot extracts the required information from the user's reply, it will store the information content in the corresponding slot.
For example, we can use the dialogue flow to collect the user's booking information, and use the request block to ask the user's departure city. To achieve this, we can first create a slot named "departure_city", associate the city entity, and then associate the slot with the request block.
In this way, when the user replies with the departure city, the bot will fill in the slot with the city name to advance the current dialogue flow.
In the blank column below Prompts, we can configure the specific words of the bot when it asks the user questions and choose the appropriate reply method.
Reply all in turn：The bot sends out all preconfigured words at once;
Reply random one：The bot will randomly select one of the multiple words and return it to the user;
Reply one each turn：It can play the role of gradual clarification. For example, the bot first asks the user "Where is your departure city?", when the user's reply does not give city information, the bot will send a second phrase, "Please confirm and tell me specific city name".
Quick Replies can play the function of input reminder, we can use Manual configuration or Interface configuration to get some preset replies, they will be displayed on the Q&A page in the form of bubbles, users can use Click to replace manual input to improve reply efficiency.
When the user's reply hits multiple values that can be filled in the slot, in order for the bot to accurately extract the most correct information, we can let the bot send Clarify to the user at this time, so that the user can point out the correct options.
Slot filling strategy
Fill & Update by ask：Only when the dialogue flow is in the current request block, the acquired information will be filled in the associated slot. The user's messages before or after this will not be used to fill the slot;
Update by ask：Each time the dialogue flow passes through the current unit, the slot can be refilled with the newly extracted entity. But in the subsequent dialogue, even if the bot extracts the entity, the value of the slot will not be updated;
Fill & Update at any time：In the dialogue before or after this block, the bot extracts the required entity, and the extracted entity information will also be filled in the to-be-filled slot of this block.
Fill & Update at any time is often used in marketing, information query and other scenarios. Users often say multiple pieces of information at one time. Using this function can make the bot behave more intelligently. However, when confirming information, we hope that users will carefully check the bot's message and give a confirmation answer to the current question, often using Fill & Update by ask.
In addition, we can also configure the question times and the Default value for filling the slot. The number here refers to how many times the bot can ask in total if the bot does not get information from the user that it can fill the slot. In addition, if the default value is configured, after the current number of queries exceeds the limit, the bot will automatically fill in the pre-configured value into the slot; if the default value is empty, the current dialogue will be paused and the bot will respond with the fallback action.
We can configure the route condition according to the entity value filled in the slot, so that the current dialogue will proceed according to our expected process. If there are multiple configuration conditions, it will be executed according to the priority from top to bottom.
Branch route：Formulate a rule, when the value of the slot conforms to the rule, the current dialogue flow will flow to the next block specified by this branch;
Default route：When the value of the slot does not meet the conditions of any branch route, the current dialogue flow will flow to the next block specified in the default route.