Agent Assignment


When visitors need to speak with a live person, Boei needs to decide which team member should handle the conversation. This guide explains how to set up who receives chats and how they're assigned.

How to get there: Go to Setup → Chatbot in the top menu → click your chatbot → Behavior → Live Chat in the sidebar.

Three Key Settings

There are three related settings that control how chats reach your team:

  1. Agent Pool - Which team members are eligible to receive chats from this bot
  2. Agent Assignment Mode - How chats are sent to that pool
  3. Agent Selection Strategy - Which agent gets picked when auto-assigning

Agent Pool

Controls who can receive live-chat escalations from this chatbot.

How it works:

  • The pool automatically includes the account owner plus every teammate whose collaborator profile has the Live Chat Agent permission
  • No per-chatbot list to maintain: grant a teammate the permission once (under Team → Collaborators) and they are eligible on every chatbot in the account
  • Revoke the permission and they drop out of every chatbot's pool automatically

Best for:

  • Most teams (this is the default for new chatbots)
  • Accounts where the same set of people handles chats across all bots
  • Teams where you want new hires to start receiving chats the moment their permission is granted

Configuration:

  • Enabled by default when live chat is turned on
  • Manage individual permissions under Team → Collaborators → Live Chat Agent toggle

Custom Agent List (Per-Bot Override)

How it works:

  • The chatbot only escalates to users you have explicitly added to its Chat Agents list
  • Useful when different bots have different specialized teams (e.g. Sales bot vs Support bot)
  • Adding an agent here does not grant the account-level Live Chat Agent permission on other bots

Best for:

  • Multi-bot setups with specialized teams per bot
  • When you want tight control over who sees a particular bot's chats regardless of team-level permissions

Configuration:

  1. Open the chatbot's Behavior → Live Chat settings
  2. Switch Agent Pool to Custom Agent List
  3. Add specific agents under Chat Agents

Note: Switching a chatbot from "All Team Members" back to "Custom Agent List" starts with an empty list; you add agents from scratch. This keeps the two modes clean and prevents stale historical lists from resurfacing.

Agent Assignment Mode

Controls how incoming chats are distributed to your team.

How it works:

  • When a visitor requests human help, ALL available agents are notified
  • Agents see the chat in their waiting queue
  • First agent to claim the chat gets it
  • Creates a competitive, fast-response environment

Best for:

  • Small to medium teams (1-10 agents)
  • Teams where agents actively monitor their dashboard
  • When you want the fastest possible response time
  • Encouraging team competition for quick responses

Configuration:

  • This is the default mode
  • No special configuration needed
  • All agents with access to the chatbot will see waiting chats

Auto-Assign

How it works:

  • System automatically assigns each chat to one specific agent
  • Assignment uses your chosen selection strategy (random or round-robin)
  • Assigned agent receives a notification
  • Other agents don't see the chat

Best for:

  • Larger teams where notify-all creates too much noise
  • Teams with specialized agents (based on tags or routing rules)
  • When you want guaranteed equal distribution
  • Preventing notification fatigue

Configuration:

  1. Go to chatbot settings
  2. Find "Agent Assignment Mode"
  3. Select "Auto-Assign"
  4. Choose your selection strategy below

Agent Selection Strategy

When using Auto-Assign mode, this determines which agent receives each chat.

Random (Default)

How it works:

  • Each chat is assigned to a randomly chosen available agent
  • Over time, distribution evens out
  • Simple and unpredictable

Best for:

  • Teams where all agents have equal skills
  • When you don't need perfectly even distribution
  • Simpler setup (no state tracking)

Example:

Chat 1 → Agent C
Chat 2 → Agent A
Chat 3 → Agent A
Chat 4 → Agent B
Chat 5 → Agent C

Round-Robin

How it works:

  • Agents are assigned in rotation order
  • After Agent A gets a chat, next one goes to Agent B, then C, then back to A
  • Ensures perfectly even distribution
  • System remembers position in rotation

Best for:

  • When equal workload distribution is critical
  • Performance tracking and fair comparisons
  • Teams where you pay per conversation handled
  • Ensuring no agent is overworked or underutilized

Example:

Chat 1 → Agent A
Chat 2 → Agent B
Chat 3 → Agent C
Chat 4 → Agent A
Chat 5 → Agent B

Agent Unavailable Settings

Configure what happens when no agents are available to respond.

Unavailable Timeout

Setting: agent_unavailable_timeout_minutes

What it does:

  • After X minutes of waiting, the system considers no agents available
  • Displays a custom message to the visitor
  • Typically set to 2-5 minutes

Why this matters:

  • Prevents visitors from waiting indefinitely
  • Sets clear expectations
  • Allows visitor to leave contact info or try another time

Recommended values:

  • 2 minutes - For high-priority support (premium customers)
  • 3 minutes - Standard response time expectation
  • 5 minutes - For after-hours or lower priority
  • 10 minutes - Very patient wait, less urgent support

Unavailable Message

Setting: agent_unavailable_message

What it does:

  • Custom message shown when timeout is reached
  • Should explain next steps for the visitor

Good examples:

"Our team is currently unavailable. Please leave your email
and we'll get back to you within 2 hours."

"All agents are busy right now. Average wait time is 10 minutes.
You can wait or leave a message."

"We're outside business hours (9 AM - 5 PM EST).
Leave your question and we'll respond in the morning."

Bad examples:

"No one is here" - Too blunt, unprofessional
"Try again later" - Unhelpful, frustrating
[blank] - Visitor doesn't know what happened

Small Team (1-3 agents)

  • Mode: Notify All
  • Strategy: N/A (only applies to auto-assign)
  • Timeout: 3 minutes
  • Message: "Our team is currently helping other customers. Leave your email and we'll respond within 1 hour."

Medium Team (4-10 agents)

  • Mode: Notify All or Auto-Assign
  • Strategy: Random (if using auto-assign)
  • Timeout: 2 minutes
  • Message: "All agents are currently busy. Please wait or leave your contact information for a callback."

Large Team (10+ agents)

  • Mode: Auto-Assign
  • Strategy: Round-Robin
  • Timeout: 5 minutes
  • Message: "High chat volume right now. Estimated wait: 5-10 minutes. Leave a message for faster response."

After-Hours / Weekend Support

  • Mode: Either (fewer agents available)
  • Strategy: Random
  • Timeout: 10 minutes
  • Message: "Outside business hours (M-F 9-5 EST). Leave your email and we'll respond first thing tomorrow."

How Agent Availability Works

An agent is considered "available" if:

  1. They're in the chatbot's agent pool (either the account-level Live Chat Agent permission with the bot on "All Team Members" mode, or explicitly added under "Custom Agent List")
  2. Their status is "Active" (not offline/away)
  3. They're currently logged in
  4. They haven't exceeded their max concurrent chats (if configured)

An agent becomes "unavailable" if:

  • They set their status to Away or Offline
  • They close their dashboard
  • They're handling their maximum number of concurrent chats
  • They haven't been active for 10+ minutes

Monitoring Performance

For Notify All Mode

Check these metrics:

  • Average claim time - How quickly agents claim waiting chats
  • Abandoned chats - Chats where no agent claimed before timeout
  • Agent response distribution - Are some agents claiming more than others?

If average claim time is too slow, consider:

  • Reducing team size (too many notifications = noise)
  • Training on importance of fast claims
  • Switching to Auto-Assign

For Auto-Assign Mode

Check these metrics:

  • Assignment distribution - Are chats evenly distributed?
  • Average response time per agent - Who responds fastest after assignment?
  • Reassignment rate - How often are chats reassigned due to no response?

If distribution is uneven with round-robin, investigate:

  • Are some agents going offline without updating status?
  • Different availability hours per agent?
  • Max concurrent chat limits per agent?

Best Practices

  1. Start with Notify All - It's simpler and often faster for small teams

  2. Set realistic timeouts - Don't promise 1-minute response if you can't deliver

  3. Update unavailable message seasonally - Mention holidays, reduced hours, etc.

  4. Test both modes - Try each for a week and compare metrics

  5. Train agents on claiming - In notify-all mode, emphasize fast claiming

  6. Monitor abandoned chats - If high, reduce timeout or add more agents

  7. Use clear unavailable messages - Always explain what visitor should do next

  8. Consider time zones - If global team, configure per-region chatbots

  9. Review regularly - Team size changes, so should your assignment strategy

  10. Combine with business hours - Use auto-responses outside hours, live chat during hours

Troubleshooting

Problem: Chats never get claimed (Notify All)

  • Check: Are agents actually logged in and active?
  • Check: Do agents have access to this chatbot?
  • Check: Is timeout too short? Agents need time to see notification.
  • Solution: Increase timeout or switch to Auto-Assign

Problem: One agent gets all chats (Auto-Assign + Round-Robin)

  • Check: Are other agents marked as active?
  • Check: Have other agents set max concurrent chats too low?
  • Solution: Verify all agents are available and properly configured

Problem: Visitors complain about wait time

  • Check: What's your current average claim/response time?
  • Check: Is unavailable message accurate about wait time?
  • Solution: Add more agents, reduce timeout, or improve message clarity

Problem: Agents don't get notifications

  • Check: Is the agent in this bot's pool? (On default "All Team Members" mode, they need the account-level Live Chat Agent permission; on "Custom Agent List" mode, they need to be in this bot's list.)
  • Check: Is the assignment mode set correctly?
  • Check: Do agents have the dashboard open and logged in?
  • Solution: Verify access permissions and notification settings

Configuration Steps

Setting the Agent Pool

  1. Go to your chatbot settings
  2. Navigate to "Live Chat" or "Agents" section
  3. Find "Agent Pool"
  4. Choose either:
    • All Team Members with Live Chat Permission (default, recommended)
    • Custom Agent List (per-bot override)
  5. Save changes

If you switch to Custom Agent List, add agents under Chat Agents below.

Setting Assignment Mode

  1. Go to your chatbot settings
  2. Navigate to "Live Chat" or "Agents" section
  3. Find "Agent Assignment Mode"
  4. Choose either:
    • Notify All Agents (default, recommended for most)
    • Auto-Assign to Agent
  5. Save changes

Setting Selection Strategy (Auto-Assign only)

  1. After selecting Auto-Assign mode
  2. Find "Agent Selection Strategy"
  3. Choose either:
    • Random (default)
    • Round-Robin (fair distribution)
  4. Save changes

Setting Unavailable Settings

  1. In chatbot settings under "Live Chat"
  2. Set "Agent Unavailable Timeout" (in minutes)
  3. Write "Agent Unavailable Message"
  4. Save changes

Changes take effect immediately for new chats.