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!

IVR Scripting problem 2

Status
Not open for further replies.
Jun 15, 2009
49
CZ
If Agent log-out call still stay in queue instead of being redirected to SECTION TRR_Overflow.

Please see attached document with description and Visio diagram (link goes to on-line reader, no download neccesary)
 
While the logic in the attachment looks ok, I prefer to take a more active and direct approach:

IF NOT OUT OF SERVICE Test_5901B THEN
QUEUE TO SKILLSET Test_5901B BY LONGEST AVAILABLE AGENT WITH PRIORITY TRR
WAIT 2
ELSE
EXECUTE TRR_OVERFLOW
END IF

SECTION MYQUEUE
IF NOT QUEUED THEN
IF NOT OUT OF SERVICE Test_5901B THEN
QUEUE TO SKILLSET Test_5901B
WAIT 2
ELSE
ELSE EXECUTE TRR_OVERFLOW
END IF
END IF

GIVE MUSIC 72
WAIT 5
EXECUTE MYQUEUE

SECTION TRR_OVERFLOW
GIVE MUSIC TRR_Music
WAIT 900
DISCONNECT

I must say I do not understand the business reason for TRR_Overflow. When there are no agents logged in the caller is stuck listening to music for 15 minutes and then disconnected. If you are going to hang on to them for that long, wouldn't you want to test the skillset to see if any agents have logged in and attempt to re-queue the call?

There is no reason to remove the call from the skillset. If the skillset is out of service, the call is not queued against that skillset. The skillset will not even be listed on a Web Client real time display if it is out of service.

Bottom line - there are a zillion ways to script call flow. This script as you have it written looks like it should work, but it is not how I would write it.

 
> Milesprower:
>
> I must say I do not understand the business reason for
> TRR_Overflow. When there are no agents logged in the
> caller is stuck listening to music for 15 minutes and
> then disconnected. If you are going to hang on to them
> for that long, wouldn't you want to test the skillset
> to see if any agents have logged in and attempt to
> re-queue the call?

Exactly, that's the point. We would like to re-queue the call but I do not know how to achieve it.
 
So the call has to be re-queued only when an agent has logged in?
Following SECTION will check every minute if the skillset is up'n'running and gives up after 15 try (15*60 = 900 minutes);

SECTION TRR_OVERFLOW
GIVE MUSIC TRR_Music
WAIT 60
IF NOT OUT OF SERVICE Test_5901B THEN
EXECUTE MYQUEUE
END IF
Loop_counter Assigned (Loop_counter + 1)
IF Loop_counter > 15 THEN
DISCONNECT
ELSE EXECUTE TRR_OVERFLOW
END IF
 
Thanks; I do make mistakes though; the (15*60 = 900) 'minutes' are 'seconds' of course.

P.S.
Loop_counter is an INTEGER type Call Variable
 
And just a small observation -- take the GIVE MUSIC TRR_Music command out of that loop, and put in immediately before the section. You do not want to keep reissuing the same command -- it is not necessary (music will keep playing) and can throw errors besides.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top