Vivollo

Reusable flows & timing

Break big flows into reusable pieces, and teach your agent to handle silence with idle timers.

As your agent grows up, two needs show up at the same time. First, you start repeating yourself — the same "collect an email" or "look up an order" sequence appears in flow after flow. Second, you realize conversations don't always get a reply, and you need a graceful way to handle silence.

This page covers both: Redirect to Flow for reuse, and the idle timer for timing.

Reusing flows with Redirect to Flow

Once a sequence of steps earns its keep, give it a home of its own. Build it as a standalone flow, then jump to it from anywhere with Redirect to Flow.

Say you have an "order lookup" routine — verify the customer, ask for the order number, call your store, report back. Instead of rebuilding that everywhere, you make it once and redirect to it:

Main flow
  → User Intent
        "track order" → Redirect to Flow → [Order Lookup flow]
        "returns"     → Redirect to Flow → [Returns flow]

The benefits are exactly what you'd hope:

  • Build once, use everywhere. Fix a bug or improve the wording in one place.
  • Smaller, readable flows. Each flow does one job well.
  • A library of reusable parts your whole team can compose with.

Redirect to Flow is a handoff between flows, not a detour. When you redirect, the new flow takes over — control doesn't automatically return to where you left. Think of it as "continue the conversation over there," not "pop back when done." If you need to come back, redirect again explicitly.

Handling silence with the idle timer

Customers get distracted. They open a chat, get pulled into a meeting, and leave you on read. The Inactivity action (the idle timer) lets your flow respond to that silence instead of just waiting forever.

You set how long to wait, and when that quiet stretch passes, the flow continues — maybe with a gentle nudge, maybe with an escalation. A classic pattern:

Send Message ("Are you still there? I'm happy to keep helping.")
  → Inactivity (wait 5 minutes)
       → Resolved   (close it out politely)

The settings, in plain terms

The idle timer gives you a few knobs, and they're worth understanding:

  • How long to wait — anywhere from 5 seconds to 10 minutes. Reminders work well at a minute or two; auto-closing a stale chat is better at five or ten.
  • Only once, or every time — fire a single reminder, or keep nudging each time the customer goes quiet again.
  • Reset when they reply — the most natural behavior: every time the customer sends a message, the clock starts over, so the timer only fires after real silence.

Use idle timers in a ladder: a friendly reminder after one minute, then a "I'll close this for now — message anytime" after five. It feels attentive without ever nagging.

Putting reuse and timing together

These two features shine brightest side by side. Here's a polished pattern that collects an email, but doesn't trap a distracted customer:

Capture User (email)
  → Inactivity (wait 2 minutes, reset on reply)
        → Send Message ("No rush — I'll be here when you're ready.")
        → Inactivity (wait 10 minutes)
              → Redirect to Flow → [Save & follow up later]

The customer never feels rushed, you never lose the lead, and the "save & follow up" logic lives in one reusable flow you can improve over time.

A quick checklist

Before you move on, a few habits that keep reusable flows healthy:

  • Name flows by their job ("Order Lookup," "Returns," "Lead Capture") so your redirect menu reads like plain English.
  • Keep reusable flows self-contained — they shouldn't assume what came before.
  • Reset idle timers on interaction unless you specifically want a hard deadline.

Next up, let's make your messages themselves more capable — buttons, carousels, and forms that turn a chat into something closer to an app.

Rich messages