Outbound Dialer Methods

Outbound Dialer Methods

Overview

For each Queue Campaign, you can choose from different Outbound Dialer Methods, that define the strategy the dialer uses to generate and manage outbound calls.

Selecting the right method is essential to align with your campaign goals, agent availability, and compliance requirements.

Discover the available Dialer Methods:

Progressive Dialing

How it works

✅ Recommended Use Case

How it works

✅ Recommended Use Case

In the Progressive dialing method, the outbound dialer places one call as soon as an agent becomes available in the queue. This ensures a direct connection between agents and contacts with minimal delay.

  1. The system monitors agent availability. When an agent is free, the dialer automatically places a call to the next contact in the list.

  2. Once the contact answers, the call is routed through the queue campaign and then connected to the available agent.

📞 Call Flow:
Agent Available ➜ Dialer Calls Contact ➜ Contact Answers ➜ Call Routed to Agent

This method is highly recommended for setups with fewer than 30 agents.
Why?
Simulations show that in smaller teams, the agent occupancy rate (busy factor) is often higher with Progressive dialing than with more complex algorithms like Predictive.

The efficiency of Progressive dialing is maximized when agents are assigned exclusively to one queue campaign. If agents are allocated across multiple campaigns, the algorithm's performance and responsiveness may decrease, as it is not optimized for multi-campaign agent allocation.


🎯 Best Practice:
Use Progressive mode when you prioritize call quality, low abandonment rates, and real-time agent responsiveness, especially in small to mid-sized contact centers.

 

When setting up a Queue Campaign with the Progressive dialing method, you only need to configure a few essential parameters to control how the dialer behaves:

  • Max Concurrent Calls: defines the maximum number of simultaneous outbound calls that the dialer can originate for this campaign (where 0=unlimited calls).
    If you have 20 agents but set Max Concurrent Calls to 10, the dialer will never place more than 10 calls at the same time, even if more agents are available.

  • Queue Timeout: sets the maximum time (in seconds) that the contacted customer will remain in the queue waiting for an agent to answer (Default value=3 seconds).
    If no agent answers within this time, the call is marked as Dropped.
    If the contact hangs up before the timeout, the call is marked as Abandoned.

  • Agent Timeout: defines the number of seconds the system will ring an agent's device before moving the call to another available agent.
    If an agent does not answer within this time, the call is rerouted to the next available agent in the queue.

 

 

  •  

Scenario:

If you need to modify other parameters of a queue campaign, you can explore here documentation about edit section.

Ring in use with progressive method

It is not recommended to enable “Ring In Use” for Queue Campaigns using the Progressive Dialing method. The Ring In Use setting determines whether the dialer should consider agents who are ringing as still available or busy. This affects how many calls the dialer can initiate at a time.

If Ring In Use is enabled on both the Queue Campaign and the agent’s Phonebar or WebRTC settings, then the Progressive Dialer algorithm strictly checks the number of available (idle) agents before initiating calls.
If you have 5 agents, all currently available. The dialer generates 5 calls — one for each available agent. Once these calls are ringing, all agents are marked as "in use."
No additional calls will be generated until an agent finishes a call and he/she is again marked as available or an external condition occurs (e.g., the agent initiates another call directly).

🎯Best Practice: Do NOT enable “Ring In Use” on Progressive queue campaigns.

  • Let the dialer manage call pacing based on agent availability without blocking on the “ringing” status.

  • This ensures that agents are utilized efficiently and the campaign maintains momentum.

Power Dialing

How it works

✅ Recommended Use Case

How it works

✅ Recommended Use Case

The Power Dialing method is similar to Progressive Dialing but functions as a call multiplier.
Instead of dialing one contact per available agent, the system uses a defined Power Level to determine how many contacts to call for each available agent.

📞 Call Flow:

  1. The system checks for available agents.

  2. It then multiplies the number of available agents by the inserted Power Level.

  3. That number of outbound calls is placed immediately, before any agent is connected.

  4. When a contact answers, the call is routed through the queue campaign to an available agent.

For example: Power Level = 4 | 5 available agents → The dialer initiates 5 × 4 = 20 calls simultaneously.

This method is designed to maximize agent occupancy, even if many contacts do not answer.

Power Dialing is ideal when:

  • You are working with a low-quality or "non-clean" contact list.

  • The expected contact answer rate is low (e.g., around 25% or less).

  • You want to minimize idle agent time and are willing to accept a risk of dropped or abandoned calls.

Example Use Case:
If your data shows that only 1 in 4 contacts typically answers the phone:

  • Set Power Level to 4

  • For every available agent, the system will place 4 calls, expecting that 1 contact will answer and connect to that agent.


Considerations

  • Risk of Abandoned Calls: because multiple contacts are called for each available agent, some contacts may answer while no agent is free, resulting in dropped calls.

  • Not Recommended for High-Quality Lists: if your answer rate is high, Power Dialing may overwhelm your agents and lead to customer frustration.

  • Single Campaign Allocation: like other methods, the algorithm is optimized for agents assigned to only one queue campaign. Assigning agents to multiple simultaneous campaigns may lead to performance issues or inaccurate agent availability tracking.

 

When setting up a Queue Campaign with the Power Dialing method in XCALLY Motion Bull, you must configure the following parameters to control dialing behavior:

  • Power Level: defines how many outbound calls are made for each available agent. The range can be set between 1 and 10, but pay attention not to increase too much this value in order not to lose calls.
    How it works: The total number of calls = Number of available agents × Power Level
    If you choose a power level with a comma, the result is rounded down to the nearest whole number.
    Example: 3 available agents | Power Level = 4.5 | Dialer will generate 13 calls (3 × 4.5 = 13.5 → rounded down to 13)

🎯Best Practice: start with a moderate Power Level (e.g., 2–4), then adjust based on real-time answer rates and agent occupancy.

  • Max Concurrent Calls: specifies the maximum number of outbound calls that can be active (ringing or in conversation) at any given time for this campaign.

  • Value: Any positive integer where 0 = Unlimited concurrent calls

Example:
Even if the Power Level calculation results in 40 potential calls, if Max Concurrent Calls is set to 25, only 25 calls will be placed at once.

🎯Best Practice:
Set this based on your system capacity, available trunk channels, and agent count to avoid overloading your infrastructure.

  • Agent Timeout: defines the maximum time in seconds that the system will ring an agent’s device before trying the next available agent.

🎯Best Practice:
Typical values range from 10 to 20 seconds, depending on your agents’ response behavior.


If you need to modify other parameters of a queue campaign, you can explore here documentation about edit section.

Ring in use with power dialing method

We strongly recommend NOT enabling “Ring In Use” for Queue Campaigns using the Power Dialing method.

When using Power Dialing, this setting influences whether calls exceeding the number of available agents are still attempted — and how they are handled by the system and agents’ devices.

In Power Dialing, the system may generate more calls than available agents (based on the Power Level). The Ring In Use setting determines whether agents are considered available even while ringing or on a call, and how additional calls are treated.

🎯Best Practice: DO NOT enable Ring In Use on the Queue Campaign, regardless of agent-side settings.
This avoids unnecessary call attempts, prevents dropped or misrouted calls, and ensures agents are not overwhelmed or confused by multiple call notifications.
Keep the logic clean: calls are only routed when agents are actually available to answer.

Scenario

Ring In Use (Queue Campaign)

Ring In Use (Phonebar/WebRTC)

Behavior

Outcome

Scenario

Ring In Use (Queue Campaign)

Ring In Use (Phonebar/WebRTC)

Behavior

Outcome

1

❌ Disabled

❌ Disabled

System only calls when agents are fully available

If 3 agents are free and the algorithm calculates that it can make 5 calls, 3 agents start to talk with the first 3 customers and 2 extra calls will be automatically rejected and considered like dropped.

2

✅ Enabled

✅ Enabled

System ignores current agent status (e.g., busy or ringing) and the number of calls will exceed the number of available agents.

If 3 agents are free and the algorithm calculates that it can make 5 calls, all 5 calls are routed; 2 extra calls may ring agents already on a call, but they can’t answer, leading to confusion or missed calls.

3

✅ Enabled

❌ Disabled

Calls exceeding the number of available agents will be sent by the queue campaign

Extra calls are automatically rejected by the WebRTC or phonebar, resulting in unnecessary call attempts and Dropped calls

4

❌ Disabled

✅ Enabled

System limits calls to number of available agents

Extra calls aren’t sent, no risk of rejected calls or agent overload

In Progressive, Power and Predictive dialing campaigns, when the dialer places a call to book an agent (i.e., connect the agent to a customer), it expects the agent to answer promptly.

If the agent rejects the incoming call — either by declining it manually on the Phonebar/WebRTC or due to device behavior — this action is tracked and logged for audit and reporting purposes.

The event is recorded in the table: cm_hopper_history and the system sets the call status to: Agent Reject

Preview Dialing

How it works

✅ Recommended Use Case

How it works

✅ Recommended Use Case

The Preview Dialing method offers a more controlled and agent-driven approach to outbound calling. Unlike automated methods (e.g. Progressive, Power, or Predictive), Preview Dialing is not based on Asterisk queues and functions in a more manual and interactive manner.

📞 Call Flow:

  1. The dialer selects a contact record from the campaign list and the selected contact is proposed to the agent for review (this is the preview phase).

  2. The agent sees detailed information about the contact and chooses whether to:

    • Accept the call → the dialer initiates the outbound call while the agent is on the line.

    • Decline the call → the system skips the contact and moves to the next one.

  3. The agent remains connected during the call progress phase, until the customer:

    • Answers the call

    • Does not answer (No Answer)

    • The line is busy or unreachable

📌 Agents use the Preview symbol/button in the bar to view and initiate outbound calls from their assigned preview list.

 

Preview Dialing is ideal when you want to give agents maximum control over who they call and when.

🔎 Recommended Use Cases:

  • When calls require preparation or reviewing complex customer data before dialing.

  • In sensitive or high-value campaigns, such as B2B sales, debt collection, or case management.

  • For agents who handle both inbound and outbound calls:

    • If there are no inbound calls in the queue, the agent can switch to preview outbound calls.

 

 

When setting up a Queue Campaign using the Preview Dialing method, you only need to configure Agent Timeout, specifying how long (in seconds) the system will ring the agent’s device after they accept a previewed call.

If you need to modify other parameters of a queue campaign, you can explore here documentation about edit section.

Ring in use with preview method

Since the Preview Dialing method does not rely on queues, the “Ring In Use” option is not available or applicable at the Queue Campaign level.

  • You can only enable or disable “Ring In Use” in the Agent settings, specifically on the Phonebar or WebRTC interfaces.

  • This setting on the agent side controls whether the agent can receive multiple simultaneous calls or if calls are blocked while the agent is already on a call.

image-20240201-111500.png

When an agent opens the Preview modal to recall a contact, they have access to a History tab that provides valuable information about the contact’s previous interactions within the campaign.

  • This tab displays up to the last 10 records of the contact’s rescheduling activity, showing how many times and when the contact has been rescheduled by agents.

  • The information is visible to all agents associated with the campaign, promoting better coordination and awareness.

  • This feature helps agents avoid redundant calls and better plan their outreach strategy.

Booked Progressive Dialing

How it works

✅ Recommended Use Case

How it works

✅ Recommended Use Case

The Booked Progressive dialing method operates independently from Asterisk queues. Unlike traditional queue-based methods, this approach first books an agent—selecting the first available one who is not currently handling calls from any queues they belong to—before initiating the outbound call.

📞 Call Flow:

  • The system dials the agent first, ensuring they are ready to handle the call.

  • Once the agent answers, the dialer places the call to the customer.

  • This sequence guarantees that the call is immediately associated with an agent, eliminating the risk of abandoned calls.

 

This method is recommended when it is critical to ensure the customer is always connected to a dedicated agent before the call begins.
It is ideal for campaigns requiring high-quality customer management, such as sensitive sales, support, or collections.
This method is recommended when you want to avoid abandoned calls entirely, ensuring that no call reaches a customer without an agent ready to respond.

 

 

When setting up a Queue Campaign with the Booked Progressive method, you need to define the following:

  • Max Concurrent Calls: the maximum number of concurrent calls that will be originated by the dialer for this campaign (where 0=unlimited calls)

  • Agent Timeout: time in seconds an agent phone will ring (Default value=3).

When editing the campaign in the Queue section, you must select an agent assignment strategy. The following options are available:

  • Round Robin Memory (✅ Recommended): the system remembers the last agent contacted and continues from the next agent in the list. It ensures balanced distribution of calls among agents.

  • Round Robin starts always from the first agent

If you need to modify other parameters of a queue campaign, you can explore here documentation about edit section.

Ring in use with booked progressive method

The Booked Progressive method is not based on Asterisk queues, so the “Ring In Use” option is not available at the Queue Campaign level. Instead, this setting can only be managed per agent, in the Phonebar or WebRTC configuration.
The algorithm only generates calls equal to the number of actually available agents. It will never generate extra calls, regardless of the Ring In Use setting.
Therefore, enabling or disabling Ring In Use at the agent level has no effect on the number of calls the dialer places in this method.

In the Booked Progressive dialing method, agent rejection is treated differently from other dialing modes such as Progressive, Power, or Predictive.
When an agent rejects a call, this action is not logged in the cm_hopper_history table. The system does not record a Hopper entry with the status Agent Reject, and the rejection does not influence the agent’s penalty score or call assignment priority.

The rejection event is tracked in the database table: report_agent_preview: this table logs agent behavior specifically for Booked Progressive and Preview methods, where agent interaction occurs before the customer is dialed.

 

 

 

Predictive Dialing

How it works

✅ Recommended Use Case

How it works

✅ Recommended Use Case

The Predictive Dialing method leverages a dynamic algorithm to optimize outbound call efficiency. It uses a predictive interval to gather real-time statistics to determine the optimal number of contacts to call.

The predictive optimization factor can be set to prioritize either:

  • Drop Rate (reducing abandoned calls), or

  • Agent Busy Factor (keeping agents consistently engaged)

📞 Call Flow:

  1. The system begins by operating in Progressive mode (1 call per available agent).

  2. After collecting enough live data, it shifts into full Predictive mode, where it begins to forecast how many calls to make based on real conditions.

  3. The algorithm considers Agent availability, Call connection rates, Average talk times and Recent campaign performance.

This method is recommended when you have 30 or more agents available in the campaign, and you aim to maximize efficiency (achiving a higher busy factor).

E.g. predictive indicates that 300 calls can be made in 10 minutes.

📌 Note:
The algorithm is optimized for agents assigned to a single queue campaign. It may be less efficient or inaccurate when agents are shared across multiple campaigns.