Cisco Support Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Announcements

Welcome to Cisco Support Community. We would love to have your feedback.

For an introduction to the new site, click here. If you'd prefer to explore, try our test area to get started. And see here for current known issues.

New Member

Abandoned Call Calculation From Termination Call Detail

HI..

Can someone please tell me how to calculate  Abandoned Calls  from Termination Call Detail Table ?.

Thanks in advance.

20 REPLIES

Hi,it depends on what you

Hi,

it depends on what you mean by "Abandoned calls". Is it the number of calls abandoned while waiting in the queue + the number of calls abandoned while ringing at the agent phone?

If so, TCD might not be the best option. What I would do is to insert CallTypes into the ICM script and then check the Call_Type_Interval view (or Call_Type_Half_Hour, depends on if your setup supports 15 minutes long intervals or not) and take the number of RouterCallsAbandQ (and perhaps RouterCallsAbandToAgent) for that particular CallType.

G.

New Member

Hello Gergely,Thanks for your

Hello Gergely,

Thanks for your reply.

Actually, I wanted to calculate Abandoned calls network wise (network name based on ANI) in both cases as below.

"abandoned while waiting in the queue + the number of calls abandoned while ringing at the agent phone"

 

From which TCD leg, I can get this?

 

Hi, it depends. What is your

Hi, it depends. What is your ICM and IP IVR (or CVP) version?

G.

New Member

Hi Gergely,In our case its 8

Hi Gergely,

In our case its 8.5.

Thanks.

 

Hi,alright, it

Hi,

alright, it's

CallDisposition 6 for the VRU PG's and CallDisposition 3 for the CUCM PG.

For instance:

SELECT COUNT(*) FROM Termination_Call_Detail tcd WHERE tcd.DateTime > CAST(FLOOR(CAST(GETDATE() AS FLOAT)) AS DATETIME) AND tcd.PeripheralID = 5000 AND tcd.CallDisposition = 3
SELECT COUNT(*) FROM Termination_Call_Detail tcd WHERE tcd.DateTime > CAST(FLOOR(CAST(GETDATE() AS FLOAT)) AS DATETIME) AND tcd.PeripheralID IN (5001,5002) AND tcd.CallDisposition = 6

G.

New Member

Hi, Gergely.Could you advise,

Hi, Gergely.

Could you advise, how to get the list of calls that were abandoned while being held at an agent position from TCD? I need to figure exact ANIs for such calls. Tried to search for calls with CallDisposition 6, but there are no such calls at all. However, I know that there are some from the WebView Agent22 report (Aban Hold counter) and from Agent_Skill_Group_Half_Hour.AbandonHoldCallsToHalf field.

Hi,that's kind of strange.

Hi,

that's kind of strange. Can you get me a list of Peripherals and CallDispositions for that particular day?

You probably want to run SELECT tcd.PeripheralID, tcd.CallDisposition, COUNT(*) AS cnt FROM Termination_Call_Detail tcd WHERE tcd.DateTime > @desiredDateFrom AND tcd.DateTime < @desiredDateTo GROUP BY tcd.PeripheralID, tcd.CallDisposition ORDER BY 1,2

Thanks.

G.

New Member

Thanks for reply, Gergely.One

Thanks for reply, Gergely.

One thing I forgot to mention, I need that information in regards of one agent.

So here is the output for the procedure, there are some CallDispositions of 6.

PeripheralID CallDisposition cnt
------------ --------------- -----------
5000         1               76
5000         3               192
5000         4               79
5000         6               9
5000         7               53778
5000         10              474
5000         13              1086
5000         14              14570
5000         15              4946
5000         19              25
5000         26              9
5000         27              5
5000         28              2053
5000         29              50
5000         30              16841
5001         6               7601
5001         13              2731
5001         28              7592
5002         6               15849
5002         13              4879
5002         28              15192
5003         3               1
5003         4               5
5003         6               2
5003         7               3996
5003         10              1645
5003         13              1
5003         14              1930
5003         26              150
5003         27              9

(30 row(s) affected)

But when I use the same select and specify the AgentPeripheralNumber I get only this:

PeripheralID CallDisposition cnt

------------ --------------- -----------

5000         4               2

5000         7               36

5000         13              1

5000         14              237

5000         28              14

5000         29              1

5000         30              247

 

(7 row(s) affected)

 

However, I know from Webview report and Agent_Skill_Group_Half_Hour.AbandonHoldCallsToHalf table that this agent had 4 aban hold calls for the specified day.

Hi,let's try the other way

Hi,

let's try the other way around, filtering out rows with CallDisposition 6 and then take a look at all call legs. I have a feeling that the agent was in the middle of transferring the call when the customer disconnected. This could actually mean that it's not even going to be CallDisposition 6

Can you try the following SQL queries, export the result to CSV, post the result to here:

DECLARE @dateFrom DATETIME, @dateTo DATETIME
SET @dateFrom = '2014-07-22 00:00:00' /* use your datetime here */
SET @dateTo =   '2014-07-23 00:00:00'
SELECT tcd.RouterCallKeyDay, tcd.RouterCallKey,tcdx.*
FROM Termination_Call_Detail tcd
LEFT OUTER JOIN (SELECT * FROM Termination_Call_Detail WHERE DateTime > @dateFrom AND DateTime < @dateTo) tcdx
ON tcd.RouterCallKeyDay = tcdx.RouterCallKeyDay AND tcd.RouterCallKey = tcdx.RouterCallKey
WHERE tcd.DateTime > @dateFrom AND tcd.DateTime < @dateTo
AND tcd.CallDisposition = 6 AND tcd.RouterCallKeyDay > 0
ORDER BY 1,2

Then the following one too (this filters out rows for the agent):

DECLARE @dateFrom DATETIME, @dateTo DATETIME
SET @dateFrom = '2014-07-22 00:00:00'
SET @dateTo =   '2014-07-23 00:00:00'
SELECT tcd.RouterCallKeyDay, tcd.RouterCallKey,tcdx.*
FROM Termination_Call_Detail tcd
LEFT OUTER JOIN (SELECT * FROM Termination_Call_Detail WHERE DateTime > @dateFrom AND DateTime < @dateTo) tcdx
ON tcd.RouterCallKeyDay = tcdx.RouterCallKeyDay AND tcd.RouterCallKey = tcdx.RouterCallKey
WHERE tcd.DateTime > @dateFrom AND tcd.DateTime < @dateTo
AND tcd.AgentSkillTargetID = 6349 /* your agent's skilltargetid */
AND tcd.RouterCallKeyDay > 0
ORDER BY 1,2

Thanks.

G.

 

New Member

Thanks for reply, Gergely

Thanks for reply, Gergely.

Could be the transferred calls. I have run the queries and attached files with the output.

 

Hi, can you please tell me

Hi, can you please tell me the SkillTargetID of the agent plus the approximate time (from the Agent_Skill_Group_Half_Hour table). Thanks.

G.

New Member

Sure, SkillTargetID of that

Sure, SkillTargetID of that agent is 12017. Below is the part of the Agent_Skill_Group_Half_Hour table for the specified agent and day, where I found the abandoned hold calls.

DateTimeSkillTargetIDSkillGroupSkillTargetIDRecoveryKeyAbandonHoldCallsToHalf
05.07.201412:00:001201751066442054992252
05.07.201414:00:001201751066442055003561
05.07.201414:30:001201751066442055005901

 

Thanks!

 

Hi,I don' understand this

Hi,

I don' understand this.

This way: I don't have a 8.5 UCCE handy, only a 8.0 one (with IP IVR) and a 10.0 one (with IP IVR as well). I decided to replicate this issue on the 8.0 UCCE.

First try: incoming ACD call, agent picks it up, places the call on hold, caller disconnects. TCD CallDisposition 6 on Peripheral 5000, with the correct AgentSkillTargetID filled in. Agent_Skill_Group_Interval table AbandondHoldCalls incremented.

Second try: incoming ACD call, agent picks it up, initiates a consult transfer, call is placed on (network) hold, caller disconnects. Same result (CD 6, periph 5000, AbandonHoldCalls incremented).

Third try: incoming ACD call, agent picks it up, initiates a single step transfer to a CTI route point with a simple script behind it, the caller is placed into a queue which in turn places the call on hold (IP IVR script Call Hold step). Caller disconnects. Now this is getting interesting, the row with the AgentSkillTargetID is marked with CD 28 (blind transfer) and if I read on the rows with the same RCKD and RCK, the call is marked with CD 6 but on the VRU Peripheral. AbandonHoldCalls is not incremented.

I am out of ideas.

Is the Agent State Trace enabled for this particular agent? Can you take that for me, too?

Is there any other call scenario your agent(s) use? For instance, do they initiate conferences?

G.

New Member

Hi, Gergely.Thank you for

Hi, Gergely.

Thank you for your help, I realy appreciate this.

I agree this is a stange behavior, by the way, we have 7.5(1) version.

Luckly we have Agent State Trace enabled. I attached the csv file with the events for this particular agent for the entire day.

Regarding the call scenarios, I will make a research. I am new to that system, it was configured before me. But I think it is quite possible, that conference might be a case.

New Member

Hi, Gergely.I think, I found

Hi, Gergely.

I think, I found those abandoned calls. Here we have a Voice Record system. So each call from the client is in fact in conference with the agent and Voice Record system. 

I analyzed the Agent State Trace, particulary EventName and AgentState columns.

And I found, that for a normal call the flow is :

DateTimeEventNameCode
2014-07-05 12:02:59.0006WORK_READY
2014-07-05 12:03:00.0003READY
2014-07-05 12:03:01.0008RESERVED
2014-07-05 12:03:02.0004TALKING
2014-07-05 12:03:02.00310CALL_HELD
2014-07-05 12:03:02.0109CALL_INITIATED
2014-07-05 12:03:02.0134TALKING
2014-07-05 12:03:02.02013CALL_CONFERENCED
2014-07-05 12:03:49.0006WORK_READY

 

And here is the call flow for the abandoned call, this is where CALL_HELD goes straight to WORK_READY. So I assume it is lost from hold. 

DateTimeEventNameCode
2014-07-05 12:00:40.0006WORK_READY
2014-07-05 12:00:41.0003READY
2014-07-05 12:00:42.0008RESERVED
2014-07-05 12:00:43.0004TALKING
2014-07-05 12:00:43.00310CALL_HELD
2014-07-05 12:00:43.0109CALL_INITIATED
2014-07-05 12:00:43.0134TALKING
2014-07-05 12:00:43.02013CALL_CONFERENCED
2014-07-05 12:02:58.00010CALL_HELD
2014-07-05 12:02:59.0006WORK_READY

 

The only thing I have not figured yet, how to track ANI for such calls.

Hi,just a quick question

Hi,

just a quick question about your ANI question: is there a RouterCallKeyDay and RouterCallKey column in the report you are looking at? RCKD and RCK is supposed to be the unique call id for the whole duration of the call (with some exceptions).

G.

New Member

Got it. Exactly what I was

Got it. Exactly what I was looking for. Now I can track them down in the TCD table by RCK. Thanks a lot Gergely, apreciate your help.

Dennis, this is great news

Dennis, this is great news indeed.

One more thing: did you/would you spend some time with the agent to gain more information about these calls? I would like to see what happened there, from the point of view of the agent.

Thanks for the rating.

G.

New Member

Gergely, unfortunately I did

Gergely, unfortunately I did not have a chance to talk to that agent. Will try to get in touch and gain more details.

Thanks.

New Member

Hi Gergely,

Hi Gergely,

Could you let me know how to take logs of calls hitting cvp error DN ?

1551
Views
25
Helpful
20
Replies