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

CCMS 6.0 Transfer inbound call from one skillset to another skillset

Status
Not open for further replies.

nemesis51

MIS
Mar 30, 2005
19
CA
I need scripting help:

I need to move call from one skillset queue to another one after 28 secs. Here is what I have come up with:

ScriptB_scr:

IF OUT OF SERVICE THEN
ROUTE CALL 2222
ELSE
Queue to Skillset2_sk
WAIT 2
GIVE MUSIC

END IF

Section WAITLOOP
WAIT 10
IF age of call >= 28 then

REMOVE FROM QUEUE Skillset2_sk
EXECUTE SCRIPT ScriptA_scr

END IF

EXECUTE WAITLOOP
__________________________

ScriptA_scr:

IF OUT OF SERVICE THEN
ROUTE CALL 3333
ELSE
Queue to Skillset2_sk
WAIT 2
GIVE MUSIC

Queue to Skillset1_sk
WAIT 2
GIVE MUSIC

Section WAITLOOP
WAIT 10
IF age of call >= 28 then

REMOVE FROM QUEUE Skillset1_sk
EXECUTE SCRIPT ScriptB_scr

END IF

EXECUTE WAITLOOP
_______________________

This is the correct logic/commands, is there a better way to write this. It seems to work but not sure if its right.

Please advise...
 
Without putting to much thought into it, I think you have set up the possibility of an endless loop....


You seem to be missing some details in the script but

Script B : if its out of service you execute script a, yet

Script A is it is out of service you send it to script B, and there is no way out (at least with what you have posted.

As a suggestion.....

When you reach your time limit, do not remove from skillset.... keep the call there....

Then

You can do go to the other script.... AND then there is the possibility of a check:

if (priority in skillset A= 0) AND (priotity in skillset B = 0) then execute (what ever you want at this point)

In this way you will stop and endless loop.

Good Luck
 
Let me revise:

Primary inbound sales queue 1:

ScriptB_scr:

IF OUT OF SERVICE THEN
ROUTE CALL 2222
ELSE
Queue to Skillset2_sk
WAIT 2
GIVE MUSIC
END IF

Section WAITLOOP
WAIT 10
IF age of call >= 28
then
REMOVE FROM QUEUE Skillset2_sk

EXECUTE SCRIPT ScriptA_scr
END IF

EXECUTE WAITLOOP


Primary inbound sales queue 2:

ScriptA_scr:
IF OUT OF SERVICE THEN
ROUTE CALL 3333
ELSE
Queue to Skillset1_sk
WAIT 2
GIVE MUSIC
END IF

Section WAITLOOP
WAIT 10
IF age of call >= 28 then
REMOVE FROM QUEUE Skillset1_sk

EXECUTE SCRIPT ScriptB_scr
END IF

EXECUTE WAITLOOP



I need the both agents from either queue to take calls after the call has been in either queue for longer than 28 secs. Just in case an agent is available from either queue.

I don't think this is an endless loop if all agents log off, making application out of service, therefore routes calls to an ext / aft-hours mailbox/annoucement.

Let me know if this logic is sound...or a better way to right this script.

Thanks
 
Your logic is not sound....

You are removing from skillset, then executing another script. You do not queue to both skillsets.

You do not provide escape paths.
 
How about just adding the second skillset to each script after the timeout (28 seconds) is reached? I am using more lines of code here to be really simple. Also added in an in-service check for the skillset(s) in the loop. And I assumed after two WAIT 2 and WAIT 10 steps you were close enough to 28 second time out. (Why 28 seconds?)

ScriptB_scr:

IF NOT OUT OF SERVICE THEN
QUEUE TO SKILLSET Skillset2_sk
WAIT 2
ELSE
ROUTE CALL 2222
END IF

GIVE MUSIC xx
WAIT 10

IF NOT QUEUED THEN
IF NOT OUT OF SERVICE Skillset2_sk THEN
QUEUE TO SKILLLSET Skillset2_sk
WAIT 2
ELSE
ROUTE CALL 2222
END IF

WAIT 10

IF NOT OUT OF SERVICE Skillset1_sk
THEN QUEUE TO SKILLSET skillset1_sk
WAIT 2
ELSE
ROUTE CALL 3333
END IF

SECTION WAITLOOP

IF NOT QUEUED THEN
IF NOT OUT OF SERVICE Skillset2_sk THEN
QUEUE TO SKILLLSET Skillset2_sk
WAIT 2
END IF

IF NOT OUT OF SERVICE Skillset1_sk THEN
QUEUE TO SKILLLSET Skillset1_sk
WAIT 2
END IF
END IF

/****
Where should call go if both skillsets are out of service?
****/
IF NOT QUEUED THEN
ROUTE CALL xxxx
END IF

WAIT 10

EXECUTE WAITLOOP

As noted above - you need a call treatment if both skillsets are out of service - you cannot keep bouncing the call back and forth in an endless loop.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top