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!

Expected wait time in CC6 using Miran

Status
Not open for further replies.

learner136

Technical User
Jun 23, 2011
26
US
Hi All,

I want to configure the feature of Expected wait time in CC6 using Miran.

My requirement is :- whenever the custmer call into the call center then a prompt will be played saying that ur call will be answered in ... seconds.

I have tried below script but no success.

IF NOT OUT OF SERVICE rantest THEN
QUEUE TO SKILLSET rantest
WAIT 2
ASSIGN EXPECTED WAIT TIME rantest TO EWT_CV
IF EWT_CV < 120 THEN give ran ran_gv
ELSE
IF EWT_CV < 300 THEN give ran ran2_gv
ELSE give music 40
END IF
END IF
End if

here EWT_CV is an second variable. and ran_gv and ran2_gv is ran variable.

i have tested this by changing the values for EWT_CV but in any case only ran_gv is announcement is played .(i have configured 2 prompt and one music 40).

Also tried by making EWT_CV as integer variable but still the facing the same issue.


Thanks.

 
Since the check EWT_CV < 120 does not pass values > 120 your script never reaches the EWT_CV < 300 check.

Try:

IF EWT_CV > 300
THEN Give music 40
ELSE IF EWT_CV > 120
THEN give ran ran2_gv
ELSE give ran ran_gv
END IF
END IF


1 remark: Think you can use EXPECTED WAIT TIME only when the skillset has enough inbound calls to determine the correct number of seconds. I'm more into a message like: "there are ... callers before you".
 
Hi All,

Utrg : I have tried ur script but i m getting only one ran annoucement while changing the EWT_CV values.

otherthen this i have tried below script which also has same above problem.

IF NOT OUT OF SERVICE rantest THEN
QUEUE TO SKILLSET rantest
WAIT 2
section loop1
ASSIGN EXPECTED WAIT TIME rantest TO exp_ran_CV
WHERE exp_ran_cv EQUALS
VALUE 2..10:GIVE RAN RAN_GV
VALUE 11..20:GIVE RAN RAN2_GV

DEFAULT:GIVE MUSIC 40
execute loop1
END WHERE
end if

Testing done : -

1.Created a agent in cc6 and assign a test sillset with name "RANTEST" to it.

2.When agent(7070) is logged in ,i m calling CDN of RANTEST Skillset from another ip phone.

3.And Only one announcement that is Music 40 is played (Evenafter changning different values of exp_ran_cv)
 
I see problems with the bit of script you have shown:

1: I am assuming that you are using an aquired CDN. If not then you are using basic ACD and the below does not count.

2: If you log a user in, you would use Not Ready to hold the call in queue.This means that the clock is ticking on the expected wait time from the login time. There is a lot in the scripting docs that relate to the calculation of the EWT. It would be good to check that out as it I think this will explain why your values below do not work.

WHERE exp_ran_cv EQUALS
VALUE 2..10:GIVE RAN RAN_GV
VALUE 11..20:GIVE RAN RAN2_GV

In the above, you make no allowance for the call being greater than 20 secs. That being the case, then you play music. This fits in with what you state: "3.And Only one announcement that is Music 40 is played ". Also see how EWT is calculated.

Although possibly only a test script, it is poorly written:

DEFAULT:GIVE MUSIC 40
executeloop1
END WHERE
end if

You provide no escape points. The section should logically finish within the section, not after the looping statement.
--------------------------------------------

What about:

IF NOT OUT OF SERVICE rantest
THEN QUEUE TO SKILLSET rantest
ELSE (insert what you want here)
END IF

WAIT 2

ASSIGN EXPECTED WAIT TIME rantest TO exp_ran_CV (you only need this once)

SECTION loop1

IF (exp_ran_CV <= 10) THEN GIVE RAN RAN_GV
ELSE IF (exp_ran_CV > 10) THEN GIVE RAN RAN2_GV (This means that even if the call is older than 20secs, it still gets a message)
END IF
END IF

GIVE MUSIC 40

EXECUTE loop1

(And I have given no escape points either)I think that the syntax is OK, but it may need a bit of debugging.

Before you test, try putting a few calls to the test agent, and answer them. This will give a lower value initially on the EWT and may actually give you the results you want.

You also need to check that you can access the RANs (acod off an extension is the easy way)
 
Hi All,

DFKSydney Thanks for ur reply.

I have tried ur script but then also i m getting RAN_GV
Music evenafter changing different values for exp_ran_cv.

Note : I have not calculated the EWT.I m just changing the exp_ran_cv value and testing all three announcement in the script.

What steps do u think i should take in my case?

I will do that.

Thanks

 
I think my logic is almost sound. I have realised that there is a flaw....


SECTION loop1
(move the EWT variable assign to here)

ASSIGN EXPECTED WAIT TIME rantest TO exp_ran_CV

(the reason for the move is that as you go through the loop, wait time will increase. The problem with this is that initially you may have a "short wait message" but if the agents are on long calls, then that time will increase. The customer then gets long wait messages..... not a good thing.

In fact lets take an example of 2 calls... the first arriving only seconds before the 2nd call. Call 1 is answered by the 1 and only agent logged in.... call 2 arrives. The EWT at this point is very small, as there has only been 1 call. The 2nd call enters loop1. It is given RAN_1... short wait. However the call drags on, to the point where call 2 goes through the 40sec music play. It then loops to the beginning of Loop1.... the ewt is now well beyond the 20secs that you are allowing, so the 2nd message that the caller gets is now the long waiting time message.)

IF (exp_ran_CV <= 10) THEN GIVE RAN RAN_GV
ELSE IF (exp_ran_CV > 10) THEN GIVE RAN RAN2_GV



Other Suggestions:

1: Make sure that your variables are set to the correct ran routes, not the same ran route or reversed.

2: In the MIRAN, make sure that you have actually assigned the correct message to the correct channel.

If you are doing nothing to calculate the EWT initially, my feeling is that your routes or allocations are reversed, and that you are actually getting second ran (ran2_gv), but for some reason ran_1's message is playing.

And to add to the confusion, you may need to consider loop counters so that you do not start with a short wait message, and then play a long wait message.

Do you have other messages? Try changing the ran route variables to them and test. Basically what you are doing is proving your values are correct.

And finally..... remember that a MIRAN will not really do what you want.... that is advise that the caller will be answered in X seconds.... it can only give a generic message with an indication. If you want times, you would need a mail integration (CP or MM).
 
Hi All.

DFKSYDNEY : I have tried below script as per ur suggestion

QUEUE TO SKILLSET rantest
section loop1

ASSIGN EXPECTED WAIT TIME rantest TO exp_ran_CV

IF (exp_ran_cv <= 180)
THEN GIVE RAN RAN2_GV
ELSE IF (exp_ran_cv >180)
THEN GIVE RAN RAN_GV
END IF
END IF


GIVE RAN RAN1_GV

EXECUTE loop1

In this case when i put exp_ran_cv = 180 then RAN2_gv and RAN1_gv both are played one after other and i think it is right.

But when i put exp_ran_cv = 188 which is greater then 180 then also RAN2_gv and RAN1_gv are played.

I dont understand why the script is not executing the else part while making exp_ran_cv = 188.

Kindly suggest...

Thanks.


 
QUEUE TO SKILLSET rantest

section loop1

ASSIGN EXPECTED WAIT TIME rantest TO exp_ran_CV

IF (exp_ran_cv <= 180)
THEN GIVE RAN RAN2_GV
ELSE IF (exp_ran_cv >180)
THEN GIVE RAN RAN_GV
END IF
END IF

GIVE RAN RAN1_GV <<==Why do you have this? What happened to music????

EXECUTE loop1
 
Hi All,

Good Morning.


DFKSYDNEY:--

RAN1_GV is just the annoucement instead of MUSIC 40.

And the script that u have given me is already been tried.

But still the same output as i have mentioned in the previous post.

Kindly suggest....

Thanks
 
Prove your recordings and recording to channel allocations.
 
RAN2_gv is a shortest annoucement.
RAN_gv is average annoucement and RAN1_gv is longest wait time annoucement.

RAN2_gv Route 55,Channel 136 0 0 4

RAN1_GV Route 43,channel 136 0 0 5

RAN_GV Route 42,channel 136 0 0 2

Please find the link for attachment.


For annoucement i have just configured three different RAN just for testing.
 
That is the PABX configs.

I have suggested that you prove the configs..... that is the MIRAN (voice recordings to channel allocations) plus your CC6 / Symposium variables to actually get to the PABX routes.

You are also not commenting on the fact that a caller can get a "short" waiting time message, followed by possibly a long waiting time message.
 
According to my script first shortest annoucement will be played ie. RAN2_GV then above 180 should be played ie RAN_GV and then if above both condition fails then RAN1_GV will be played.


For configuration,

I have attached the snapshots of CC6 variables and RAN Variables.


Thanks.
 
You have still not indicated that you have proven the announcement to channel allocation in the Miran.

I still believe that you have a problem with the EWT and the way that it is being calculated then used by your script. See the replies : 4 Jul 11 21:23 and 5 Jul 11 20:59.

Have you read the scripting guide, in particular as to how EWT is calculated and applied???????

 
Hi All,

DFKSydney :- Sorry for the late reply.

I have tried below script and it works when i had queued 5 to 6 calls.

GIVE RINGBACK
QUEUE TO SKILLSET support_sk


ASSIGN EXPECTED WAIT TIME support_sk TO EWT_cv

IF (EWT_cv <120) THEN
GIVE RAN short_wait_gv

GIVE MUSIC 40
EXECUTE WAITLOOP
END IF


IF (EWT_cv> 120) THEN
GIVE RAN long_wait_gv

GIVE MUSIC 40
EXECUTE WAITLOOP
END IF

SECTION WAITLOOP

IF OUT OF SERVICE support_sk THEN
DISCONNECT

ELSE
QUEUE TO SKILLSET support_sk
WAIT 2

END IF

EXECUTE WAITLOOP

It is giving me both short and long annoucement.

But in this script i want to add the How much is the queue of the customer then how should i do this?
 
GIVE RINGBACK
QUEUE TO SKILLSET support_sk

ASSIGN EXPECTED WAIT TIME support_sk TO EWT_cv
IF (EWT_cv <120) THEN
GIVE RAN short_wait_gv

GIVE MUSIC 40
EXECUTE WAITLOOP <<== Because of this you do not get the long announcement
END IF

IF (EWT_cv> 120) THEN
GIVE RAN long_wait_gv
GIVE MUSIC 40
EXECUTE WAITLOOP
END IF

SECTION WAITLOOP <<== You have a problem here as the loop does almost nothing

IF OUT OF SERVICE support_sk
THEN DISCONNECT
ELSE QUEUE TO SKILLSET support_sk
WAIT 2
END IF

EXECUTE WAITLOOP


Try something like this:

GIVE RINGBACK
QUEUE TO SKILLSET support_sk
WAIT 6 <<== Gives a bit of ringtone before the announcement.

ASSIGN EXPECTED WAIT TIME support_sk TO EWT_cv

IF (EWT_cv <120) THEN
GIVE RAN short_wait_gv
ELSE IF (EWT_cv> 120) THEN
GIVE RAN long_wait_gv
END IF
END IF

EXECUTE WAITLOOP

SECTION WAITLOOP

IF OUT OF SERVICE support_sk
THEN DISCONNECT <<== This is a bit savage. You may want to consider an announcement as well.
ELSE QUEUE TO SKILLSET support_sk
WAIT 2
END IF

GIVE MUSIC 40

IF (EWT_cv <120) THEN
GIVE RAN short_wait_gv
ELSE IF (EWT_cv> 120) THEN
GIVE RAN long_wait_gv
END IF
END IF

EXECUTE WAITLOOP

You will see in the WAITLOOP section that there are the 2 announcements. As said above, there is capacity here that you may get the short announcement, then later in the wait get the long announcement. You will have to experiment with this.

The DISCONNECT is savage without a message. You may need to modify that as well. I would think that you need to run a new section to give an announcement then the disconnect. This would also work for a time of day etc treatment.
 
Hi All,

DFKSydney : Thanks for your reply.

I have tried the script and found it is working.

Now i need below features in my script : --

Features should be :--


1.Customer should get an announcement that his call will be Answered in 2,3,5 or 10Min.

Note :- The timing should be updated if the previous queued call are getting answered or got disconnected.


2.Customer should know the Queue number of his own call.

Note:- The Queue number should be updated if the previous queued call are getting answered or got disconnected.


Kindly suggest.

Thanks.


 
If you are using Miran, then forget it.

Remember Miran will have a max of 7 usable announcements (8 if you do not want to use the phone administration).

You have stated that you want 4 time based announcements, plus place in queue, and I am guessing the original 2 waiting announcements (long and short).

Realistically, get a mail system (Call Pilot) if you want the "bells and whistles" as Miran is to limited.
 
Hi All,

DFKSydney :-

I have Callpilot too which is integrated to CC6.

Callpilot is configured with 2 access,2 IVR and 3 Multimedia ports.

I can use Callpilot for the same if mentioned featured are worked.

Kindly suggest script for the mentioned features using Callpilot.

Thanks for the information.

 
You are asking for more than I am prepared to spend time on.

If it is that immportant to you, get a script writer to do the deed.

 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top