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!

Is my script writing effcient ?

Status
Not open for further replies.

wazza99

Technical User
May 29, 2003
18
GB
Hi folks, below is a script i recently wrote to play a different message based on expected queue time. Am i effcient in what i write ? is there a better way ? I have been writing script for a while now but first time i have used such a check.



/*Check Opening Hours*/

IF (DATE = gv_if_service_bank_hol_dates) THEN
OPEN VOICE SESSION
PLAY PROMPT VOICE SEGMENT vs_bank_hol_closed
END VOICE SESSION
DISCONNECT
END IF

IF (DAY OF WEEK = gv_if_service_weekday) AND (TIME OF DAY <> gv_if_service_hrs_weekday) OR
(DAY OF WEEK = SATURDAY) AND (TIME OF DAY <> gv_if_service_hrs_sat) OR
(DAY OF WEEK = SUNDAY) AND (TIME OF DAY <> gv_if_service_hrs_sun) THEN
EXECUTE Route_Off_Site
END IF

IF NOT LOGGED OUT AGENT gv_emergency_agent THEN
OPEN VOICE SESSION
PLAY PROMPT VOICE SEGMENT vs_emergency_mge
END VOICE SESSION
DISCONNECT
END IF


IF NOT OUT OF SERVICE IF_CS_816 THEN
QUEUE TO SKILLSET IF_CS_816 WITH PRIORITY gv_call_priority
WAIT 2
END IF

ASSIGN EXPECTED WAIT TIME IF_CS_816 TO expect_wait_cv

IF expect_wait_cv > gv_queue_1_min AND expect_wait_cv < gv_queue_1_max THEN
OPEN VOICE SESSION
PLAY PROMPT VOICE SEGMENT vs_queue_1
END VOICE SESSION

ELSE

IF expect_wait_cv > gv_queue_2 THEN
OPEN VOICE SESSION
PLAY PROMPT VOICE SEGMENT vs_queue_2
END VOICE SESSION

END IF
END IF


SECTION loop

GIVE MUSIC 50

WAIT gv_delay_queue_3


OPEN VOICE SESSION
PLAY PROMPT VOICE SEGMENT vs_queue_3
END VOICE SESSION


IF NOT QUEUED THEN
IF NOT OUT OF SERVICE IF_CS_816 THEN
WAIT 2
END IF
END IF

IF NOT LOGGED OUT AGENT gv_emergency_agent THEN
OPEN VOICE SESSION
PLAY PROMPT VOICE SEGMENT vs_emergency_mge
END VOICE SESSION
DISCONNECT
END IF


EXECUTE loop

SECTION Route_Off_Site

ROUTE CALL 37212
 
This is pretty much how I would write it myself so as far as I am concerned it is efficient. I would, however, make a comment:

In the loop section you have included an IF NOT QUEUED test but have not given a treatment for when the statement is true.
 
The only suggestion I could make is to use GIVE CONTROLLED BROADCAST ANNOUNCEMENT instead of OPEN VOICE SESSION for better utilization of voice ports. GIVE CONTROLLED BROADCAST ANNOUNCEMENT can queue to multiple (up to 50) callers at once, OPEN VOICE SESSION requires a port for each caller. You should only use OPEN VOICE SESSION when you require interaction with the caller (collect digits).

Two caveats:
- If your PBX is CS1000e, you cannot use GIVE CONTROLLED BROADCAST ANNOUNCEMENT.
- You will have to adjust the global settings (number of ports used for broadcast and broadcast wait timer). The default of 10 second wait timer is a bit long for most customers.
 
Are there any books that can show a person how to write simple scripts in Symposium (Books for Dummies). Are there examples out there I can use to play around with in my system.
 
NTP 297 2183 930 is the Scripting Guide for Nortel Contact Centres. You can get it from Nortel.com if you are a registered user.
 
There are sample scripts in the documentation (Scripting Guide). If you have classic client, these samples are stored as *.S files (which can be opened as text files) in your PC. Look down the file trail of C:\Program Files\Nortel Networks\Symposium Call Center Server\Client\en\script\samples.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top