Skip to main content
The Ask a Person (also called Dispatcher) is an all-in-one conversation node that combines a communication channel and an AI skillset in a single node. It opens a channel (Gmail, Slack, web widget, etc.), assigns a skillset to manage the conversation, and handles message routing automatically. Use it when you want the simplest possible setup for a conversational workflow and don’t need to route conversations between multiple AI agents.

When to use

  • Simple conversational workflows — one channel, one AI agent, straightforward flow
  • Quick prototyping — get a conversational agent running with minimal setup
  • Structured data collection — use a skillset to gather specific fields through natural conversation
  • Single-purpose agents — one agent handles the entire conversation from start to finish
For more complex scenarios — routing between multiple agents, chaining actors, or separating channel logic from AI logic — use Channel Dispatcher with Communication Actor or LLM Actor instead.

How it works

The Ask a Person creates a conversation flow with event and action handles:

Event handles

Event handles trigger when the person does something:
  • Sends a message
  • Provides requested information
  • Clicks a button or makes a selection

Timeout handles

Timeout handles trigger when the person doesn’t respond within a configured time. Use them for reminders, escalation, or cleanup.

Execution modes

Initiator mode

The workflow starts the conversation proactively — for example, sending the first email to a contact.

Responder mode

The workflow waits for someone to reach out. When a new message arrives, a conversation is created and the skillset begins processing.

Example: lead qualification

Qualify leads through conversational data collection:
1

Add a Ask a Person

Drag a Ask a Person onto the canvas. Select your channel (e.g., Web Widget) and skillset (e.g., Lead Qualification).
2

Configure the skillset

Set up the skillset to collect:
  • Company name
  • Company size
  • Budget range
  • Project timeline
The AI will guide the conversation naturally to gather each field.
3

Handle completion

Connect the conversationEnded handle to downstream actions:
  • App Action to create a CRM contact
  • Ask AI to score the lead
  • Send Message to confirm next steps
4

Handle timeout

Connect the timeout handle to a Send Message node with a follow-up reminder. Use a Condition node to limit retries.

Example: support ticket handler

Handle support conversations via email:

Example: email outreach campaign

Send proactive emails and handle replies:
1

Set up the communicator

Use Gmail channel in Initiator mode. Configure the recipient from a variable (e.g., {{lead.email}}).
2

Define the skillset

Use a skillset that introduces your product and collects interest level, meeting availability, and contact preferences.
3

Process results

When the conversation ends, route based on outcome:
  • Interested leads go to your CRM
  • Uninterested leads get a polite close

Skillsets

Skillsets define the AI conversation behavior. Each skillset specifies what data to collect, how to greet the user, and how to handle the conversation flow.
For complete skillset documentation, see the Skillset Engine guide.
Skillsets powered by the Skillset Engine support:
  • Natural conversation — AI guides users through questions conversationally
  • Structured data collection — collect specific fields with validation
  • Knowledge base integration — AI can search your docs to answer questions
  • Automatic escalation — transfer to humans when the AI can’t help
  • Continue conversation — keep talking after data collection (requires a knowledge base)
  • Guardrails — content safety and behavior boundaries

Conversation states

StateMeaning
greetingSending the first message
collectingGathering information through conversation
confirmingAsking the person to confirm collected data
completedConversation finished successfully
timeoutNo response within the configured time
escalatedTransferred to a human agent

Settings

channelId
string
required
The communication channel to use (e.g., gmail, slack, widget).
executionMode
string
default:"initiator"
How conversations start:
  • initiator — workflow sends the first message
  • responder — workflow waits for incoming messages
skillsetId
string
required
The skillset that defines conversation behavior and data collection.
skillsetConfiguration
object
Skillset-specific settings such as greeting message, form fields, knowledge base ID, and continue conversation toggle. Supports variable interpolation.
channelConfiguration
object
Channel-specific settings (e.g., recipient for initiator mode, polling interval). Supports variable interpolation.
enableVisualizer
boolean
default:"false"
Enable Magic Window for visual content alongside the conversation (widget channel only).

Outputs

Outputs are available through event handles:
conversationId
string
The unique ID of the conversation.
collectedData
object
Structured data collected by the skillset during the conversation.
status
string
Conversation status: active, completed, timeout, escalated.

Channel Dispatcher

Modular alternative — separate channel from AI logic.

Communication Actor

Skillset-powered actor for the modular pattern.

Send Message

Send messages within a conversation.

Skillset Engine

Deep dive into skillset configuration.