Voice Dialers

The dialers allow direct dialing campaigns to be generated under different types of channels and in different ways


The voice dialers always have to have digital lines as their own signaling (to indicate the beginning and the end of the call).

To start configuring the dialer you just go to Administrator → Dialers → Voice

Basic Configuration

First of all, we must define whether we want the call to reach the agent, the client or it will be Voice Broadcast first.

After selecting the dialer that we consider convenient according to our business, we must indicate

  • Name  

    • When entering a  name, automatically a new campaign is created in the system with that name and depends on the type of Dialer if the campaign will be incoming or outgoing. 

    • For PowerDialer and Predictive it will create an Incoming Campaign, for Progressive and Preview one Outgoing Campaign and for VoiceBroadCast it will not create any campaign, can use any name.

  • Dial String

    • Example: DAHDI/G1/ o SIP/CARRIER/, there's an option to create a SIP trunk to the same server  (eg. named DIALER), this trunk will use the context dialer (context created by default in the setup being SIP/DIALER/ the dial string).

    • This can be used in cases where a complex dial plan is required, with random DID dialing or using multiple providers based on the enumeration of the dialed number.

  • Caller ID

    • The number who makes the call. 

    • For Preview and Progressive dialers it's possible to define a DID range to dial randomly (ex:  if we define a DID   1234567-89 the dialer will dial 12345XX being XX a random number between 67 and 89)

    • The callerid can be assigned for each contact. See Advanced Configuration / Variables.

The remaining fields will be loaded by default with the necessary information for proper operation.
If some change is needed for other fields, please see the advanced configuration.

Add agents to the created dialer

First, go to Administrator → Campaigns → Voice

Here follow the same steps that in Campaigns - Add agents

Now your dialer it's ready to work!

Just add some lists from Supervisor - Voice Dialer

Other Configurations

For each dialer type, you can define different parameters

VoiceBroadCast and Power Dialer

  • Over Dial
    It selects a percentage of over dial that would have the dialer.  The possible values are MIN,0%,5%,10%,15%,20%,25%,....,100%,MAX, MIN and MAX which is the lower and the highest possible value. The idea is that when, for example, I take 100 channels to the dialer and in the server can not handle many requests at the same time, it's possible to lower the percentage of over dial, as this slows the dialer.

  • AMD
    If it's active, the detection of the Answering Machine, this variable arrives ${am} in 1 or 0 and may use in the flow activity to use to cut AMD calls of voicemail.

Preview and Progressive

  • For this type of dialer, we can define Auto Response

    That makes the agent take the call without the option of not doing so.


  • Max Abandoned Rate and opens up a combo with percentage values.

The next fields are visible for all dialers configuration

  • Type of Dialer
    PowerDialer, VoiceBrodCast, Progressive (with assignation per agent), Preview (Progressive without assignation of agent), Predictive (50 agents minimum).
    For any dialer of telephony, points are needed like dial string (which is usually is the output device calls), and specific context to indicate the behavior of the dialer. Also, it's important to define a certain amount of channels coherent with the physical availability of equipment.

  • Enabled
    Indicates if the dialer is active or not. Note: It is important to know that in order to make the dialer start working it must be previously enabled.

  • Context
    Context which will enter the dialer, for VoiceBroadCast, PowerDialer, Predictive is the context who enter in a connected call with a customer and match a workflow; in Progressive is the context by the call is executed to the client once connected with the agent. The context there is already pre ensembled each with the names of dialers.

  • Maximum Channels
    Amount of calls that are made simultaneously. In Predictive this area is called Max Channels per Agent.

  • Maximum time
    Maximum time of wait of call one destination or in Progressive to try to connect to an agent.

  • Retry
    The maximum amount of calls for the number in the base in Progressive to try to connect with the agent.

  • Sound
    Sound or concatenation of sounds (with &) that pass throw to the Workflow, useful for VoiceBrodCast.

  • Time Between Calls
    Configure the time existing when an agent has finished one and the dialer delivers the next one. 

  • Random
    When this button is activated, the Caller ID must be detailed. The range of the random number must be specified. For example, if the company's telephone number starts with 2709-XXXX, the XXXX characters are the ones that will be filled with the random number.

    • An example of a random number can be 0004-5555. The number must always have the same length, meaning if we want the random number to start a non-four, in this case, digits number the user must add three zeros so the length is maintained to four.

  • CallerPres
    For ISDN if a show or not the CallerID where the provider supports.

  • DNCR
    Do not call registry, allows verify whether blocked the registry.

  • Early Media
    The call will be answered as soon as connected.

  • Schedule
    Schedule a date on which it is desired that the dialer works. As an example, you can put the dialer to work from Monday to Friday from 13hs to 18hs in which the dialer will start dialing when it is on schedule. 

  • Variables
    All that you want to pass throw to the workflow, to the level of the global dialer.

    • To create a variable enter the Parameter and its Value, press the "+" button and you will see the variable in the list.

    • To remove a variable, we select it from the list and press the "-" button

It is possible to create a variable @formparam that is passed to the workflow so that when answering a call and raising a form it has data already entered.

It is possible to assign a calleridnum variable that contains a callerid. It's used for cases where you want to have a specific callerid by contact.

Once Saved the Voice Dialer, it will appear in the list where the user can click on it and see it's detailed in the section described before.

Apart from that, other dialer settings will be visible:

Schedule Dialer

Below every time frame, the user can configure the order of different contact numbers the call will be made. The initials represent:

  • M - Mobile (Contact's Cellphone Number)

  • W - Work (Contact's Work Phone Number)

  • H - Home (Contact's Home Phone Number)

In order to complete the configuration, an order of letters must be written, or leave the values by default that the Schedule has MWH, and press the green button "Save" to apply the changes made.


The extra telephone numbers must be specified in the Alternative Telephones column inside the .csv file uploaded for the specified Dialer. Apart from the three types of telephones MWH, in the .csv file two more types can be specified, for Priority and for Unknown.
The one will be called first and then the others specified on the schedule, and finally the one.
The structure should be, initialNumberType=number for the main telephone number, and for the alternative telephones initialNumberType=retry=number separating each of them with two points ":".

Retry can be omitted also.





Teléfonos Alternativos





Teléfonos Alternativos







File .csv:

1 CampDialer<-;M=098344484;var1=val1:var2=val2;H=099124484:M=099111111;9999

Inside the alternative telephones, the second parameter which indicates the number of retries made for that contact with that number is useful because the dialers order changes depending on the time of the day an alternative telephone can be used as a principal number, and the principal telephone will have its number of retries saved to be done, this way rules are not broken and the order it's established.

This brings the user a huge benefit, in case we want to dial different numbers with fewer retries compared to other numbers, the user simply needs to increase the initial number of retries.

For example: If the user wants the home telephone number (H) to be re-dial 2 times and the maximum of retries for that dialer is 3 times, then the base could be:

1 CampanaDialer<-;M=098344484;var1=val1:var2=val2;H=1=099124484:M=0=099111111;9999

This means that when it's time to call the Home telephone number, it will appear as it was already called once, therefore the dialer will make 2 retries instead of 3.

Change two options are possible as well if the type of telephone number the dialer needs to call is not known.

  • Principal Number type unknown:

    1 CampanaDialer<-;098344484;var1=val1:var2=val2;H=1=099124484:M=0=099111111;9999


  • Alternative Numbers type unknown:

    1 CampanaDialer<-;M=098344484;var1=val1:var2=val2;099124484:099111111;9999


When this happens, the Dialer will always try to use the type that corresponds to the actual Dialer time, if not, the best chance according to the dialers order.
When the type of telephone number is not specified, this one remains as U (Unknown) and goes to the end of the list, if the other types of telephone numbers are known.

The registries are always dialed, no matter which type they have, what is done is to re-arrange them depending on the time of the day in which the agent has more chance for the client to pick up. This means that if the order is MHW, and the contacts have only HW, the dialer will start by the H, which is the second in the process order.

This makes the dialer not stop calling, but will always follow the order depending on the time of the day and the different telephones that the contacts have.

Automatic Recycling

Through the button 'Automatic recycling' we can access the modal of automatic recycling of lists for Dialers.

Using the <, >, +, - buttons you can create new cycles, remove cycles and navigate between them to configure them.

Configuration fields

  • Cycles
    Each cycle represents recycling, that is, each time a list belonging to the campaign ends a recycling cycle will be executed for it, therefore if we configure 3 cycles each list that ends for that campaign will be recycled up to 3 times.

  • Activate list after recycling
    Allows that when a finished list is recycled the new one is added actively to the campaign, this will cause that when a list ends and its percentage of priority is distributed, the recycled list will take part of the percentage.

  • Minutes
    Allows you to configure how long it will take the list to be recycled after it finishes, these minutes are to allow time for the agents to typify the last calls and that they are recycled if they correspond.


  • Automatic activation of the new list is optional.

  • Cycles are configured with the same parameters as manual recycling.

  • Each cycle of recycling can have different parameters of recycling

  • It is advisable not to saturate more than 3 times as it is very likely that what is left is not contactable.

  • Priority is not assigned to the recycled lists automatically, because if this were the case, we would change the behavior defined, which initially remains at 0%.

  • Any list recycled either manually or automatically we will be able to see it in the list management dashboard of the Dialer.


Each time an automatic recycle is executed, a record is stored in BD in the recycle_log_repo table indicating:

  • id: self-generated for each recycling performed.

  • time: Date and time at which the recycling was performed.

  • name: Name of the list before recycling.

  • newname: Name of the list after recycling.

  • parameter: parameters defined for recycling (Order, Telephony, Management).

  • Qty: number of contacts that were recycled.

  • username: a user who performed the recycling, when it is automatically recycled the user will be 'automatic_cycle'.

When automatic recycling or a recycling cycle or a copy is created, a log of it is not saved.

Copy Recycle

This option allows you to copy settings of Automatic Recycling between Dialers, for this, we must select a Dialer, go to Automatic Recycling, and in the modal, we will see a button of Copy Recycle.

Clicking on the button will open a copy modal.

Here we will have to select the Dialer from which we want to copy the configuration, then keeping the Alt key pressed we will select the Dialers to which our configurations will be copied.

Once the Dialers have been selected, click on Copy, the copy will be made and the user will be redirected to the Dialer creation screen without any selected Dialer.

If you do not want to make the copy, press Cancel or close with the cross and return to the Automatic Recycling Configuration modal.

Dialer Rules

When we create our dialer we have the option to assign a dialing rule, the chosen rule will determine the behavior of the dialer when consuming contact lists.

In this section we select the country in which the dial will work, once selected you will be able to identify three methods to divide the lists which are:

  • Prefix
    This option enables the dialer to identify the prefix of each contact and thus divide them according to the corresponding time zone

  • State
    At the time of creating the list, there are parameters that can be entered, one of them is the State, in this way the dialer will connect each state to its corresponding time zone

  • None
    When we select 'None' as the dialing rule, dials allow you to define the time zone of each base that is uploaded.

By default the dialing rules are in "None" this means that those users who do not need rules or already have active dials will continue their operation with time zones.

For more information see Dialers - Supervisor

At the moment this configuration is allowed for the United States (USA) and Mexico (MEX).
If you require the data for another country you should contact Integra CCS.

Dialer types



The VoiceBroadCast system is to make auto-dialed campaigns. A database with phone numbers is uploaded and this is sent to an IVR workflow which can be used to reproduce notifications, audios, dynamically or statically. You can also perform automatic static or dynamic surveys, as well as according to an option, the client can be redirected to a campaign.

In this case, the important thing is to set the number of channels as the VoiceBroadCast use every possible channel most of the time. The format of the list is the same for all dialers.

Dialer steps

  1. The dialer obtains the number of calls to make, if the amount is 0 it waits and asks again, else it obtains according to:

    1. The number of available channels (Maximum - Used).

  2. The dialer gets the contacts according to the amount and the next rules:

    1. Asks for scheduled contacts that are in the first place.

    2. Asks contacts active lists orderer by priority and ascending retries (depending on the percentage each one.

  3. If DNCR (do not call registry) is active, it only lets to make the call if the number is not on the blacklist.

  4. All variables are sent to the workflows either campaign or contact.

  5. The contact registry of the dialer is sent with retry + 1 to the business logic, this allows to create of the Respooling Logic (to reinsert the contact for not being able to be reached with its alternative).

  6. If the amount of retries for a number is exceeded, then if alternative numbers exist it obtains the first and inserts it as the main number, then the rest of the numbers are left as alternatives and the process starts again.

  7. The call is made.

  8. If it is unattended or an error occurs, the amount of retries is increased and the contact goes to the bottom of the list to be dialed later.

  9. If it is attended, the assigned workflow is executed step by step, at the end, the lit is deleted, if a Respooling exists I continue dialers.






alternative numbers





alternative numbers




NAME=Sebastian Gutierrez:Amount=200




1 test1;098344484;Name=Sebastian Gutierrez:Amount=200;099124484:099111111;9999

Variables that arrives to the flow: ${sound},${am}, ${FORM}, ${VBQUEUE} are all configured variables for that campaign.


When the user creates a dialer, if the audio area is not specified, it is possible instead of being a simple flow of BroadCast, to design IVRs where dynamical dialers are generated automatically.
In order to do it, the .csv file must follow a specific camp order, highlighting the third column, which contains different parameters that form the dialer. Each one of these parameters has its own initiative to identify itself, followed by a value as explained next:

  • Amount(M)

  • Date(F): F_parametersName=day-month-year

  • Digits(D): D_parametersName=digit

  • Audio(A): A_parametersName=audiosName

Each parameter must be separated with two points ":" and every camp with a semicolon ";". The user can add as many as she/he wants depending on the Voice Broad Cast wished to be created.
Depending on the order that the user writes every parameter in the .csv file, will be the order in which the dialer will reproduce them. It's important to have in mind that the audios must be registered in the system with the same name.

File.csv base




Aditional Telephones





Aditional Telephones


1 CampVoiceBroadCast


1 F_date1=02-02-2016:A_audio1=Desestime-BG:M_amount1=258.54




1 CampVoiceBroadCast;4441222;F_date1=02-02-2016:A_audio1=Desestime-BG:M_amount1=258.54;099111111;9999

In this case, the Dialer, when the call is picked up, will reproduce the date 02-02-2016, later on, it will vocalize the audio Desestime-BG and finally the amount 258.54. 

Progressive and Preview


In this case, this dialer is one step below regarding PowerDialer or Predictive to maximum automation, but we are still on a system of purely automatic calls. The Progressive dialers are based on the Agent's availability.

The progressive dialers, usually are very suitable for Centers with a low or moderate volume of calls, where they would not be able to collect enough information to obtain reliable statistics.

Basically, it calls the agent and when it answers the call is made, this makes that many attempts could be busy, wrong number, etc using time from the agent. The workflow that is used is the outbound, that is why we use outbound campaigns on Progressive and not inbound (there is no queue handling but it exists the wrapup concept). 

  • Progressive: Each contact has an agent’s contact information associated, which means that that agent will be the only one to interact with that client/contact.

  • Preview will call any agent

Dialer steps

  1. The dialer obtains the number of calls to make, if it is 0 waits and asks again, else it obtains according to:

    1. Amount of available Agents that are not in the wrapup

  2. This dialer obtains the contacts according to the quantity and the next rules:

    1. Asks for scheduled for each available agent.

    2. Asks for that campaign the active list sorted by priority and amount of ascending retries (by the percentage that corresponds to each one).

  3. If DNCR (do not call registry) is active, it only lets to make the call if the number is not on the blacklist.

  4. For these two types of Dialers, the Auto-answer box will be activated by default. For this case, the incoming client call will be automatically answered.

  5. All variables are sent to the workflows either campaign or contact.

  6. The contact registry of the dialer is sent with retry + 1 to the business logic, this allows to create of the Respooling Logic (to reinsert the contact for not being able to be reached)

  7. If the amount of retries for a number is exceeded, then if alternative numbers exist it obtains the first and it is inserted as the main number, then the rest of the numbers are left as alternatives and the process starts again.

  8. If it is unattended or an error occurs, the amount of retries is increased and the contact goes to the bottom of the list to be dialed later.

  9. The call is made to the agent, if for any reason it could not be answered, it will be retried without affecting the number of retries once the agent is available again.

  10. The contacts registry is sent to the Agent so that actions could be made based on the business logic and to be able to make the Respooling for the contact if it is required (having all his data). The agent also gets data from the CTI (to be able to open forms with the data of the client to call)





alternative numbers






alternative numbers





1 NAME=Sebastian Gutierrez:Amount=200
1 099124484:099111111


1 1001


1 test1;098344484;NAME=Sebastian Gutierrez:Amount=200;099124484:099111111;9999;1001

Power Dialer


Unlike Progressive, the Power Dialer does not call the agent first and then makes the call, it is very similar to a Predictive but with a more Real-Time calculation of over dial, this is a good fit for smaller groups of Agents and will respect the maximum channels configured for the dialer.

The first thing that the system does is to dial while existing available agents to answer calls on the campaign, for example, if there are 2 agents available, it is going to make 2 calls simultaneously and until one is contacted, once a client is reached it is sent to the campaign. In 99% of the cases, the agent should be free to answer instantly. This avoids having to deliver busy or inexistent calls to the agents and deliver only the ones answered. This way of working is exactly de same on VoiceBradCast dialer, PowerDialer, and Predictive, the only thing that changes is the number of calls that are being executed, If we have an over-dial rate, then will behave as a Predictive dialer, where we have abandon rate.

The PowerDialer tries to have all the agents with a call with its over the dial.

Dialer steps

  1. The dialer obtains the number of calls to make, if it is 0 waits and asks again, else it obtains according to:

    1. Normal Mode (Over Dial 0%): Amount of available Agents that are not in wrap-up without exceeding the max amount of channels for that campaign.

    2. Over Dial Mode (Over Dial X%): Same as Normal Mode but with a real-time model or selected percentage of over dial model.

  2. The dialer obtains the contacts based on the amount and the next rules:

    1. Asks all scheduled.

    2. Or any other contact that is scheduled for that campaign with maximum priority.

    3. Asks sorting the contacts by Priority and Amount of retries ascending (depending on the percentage of each one).

  3. If DNCR (do not call registry) is active only let to make the call if it's not on the blacklist.

  4. All variables are sent to the Workflow, either campaign or contact.

  5. The contact registry of the dialer is sent with retry +1 to the business logic, this will allow creating the Respooling Logic (reinsert the contact for not being able to be reached).

  6. If the amount of retries for that number is exceeded then if there are alternative numbers, the first one is set as main and the rest are left as alternatives and the process starts over.

  7. The call is made.

  8. If it is not answered or an error occurs, the amount of retries is increased and the contact goes to the bottom of the list to be dialed later.

  9. If it is answered and AMD is enabled then if it is MACHINE the registry is reinserted with the next alternative number unless it is the last retry of the contact. If it is HUMAN is going to the ACD to be distributed between the available agents.

  10. If it is answered and AMD is not enabled it goes straight to the ACD to the agents.

  11. The contact registry is sent to the agent so that actions could be made based on the business logic and to be able to make the Respooling of the contact if it is required (having all his data).





alternative numbers





alternative numbers




1 var1=val1:var2=val2
1 099124484:099111111



1 test1;098344484;var1=val1:var2=val2;099124484:099111111;9999

Predictive Dialer


The Predictive dialer's behavior is based on phone numbers databases, and they do it as their name says, in a "predictive" way.

This means that comes into play an algorithm based underlying on statistics strategies, which take multiple variables from the Call Center and calculate various factors to be able to put the Agents in contact with the contact numbers in the most efficient possible way.

By general rule, the main utility and advantage of the Predictive dialers reside on the volume of calls from the Centers in which are based on, given that they are grounded on statistics techniques, their most reliability redounds on the Law of Big Numbers. This is why in small Call Centers it is little recommended for its base behavior. 

1 Essentially, the conceptual idea behind the predictive dialers is:
  • First, the ideal time to make calls to clients must be calculated using various statistics strategies, which includes:

    • Calculate the average time between each call that results in success, and each call that fails.

    • Calculate the average proportion of calls that result in success and failure and with that, it is weighted an average estimated time for all calls in general.

    • Use other factors that affect the times, such as average preparation time to accept another call from each agent and Wrapup

The more sophisticated the algorithm is, the better in general terms the Predictive Dialer will be. In fact, this is one of the key factors that will determine its success in the future. A lot of predictive algorithms are based on the Erlang distribution.

  • In the second place, the calls are launched for the numbers stored on the database, abiding by this calculated time:

    • With calls in progress, the Predictive dialer must be able to identify any type of inconvenience where the client could not be reached, mainly for the type of tone he receives, according to the national convention of tones from his country.

    • Also, it is able to detect Fax tones and other possibilities that follow some type of standards.

    • In case that an event of this kind occurs, depending on the event, the application must be able to dial the phone properly according to what happened.

    • Besides the ability to detect VoiceMail given that by general rule they are "Not available" symbols, to be able to try the call again later. The detection is relatively easy, in the function of the total voice response time, since the majority of the answers of physical people use to be a simple "Hello?", while the answering machines often use long phrases.

    • At the time it receives an answered call, it is sent to the Agent's queue to be answered shortly.

With this system, the agents will only lie in wait for the machine to do its work, and by general rule, they do not have the possibility to take the call if desired, this will put directly in communication with the agent.

Firstly, this method can be ideal and, if we are really in front of a quality Predictive Dialer, this premise is true. But in return we are dealing with some inconvenience that we must overcome when choosing this type of Dialers:

  • If on the interval in which the agent answers a call and the operator receives it there is no answer, it is probably that the client abandons the call. In this case, most of the Predictive Dialers put the number to be called in the future, but we can generate dissatisfaction on the client.

  • If we want to use it for commercial purposes from Business to Business, it is possible to be quite inefficient, because most of the Business uses an IVR which is likely to prevent our Predictive Dialer from completing its purpose in good conditions.

  • As we mentioned, if we have few calls in the Center, it is possible that the statistics algorithms do not return quality numbers and so the first problem occurs, being a very inefficient system.





alternative numbers





alternative numbers




1 var1=val1:var2=val2
1 099124484:099111111



1 test1;098344484;var1=val1:var2=val2;099124484:099111111;9999


The dialers scheduler is to be able to Schedule calls and for the dialer to make them at the right moment, for this, it exists a WebService of Rest type which allows to schedule the calls. It is possible to do it from Forms, Workflows, or from external systems.

Basically, the process is that exists a table where the calls are scheduler whit the necessary information.














time and date to be executed



1 099111111:099121212


1 variable1=valor1:variable2=valor2

The scheduler is located in calls_spool with priority 1 for the calls that must be executed at that minute, which is going to make the dialers take it as soon as possible to make it. On the base, it takes the name as Schedule and Date to be able to see which calls were scheduled and which should be made to be able to compare it with the call date from CDR.


Web Service

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 POST http://<IP-INTEGRASERVER>/Integra/resources/Dialers/ScheduleDialerCall param: @FormParam("call") (json with format call_scheduler) { "calldate" : "2015-10-11 15:00:00", "campaign" : "Ventas->", "destination" : "098344484", "alternatives" : "099124484:099121212", "agentphone" : "1001", "data" : "Par1=Val1:Par2=Val2" }



Dialers Dashboard

Full details of the state of the dialers, allowing you to manage your activity and load information.

In order to monitor the user must select the campaign by clicking on the menu situated on the left top corner, unfolding every SMS dialer campaign in the system.

Once the campaign was selected the section will show the following:

  • It is possible at any time to stop or turn on again the campaign manually from the play or stop button on the upper side of the screen.

  • It is possible to upload new lists or blacklist registries, it is also possible to download the lists of the dialer by pressing the lists button located on the right upper corner of the screen.

Indicates the type of campaign that is defined.

Show the general state of the campaign on base to the following states:

  • Inactive

  • Active

Power Dialer - Overdial
Percentage of over dial configured for this campaign, this value can be edited by clicking on this icon 

Predictive - Maximum Abandon Rate
Percentage of Maximum Abandon Rate configured for this campaign, this value can be edited by clicking on this icon

All schedules that were defined for the dial are shown.

Actives call: Show the amount of active calls at the moment, in case that the campaign is on the date.

Power Dialer, Preview y Progressive - Max Channels: Maximum of channels configured for this campaign, this value can be edited by clicking on the icon next to the field. 

Predictive - Max Channels Per Agent: Maximum of channels per agent configured for this campaign, this value can be edited by clicking on the icon next to the field.

Answered: Show the number of calls answered at the time of the campaign.

Not Answered: Number of calls that were not answered.

Busy: Show the number of busy calls at the moment by the campaign.

Other: Show the amount of calls whit different states answered and busy at the moment by the campaign.

Total: Number of total calls processed.

Contacts Processed: Number of people successfully contacted.

Contacts Not Processed: Number of people not contacted yet.

Blacklist: Show the number of blocked calls that are in the DNCR.

Scheduled: Number of registries scheduled to contact later.

AMD: Amount of calls answered by voice mail and the percentage of this value regarding attended calls.

Human: Amount of calls answered by a human and the percentage of this calculated by AMD calls * 100 / answered calls.

Contactability: It indicates the percentage of calls answered by the campaign. Indicated two values, the first one represents the contact ability per call and the second per contact.

The percentage from the first one includes AMD values, and it's defined by, for example, if we have 2 contacts registered on this dialer with 3 types of the phone each contact (Home, Work, and Mobile), if one client answers from one of the phones, the contact ability percentage will be 16%.

The second value regards the total number of contacts registered on the dialer, if we have 2 contacts and one of them answered, the contact ability percentage will be 50%.

Queued numbers

On the table situated on the left down corner will be shown the client's information that the dialer is processing

  • Number

  • Retry

  • Client's Data

  • Base name from where the data is coming.

Deleted from the contact list the number specified here.

See all numbers that are marked Reschedule.


After pressing the button you access the modal that will show you the date and time information scheduled.

You can also delete scheduled agendas.


Processed Graph: This shows the percentage of processed and not processed calls.

The real-time graph shows the total of active calls, busy agents, and calls that are being dialed.

Agents Status Graph:

Inside the graphic, you can see the state of the agents. Below the graph be can filter the agents that do not want to see by pressing the name of the state of the agent that you want to remove the graph.

Statistics: Being different from the Processed graph, here the user can see in real numbers the number of Completed calls with its total time, Abandoned ones with its percentage rate, ACD and total waiting time, and Service Level with the total amount of calls made.

Calls Graph in Real Time: This graph shows the amount of total active calls, busy and completed ones.

  • On some occasions, it is possible to see on the graph that the amount of busy agents is greater than the total as well as viewing the dialing with a negative value. This happens when the campaign makes manual calls or when it has incoming calls that are not from the dialer, anyway the graphs show the evolution of the dialer.

  • The task is executed, the task is responsible for making the calls obtained from the calls spool (calls_spool table), this is obtained according to the dialer type and is dialed according to the dial string of the same (it can be by TDM or VOIP), note that it will only work on Digital lines, VOIP or Analogics with Disconnect Supervision (inverted polarity).

  • Once the call is executed, its status will change.

  • Calls are only obtained from the active list.

Learn about SPOOL

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 SPOOL CAMPAIGN: Name of the dialer for the contact. DESTINATION: Contact telephone number. STATUS: Status of the contact STATUS: 0 - PROCESSING (it is dialing) STATUS: 1 - TO PROCESS (it is on the spool ready to be processed, are the ones taken by the dialer). STATUS: 3 - BLOCKED (blocked by DNCR, it will be deleted from the spool at the daily maintenance job). DATA: Values given to the workflow to be able to use. ALTERNATIVES: Alternative numbers for the contact separated by : RETRIES: 0 initially, > 0 amount of retries for that number. CONTACT: Auto-generated to differentiate the contact. DIALERBASE: Name of the uploaded dialers base, it has name plus the uploaded date. PRIORITY: 9999. to 1, initially all are inserted with a high number, but by reasons of the calls scheduler of the dialer, calls will be inserted with 1 to be executed immediately while the dialer is active. If it is required to give priorities to others, it is possible to insert them with intermediate values. AGENTPHONE: For Progressive dialer, to which agent goes each contact. The calls are deleted from the spool if they are answered or exceed the amount of retries defined by the dialer.

If the system could process the call, it is deleted from the table, if it was occupied or no answer or if there were no channels, the call is retried, increasing retry by 1, this is to not be taken immediately and others will be processed before retrying it.

It is important not to overlap a lot of channels, if we have 30 channels and have 2 campaigns at the same time with a maximum of 20 channels, it is likely to result in dialer errors allowing us to repeat some calls. Also when having more than 1 campaign, for better performance it is a good idea to leave 1 pivot channel, since being an asynchronous system based on events, it is possible that at some millisecond it is dialing on other campaigns and the system does not have info that it is really active occupying a channel, therefore in border cases, it is possible to jump a campaign, anyways if it jumps and was not possible for the system to create a channel because there are not, this will be processed later when the existent in the spool are completed as it will have one more retry.

Within the caller id (name) it is the VoiceBroadCast:Campaign:Dial number:List:Retry, this allows the tracking of the system events to know how many calls are active by the campaign and allows to re-insert calls in the spool that could not reach the destination.

It's important the concept of Respool and Reschedules, the first allows to put you back a call almost be attended to continue dialer, and the second schedule a number to call later.


In this tab, you can view and manage lists for specific dialer increases.

Initially, in the upper left bar, you can see the timezones that have the lists uploaded to the system.

In addition, we can quickly identify if any is out of time using the icon to the right.

  • Enabled List - The contacts that have will be dialed

  • Disabled List - As much as this list has contacts, because it is out of time the dial will ignore it

On the upper right side, the user can find buttons to start or stop the dialer.

The system allows to have multiple lists for a campaign, when uploading the lists they will be inserted on that order, the first for a campaign it is marked as active, then the rest as inactive.

Buttons in lists

  • Download the base as a .csv file

  • Delete list

  • Remove all uploaded lists for this bookmark campaign

In addition, it is possible to upload a list with numbers that you do not want to call (DNCR).

The numbers entered will be blocked at the time of making the call.

To clear the registration of numbers not to call for the selected campaign, just click the red cross located on the right side of the image.

Move Lists

The user can move one list to another dialer.

The following will unfold to choose where to move the dialer-list:

You can NOT move the lists to a Progressive type Dialer, because it requires the agent number to work, so the lists from other dialers will be incompatible.

List Operation

  • When adding a list through the portal if we do not have already loaded lists, the new one will be active with % 100 priority.

  • When adding a list by WS, it is added without priority and inactive.

  • You cannot delete a list with Priority.

  • When you finish a list if there is another one, the priority percentage will pass.

  • When finishing a list and there is no other active one, the one that finished will not pass its percentage.

Given three active lists A, B, and C of which only C has an x% priority.

At the end of a list D the following possibilities can be given:

  • If a C list with priority exists, the % of D is added to that of C.

  • If a list C does not exist, the % of D is added to list A.

  • If there is no C or A, the % of D is added to list B.


When a list has x% priority but is out of time, the dialer will ignore it until it is back in time.

This does not mean that you dial less, more contacts are dialed from the lists on time.

Therefore, for a list to be dialed we must take:

  • That the list is Active.

  • That it has an x% of Priority

  • That the Timezone is on time

With dialer rules

Dialing rules are defined in the creation of the dial, to see more about dialing rules click here.

After defining the dialing rule, in the last section, we will see something like this

As you can see in the image, in the timezone selection box we will see the dialing rule corresponding to the campaign.

When we upload a list, it will be automatically divided into the corresponding time zones.

Those contacts that cannot be located will be on a separate list and the supervisor can decide

  • Download it for correction.

  • Delete the list.

  • Use it anyway, which will be marked in the server timezone.

Without dialer rules

Prior to uploading a list, the corresponding timezone is selected in the drop-down menu to the right of the load field.

After uploading the list its time zone is added to the top bar of the screen, where we can see the name and an icon indicating whether it is on time or not, the same can be seen in the table next to its name.

A set of recently used time zones is maintained, which is updated as lists are uploaded.

When a dialer contains active lists for different time zones, your schedule extends.

For Example:

The schedule set for the dialer is from 9:00 a.m. to 4:00 p.m. (local time zone of the server).

  • Callcenter - Bogota (server): -05: 00.

  • Client1 - L.A.: -07: 00.

  • Client2 - Berlin: +1: 00.

Client1 will be called at server time 7:00 a.m. to 2:00 p.m.

Client2 will be called at server time 3:00 p.m. to 11:00 pm.

  1. This implementation AVOID making calls to people who are at a different time than the one set by their time zone.

  2. Lists that are active prior to the update of Time Zones will be set to the time zone of the local server.

  3. By recycling a list or moving it between dialers, it will keep the time zone for which it was uploaded.

  • Each list can be uploaded for a different time zone.

  • The dialer will make calls to the active lists that are in the dialer's dialing time for your time zone.

  • The dialing time in the configuration will correspond to the local time zone.

Upload Base

The procedure to upload a base is:

  1. Prior to loading a list, you must select a timezone for it through the combobox unless we have a dialing rule.

  2. Upload a .csv file, with the data of the phones to be called by the dialer, which varies according to the type of dialer.

CSV File Format

1 campaignName;phone;aditionalInformation;alternativesPhones;priority[;agentPhone]

The dialer will call the different numbers specified, depending on how the client arranged it on the Dialer Schedule.  

Apart from the three types of telephones MWH, in the .csv file two more types can be specified, for Priority and for Unknown. The one will be called first and then the others specified on the schedule, and finally the one.

There is the possibility of adding alternative numbers to call for the same contact, for example first to the house number, after the mobile and then separated work in the last parameters ":"

With this upload, it's possible to transfer the database for every campaign that is wanted at once.


1 2 3 4 dialertest;23660444;var1=123:var2=Peter;099123456:45698745;1 dialertest;095957167;var1=67123:var2=Michael;099123456:45698745;1 dialertest;23578408;var1=123:var2=Juan;099123456:45698745;9999 dialertest;23113758;var1=12356:var2=Juana;099123456:45698745;9999


Allows to upload a CSV file with the phones that can not be called, indicates the phone number and the campaign.


1 2 23578408;campaignName; 23113758;campaignName;

Upload list criteria

Always that a dialer is generated, we have to take into account the following criteria:

  • The name of the file can not have spaces, strangers characters, or very long names.

  •  The first column refers to the campaign that exists in the portal if the same does not exist will throw an error and the file cannot be loaded.

  • The first 4 fields are required to upload the file correctly.

  • Cannot exist blank spaces after the last line.

  • Inside the fields, cannot have special characters like ´ ‘  “ @, in this case, it would give an error and the CSV file is not going to upload.

The Phone agent parameter to upload it to the database is only necessary for the progressive dialer type.

It's important to have in mind that if it is a Power Dialer, this one will execute if there are available agents in the system to make calls.

The number of processed calls at the end of each dialer may not correspond to calls originally uploaded, since there all call attempts may have given error into consideration, they have not attended or have exceeded the waiting time, and the amount of retries is defined dialer.

The dialer saves the name of the file and the date of upload like the identifier of the base loaded, this information later is useful to create reports.

The priority is the priority that will have the call in the queue, the highest priority is 1 and the lowest is 9999, if we want a call is placed before any other call we give priority 1, if in turn have several contacts with the same priority it does it takes the chance respecting priority levels.

Fields like alternative phones and data are not obligatory, and if you have more than one variable is separated with a: between them. With the rest of the attributes necessary to load the base is separated; as usual, but within these fields are separated with two points, that's the difference.

Example Progressive Dialer





Alternative Telephones


Agent's Phone Number or Agent's Username(Progressive)




Alternative Telephones


Agent's Phone Number or Agent's Username(Progressive)







.CSV Example

1 test1;098789334;var1=val1:var2=val2:;091345675:098789543;9999;1001

Data table

The supervisor can decide from the dialers dashboard, which list wants to be active, the dashboard shows the lists in the system the number of registries that are left for each one, allowing to activate or deactivate the same and the number of registries per agent. To visualize the number of registries for each agent, the agent's icon must be pressed on the desired list. There you can see a dashboard with the agents of that list allowing to reassign contacts from agent to agent.

To reassign contacts from an agent to another you must press the Reassign button on the agent's lists where the next image will appear.

Inside the information that the supervisor has to see the uploaded list is the Contactability, this is the percentage of answered calls. To look at this percentage we must pass throw the mouse in the table that shows the data of the base.

Then select the desired agent and click on the reassign button to complete the action.

It can exist N active lists at the same moment and each has its percentage which must sum 100% in total, this percentage tells us how many contacts will get from the list to be able to mix the lists. As an example, if you have two lists with 10 contacts each, if both have 50% of priority, it will execute 5 contacts from one list and 5 contacts from the other before continuing dialing.

To set the percentage for each list you must active the desired lists and then by clicking the percentage the next window will appear.

It is important to know that the scheduled calls are always a priority, no matter what list is executing.

Once a list has ended and has 0 registries, this will be deleted from the system, an email is sent (AlertMail Configuration) noticing that the base has ended. We have 2 cases; the first one is that it does not exist another active list if this happens an inactive list is active with 100% active (in the order that it was uploaded) if there are active lists, the percentage of the list that was in 0 it is added to the first uploaded list to be able to keep working on a 100% model.

It is possible to upload a Do not call registry (DNCR). This adds the uploaded numbers to the blacklist in order not to be able to call them.

Delete Button: This allows to delete the campaign data that have not been processed (for example, not processed registries that returned an error or have been in the NDCR table, or for some reason want to be canceled).

The dialers will only select contacts from the active and in-time lists.

If you do not have different time zones for the dialer, it is not necessary to select time zones since by default you will have the timezone of the uContact server.