Page 1 of 1

going further on the performance test

PostPosted: Wed May 15, 2013 8:35 am
by asterguy
Hi Gurus,

I setup a performance test on my servers but I changed some of the configuration. This is because, i'm using a newer setup than in the URL. (Vicidial 2.2.1-237, Asterisk 1.4.39.1-vici, DAHDI) I based the setup on this link. http://download.vicidial.com/vicidial/a ... ESTING.txt

It is working but I would like to ask if the setup that I did is correct. I also posted some questions below.


configuration for 2 servers:
#1. Controller Server
- Will act as a sip provider. Answer the calls and play some moh.
- 192.168.10.5
sip.conf
* add the following sip account
****************************start*********
[controller]
disallow=all
allow=ulaw
type=friend
username=controller
secret=controller123
host=dynamic
dtmfmode=inband
qualify=1000
insecure=very
context=default
****************************end*********

extensions.conf
* add the following dial plan for performance testing
****************************start*********
; PERFORMANCE TESTING
exten => _999XXXXXX1,1,Answer
exten => _999XXXXXX1,2,Wait(2)
exten => _999XXXXXX1,3,Playback(vicidial-welcome)
exten => _999XXXXXX1,4,Hangup

exten => _999XX11112,1,Wait(2)
exten => _999XX11112,2,Answer
exten => _999XX11112,3,Playback(ss-noservice)
exten => _999XX11112,4,Playback(vm-goodbye)
exten => _999XX11112,5,Hangup

exten => _999XX18112,1,Wait(2)
exten => _999XX18112,2,Answer
exten => _999XX18112,3,Playback(vtiger-fax)
exten => _999XX18112,4,Playback(vtiger-fax)
exten => _999XX18112,5,Hangup

exten => _999XX19112,1,Wait(2)
exten => _999XX19112,2,Answer
exten => _999XX19112,3,Playback(vtiger-email)
exten => _999XX19112,4,Playback(vtiger-email)
exten => _999XX19112,5,Hangup

exten => _999XXXX112,1,Wait(5)
exten => _999XXXX112,2,Answer
exten => _999XXXX112,3,Playback(demo-instruct)
exten => _999XXXX112,4,Playback(demo-instruct)
exten => _999XXXX112,5,Hangup

exten => _999XXXXXX2,1,Wait(8)
exten => _999XXXXXX2,2,Answer
exten => _999XXXXXX2,3,Playback(demo-instruct)
exten => _999XXXXXX2,4,Hangup

exten => _999XXXXXX3,1,Set(PRI_CAUSE=1)
exten => _999XXXXXX3,2,Hangup

exten => _999XXXXXX4,1,Set(PRI_CAUSE=27)
exten => _999XXXXXX4,2,Hangup

exten => _999XXXXXX5,1,Wait(60)
exten => _999XXXXXX5,2,Hangup

exten => _999XXXXXX6,1,Wait(10)
exten => _999XXXXXX6,2,Answer
exten => _999XXXXXX6,3,Playback(demo-instruct)
exten => _999XXXXXX6,4,Hangup

exten => _999XXXXXX7,1,Wait(12)
exten => _999XXXXXX7,2,Answer
exten => _999XXXXXX7,3,Playback(demo-enterkeywords)
exten => _999XXXXXX7,4,Hangup

exten => _999XXXXXX8,1,Set(PRI_CAUSE=17)
exten => _999XXXXXX8,2,Hangup

exten => _999XXXXXX9,1,Wait(6)
exten => _999XXXXXX9,2,Answer
exten => _999XXXXXX9,3,Playback(demo-abouttotry)
exten => _999XXXXXX9,4,Hangup

exten => _999XXXXXX0,1,Wait(5)
exten => _999XXXXXX0,2,Answer
exten => _999XXXXXX0,3,Playback(vm-goodbye)
exten => _999XXXXXX0,4,Hangup

exten => 99999999999,1,Answer
exten => 99999999999,2,Playback(conf)
exten => 99999999999,3,Playback(conf)
exten => 99999999999,4,Playback(conf)
exten => 99999999999,5,Playback(conf)
exten => 99999999999,6,Playback(conf)
exten => 99999999999,7,Playback(conf)
exten => 99999999999,8,Playback(conf)
exten => 99999999999,9,Playback(conf)
exten => 99999999999,10,Playback(conf)
exten => 99999999999,11,Playback(conf)
exten => 99999999999,12,Playback(conf)
exten => 99999999999,13,Playback(conf)
exten => 99999999999,14,Hangup

****************************end*********

#2. Test Server
- Vicidial Server, Dial 99999999999 and create a conference room and the sip channels
- 192.168.10.6
sip.conf
* add the following sip account that will register to the the controller server.
****************************start*********
register => controller:controller123@192.168.10.5:5060

[testserver]
disallow=all
allow=ulaw
allow=alaw
type=friend
username=testserver
secret=testserver123
host=dynamic
dtmfmode=inband
qualify=1000

****************************end*********

extensions.conf
* add some variables for trunking
****************************start*********
[globals]
TESTTRUNK=SIP/testserver
TESTSIPTRUNK=SIP/99999999999@192.168.10.5:5060

[default]
exten => _91999NXXXXXX,1,AGI(agi://127.0.0.1:4577/call_log)
exten => _91999NXXXXXX,2,Dial(${TESTTRUNK}/${EXTEN:2},,tTo)
exten => _91999NXXXXXX,3,Hangup

exten => 999999999999,1,Answer
exten => 999999999999,2,Dial(${TESTSIPTRUNK}/${EXTEN:1},,tTo)
exten => 999999999999,2,Hangup

****************************end*********


adding remote agents:
#1. Go to Vicidial Admin Panel > Remote Agents > Add New Remote Agents
#2. Type anything as the user ID. Number of lines is 1. External Extension is 999999999999.

CLI Output on Test Server:
== Manager 'sendcron' logged on from 127.0.0.1
-- Executing [8600052@default:1] MeetMe("Local/8600052@default-5fba,2", "8600052|F") in new stack
== Parsing '/etc/asterisk/meetme.conf': Found
> Channel Local/8600052@default-5fba,1 was answered.
-- Executing [999999999999@default:1] AGI("Local/8600052@default-5fba,1", "agi://127.0.0.1:4577/call_log") in new stack
== Parsing '/etc/asterisk/meetme-vicidial.conf': Found
-- Created MeetMe conference 1022 for conference '8600052'
-- <Local/8600052@default-5fba,2> Playing 'conf-onlyperson' (language 'en')
-- AGI Script agi://127.0.0.1:4577/call_log completed, returning 0
-- Executing [999999999999@default:2] Dial("Local/8600052@default-5fba,1", "SIP/99999999999@192.168.10.5:5060/99999999999||tTo") in new stack
-- Called 99999999999@192.168.10.5:5060/99999999999
-- SIP/192.168.10.5:5060/99999999999-00000001 answered Local/8600052@default-5fba,1
== Manager 'sendcron' logged off from 127.0.0.1

Note: The CLI of Asterisk in the Test Server looks normal and no errors.

Scenario and Questions:
#1. 1 Remote agent with 100 lines
- Is this the same as #2 below?

#2. 100 Remote Agents with 1 line each
- Is this the same as #1 above?

#3 Remote Agents are not included in the Real Time Main Report. Is there a way to check the load of the server when the real time report is being accessed by an administrator or a user given that remote agents are running/active?

#4 How close is this performance test in reality?

#5 When I activate the recording (ALLFORCE) in the campaign used by remote agents, it's not recording calls. Just a hinch! This might be because of the dial plan of 99999999999 above. Is there a way to record the calls of the remote agents?



Regards,
Lui

Re: going further on the performance test

PostPosted: Thu May 16, 2013 5:46 am
by mflorell
100 remote agents with 1 line is similar to 1 remote agent with 100 lines. There are some small differences, but both should generate similar results.

If you want to see all agent lines in the real-time report, you need to create a real user for each pseudo-user that is temporarily generated by the remote agent process. For example, if you had a remote agent user with the ID of 1000 and it had 3 lines, you would need to create real users 1001 and 1002 to see them all in the real-time report.

This test is very close to reality based upon a lead data set that generates around 70% no-Answers. It took a while to develop and it can run repeatably and generate similar results every time it is run. It's impossible to simulate every call center, but we have found this is a good simulation of a short-pitch outbound predictive dialing campaign.

If you want to use remote agent recording you will have to upgrade. I would recommend version 2.7 RC 1 or the latest svn/trunk.

Re: going further on the performance test

PostPosted: Tue May 28, 2013 6:53 am
by asterguy
Hi Matt,

Thanks for the reply.

When you say "you would need to create real users 1001 and 1002", do you mean create 1001, 1002 as sip accounts/phone/exten? or vicidial users?

Being able to record calls in remote agent is a great feature! I'll check the 2.7 RC.

Thanks,
Lui

Re: going further on the performance test

PostPosted: Tue May 28, 2013 3:38 pm
by mflorell
you only would need to create vicidial_users records for those.