Edit/Modify Queue Campaign

Under the Queue Campaign Edit section you will find the following information:

1. Clone the campaign

5. Add Agent

2. Add list

6. Reset List: contacts are
restore as fresh 

3. Add blacklist

7. Go-to-Realtime

4. Add team

8. Save changes

 

In the first 4 Tabs you can set the
Queue campaign parameters:
Settings
Campaign
Retry Settings
Advanced

In the latter 4 Tabs you can find the
Queue campaign logs:
Hopper
History
Final
Blacklist

 

 

Settings

 

The General settings of the Queue Campaign can be edited here:

  • Name

  • Active/Inactive: With the toggle-switch, you can START or STOP the Queue Campaign. Please note that the Campaign runs only if the status "Active" is chosen. 

  • Trunk and Trunk Backup (if the main trunk is unreachable, the system will check if the trunk backup is available)

  • Time interval 

  •  Check Duplicate Option, can be set to:

    • Never will skip any check about the number being already loaded into the system (this may cause a multiple presence of the same number in the Hopper or the Final list)

    • Always (default value) means that the system before loading the number checks if it is not already in any list (Hopper or Final)

    • Only if Open means that the system before loading the number checks if it is not already in the Hopper list only 

  • Cut Digits: insert the number of the caller id digits to prevent the customer to view (0 for none).

  • Description (optional)

 

Campaign

In this Section you can set:

  • Method: the chosen dialing method. A list of configuration parameters will be shown according to the chosen method

  • 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: How many seconds to ring an agent’s device (default=3)

 

Here you can set:

  • Queue Options: voice queue option strings. For more details about the available options see Asterisk 18 wiki pages https://wiki.asterisk.org/wiki/display/AST/Asterisk+18+Application_Queue )

  • Queue Timeout: time in seconds the dialer waits for a call in the queue to be answered before dropping it. If the call is dropped, the dialer will not recall the contact in this queue campaign (Default value=3)

  • Strategy: distribution strategy of queue calls to the agents in the queue. You can choose among the following values: Round Robin MemoryLeast RecentFewest CallsRandomLinear (Default value=Round Robin Memory). The list of strategies that can be applied is related to the type of Method chosen.

  • Retry: time in seconds to wait before trying to ring the next agent in a queue (Default=2).

  • Wrapup time: the number of seconds to keep a member unavailable in the queue after completing a call (Default=0)

  • Weight: Defines the weight of a queue. A queue with a higher value will get priority when members are associated with multiple queues (Default=1)

  • Music on Hold: the music class that is applied for this queue. (Default=asterisk's default class). The default Music on Hold class we provide is noice (it means "no silence" when on hold). You can also create your own music class under Music On Hold section.

  • Cally Square Project: if you select an IVR project from the list, the dialer will forward the call to the IVR before putting it in a queue. This is helpful if you want to perform other functions like: query a database, playback or set a variable and so on, before forwarding the call in a queue (Default=None). In all cases the IVR is started for the customer, excluding the Preview campaigns, where it is started for the Agent. (To create an IVR Project, you need to use Cally Square).

  • Cally Square Project After Queue: if you select an IVR project from the list for:

    • Progressive, Predictive, Power queue campaigns, the dialer will forward the flow to the IVR project only if the caller exits the queue for timeout (the IVR is started for the customer)

    • Preview, the dialer will forward the flow to the IVR project when the contact is not reachable any more (for reasons like: busy, no Answer, congestion, no such number) or when the customer ends the call (the IVR is started for the agent).

If you select an IVR project in this field, the following switch is shown (on progressive, predictive, preview and booked progressive):

  

If you switch it on, if the Agent hangs up the call, the IVR project is executed anyway for customer (the project will never be executed when it is the customer to hang the call up).

This option is active by customer side even if it’s used Recall me Option

  • Caller ID Name: when the dialer generates calls to contacts, it will set the outgoing caller ID name.

  • Caller ID Number: when the dialer generates calls to contacts, it will set the outgoing caller ID number. (Check that used trunk offers the possibility to change these parameters. In fact, activating telephone traffic from a provider, it is often not possible to customise number).

  • Random Outgoing CallerId Number: the number of digits (starting from the end) to replace with random digits (0= none).

  • Originate Timeout: time in seconds the dialer waits for a contact to answer the call (Default=30). If the call is not answered within the originate timeout, the call originate status will be set to No Answer and this contact will be recalled according to the Retry Settings parameters: 

    • global max retries

    • no answer max retries 

    • no answer retry times

  • Telephone Prefix (if any): you can add numbers and/or "+" symbol. The Prefix will be added to every contact of the lists associated to the campaign. 

Retry Settings

 

Global

  • Global max retries: the maximum number of times the dialer will recall a contact irrespective of the reason the call failed. After the global max retries, the dialer will consider the contact closed and will not recall again (Default=4).

 

Congestion (status that occurs when, for instance, there are failures in the trunk)

  • Congestion Max Retries: the maximum number of times the dialer will recall a contact failed for congestion reason (Default=3). If this limit is reached, contact moved from hopper to final and no longer called.

  • Congestion Retry Time: time in minutes the dialer will wait before recalling a contact failed for congestion reason (default=150). The dialer will recall for congestion max retries as long as the global max retries is not reached. If congestion max retries is exhausted before global max retries, the contact will be closed for congestion and will not be called again.

Scenario:
Congestion Max Retries 3 - Congestion Retry Time 150 min
Contact is called the first time at 10am → Congestion Status → In the hopper the parameter “scheduled at” is increased of 150 minutes → Contact is recalled at 12.30pm. This login continues until Max Retries are reached

 

 

Busy (status that occurs when agent is already talking to another customer)

  • Busy Max retries: the maximum number of times the dialer will recall a contact failed for busy reason (default=3).

  • Busy Retry Time: time in minutes the dialer will wait before recalling a contact failed for busy reason (default=150). The dialer will recall for busy max retries as long as the global max retries is not reached. If busy max retries is exhausted before global max retries, the contact will be closed for busy and will not be called again.

No Answer (call is not answered)

  • No Answer Max retries: the maximum number of times the dialer will recall a contact failed for no answer reason (default=3).

  • No Answer Retry Time: time in minutes the dialer will wait before recalling a contact failed for no answer reason (default=150). The dialer will recall for no answer max retries as long as the global max retries is not reached. If no answer max retries is exhausted before global max retries, the contact will be closed for no answer and will not be called again.

 

No Such Number (the called number is considered non-existent)

  • No Such Number Max retries: the maximum number of times the dialer will recall a contact failed for no such number reason (default=3).

  • No Such Number Retry Time: time in minutes the dialer will wait before recalling a contact failed for no such number reason (default=150). The dialer will recall for no answer max retries as long as the global max retries is not reached. If no such number max retries is exhausted before global max retries, the contact will be closed for no such number and will not be called again.

 

Drop (status that occurs when the customer answered but the system hung up the call for timeout on the queue)

  • Drop Number Max retries: the maximum number of times the dialer will recall a contact failed for drop reason (default=3).

  • Drop Retry Time: time in minutes the dialer will wait before recalling a contact failed for drop reason (default=150). The dialer will recall for drop max retries as long as the global max retries is not reached. If drop max retries is exhausted before global max retries, the contact will be closed for drop and will not be called again.

Abandoned (status that occurs when the customer hangup the call before being connected to an agent)

  • Abandoned Max retries: the maximum number of times the dialer will recall a contact failed for abandoned reason (default=3).

  • Abandoned  Retry Time: time in minutes the dialer will wait before recalling a contact failed for abandoned reason (default=150). The dialer will recall for abandoned max retries as long as the global max retries is not reached. If abandoned max retries is exhausted before global max retries, the contact will be closed for abandoned and will not be called again.

 

Machine (status that occurs when in Advanced section you configure Asterisk AMD)

  • Machine Max retries: the maximum number of times the dialer will recall a contact failed for machine reason (default=3).

  • Machine Retry Time: time in minutes the dialer will wait before recalling a contact failed for machine reason (default=150). The dialer will recall for machine max retries as long as the global max retries is not reached. If machine max retries is exhausted before global max retries, the contact will be closed for machine and will not be called again.

 

Agent Reject (status that occurs when the call is sent to an available agent who rejects the call)

  • Agent Reject Max retries: the maximum number of times the dialer will recall a contact failed for agent reject reason (default=3).

  • Agent Reject Retry Time: time in minutes the dialer will wait before recalling a contact failed for agent reject reason (default=150). The dialer will recall for agent reject max retries as long as the global max retries is not reached. If agent reject max retries is exhausted before global max retries, the contact will be closed for agent reject and will not be called again.

 

Additional phones

  • Call additional phone after (min): time in minutes between the call to the  primary phone and the call to the additional phone, in case of inability to reach the primary phone. The dialer calls the primary phone. If the Contact hasn't been reached through the primary phone, after tot minutes (in the example, 3 minutes), the dialer will call the additional phones, according to priorities. 

Global max retries dominates the max retries of the different status. In total, a contact cannot be called more than the global max retries. If the sum of the varous status reaches this global number, the contact is no longer called and it moved from hopper to final

Example: Global max retries=4 | Congestion: max retries=3 , retry time=150
Busy: max retries=3 , retry time=150 | No answer: max retries=3 , retry time=150

  • Scenario 1: If a contact fails for busy reason 3 times consecutively, the contact will be closed for busy and will not be recalled.

  • Scenario 2: If a contact fails for busy reason 1 time then fails 2 times for No answer, it will be recalled one more time because busy max retries is = 3, no answer max retries is =3 and global max retries =4 are not reached.

  • Scenario 3: If a contact fails for congestion 2 times, it will be recalled and the contact will be closed for congestion if it fails for congestion for the third time; otherwise, if it fails for another reason it will be recalled for the fourth time.

Advanced

Advanced campaign features vary according to the method chosen. In the following section (on the right side) you can find the full list of the advanced parameters.

If the Campaign is Progressive, PowerDialing, Predictive:

 

In this Section you can set:

  • After Call Work: enable it you want the Agent to be set on pause after completing call on the queue (default=NO)

  • After Call Work Duration: if the After Call Status is set to yes, insert here how many seconds the pause should last (this field is shown only if the ACW is set to yes)

  • AutoPause: set to YES if you want to pause the members who fail to answer a call, for all the queues he is member of (Default=NO)

  • Ring in use: set to NO if you want to avoid sending calls to members whose status is in use (Default=NO). Be careful to use this parameter correctly, because it works differently for each method (click here to explore outbound dialer methods documentation)

  • Member Delay: to set a delay prior to connect the caller and the queue member

  • Timeout Restart: If set to yes, resets the timeout for an agent to answer if either a BUSY or CONGESTION status is received from the channel

  • Recording Format: Specifies the file format to use when recording. If the value is inactive, calls will not be recorded.

  • Context: Allows a caller to exit the queue by pressing a single DTMF digit. If a context is specified and the caller enters a number, that digit will attempt to be matched in the context specified, and dialplan execution will continue there.

  • Set Interface Variables: If set to yes, just prior to the caller being bridged with a queue member some variables will be set (see Asterisk wiki for more information): 

 MEMBERINTERFACE is the interface name (eg. Agent/1234),
 MEMBERNAME is the member name (eg. Joe Soap),
 MEMBERCALLS is the number of calls that interface has taken,
 MEMBERLASTCALL is the last time the member took a call,
 MEMBERPENALTY is the penalty of the member,
 MEMBERDYNAMIC indicates if a member is dynamic or not,
 MEMBERREALTIME indicates if a member is realtime or not.

  • Set Queue Variables: if set to yes, just prior to the caller being bridged with a queue member and just prior to the caller leaving the queue some variables will be set (see Asterisk wiki for more information):

 QUEUEHOLDTIME callers hold time,
 QUEUEORIGINALPOS original position of the caller in the queue.

  • Set Queue Entry Variables: If set to yes, just prior to the caller being bridged with a queue member some variables will be set (see Asterisk wiki for more information):

 QUEUENAME name of the queue,
 QUEUEMAX maximum number of calls allowed,
 QUEUESTRATEGY the strategy of the queue,
 QUEUECALLS number of calls currently in the queue,
 QUEUEHOLDTIME current average hold time,
 QUEUECOMPLETED number of completed calls for the queue,
 QUEUEABANDONED number of abandoned calls,
 QUEUESRVLEVEL queue service level,
 QUEUESRVLEVELPERF current service level performance

  • Order by Scheduledat: choose the order of the list in the Hopper (desc/asc). If it is in ascending order and you have one call scheduled at 10am and another call scheduled at 10.05am, it takes 10am call first, descending goes in reverse order.

  • Mandatory Disposition: enable it you want the Agent to be forced to dispose the interactions managed and set the Agent pause status to be automatically applied during this operation (default=NO. When you enable this feature a new field will be displayed)

If the Campaign is Predictive, moreover, you will be able to configure an optimization percentage factor for agent availability threshold:

 

  • Thresholds: If the percentage of agents available in the time window, compared to the agents available at the time of prediction, exceeds the configured maximum/minimum limit, the predictive recalculates the prediction. To deepen the Agent availability thresholds for predictive campaigns, click here

If the Campaign is BookedProgressive:

 

You only will see a subset of the whole advanced features list:

  • After Call Work: enable it you want the Agent to be set on pause after completing call on the queue (default=NO). If ACW is active call routing to the agent is delayed and if agent is in ACW or busy, the call is not routed

  • After Call Work Duration: if the After Call Status is set to yes, insert here how many seconds the pause should last (this field is shown only if the ACW is set to yes)

  • Enable Booked Wrap Up Time: if enabled, calls are delayed by 2 seconds

  • Recording Format: Specifies the file format (wav, wav49,gsm) to use when recording. If the value is inactive, calls will not be recorded.

  • Order by Scheduledat: choose the order of the list in the Hopper (desc/asc)

The Contacts in the Hopper are dialed by Priority first, then by ScheduledAt

  • Mandatory Disposition: enable it you want the Agent to be forced to dispose the interactions managed and set the Agent pause status to be automatically applied during this operation (default=NO. When you enable this feature a new field will be displayed)

If the Campaign is Preview:

You only will see a subset of the whole advanced features list:

  • After Call Work: enable it you want the Agent to be set on pause after completing call on the queue (default=NO)

  • After Call Work Duration: if the After Call Status is set to yes, insert here how many seconds the pause should last (this field is shown only if the ACW is set to yes)

  • Recording Format: Specifies the file format to use when recording. If the value is inactive, calls will not be recorded.

  • Order by Scheduledat: choose the order of the list in the Hopper (desc/asc)

  • Mandatory Disposition: enable it you want the Agent to be forced to dispose the interactions managed and set the Agent pause status to be automatically applied during this operation (default=NO. When you enable this feature a new field will be displayed)

All campaigns have in advanced, recall me section:

In this section you can set the recall-me feature.
When the Agent closes and disposes a call in a queue campaign, he can set an automatic recall request to the system: in this case the system tries to recall the customer and to pass the call to the specific agent for the time (in minutes) inserted in the Recall Me Timeout (default 30min).

Scenario: agent does disposition with recall me at 10.40am with recall me timeout 10min. If no one has connected on until 12pm, call is no longer made because recall me time exceeded.

So if this is not possible (e.g. the Agent indicated for Recall Me option is not available) the call is dropped and moved to final, unless the Recall in Queue flag is set: this option enables the call to be passed to any available agent belonging to the same queue.

Scenario: agent does disposition with recall me at 10.40am with recall me timeout 30min and recall in queue enabled → if the agent does not answer within the inserted timeout, the contact is not closed but entered back into the hopper, allocation to assigned agent is removed and any agent in the queue campaign can handle the call.

If the Campaign is Preview:

  • Automate Recall Me calls (if the Campaign is Preview):  If enabled, the system will automatically generate the Recall Me calls (the Recall Me call is performed by the Booked Progressive strategy- as soon as the Agent is available, the system calls the Agent and then calls the contact). If disabled, the Agent must select  the contact manually from the list showed from the Motion Bull Preview button: the Recall Me contact will be distinguished from the other contacts by an info label.    

  • Recall Me Reminder (if the Campaign is Preview):  If enabled, the system will send a notification to the Agent n° minutes (according to Preview Recall Me Reminder Interval set in General Settings) before generating the Recall Me call.

 

 

All campaigns have in advanced, Global interval

<time range>,<days of week>,<days of month>,<months>
where:
<time range>= <hour>':'<minute>'-'<hour>':'<minute>
|"*"
<days of week> = <dayname>
| <dayname>'-'<dayname>
| "*"
<dayname> = "sun" | "mon" | "tue" | "wed" | "thu" | "fri" | "sat"
<days of month> = <daynum>
| <daynum>'-'<daynum>
| "*"
<daynum> = a number, 1 to 31, inclusive
<hour> = a number, 0 to 23, inclusive
<minute> = a number, 0 to 59, inclusive
<months> = <monthname>
| <monthname>'-'<monthname>
| "*"
<monthname> = "jan" | "feb" | "mar" | "apr" | "may" | "jun" | "jul" | "aug" | "sep" | "oct" | "nov" | "dec"
daynames and monthnames are not case-sensitive.
If you replace an option with *, it is ignored when matching

Before calling a contact the system checks if the global interval is OK and then it considers the other interval set (default: 07:00-22:00,*,*,*). So Global Interval is a security check, to verify that the campaign can generate call;. if the time is outside the global interval the campaign is not activated.

Please note that the system default Global Interval is from 7 AM to 10 PM: it means that the campaign will never be operational out of this range unless you change it, even if the Time Interval in the General Settings is set to always.

We advise you to pay attention to the regulations that apply to calls campaigns in your country.

 

Here you can define timezone

Before calling a contact the system checks if the time is right. In this field you can choose a different time zone for the specific campaign you're configuring

e.g.: if you have a server in Italy and you configure a global interval (18:00-20:00,*,*,*) and timezone Australia/Sydney, the system will start to call in Sydney when it is 18:00 and in Italy when it is 10:00.
Pay attention that the timezone is related to the campaign (not to single contacts). It is better to separate the list of contacts with different timezone

 

 

  • AMD (Answering Machine Detection): set this flag if you want the system try to detect Answering Machine (Asterisk feature). When you set this flag to yes you need to insert all the parameters (see the picture below) which are necessary in order to tune your actual system properly. It is used to understand if the caller is human or a machine (e.g. voicemail).
     

 

Monitoring Queue Campaigns

The Sections useful for monitoring Queue Campaigns are the following:

Hopper

The four widgets on top show:

  • Total: the total number of contacts in the list

  • Fresh: total number of contacts that are in line to be dialed by the dialer for the first time

  • Open: total number of contacts that have been dialed (at least once) and are still in line to be dialed

  • Closed: is the total number of contacts already called and closed or contacts for which max retries are reached.

The Hopper contains list of contacts that are going to be called by the dialer at a scheduled time: 

  • When you add a list in a queue campaign, all contacts in the list are placed in the hopper. 

  • When you add new contacts in the associated list, the system will automatically add the new contacts to the hopper.

Note: Before placing a call to a contact in the hopper, the dialer checks if the contact exists in the blacklist and skips it if it does exist.


From the three dots menu you can:

  • Delete the Hopper (delete the scheduled call)

  • Edit the Hopper and change the schedule for this call, modifying:

  • Date and Time at which the Contact will receive the call

  • Priority of the call: 0 = Lowest; 1 = Low; 2 = Medium; 3 = High; 4 = Highest. Contacts scheduled at the same time will be called according to their priority level.

  • Recall Agent: choose the Agent to whom assign the call.

When uploading a list of contacts in a Queue Campaign: if the contact has a scheduled date > current date then the schedule date of the hopper should be equal to the date already set; if the contact hasn’t got a scheduled date or has a scheduled date < current date then the schedule date should be equal to NOW().

 

History

Hopper History contains history of calls originated by the dialer. Status, start time and end time of every call that was dialed by the dialer is logged in the hopper history:

 

Final

Hopper Final contains list of closed contacts (because successfully managed or for other reasons, e.g. max retries reached). 

  • If a contact is successfully connected to an agent, the contact is moved from the Hopper to Hopper Final and will not be called again.

  • If a call has failed, the number of times it failed for congestion, busy and no answer will be shown in the Hopper as long as the max retries are not reached. When the max retries are exhausted, the contact will be moved to the Hopper Final and the status will show the reason the contact has been closed

  • Once contacts are moved to the Hopper Final, if you remove the list from the campaign and add it again, only open contacts (contacts that are not in the Hopper Final) are placed in the Hopper and dialed by the dialer. This will avoid unnecessary calls to closed contacts

 

How to Restore Contacts

You can move one or many contacts from Final to Hopper: they will be restored in the Hopper and the Dialer will call them again.

This function is not allowed

  • if they have Status=Answered.

  • if a Contact Id is already in the Hopper (this prevents multiple identical contacts to be restored in the Hopper).

Once you restore a contact, this is not moved from Final to the Hopper but a new entry is added to the Hopper.

You can restore contacts in several ways:

  • clicking on this button you can select one of the Calls Status List to restore, choosing among those available from the pop-up screen:

 

  • selecting one item in the list and click on 3 dots menu and then choose Restore contact

  • selecting one or more items clicking the corresponding checkboxes and then click this icon:  

 

Blacklist

Here you find the list of all those contacts that must be excluded from the campaign. So if you choosed before a blacklist, here you can see the list of all contacts.