Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations SkipVought on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

How do I get peak calls-in-progress historical data 2

Status
Not open for further replies.

TinyL

IS-IT--Management
Jul 5, 2007
21
0
0
GB
Hello

I'm trying to help a friend who looks after a small call centre which has a Meridian 81C and (Symposium) Contact Centre 6.

We are trying to find out if there is spare call-answering capacity on a simple IVR system.(The IVR is actually irrelevant to the question, except to mention that it doesn't keep call statistics itself).

I have very limited knowledge of the reporting capabilities and methods available on the Merdian 81C and CC6 - please bear with me if I seem a bit of a novice!

The IVR is connected via 40 Analog (500 set) agents. These agents are all in one skill-set (and only that one skill-set) and are always logged-in.

We need to know the maximum number of (peak) concurrent calls-in-progress to those 40 Agents over a period of say 3 months (1 month would do, but 3 is better).

Could you suggest which reports could be run, that would provide this information.

Thanks

Tiny :)



 
Unless anyone knows any differently, I can't see how this can be done. I don't recall any database field which may hold this information, so it is probably not available.
 
While there is not a specific report, there is data available that can help you.

As you said the ports are all logged into one skillset, you can look at the Skillset Performance Report. While it does not give you peak traffic data, it does give you resource (agent) usage data, like ALL Agent Busy Time. All Agent Busy Time is defined as: The total time that all agents assigned this skillset were busy with calls or no agents were logged on.

There is also a calculation of Ave Number of Agents (Total staffed time/Active Time).

These two pieces of information should give you some guidance on whether you are maxing out your IVR ports or have some capacity to handle more traffic.
 
I am assuming your are running an inbound call center using 800 numbers with DNIS.

If this is the case, you can obtain interval DNIS reports in Symp/CC that will show you 15 minute windows of your concurrent call volume.

If that doesn't work for you. Do you use CDR? Perhaps you can obtain the information you want directly from your PBX.
 
I'm not sure if this is what you are looking for but here goes.

We have IVR's and needed to know the maximum number of simultaneous calls so that we could accurately determine the number of IVR ports needed to answer calls at any given time. Particularly, we needed to know the highest number. We termed this as our High Water Mark (HWM).

What I did was to create a simple database and use the HDX function to export the collected data.

When a call comes into the Symposium I perform this function:
ASSIGN (LOGGED AGENT COUNT b_Skill1_cv - IDLE AGENT COUNT b_Skill1_cv) TO b_INT_01_cv

What this does is assign the number of IVR agents (ports) minus the number of idle ports to an integer. This value represents the number of ports that are either on a call or in the process of resetting from a call. In either case, the port is not available to answer a call and is thus "in use".

I then take this vale and compare it to my stored value like this:
READVAR x_IVR_HWM_wcv
IF
b_INT_01_cv > x_IVR_HWM_wcv
THEN
ASSIGN b_INT_01_cv TO x_IVR_HWM_wcv
END IF
SAVEVAR

Basically, this says if my new value is equal to or less than my stored value, then dump it, otherwise, set my stored value to the new HWM.

I have this action performed throughout the day and then in the late evening, I write the stored value out to my database like this:
READVAR x_IVR_HWM_wcv
SAVEVAR
ASSIGN 1 TO x_SQL_Statement_cv
SEND INFO x_Provider_ID2_gv x_SQL_Statement_cv, x_IVR_HWM_wcv

After that, I created a very simple Excel spreadsheet which dips into the database and retrieves the HWM values for each day. From that we can then see our overall HWM, our daily, weekly, etc.

I'll paste the entire script if you would like but that is it in a net shell. Hope this helps someone.


/********************************* START HWM *********************************/
/* SECTION hwm_1 */
WHERE TIME OF DAY EQUALS
VALUE x_TIME_1_gv: EXECUTE hwm_2
VALUE x_TIME_2_gv: EXECUTE hwm_3
VALUE x_TIME_3_gv: EXECUTE hwm_4
DEFAULT: EXECUTE sec_one
END WHERE


EXECUTE sec_one
/**** END OF SECTION hwm_1 ****/



/**** CHECK HWM & RECORD ****/
SECTION hwm_2
ASSIGN IVR_sk TO b_Skill1_cv
ASSIGN (LOGGED AGENT COUNT b_Skill1_cv - IDLE AGENT COUNT b_Skill1_cv) TO b_INT_01_cv


READVAR x_IVR_HWM_wcv
IF
b_INT_01_cv > x_IVR_HWM_wcv
THEN
ASSIGN b_INT_01_cv TO x_IVR_HWM_wcv
END IF
SAVEVAR


EXECUTE sec_one
/**** END OF SECTION hwm_2 ****/



/**** WRITE HWM TO DB ****/
SECTION hwm_3
READVAR x_Counter_wcv
ASSIGN (1 + x_Counter_wcv) TO x_Counter_wcv
SAVEVAR


IF
x_Counter_wcv = 5
THEN
READVAR x_IVR_HWM_wcv
SAVEVAR
ASSIGN 1 TO x_SQL_Statement_cv
SEND INFO x_Provider_ID2_gv x_SQL_Statement_cv,
x_IVR_HWM_wcv
END IF


EXECUTE sec_one
/**** END OF SECTION hwm_3 ****/
 
Thanks pronei.
Here is my SQL statement that ASSIGN 1 TO x_SQL_Statement_cv refers to:

INSERT INTO dbo.HWM VALUES (convert(varchar, getdate(), 1),?)


The ? = x_IVR_HWM_wcv
You write this in the Database Integration Wizard (on the CCMS).
The dbo.HWM is the name of the database table.
the getdate function writes the date...duh.

Feel free to use it if it is helpful.
 
Do you have call recording?

We recently needed to do something similar (but to estimate concurrent call recording channles for a migration to IP tel) and by querying the call recording database (Nice CLS - SQL Database) we got the figure

DD
 
DD,

As we use Nice Recording as well it songs helpful.
Could you please advice what CLS Table and Columns to use?

Thanks,

jj
 
Hi, it wasn't me that wrote the query, perhaps you could post in the Nice forum on Tek-Tips. Someone there would know the table setups I'm sure.

At a high-level, it was the table that had the call records in it. The engineer set up a variable that related to each unique minute for a day (between 8am and 8pm) over a range of dates. He then ran a query to see if each call record had a start time or stop time that fell into that minute.

There was also some stuff to take account of two recorded agents talking to each other as this shows as two records.

Sorry I can't be of more help

DD
 
DD,

Thanks for your tip.

The Nice CLS Table must be NICE_CLS_CALLS_00X ..... where X is number of table ( 1 month=1table)
There are all data for every call like Start and Stop Time, Duration .. etc. So now we need just ask some SQL man to create right query.

jj
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top