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

Including a counter in a script or Age of call

Status
Not open for further replies.

TecoGuy

Technical User
Feb 24, 2010
9
0
0
GB
I would like to include a counter or age of call in a script therefore the call will be routed to another destination if not answered

Can't for the life in me find why the script below is not working can someone please help me what I'm doing wrong? When I use this to test the call flows as normal but after 3 bounces it does not divert. why? (loop_count is an INT variable with the value of 3)

Section Hold_Loop

ASSIGN loop_count - 1 TO loop_count /* deducts 1 from 3 */

IF loop_count = 0 THEN
WHERE DNIS EQUALS
VALUE 8912 : ROUTE CALL Response_line
END WHERE
End IF

IF NOT QUEUED THEN
IF NOT OUT OF SERVICE cv_skillset THEN
QUEUE TO SKILLSET cv_skillset
WAIT 2
ELSE
IF NOT OUT OF SERVICE Default_Skillset THEN
QUEUE TO SKILLSET Default_Skillset
WAIT 2
ELSE
EXECUTE SCRIPT UNFORSEEN
END IF
END IF
END IF

IF NOT LOGGED OUT AGENT gv_unforseen THEN
EXECUTE SCRIPT UNFORSEEN
END IF

EXECUTE Hold_Loop
 
Teco- 1 thing should have asked before. When you say it doesn't work what does that mean? What treatment do you receive?

Also is that 90XXX number routable. should it be 91XXXX?

Also not sure about the placement of all your ELSE and END IF statements....
 
I did the following code from CallcentreExpertise and still not working. The call routes to more then 3 agents

ASSIGN 0 TO loop_count

Section Hold_Loop
IF loop_count < 2 THEN
ASSIGN loop_count + 1 TO loop_count
ELSE
ASSIGN 0 TO loop_count
END IF

IF loop_count = 2 THEN
ROUTE CALL 907921871207
else

IF NOT QUEUED THEN
IF NOT OUT OF SERVICE cv_skillset THEN
QUEUE TO SKILLSET cv_skillset
WAIT 2
ELSE
IF NOT OUT OF SERVICE Default_Skillset THEN
QUEUE TO SKILLSET Default_Skillset
WAIT 2
END IF
END IF
END IF

WAIT 5

EXECUTE Hold_Loop
 
Teco- It's hard to understand what you are trying to do based on your last comment of call routes to more than 3 agents and your previous post:

"I want the call to hunt to 3 different agents which are available however if they do not pick the call up I want the call to be routed to somewhere else as we want the call to be answered urgently"
Therefore the agents have 3 chances to pick the call up otherwise it will be routed out
Please help to find out what is wrong.

Are you really validating whether the counter cv is increasing? When you queue to a skillset it's not really hunting. Unless you have diff priorities and set to present vs force it could look like that I suppose. Are more than 3 agents in the skillset? I don't think your situation has anything to do with counter cv not working.

I think we all want to help, but your intent is somewhat hard to understand.

If you want to test the function of the counter increasing just do this:

Assign 0 to loop_count

Give Music (or GIVE IVR/RAN msg)
WAIT 5

Section Hold_Loop
IF loop_count = 2 THEN
ROUTE CALL 907921871207
END IF

ASSIGN loop_count + 1 TO loop_count

EXECUTE Hold_Loop

After 10 seconds or so you should route to wherever 907921871207 terminates. If that works your issue has to do with your skillset queing section and nothing to do with loop_count not working.
 
When I use this to test the call flows as normal but after 3 bounces it does not divert.

Based on this comment I'm taking a guess here: You have a skillset with more than 3 people staffed. You have set calls to present to phone and after so many rings if agent does not answer phone is set to not ready. The call then is offered to the next agent. After no answer offered to next agent, etc.... Using this logic the call will be offered to every avail agent in that skillset before you would reach the execute hold loop step. It doesn't offer just to 1 agent and then loop around again.

Like I said just a guess here.
 
Picklemogg you are right I guess this is the reason the call does not loop because it will eventually offer to every agent who is available.

How would I achieve the goal if I want the call to go to agent #1 however they do not pick the cal for whatever reason, then the call will route to agent #2 and then lastly agent #3. After this agent I want the call to be routed elsewhere therefore it does not go to agent #4 who is ready.

Agent 1,2,3,4 have the same skillset assigned but having the call ringing x times is more than enough times to be answered therefore the call must be answered by routing to another number.

The reason behind it some agents do not use the function “not ready” key on their phone and just walk away therefore calls are just ringing at a persons desk if they are not there.

I hope this is a bit more clear

Thanks
 
If this is the case why don't you use the AGE OF CALL command? after a periodof time you will automatically route the call to another number.
 
I tried using age of call but it didn't route. I thought counting the loop will be the best option but I guess they both failing on me.
 
I'm not sure offhand how you can achieve this using skillset routing. The thing of it is when you queue the call and it is being presented to a number of agents- in your case bouncing between since you use a present call fashion (vs forced) as far as the script is concerned the call remains at the queue skillset step- it isn't really progressing further through the script at that time. If it gets to the point of no agents being avail it then would. So you really can't check for age of call at that time. There could be a way, but I can't think of one offhand. You can use handler statements at the beginning of scripts to account for certain default type conditions, but I do not think age of call is a valid handler event.
 
Ok how long do you want the call to wait before routing it?

The easiest way to do it is to give those 3 agents a skillset. You can mess around with the skillset priority to decide which order it should hunt for the agents. Also why use a loop at all if there's a specific amount of time you want the call to be answered in.

The below example will check 1 skillset for service and queue, otherwise checks the second skillset for service and queues. If both are out of service it will route the call. If the call is queued to either skillset it will wait and play music for 30 seconds for an agent to pick it up. If no agent picks it up in 30 seconds it routes the call. No need to over complicate things.

IF NOT OUT OF SERVICE cv_skillset THEN
QUEUE TO SKILLSET cv_skillset
WAIT 2
ELSE
IF NOT OUT OF SERVICE Default_Skillset THEN
QUEUE TO SKILLSET Default_Skillset
WAIT 2
ELSE
ROUTE CALL 907921871207
END IF
END IF

GIVE MUSIC

WAIT 30

ROUTE CALL 907921871207


 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top