DIDfarm
  • Numbers
  • Trunks
  • Messaging
  • Connect
  • Pricing
  • Coverage
  • Help
🇬🇧 EN 🇳🇱 NL 🇩🇪 DE 🇫🇷 FR 🇪🇸 ES 🇧🇷 PT 🇸🇦 AR 🇨🇳 ZH 🇯🇵 JA 🇮🇳 HI
Sign in Get a Number
← Help Center
On this page
Overview Getting Started Module Reference Connecting Modules AI Announcements Publishing Your Flow Example Flows Tips & Best Practices

Visual Call Flow Builder

Call Management · 8 min read Call Flows IVR AI Voice
Build a professional phone system in minutes. The Call Flow Builder lets you visually design how incoming calls are handled — from greeting callers with AI-generated announcements to routing them to the right team based on what they press, when they call, or who they are.

Overview

Every phone number you own on DIDfarm can have a call flow — a visual diagram that defines what happens when someone calls that number. You build the flow by dragging modules onto a canvas, connecting them together, and configuring each one.

Think of it as a flowchart for phone calls. When a call comes in, it enters at the top and follows the connections you've drawn, passing through each module along the way.

Getting Started

Step 1: Open the Call Flow Builder

Navigate to My Numbers → Call Flows in the portal sidebar. You'll see a list of your phone numbers. Click Create Flow (or Edit Flow if you've already started one).

Step 2: Understand the Interface

The builder has three main areas:

  • Module Palette (left) — the building blocks you can drag onto the canvas
  • Canvas (center) — where you design your flow by placing and connecting modules
  • Config Panel (right) — appears when you click a module, showing its settings

Step 3: Build Your Flow

  1. Drag modules from the left palette onto the canvas
  2. Connect them by dragging from a colored dot on one module to a dot on another
  3. Configure each module by clicking on it and adjusting the settings in the right panel
  4. Save & Go Live when you're ready — the flow activates immediately
New flows start with a sample template showing a typical business setup: incoming call → time-based routing → voice menu → ring groups → voicemail. You can modify this template or start fresh by deleting all modules.

Module Reference

There are seven types of modules you can use in your call flows:

📞 Phone Number

The entry point of every call flow. When someone dials your number, the call starts here. Every flow must have exactly one Phone Number module. It has one output: Incoming.

🕐 Time Router

Routes calls based on the time of day and day of the week. Create schedules like "Business Hours: Mon–Fri, 9:00–17:00". Each schedule gets its own output. Calls outside all schedules follow the Default output — perfect for sending after-hours calls to voicemail.

📋 Voice Menu (IVR)

Plays a greeting and lets callers choose an option by pressing a number. For example: "Press 1 for Sales, Press 2 for Support." Each key gets its own output. You can generate professional greetings using AI voice synthesis or upload your own recording. Also has Timeout and Invalid outputs for callers who don't respond or press the wrong key.

🔔 Ring Group

Rings multiple phones so the first person to pick up takes the call. Choose Simultaneous (all phones ring at once) or Sequential (tries each phone one by one). Set a ring timeout. If nobody answers, the call follows the No Answer output.

👥 Queue

Distributes calls across a team of agents. Choose Ring All or Round Robin. Set a maximum wait time. If no agent answers before the timeout, the call follows the Timeout output.

📨 Voicemail

Records a voice message from the caller and sends it to your email. This is a terminal module — the call ends after the message is recorded. Set a notification email address and maximum recording duration.

👤 Caller Router

Routes calls based on the caller's phone number. Use patterns like +316* to match all Dutch mobile numbers. Each rule gets its own output. Callers not matching any rule follow the Default output. Great for VIP routing or blocking spam.

Connecting Modules

Modules have colored dots (handles) on their edges. These represent inputs and outputs:

  • Top and left dots are inputs — they receive calls from other modules
  • Right and bottom dots are outputs — they send calls to the next step

To create a connection, click and hold on an output dot, then drag to an input dot on another module. A dashed line appears while you're dragging. Release on the target dot to create the connection.

Tip: To remove a connection, click on the line between two modules to select it, then press Delete or Backspace. To move a connection, hover over the edge and drag the endpoint to a different module.

AI Voice Announcements

The Voice Menu module includes a built-in AI announcement generator powered by ElevenLabs. Instead of recording your own greeting, you can type what you want to say and have it converted to a professional-sounding voice recording in seconds.

Generating an Announcement

  1. Click the Voice Menu module on the canvas
  2. In the config panel, find the Announcement section
  3. Select Generate with AI (the default tab)
  4. Choose a voice from the dropdown (male/female, various accents)
  5. Type your greeting text (e.g., "Thank you for calling Acme Corp. Press 1 for Sales, Press 2 for Support, or stay on the line for assistance.")
  6. Click Generate announcement
  7. Preview the audio with the play button that appears
Pro tip: You can generate multiple announcements and switch between them. All generated and uploaded audio files are saved in your library and can be reused across different voice menus.

Uploading Your Own Recording

If you prefer to use your own recording, switch to the Upload file tab and drag-and-drop or click to upload an audio file. Supported formats: MP3, WAV, OGG, M4A (max 10 MB).

Publishing Your Flow

When you're happy with your call flow:

  1. Click Save to store your progress (you can come back and edit later)
  2. Click Go Live to activate the flow

Once published, the flow is active immediately — the next incoming call to that number will follow your new routing. There's no delay or approval process.

Important: Publishing validates your flow. You'll see an error if there are issues like missing connections or a flow without a Phone Number entry point.

Example Flows

Basic Business Hours

The simplest useful flow routes calls to your team during work hours and to voicemail after hours:

  • Phone Number → Time Router (Mon–Fri, 9–17)
  • Business Hours → Ring Group (your team's phones)
  • Default (after hours) → Voicemail

Sales & Support Menu

Add a voice menu to let callers choose their department:

  • Phone Number → Time Router
  • Business Hours → Voice Menu ("Press 1 for Sales, Press 2 for Support")
  • #1 → Ring Group (Sales team) → No answer → Voicemail
  • #2 → Ring Group (Support team) → No answer → Voicemail
  • Default (after hours) → Voicemail

VIP Caller Priority

Give important callers a direct line to your manager:

  • Phone Number → Caller Router
  • VIP rule (+316*) → Ring Group (manager's direct line)
  • Default → Voice Menu → departments as usual

Tips & Best Practices

  • Always end with Voicemail. Connect the "No Answer" and "Timeout" outputs of your Ring Groups and Queues to a Voicemail module. This ensures callers can always leave a message.
  • Keep menus short. Voice menus with more than 4–5 options frustrate callers. If you need more departments, use a two-level menu.
  • Test your flow. After going live, call your number and walk through each option to make sure everything works as expected.
  • Use AI announcements. A professional greeting makes a huge impression. Generate one in 10 seconds instead of spending time recording your own.
  • Set business hours correctly. Double-check your timezone setting in the Time Router. A mismatch sends calls to voicemail when you're actually available.
  • Use descriptive names. Rename your modules (click and edit the label) so you can quickly identify what each one does when the flow gets complex.

Ready to build your call flow?

Get started with the visual builder and have your phone system running in minutes.

Open Call Flow Builder →
© 2026 DIDfarm · didfarm.com
About Blog Partners Coverage API Docs Status Privacy Terms Cookies Help

We use essential cookies to make DIDfarm work. With your consent, we also use analytics cookies to improve our service. Cookie Policy