Difference between revisions of "Auto-Dialer Addon"

From Kolmisoft Wiki
Jump to navigationJump to search
 
(64 intermediate revisions by 10 users not shown)
Line 1: Line 1:
Auto-Dialer addon lets you call an array of numbers automatically and when answered plays back a prerecorded message to the receiving end of the call.
=Description=


It can be used in telemarketing.
Auto-Dialer addon lets you call an array of [[Auto-Dialer_Addon#Numbers | numbers]] automatically. When call is answered, receiver hears  the audio message or he is in standby mode, it depends on what is set in Auto Dialer [[Auto-Dialer_Addon#Actions | actions]] (PLAY / IVR / WAIT).
This functionality can be used in telemarketing.
<br><br>
=Usage=


When Auto-Dialer (AD) is installed, every user can use it and '''only users can create Campaigns. Admin cannot create Campaings.'''


=Overview=
==From User==


When Auto-Dialer (AD) is installed – every user can use it.
The user can find the AD menu under '''PERSONAL MENU -> Various -> Auto Dialer'''.
 
User can find AD menu under PERSONAL MENU Auto Dialer.
 
Main window shows user's campaigns:


The main window shows the user's campaigns:
<br><br>
[[Image:ad1.png]]
[[Image:ad1.png]]
<br><br>
The user can Activate or Stop the Campaign by clicking the [[Image:icon_play.png]] or [[Image:icon_stop.png]] button near the Campaign's status.


User can Activate or Stop the Campaign by pressing [[Image:icon_play.png]] or [[Image:icon_stop.png]] button near Campaigns status.
A Campaign can only be '''Activated''' if it has free (not-called) numbers AND some Actions.  


Campaign can only be '''Activated''' if it has free (not-called) numbers AND some Actions.  
So please, before activating a Campaign, import some Numbers and create Actions.


So please before activating Campaign import some Numbers and create Actions.
'''NOTE:''' Auto Dialer starts in 5 minutes, so when you are starting this add-on, you need to wait 5 minutes before it starts.
<br><br>
===Campaigns===


Auto-Dialer can be found under '''PERSONAL MENU -> Various -> Auto Dialer'''.


[[Image:icon_add.png]] '''Add new campaign''' allows you to add a new campaign:
<br><br>
[[Image:autodialer1.png]]
<br><br>
The important fields here are:


= Add new Campaign =
* '''Start/Stop Times''' – when calls will be made.
* '''Max Retries''' – how many times to retry an unsuccessful call.
* '''Retry Time''' – how many seconds the system should wait to retry the call.
* '''Wait Time''' – how long to wait till the call is answered. This field by default is 10 and cannot be made less. This is done to prevent ''missed call traffic'' and annoying multiple calls from Auto Dialer to the end user.
* '''Device''' – each Campaign should be assigned to a Device in order for MOR to bill the call.
* '''CallerID''' - what CallerID to put on calls.
* '''Allow duplicate numbers''' - when checked allows duplicate number import into the Auto-Dialer Campaign.
<br><br>


[[Image:icon_add.png]] '''Add new campaign''' – let's you add new campaign:
=== Numbers  ===


[[Image:autodialer1.png]]
Click on [[Image:icon_list.png]] in the '''Numbers''' column to check numbers which will be dialed on campaign:
<br><br>
[[Image:autodialer2.png]]
<br><br>
The user can import phone numbers from a TXT file. Numbers should be in correct dialing format.


Important fields here are:
Example of numbers file:
* '''Start/Stop Times''' – when calls will be made
* '''Max Retries''' – how many times to retry unsuccessful call
* '''Retry Time''' – after how many seconds should system retry the call?
* '''Wait Time''' – how long to wait till the call will be answered
* '''Device''' – each Campaign should be assigned to Device in order for MOR to bill the call
* '''CallerID''' - what CallerID to put on calls


442012345678
442087654321
442054987123


In a new Campaign there are no numbers, so click on [[Image:icon_csv.png]] '''Import numbers from file''' and select the file to upload:
<br><br>
[[Image:autodialer3.png]]
<br><br>
After uploading the file, you will see the status of the imported numbers:
<br><br>
[[Image:autodialer4.png]]
<br><br>
You can delete all numbers by clicking [[Image:icon_cross.png]] '''Delete all numbers'''. Also you can export details by clicking [[Image:excel.png]] '''Export IVR/poll results to CSV'''


= Numbers  =


Press on [[Image:icon_list.png]] in '''Numbers''' column to check campaigns numbers:
If a number is Completed, it is possible to reactivate it (tell the system to call it again) by clicking the [[Image:icon_reactivate.png]] icon near the number.
<br><br>


[[Image:autodialer2.png]]
=== Actions ===


Click [[Image:icon_actions.png]] in the Actions column to access the Campaign's actions:
<br><br>
[[Image:autodialer5.png]]
<br><br>
In this window, the user programs the Actions for the Campaign:


User can import phone numbers from TXT file. Numbers should be in correct format.
Types of Actions:


In new Campaign there are no numbers, so press on [[Image:icon_csv.png]] '''Import numbers from file''' and you will have to select file to upload:
* '''WAIT''' – how many seconds to wait.
* '''PLAY''' – play a file.
* '''IVR''' - send call to IVR. It can be used to connect to a real person and give the callee a greater choice. For example, it is possible to play an announcement and tell the user to press '1' to talk with a real person about this announcement (advertisement, debts, etc) or something similar.
** NOTE: admin or [[Reseller_Pro_Addon|Reseller PRO]] must check the option "All users can use it" on IVR to allow users to set that IVR on the AD campaign.
<br><br>


[[Image:autodialer3.png]]
===Redial all failed Calls===
<!---This functionality is available from MOR 9--->
You can redial all failed calls:
<br><br>
[[File:Autodialer_redial_all_failed_calls.png]]
<br><br>




After uploading file you will see status of imported numbers:
===Autodialer Campaign statistics===
To view the Autodialer Campaign statistics, click on the bar chart icon in the '''Stats''' column.
<br><br>
[[File:Autodialer_Stats_icon.png]]
<br><br>
On the newly opened page, you will be able to see the desired Autodialer Campaign statistics with a search filter and a visual representation of data.
<br><br>
[[File:Autodialer_Stats_User.png]]
<br><br>


[[Image:autodialer4.png]]
==From Admin==


You can delete all number by pressing [[Image:icon_cross.png]] '''Delete all numbers'''
When Auto-Dialer (AD) is installed, Admin can find it under the  '''ADDONS –> Auto Dialer''' menu. Here he can get a view of all users' campaigns:
<br><br>
[[Image:autodialer6.png]]
<br><br>
The important information for each Campaign is:


If number is Completed, it is possible to reactivate it (tell system to call it again) by pressing [[Image:icon_reactivate.png]] icon near number.
* Status – is the Campaign Active or Stopped?
* Run time – tells when calls will be made.


All other fields are self-explanatory.


= Actions =
Admin can see the Actions for users' Campaigns. Just click on the [[Image:icon_actions.png]] '''Actions''' button. However, he cannot make any changes to the user's campaign.
<br><br>


Press [[Image:icon_actions.png]] in Actions column to access Campaign's actions:
=Dynamic variables=


[[Image:autodialer5.png]]
Autodialer sets special Asterisk variables that can be used in other MOR functionalities.


In this window user programs the Actions for Campaign:
* '''MOR_AD_CAMPAING_ID''' - dialed campaign ID.
* '''MOR_AD_NUMBER_ID''' - dialed number ID.
* '''MOR_AD_NUM''' - dialed number.


Types of Actions:
For example, MOR_AD_NUM can be used in IVR when forwarding the call to another Device.


* '''WAIT''' – how many second to wait
To do so, add 'Change CallerID (Number)' action in IVR and set value to '''${MOR_AD_NUM}'''.
* '''PLAY''' – play some file
* '''IVR''' - send call to IVR


=Workflow=
=Workflow=


Each 5 minutes cron job is activated to check if any campaigns are activated.
Every 5 minutes, the "cron job" is activated to check whether any campaigns are activated.


If there are some active campaigns, script creates call files for the future.  
If there are some active campaigns, the script creates call files for the future.  


It puts calls in time period in equal time periods, to load balance the work for Asterisk.
It puts calls in Time Period in equal time periods, to balance the workload for Asterisk.


E.g. if you have 10 calls to make, script will execute them in 6s intervals to start all calls in 1 min time.
For example, if you have 10 calls to make, the script will execute them in 6s intervals to start all calls in 1 minute.


Variables in '''/var/lib/asterisk/agi-bin/mor.conf''':
Variables in '''/etc/mor/system.conf''':


'''calls_one_time''' - How many calls to distribute in ''cron_interval'' - (PLEASE NOTE, this value is not for simultaneous calls! it has very different meaning which is explained below)
'''calls_one_time''' - how many calls to distribute per one minute. (PLEASE NOTE, this value is not for simultaneous calls! It has a very different meaning, which is explained below).


'''cron_interval''' - What is the interval of time in minutes in which we should 'put' calls
'''cron_interval''' - the interval of time (in minutes) in which we should 'put' calls. Do not set value higher than "4" as it would cause overlapping of Autodialer sessions.


Example:
'''ad_disabled''' - when set to 1, disables Auto-Dialer functionality on a Server. '''Note:''' in multi-Asterisk systems all Asterisks but one must have this setting set to 1. This neeeds to be done in order to prevent duplicate calls.
 
Example #1:


  calls_one_time = 10
  calls_one_time = 10
  cron_interval = 1
  cron_interval = 1


That means that in 1 minute script will put 10 calls. So each call will be executed in 6s interval:
That means that in 1 minute the script will put 10 calls. So each call will be executed at a 6s interval:


  1st call: 0s
  1st call: 0s
Line 105: Line 165:
  10th call: 60s
  10th call: 60s


= Forward to IVR =
Example #2:
 
calls_one_time = 5
cron_interval = 2
 
That means that in 1 minute the script will put 5 calls and it will do so for 2 minutes. So each call will be executed at a 12s interval:
 
1st call: 0s
2nd call: 12s
3rd call: 24s
4rd call: 36s
5th call: 48s
6th call: 60s
7th call: 72s
8th call: 84s
9th call: 96s
10th call: 108s
<br><br>


Starting from MOR 0.8 version it is possible to forward answered call to some IVR.
=Limitations=


It can be used to connect to some real person and give more choice to the callee.
Currently MOR does not support such functionality as to issue the Auto Dialer campaign only in that Asterisk


For example it is possible to play advertisement and tell user to press '1' to talk with real person about this advertisement or similar.
server to which the device belongs (if you have multiple Asterisk servers). Now MOR just issues the campaign in all servers. If you want it to  


run only on one server you need to disable the Auto-Dialer functionality with the setting in '''/etc/mor/system.conf''':
  ad_disabled = 1
<br><br>


=Logs=


Autodialer log can be found here:
/var/log/mor/mor_ad_cron.log
<br><br>
= Problems =


----
* [[MOR Server Speedup]] (to get more calls by AD)
* [[I have a problem with Auto Dialer]]
<br><br>
=See also=


'''NOTE''': Auto-Dialer is not the tool to generate a lot of calls simultaneously. Auto-Dialer distributes calls to different destinations in the time frame to minimize load on Asterisk.
* [[Autodialer poll example]]
* [[Convert WAV file to Asterisk playable format]]<br>
* [[Sound files]]

Latest revision as of 07:48, 1 February 2024

Description

Auto-Dialer addon lets you call an array of numbers automatically. When call is answered, receiver hears the audio message or he is in standby mode, it depends on what is set in Auto Dialer actions (PLAY / IVR / WAIT). This functionality can be used in telemarketing.

Usage

When Auto-Dialer (AD) is installed, every user can use it and only users can create Campaigns. Admin cannot create Campaings.

From User

The user can find the AD menu under PERSONAL MENU -> Various -> Auto Dialer.

The main window shows the user's campaigns:

Ad1.png

The user can Activate or Stop the Campaign by clicking the Icon play.png or Icon stop.png button near the Campaign's status.

A Campaign can only be Activated if it has free (not-called) numbers AND some Actions.

So please, before activating a Campaign, import some Numbers and create Actions.

NOTE: Auto Dialer starts in 5 minutes, so when you are starting this add-on, you need to wait 5 minutes before it starts.

Campaigns

Auto-Dialer can be found under PERSONAL MENU -> Various -> Auto Dialer.

Icon add.png Add new campaign allows you to add a new campaign:

Autodialer1.png

The important fields here are:

  • Start/Stop Times – when calls will be made.
  • Max Retries – how many times to retry an unsuccessful call.
  • Retry Time – how many seconds the system should wait to retry the call.
  • Wait Time – how long to wait till the call is answered. This field by default is 10 and cannot be made less. This is done to prevent missed call traffic and annoying multiple calls from Auto Dialer to the end user.
  • Device – each Campaign should be assigned to a Device in order for MOR to bill the call.
  • CallerID - what CallerID to put on calls.
  • Allow duplicate numbers - when checked allows duplicate number import into the Auto-Dialer Campaign.



Numbers

Click on Icon list.png in the Numbers column to check numbers which will be dialed on campaign:

Autodialer2.png

The user can import phone numbers from a TXT file. Numbers should be in correct dialing format.

Example of numbers file:

442012345678
442087654321
442054987123

In a new Campaign there are no numbers, so click on Icon csv.png Import numbers from file and select the file to upload:

Autodialer3.png

After uploading the file, you will see the status of the imported numbers:

Autodialer4.png

You can delete all numbers by clicking Icon cross.png Delete all numbers. Also you can export details by clicking Excel.png Export IVR/poll results to CSV


If a number is Completed, it is possible to reactivate it (tell the system to call it again) by clicking the Icon reactivate.png icon near the number.

Actions

Click Icon actions.png in the Actions column to access the Campaign's actions:

Autodialer5.png

In this window, the user programs the Actions for the Campaign:

Types of Actions:

  • WAIT – how many seconds to wait.
  • PLAY – play a file.
  • IVR - send call to IVR. It can be used to connect to a real person and give the callee a greater choice. For example, it is possible to play an announcement and tell the user to press '1' to talk with a real person about this announcement (advertisement, debts, etc) or something similar.
    • NOTE: admin or Reseller PRO must check the option "All users can use it" on IVR to allow users to set that IVR on the AD campaign.



Redial all failed Calls

You can redial all failed calls:

Autodialer redial all failed calls.png


Autodialer Campaign statistics

To view the Autodialer Campaign statistics, click on the bar chart icon in the Stats column.

Autodialer Stats icon.png

On the newly opened page, you will be able to see the desired Autodialer Campaign statistics with a search filter and a visual representation of data.

Autodialer Stats User.png

From Admin

When Auto-Dialer (AD) is installed, Admin can find it under the ADDONS –> Auto Dialer menu. Here he can get a view of all users' campaigns:

Autodialer6.png

The important information for each Campaign is:

  • Status – is the Campaign Active or Stopped?
  • Run time – tells when calls will be made.

All other fields are self-explanatory.

Admin can see the Actions for users' Campaigns. Just click on the Icon actions.png Actions button. However, he cannot make any changes to the user's campaign.

Dynamic variables

Autodialer sets special Asterisk variables that can be used in other MOR functionalities.

  • MOR_AD_CAMPAING_ID - dialed campaign ID.
  • MOR_AD_NUMBER_ID - dialed number ID.
  • MOR_AD_NUM - dialed number.

For example, MOR_AD_NUM can be used in IVR when forwarding the call to another Device.

To do so, add 'Change CallerID (Number)' action in IVR and set value to ${MOR_AD_NUM}.

Workflow

Every 5 minutes, the "cron job" is activated to check whether any campaigns are activated.

If there are some active campaigns, the script creates call files for the future.

It puts calls in Time Period in equal time periods, to balance the workload for Asterisk.

For example, if you have 10 calls to make, the script will execute them in 6s intervals to start all calls in 1 minute.

Variables in /etc/mor/system.conf:

calls_one_time - how many calls to distribute per one minute. (PLEASE NOTE, this value is not for simultaneous calls! It has a very different meaning, which is explained below).

cron_interval - the interval of time (in minutes) in which we should 'put' calls. Do not set value higher than "4" as it would cause overlapping of Autodialer sessions.

ad_disabled - when set to 1, disables Auto-Dialer functionality on a Server. Note: in multi-Asterisk systems all Asterisks but one must have this setting set to 1. This neeeds to be done in order to prevent duplicate calls.

Example #1:

calls_one_time = 10
cron_interval = 1

That means that in 1 minute the script will put 10 calls. So each call will be executed at a 6s interval:

1st call: 0s
2nd call: 6s
3rd call: 12s
....
9th call: 54s
10th call: 60s

Example #2:

calls_one_time = 5
cron_interval = 2

That means that in 1 minute the script will put 5 calls and it will do so for 2 minutes. So each call will be executed at a 12s interval:

1st call: 0s
2nd call: 12s
3rd call: 24s
4rd call: 36s
5th call: 48s
6th call: 60s
7th call: 72s
8th call: 84s
9th call: 96s
10th call: 108s



Limitations

Currently MOR does not support such functionality as to issue the Auto Dialer campaign only in that Asterisk

server to which the device belongs (if you have multiple Asterisk servers). Now MOR just issues the campaign in all servers. If you want it to

run only on one server you need to disable the Auto-Dialer functionality with the setting in /etc/mor/system.conf:

 ad_disabled = 1



Logs

Autodialer log can be found here:

/var/log/mor/mor_ad_cron.log



Problems



See also