How Buni.ai works
The core ideas behind Buni.ai, from organizations and projects to flows, state, Draft and Live environments, channels and operations.
Everything in Buni.ai hangs off a small set of ideas. Once you know them, the rest of the app and these docs follow.
The big picture
| Layer | What it is | Where you see it |
|---|---|---|
| Organization | Your workspace: people, billing, credentials and shared data | The organization switcher at the top of the sidebar |
| Project | One app or workflow, of one type | Projects in the sidebar |
| Flow | The nodes and connections on the project's canvas | The project's Canvas tab |
| State | The data a single run carries from node to node | Variables such as {{state.orderId}} |
| Environment | Draft (what you are editing and testing) and Live (what users reach) | The version badge, Publish, Routes |
| Channel | How people reach the Live flow: a chat app, a short code, a phone number, a URL | Trigger node, Routes, project Settings |
| Operations | What happens after launch: conversations, logs, feedback | Inbox, Logs and Activity tabs |
Organization
An organization holds everything your team shares: members and their roles, the plan and billing, credentials, data stores, the knowledge base, contacts and the projects themselves. You can belong to more than one organization and switch between them from the top of the sidebar.
See Organization and Users and roles.
Projects
A project is one app or workflow. When you create it, you choose its type, which decides the nodes you can use and how people reach it:
- Chatbot: conversations on WhatsApp, web chat, Telegram, Messenger, Instagram and Slack.
- USSD: menus on a short code, for any mobile phone.
- Voice (IVR): inbound and outbound phone calls.
- Automation: background workflows started by a webhook, a hosted form or a schedule.
- SMS: listed in the create form as coming soon.
Flows, nodes and connections
A project's logic is a flow: a set of nodes on a canvas, joined by connections (edges). Each node does one job, such as sending a reply, asking a question, calling an API or branching on a condition. A run starts at the flow's trigger node and follows the connections from one node to the next. Nodes with more than one outcome have a separate handle for each path.
You can build a flow by hand from the Nodes Library, or ask Buni to build or change it for you.
See The canvas and the Node reference.
State and variables
Each run carries its own state: the values the flow has collected or computed so far. Nodes write to state (for example, a Form node saves answers and an API node saves a response) and later nodes read from it with a template variable such as {{state.customerName}}.
See Variables.
Draft and Live
Every project has two environments:
| Environment | Also shown as | What runs there |
|---|---|---|
| Draft | app, Dev | The version you save while you build. Simulators run it. |
| Live | prod, Prod | The version you last published. Real users reach it. |
Saving updates Draft. Publish makes the current flow Live. Each save and publish creates a version you can inspect and roll back to, and the badge at the top of the canvas shows the current Dev and Prod version numbers.
See Environments, Publishing and Version history.
Channels and routes
A published project still needs a way in:
- Chatbots connect to chat platforms in the Trigger node, and to websites through the web chat widget.
- USSD projects are reached through a short code configured at your USSD provider.
- Voice projects are reached through phone numbers from your carrier.
- Automations start from a webhook URL, a hosted form link or a schedule.
Short codes and phone numbers are listed together on the Routes page, where each one points at either the Draft or the Live version of a project. See Channels.
Operate
Once a project is live:
- The Inbox is where your team takes over conversations the bot hands off, and where you track cases and CSAT.
- The project's Logs and Activity tabs show what each run did. See Logs and activity.
- The Feedback tab collects ratings on published chatbot, USSD and voice projects. See Feedback.