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 Mike Lewis on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Disconnect after ended IVR session 2

Status
Not open for further replies.

Benighted

Technical User
May 2, 2006
43
SE
We have an IVR system that conists of 2x MPS500 with 30 lines each hanging on the back of an M1\Symposium.
In our Symp-script we GIVE IVR at the very beginning of the call. When the customers are inside the IVR they can, amongst a bunch of other things, choose to be transferred to an CSR. When we are closed we have logic within the IVR application (xMP\VXML) so that choice for going to CSR will be removed. But if a customer screws up (fails too much on DTMF, wrong PIN code etc.) then we give opening hours prompt and tell the customers to call back when we're open. Here we have a problem, because what happens after the IVR server (the MPS) hangs up the call, then the call is thrown back into the IVR again. This has clearly something to do with the scripting in Symposium. How can we add logic within the Symp script that says that if a customer comes from the IVR outside of openinghours, then we will DISCONNECT? All help is very much appreciated.
This is the script now (what is below GIVE IVR is basically just a backup script used if the IVR is out of service) :

/* Title: CDN 6060 Kundeservice*/

GIVE IVR 71199

IF (DATE = Holiday_closed)
OR (DATE = JulNyttAften AND TIME OF DAY = Closed_julnytt)
OR (DATE = Romjuldays AND TIME OF DAY = Closed_Romjul20)
OR (DATE = Askeonsdag_closed AND TIME OF DAY = Closed_Askeonsdag)
OR (DATE = Holiday_paske AND TIME OF DAY = Closed_Paskeaften)
OR (DAY OF WEEK = saturday AND TIME OF DAY = Closed_sat_16)
OR (DAY OF WEEK = sunday)
OR (DAY OF WEEK = Weekdays AND TIME OF DAY closed_hours_GE1)
THEN GIVE IVR 6121 WITH TREATMENT 1051
END IF

QUEUE TO SKILLSET Kundeservice_6060
WAIT 2 /* Allow time in case an agent is available */

GIVE MUSIC music_route


SECTION WaitLoop
IF NOT OUT OF SERVICE Brann THEN /* Sjekker om det er noen logget inn på Brann skillset*/
GIVE RAN Brann_ran /* GIR talemedling ved Brann*/
DISCONNECT
END IF

WAIT 20
IF NOT QUEUED THEN
IF OUT OF SERVICE Kundeservice_6060 THEN /* Sjekker om det er agent innlogget*/
QUEUE TO SKILLSET Kundeservice_6060
GIVE IVR 6121 WITH TREATMENT 1054 /* Velkommen til GEMB, alle linjer er opptatt*/

DISCONNECT
ELSE

WAIT 2
END IF

END IF



EXECUTE WaitLoop


-------
(-:


 
Well,

I agree that your scripting is less than desirable. The GIVE IVR command is used to plan an announcement to the caller, not to sent the call to an IVR.

When you do a GIVE IVR command, SCCS thinks the call is coming back after a treatment (announcement) is played. That is why the call is coming back under control of the SCCS after the IVR system is done with the call.

There are several ways to send the call to the IVR. The quickest is to do a ROUTE CALL command to the pilot number for the IVR. You can get fancy by putting in variables for alternate call treatment if the IVR is down, and programming the IVR ports as agents in the switch and even on the SCCS so you can use the QUEUE TO SKILLSET command.
 
Thanks for your reply. I have testet it and it works as expected (using ROUTE CALL).
Only question I then have is if this will affect any of the Symposium reports?
 
When you use a ROUTE CALL command, the call is pegged in the Terminated Catagory on the Application Display. It will not be on the Application Performance Report. Only Offered, Answered, and Abandoned are shown on the Application Performance Report.

You will have to go to the Application Call Treatment report which breaks out the Termintated Calls (Overflow, Disconnect, Routed, Default, Give Busy).
 
Ok. And I can see that it will also affect the call by call report since Symposium is now releasing control of the call.

Before:
Call ID: 1 340
21:16:04 Give Ringback NULL
21:16:04 Handed Over to Master Application NULL CDN: L_APP: Master_Script NORM
21:16:04 Local Call Arrived NULL RTE: 0 TRK: 87 CDN: DNIS: CLID:
21:16:06 Task Flow Handed Off NULL TF: 1 TF: 10036
21:16:06 Call Entered IVR Queue NULL L_APP: Kundeservice IVR_Q: 71199
21:16:06 Application Interflowed NULL L_APP: Master_Script L_APP: Kundeservice
21:16:06 Give IVR NULL L_APP: IVR_Q: 71199
21:16:08 IVR Call Session Begin NULL IVR_Q: 71199 IVR_P: 4-1-0-13
21:17:07 Local Call Abandoned NULL
21:17:07 Returned From IVR NULL IVR_Q: 71199 L_APP: Kundeservice
21:17:07 IVR Call Session Interrupted NULL IVR_Q: 71199 IVR_P: 4-1-0-13 REASON: ABANDONED


Now:
Call ID: 808
21:20:13 Give Ringback NULL
21:20:13 Handed Over to Master Application NULL CDN: L_APP: Master_Script NORM
21:20:13 Local Call Arrived NULL RTE: 0 TRK: 1 CDN: DNIS: CLID:

 
Is your IVR CTI enabled to allow screenpopping to agents on breakout?

If so, you could set each port up as a Symposium agent with an IVR skillset.

Calls would enter the IVR via a 'QUEUE TO SKILLSET sk_IVR' command. This also gives you lots of MI on port usage, including making them visible on real time displays. You can also build in an overflow (xxx)if IVR is down (i.e. no agents logged in) or if you have a problem with the IVR application and you want to manually reroute around the IVR (change value of a call variable)

e.g.

IF cv_IVR_down = true THEN
ROUTE CALL XXX
END IF

IF IDLE AGENT COUNT Sheila_IVR_1 = 0 THEN
ROUTE CALL XXX
END IF

IF NOT OUT OF SERVICE Sheila_IVR_1 THEN
QUEUE TO SKILLSET Sheila_IVR_1 WITH PRIORITY 3
WAIT 2
ELSE
ROUTE CALL XXX
END IF

DD
 
Thanks for your great replies. Everything is working perfectly now :)
 
Benighted: how long were people in the IVR before SCCS resumed control of the call? Did the SCCS wait until th eIVR session was totally done or did it timeout?

The reason I ask is that we have a state government customer with long queue times. They want to allow customers to "choose" to navigate through the IVR menus when the queue is high, but keep their place in queue so they will be answered is an agent becomes available.

I have two concerns: ripping a customer out of an IVR menu, and potential timeout issues.
 
SCCS didn't resume control of the call before the IVR session was ended by the customer.
I would never rip a customer out of the IVR menu unless I give them an option first.("There is a CSR available. Please press 1 if you still wish assistance, or press 2 to continue")

We are giving our customers the option to go into the IVR if there is a long queue, but if they want an agent they have to make the choice within the IVR.
 
Thanks - I am having a hard time convincing my customer of the danger of ripping a caller our of the IVR when an agent becomes available.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top