Routing Overview
Bright Pattern Contact Center routes all media types — voice, chat, email, messaging, and tasks — through a single routing engine with one shared agent pool, one skill model, and one capacity model. This article introduces the routing capabilities of the platform and links to the detailed reference documentation for each.
Scenarios
A scenario handles an interaction from arrival through connection to an agent. Scenarios are built in the Scenario Builder as flowcharts of blocks.
- Data retrieval and assessment blocks gather information from internal and external sources
- Routing blocks select the target agent or destination
- Treatment blocks manage the customer experience while the interaction waits
- Data-based routing branches on any value retrieved earlier in the scenario
For the complete block reference, see Scenario Blocks Overview.
Skill-Based Routing
Agent selection is driven by skills and skill groups. See How the System Routes Interactions for the selection algorithm.
- Services group routing policy, skills, and configuration into a single administered object
- Multiskill thresholds express relative proficiency, so the most qualified available agent is selected first
- Escalations relax skill requirements over time when no qualified agent becomes available
- Overflow markers direct interactions to secondary agent pools under defined conditions
Agent Selection Strategy
- Routing strategy selects agents by longest ready time or longest total idle time
- Random agent selection is available as a Find Agent block option
Queue Management
Priority
Priority applies a multiplier to time in queue rather than acting as a simple rank, which speeds up or slows down an interaction's movement relative to others. See How is Priority Calculated.
Virtual Queue
Virtual queue (voice only) allows a caller to retain their place in queue without remaining on the line. The reserve agent option holds the agent slot when the callback is placed.
Omnichannel Routing
Digital channels are routed by the same engine as voice, using a shared capacity model rather than a parallel mechanism.
Capacity Model
See Omni-Channel Routing for the full configuration.
- Capacity share taken by each interaction — how much of an agent's capacity a given media type consumes
- Required spare capacity — how much must remain free before an agent is eligible
- Precedence — the order in which media types are considered
- Max Per Agent — a hard concurrency ceiling
Custom Routing Profiles
Custom routing profiles apply different omnichannel rules per service, per scenario entry, or at an individual Find Agent block.
Adaptive Capacity
With adaptive capacity calculation enabled, capacity consumed by idle chats is gradually released, so concurrency reflects actual engagement rather than a static configured value.
Availability Rotation
Availability rotation reserves agents for voice when overlapping chat volume would otherwise starve the voice queue, rotating the reserved skill gap across the agent group.
- Selection algorithm
- Minimum agent thresholds — the gap is expressed as a percentage or a minimum agent count
Customer Continuity
Last Agent Routing
Three independent methods are available; see Routing Customers to the Same Agent.
- Contact-level agent linking — via the contact record
- Case ownership — via the CRM or case system of record
- Continuation variable — carried through the interaction
Omnichannel Continuity
When a contact is recognized across channels, the interaction can be routed to the agent already engaged with them using the Find Agent wait condition, merging into a single Agent Desktop entry. Queued email from the same contact is also surfaced to the agent handling their message.
Time and Location
Hours of Operation
Hours of operation are resolved through a hierarchy, with each level able to override the one above: global calendar, service, scenario entry, and If-block within a scenario.
Regional Routing
Regional routing keeps voice media processing local to the agent, avoiding remote round-trips for distributed and remote workforces.
Extending Routing Decisions
Routing logic that the platform does not provide natively can be added at the point of decision, without running custom code inside the tenant.
Fetch URL
The Fetch URL block is available in every scenario and workflow. It calls an external web service mid-scenario and parses the response into scenario variables, which subsequent blocks can branch on.
- GET, POST, PUT, PATCH, and DELETE methods; JSON, XML, and form-encoded content
- Conditional exits for Failed, No Data, and Timeout, so routing continues deterministically when an external service is slow or unavailable
- Request timeout configurable between 2 and 100 seconds
- HTTP basic, bearer token, and OAuth 2.0 client credentials authentication, with credentials stored centrally as Web Client Credentials
- Built-in functions available for signing and hashing in headers
Get Statistics
The Get Statistics block reads live operational statistics into scenario variables at the moment of the routing decision, so overflow and escalation thresholds can respond to current load rather than static configuration. Statistics are requested with respect to a service, defaulting to the service of the current interaction.
Available statistics include:
- Max inbound wait time
- Inbound interactions currently in queue, currently in IVR, and currently ringing
- Logged-in agents and not ready agents
- Percentage of inbound interactions answered within Service Level
- Interactions handled by agents for the day, and calls queued, abandoned, or unanswered for the day
For the complete list, see the Get Statistics block reference. Real-time statistics are also available outside scenarios through the Real-Time Statistics API.
Email and Task Routing
Email Scenarios
Email and task scenarios pre-process work before it reaches an agent, with full data retrieval and assessment, auto-reply capability, and the Ask AI block for classification and drafting. See the email scenario lifecycle.
Keyword Routing
Email can be routed on subject and body keywords, with priority adjusted from header field values. Messages that match no rule fall back to the default service of the mailbox scenario entry.
Distribution Method
The distribution method determines whether work is pushed to agents or pulled by them. Pull mode provides personal, team, and supervisor queue views.
Queue Management
- Email queue management — queues are sorted by proximity to SLA breach rather than arrival time
- Items approaching breach are returned automatically from an agent's personal queue to the shared pool
- Supervisor review and assignment
- Escalation paths are configured as part of the email scenario lifecycle
Delivery
- No-answer fallback routing — conditional exits on the Connect Call block
- In-queue and delivery treatments, which can continue during delivery
- External destination delivery with confirmation
Transfers, Consultations, and Conferences
A blind (single-step) transfer to a service queue returns the interaction to the routing engine, where full skill selection, priority, and treatments apply again. See How to Place a Call in a Service Queue.
Consultation, conference, and blind transfer are initiated from a single control; see How to Make Consultations and Transfers.
- Real-time agent state is displayed during target selection, in the directory and in the consult, conference, blind transfer, chat invite, transfer email, and assign email dialogs
- A transfer can be completed from either the consultation call or the original call
- When a consultation transfer is completed from the original call, the remaining call retains the original call's service for reporting purposes
- Targets include agents, teams, service queues, extensions, and external numbers
Outbound
Outbound campaigns share the same agent pool, skill definitions, and capacity model as inbound.
Group Calling
PBX-style group behavior is supported alongside skill-based routing.