cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
2338
Views
0
Helpful
2
Replies

Enquiry about sessions use in UCCX Script with PostCallTreatment script

cflax
Level 1
Level 1

Hi There,

I'm maybe not the super best ccx script porgramming guy out there but I thought this one is pretty straight forward when infact it doesn't seem like it.

The enviroment is a UCCX 11.5 SU1 (11.5.1.11001-34)

Goal should be simple, Blind Postcall treatment to be configured for a contact centre (New Feature in CCX 11.x) and then passing the Calling Number and Agent info UNIQUELY to the Post call survey script to get the Built-in custom variables historical report to read the custom variables correctly and rate the Agents against their survey ratings.

For this I used a CCX (session) to get the session info from the main script and send it to the other script when the Postcalltreatment is activated (Agent clicks on Finesse end button and ends call)

Any single call test is absolutely fine where I see the session info populated correctly for the call and passed flawlessly to the second script, but my problems start when there's a higher flow of calls in a live enviroment.

The session, which after reading multiple threads, seems to have a 30 minutes cached timer but seems like the session is being overwritten when read in the second script when multiple calls are coming in to the system.

 

Main Script

I'm not sure what really "starts" the session collection, but what I did is that in the select Resource connected branch I added [ (Get User Info) > (Get Session) step to populate in a (new) variable called session> (set) the session to replace the old variable session > (Get Call Contact Info); for the Calling number variable to be unique and different than the call contact info step result after the accept step in the begining of the script > (Set Session info) with calling number from get call contact info step, and Agent ID and Agent Extension from get user info step.

 

Second script

Session variable named "session" with get session (Get session new property asking if it's new set to "NO") > Set Enterprise call info with the variables collected populated.

 

Both Scripts' snapshots are attached

 

Does anyone know how to treat sessions more uniquely? Am I doing a step more than I should?

Does having the session named "session" affect any default UCCX settings? Am I populating the get call contact info step correctly and in the right place?

 

Note: There was a bug found in the 11.5 version which affected my custom variables reporting before,  CSCvc67838 & CSCvc01391

Upgraded to SU1 which at least now shows the custom variable populated for a single call without problems, still don't trust it when multiple calls come in? Or maybe I'm doing things wrongly?

 

I would appreciate some help!

 

Yazan 

 

 

1 Accepted Solution

Accepted Solutions

Anthony Holloway
Cisco Employee
Cisco Employee

First, the Session is created at the moment contact is active on the system, not all the way down at the Select Resource step.

 

Second, you should not be creating new Sessions, instead, use the one that is created automatically for your Contact, by getting a reference to it with the Get Contact Info step.  In fact, you can use the Session Mapping step in the main script

 

Third, in your post call survey script, I don't see how/where you're getting the Contact's session.  It might be that you are creating a new session here, but I don't see the Session Mapping in the main script, nor do I see the Get Contect Info step in the post call survey script.  You'll need to do one or the other.

 

Last, the session timeout is 30 minutes by default, and can be changes in System Parameters in AppAdmin.

 

I think the most likely issue people hit is, checking for the calling number and associated session too soon in your post call survey script, and the system ends up picking up the Agent's call as the caller, instead of the customer.  Try moving your welcome prompt above these steps, and have it cause a small delay before you start using session info.  You might even need to play with different lengths of delays too.

View solution in original post

2 Replies 2

Anthony Holloway
Cisco Employee
Cisco Employee

First, the Session is created at the moment contact is active on the system, not all the way down at the Select Resource step.

 

Second, you should not be creating new Sessions, instead, use the one that is created automatically for your Contact, by getting a reference to it with the Get Contact Info step.  In fact, you can use the Session Mapping step in the main script

 

Third, in your post call survey script, I don't see how/where you're getting the Contact's session.  It might be that you are creating a new session here, but I don't see the Session Mapping in the main script, nor do I see the Get Contect Info step in the post call survey script.  You'll need to do one or the other.

 

Last, the session timeout is 30 minutes by default, and can be changes in System Parameters in AppAdmin.

 

I think the most likely issue people hit is, checking for the calling number and associated session too soon in your post call survey script, and the system ends up picking up the Agent's call as the caller, instead of the customer.  Try moving your welcome prompt above these steps, and have it cause a small delay before you start using session info.  You might even need to play with different lengths of delays too.

Hi Anthony,

Thanks for the hint in regards to the session config, I removed the step where a new session is created and instead went with the get conact info step at the begining of the main script which just worked for me! Brilliant!

It's just that the documentation is so scarce when it comes to sessions that I might have configured a step too many, so thatnks!

My only problem now is with the Post Call Treatment solution is that calls that shouldn't be even reaching the post call treatment are making their way through.

 

Scenario: Agent calls company internal extension for a transfer or a normal call -- Extension not available so call forwards to extension's voicemail -- Agent clicks end button on Finesse -- Postcall survey plays for the voicemail box which starts saving the Postcall survey as a voice message on the unavailable called person’s mailbox (Not good!)

 

I'm working with Cisco TAC on this, and may even need to filter the internal extensions on CUCM from reaching the postcall application trigger altogether.

 

Maybe you have some ideas that could help me in this quest?

 

Yazan