Delay before answer

The transition to the next block will occur after the time interval specified in the Delay before answer field. The time can be measured in seconds, minutes, hours, days, or months. This functionality is used to send automated messages that do not require a user response.

Leave the Delay before answer field empty if the transition should occur in response to a user action or message.

You can check if a message is scheduled in the Clients section. To do this, open the dialogue with the client, go to the About client tab — Scheduled messages:

A scheduled message can also be found in the client’s variables:

Clicking on "Message scheduled" will open a window with information about the message:

Cancel if leaving the block (toggle switch)

Enable this toggle if you need to interrupt the sequence of automated messages when the user takes any action and moves to another block.

Please note, for this setting to take effect, the client's position in the funnel must change. They need to move to a different state block.

Example:

The client receives Message 1 with a button. If they press the button, they will receive Message 2. Their position in the funnel will change, and the message scheduled with a 10-minute timer will be canceled.
If the client does not press the button within 10 minutes, they will receive a new message with the button saying, "You still haven’t pressed the button."

Let’s consider the error scenario

When transitioning to the Message 1 block, a 10-minute timer arrow with the "Cancel if leaving the block" setting enabled is scheduled for the user. There is also an arrow with the condition "Button pressed" set with a 5-minute timer.

In this situation, when the button is clicked, Message 2 will be scheduled and sent 5 minutes after the button click. The client does NOT change their position in the funnel until they receive Message 2 (i.e., until they transition to the Message 2 block).

If the position in the funnel hasn’t changed, the client will receive the message "You still haven’t pressed the button" after 10 seconds. Then, according to the timer, the text from the "Message 2" block will follow.

Second error scenario

The client will also receive the message from the "You still haven’t pressed the button" block, even if they manage to press the button. The reason: "Not a state" blocks DO NOT change the client’s position in the funnel.

Cancel timed messages (toggle switch)

If the toggle is enabled, all scheduled timed messages will be canceled upon transitioning via the arrow, except for those where "Do not cancel" is enabled.

Do not cancel (toggle switch)

Messages scheduled via an arrow with the "Do not cancel" toggle enabled will remain scheduled, even if the client transitions through arrows with the "Cancel timed messages" toggle enabled.

Date and time of sending field

To schedule a message for a specific time, enter the sending time in the format HH:MM or select it using the sliders.

To schedule a message for a specific date, enter it in the format DD.MM.YYYY or select it using the calendar.

It is best to specify the sending time in the "Time of sending" field along with this date field.


If the sending time is not specified, the message will be sent 1 minute before the start of the specified date (at 23:59).

If a delay is set in the "Delay before response" field, it will be added to the scheduled time.

The message will be sent at the specified date and time.

If a numeric value is entered in the "Delay before response" field, that delay will be added to the scheduled time.

You can use variables to specify the time.

A time variable can be set either in the project constants or defined in the block’s Calculator.

Similarly, you can use a sending date by specifying it in the format DD.MM.YYYY.

Send if date has passed (toggle switch)

If the message's scheduled time has already passed on the specified date, and the "Send if date has passed" toggle is enabled, the message will be scheduled for the next day.

The "Send if date has passed" toggle works ONLY when used together with a message sending date.

Scenario 1: The arrow has a sending time set to 10:00 and the "Send if date has passed" toggle is OFF.
If the client enters the funnel and receives Message 1 at 16:34, the next message will be scheduled for the next day.

In the scheduled messages, they will have the text from Message 2 set to be sent the next day at 10:00.

Scenario 2: The arrow has a sending time set to 10:00 and the "Send if date has passed" toggle is ON.

The client enters the funnel and receives Message 1 at 16:34 on February 23.

The message will be scheduled for the next day.

In the scheduled messages, they will have the text from Message 2 set to be sent the next day at 10:00.

Scenario 3: The arrow has a sending date specified and a sending time of 10:00. The "Send if date has passed" toggle is OFF.

If the client enters the funnel and receives Message 1 at 16:34, the next message will NOT be scheduled for the next day.

The client will remain in the Message 1 block, and there will be no scheduled messages in the dialogue.

Example

A timer arrow is an arrow where the transition occurs after a specified delay. They are shown as dashed lines, with the delay time displayed.

In our diagram, there are several such arrows. The first one comes from the bright green "Good afternoon" block. This arrow has a delay set to 0 seconds.

How it works: after the bot replies to the client with "Good afternoon", the next question "Would you like to place an order?" immediately follows.

So, to set a delay before the response, fill in the corresponding field in the settings form.
Similarly, you can specify the exact date and time for sending a message by filling in the "Send time" fields.

To the right of the "Delay before response" field, you can select the unit of measurement: seconds, minutes, hours, days.

If you use delays along with variable comparison conditions and have "Cancel timed messages" turned off, then enter #{question} in the "Strings to ignore" field.

Go once

If this toggle is enabled, the user will be able to transition through the connection only once during the conversation with the bot. At the same time, the message will be scheduled as many times as the condition for scheduling the message linked to the arrow is met.

"Go once" is NOT the same as scheduling the transition via the arrow only once.

Let’s analyze scenarios of arrow triggering with the "Transition once" toggle enabled:

Go once + Cancel messages with a timer

If the Cancel messages with a timer toggle is enabled in the arrow, then when the client re-enters the Message 1 block, previously scheduled messages will be canceled, and only the most recently scheduled message will remain.

The Transition once toggle is also enabled. This means that once the transition through the arrow to Message 2 occurs, it will not be scheduled again.

Transition once only (other toggles disabled).

If only the Transition once toggle is enabled in the arrow settings, new messages will continue to be scheduled until the actual transition through the arrow occurs.

The client enters the Message 1 block, and a transition to Message 2 is scheduled.
As long as the user hasn't received the text from Message 2, transitions will continue to be scheduled.

The "Transition once" toggle is triggered ONLY UPON ACTUAL TRANSITION.
After transitioning to Message 2, future entries into Message 1 will no longer schedule the transition via this arrow.

Be careful with your settings and always test different user behavior scenarios in the bot.