Skip to content

soumendrak/ivr-flow-builder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

IVR Flow Builder

📞 IVR Flow Builder

HTML5 JavaScript Plivo License PRs Welcome

Visual drag-and-drop IVR phone tree designer — build call flows and export Plivo-compatible XML/JSON.


✨ Features

  • 🔢 Menu Nodes — Build phone menus with digit options (press 1→X, press 2→Y)
  • 🔊 Play Audio — Insert audio playback with loop control
  • 📞 Transfer & Connect — Route calls to phone numbers with optional caller ID
  • 📴 Hangup — End-call actions
  • 🎨 Visual Canvas — Drag nodes freely, connections drawn as curved lines
  • 🔗 Connection Lines — SVG arrows between nodes show call flow
  • 📝 Properties Panel — Click any node to edit its config
  • 📄 Plivo XML Export — Generates Plivo-compatible XML (GetDigits, Play, Dial, Hangup)
  • 📋 JSON Export — Full flow data for programmatic use
  • Zero Dependencies — Single file, no frameworks or build tools

🚀 Quick Start

git clone https://github.com/soumendrak/ivr-flow-builder.git
cd ivr-flow-builder
open index.html

Drag a Menu node from the left palette onto the canvas to start building your IVR flow.

🎮 How to Use

  1. Add nodes — Drag from the palette (Menu, Play Audio, Transfer, Connect, Hangup) onto the canvas
  2. Connect nodes — In the properties panel, select a target for each menu option
  3. Edit properties — Click any node to edit its name, audio URL, phone numbers, etc.
  4. Reposition — Drag nodes freely on the canvas
  5. Export — Click "Export XML" for Plivo-compatible XML, or "Export JSON" for raw data

📄 Example Output

<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <GetDigits action="1" numDigits="1">
  </GetDigits>
  <Speak>Sales</Speak>
  <Dial><Number>+123****7890</Number></Dial>
  <Speak>Support</Speak>
  <Dial><Number>+198****4321</Number></Dial>
</Response>

📁 Project Structure

ivr-flow-builder/
├── index.html      # The entire app
├── logo.svg        # App logo
├── LICENSE         # MIT
└── README.md       # You are here

🏗 Architecture

Single-file vanilla HTML/CSS/JS. Drag-and-drop via HTML5 Drag API + mouse events. Connection lines drawn with SVG overlays. No frameworks, no CDNs, no build tools.

🤝 Contributing

PRs welcome! Keep the zero-dependency constraint.

📄 License

MIT © 2026 Soumendra

About

IVR Flow Builder — visual drag-and-drop phone tree designer with Plivo XML/JSON export

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages