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!

Validation error: EXECUTE - Loop....

Status
Not open for further replies.

Karen_H

IS-IT--Management
Mar 7, 2017
9
0
0
GB
Morning!

Please help! I have a loop and can't for the life of me work out where it is or how to rectify it. I'm going grey.... Thanks in advance [pc]

SECTION IS_CALL_CENTER_UP
/*
The Contact is routed into the sample Flow and the
following conditions are checked:

1. If all Skillsets are out-of-service
Play Out-Of-Service Announcement
After an announcement has been played, the contact
will be routed to a default DN
If the Contact Center is available, then continue
with the attempt to queue the Contact
*/
/* This transition indicates if the default skillset is out of service. If the default skillset is out of service, then there are no agents logged into the Contact Center and therefore contacts cannot be answered. The OUT OF SERVICE intrinsic is checked on the default skillset to ensure that skillsets are in service. */
IF (OUT OF SERVICE skillset) THEN
EXECUTE OOS_DIVERT_TO_52610
END IF

/* ELSE Transition */
EXECUTE DAY_OF_WEEK_CHECK

SECTION GREETING_ANNOUNCEMENT
/*
This Annoucement needs to be configured to customers'
requirements.
Play a Greeting Announcement.

*/
OPEN VOICE SESSION
PLAY PROMPT VOICE SEGMENT welcome
END VOICE SESSION
EXECUTE QUEUE_TO_SKILLSET

SECTION DAY_OF_WEEK_CHECK
/*
Monday to Friday
*/
/* If equals saturday or sunday, follow w/end rules, otherwise go to time check */
IF (W_End = Saturday OR Sunday = Sunday) THEN
EXECUTE WEEKENDS_AND_BHS
END IF

/* ELSE Transition */
EXECUTE WORKING_HOURS

SECTION WORKING_HOURS
/*
Working hours 08:30 to 17:00
*/
/* In hours */
IF (TIME OF DAY = 08:30 .. 17:00) THEN
EXECUTE OOH_1700_TO_0730
END IF

/* ELSE Transition */
EXECUTE GREETING_ANNOUNCEMENT

SECTION DIVERT_TO_51711
ROUTE CALL 51711

SECTION OOH_0730_TO_0830
/*

*/
/* In hours */
IF (TIME OF DAY = 07:30 .. 08:30) THEN
EXECUTE DIVERT_TO_52610
END IF

/* ELSE Transition */
EXECUTE DAY_OF_WEEK_CHECK

SECTION DIVERT_TO_52610
ROUTE CALL 52610

SECTION WEEKENDS_AND_BHS
/*

*/
/* WEEKENDS AND BHs */
IF (DAY OF WEEK = Saturday .. Sunday) THEN
EXECUTE WE_0730_TO_1700
END IF

/* ELSE Transition */
EXECUTE DAY_OF_WEEK_CHECK

SECTION WE_0730_TO_1700
/*
Working hours 08:30 to 17:00
*/
/* In hours */
IF (TIME OF DAY = 07:30 .. 17:00) THEN
EXECUTE WE_BH_DIVERT_TO_52610
END IF

/* ELSE Transition */
EXECUTE WE_1700_TO_0730

SECTION WE_BH_DIVERT_TO_52610
ROUTE CALL 52610

SECTION WE_1700_TO_0730
/*

*/
/* In hours */
IF (TIME OF DAY = 17:00 .. 07:30) THEN
EXECUTE WE_BH_DIVERT_TO_51711
END IF

/* ELSE Transition */
EXECUTE DAY_OF_WEEK_CHECK

SECTION WE_BH_DIVERT_TO_51711
ROUTE CALL 51711

SECTION OOH_1700_TO_0730
IF (TIME OF DAY = 17:00 .. 07:30) THEN
EXECUTE DIVERT_TO_51711
END IF

/* ELSE Transition */
EXECUTE OOH_0730_TO_0830

SECTION OOS_DIVERT_TO_52610
DISCONNECT

SECTION QUEUE_TO_SKILLSET
QUEUE TO SKILLSET skillset WITH PRIORITY 1
WAIT 2
EXECUTE EXIT_16

/*
EXIT
*/
SECTION EXIT_16

 
Poor you. i have no idea what scripting environment that is. But I think I found your infinite loop of doom.

I think you meant to say "IF (TIME OF DAY <> 08:30 .. 17:00) THEN"...
Pretend it's Monday at 9h30.
It is between 8h30 and 17h00, so let's EXECUTE OOH_1700_TO_0730.
All your different types of out of hours checks fail because it's in hours and you wind up coming back to day of week check and back to working hours and a loop to nowhere.

That's at least how I read it. I presume 8:30 .. 17:00 means between those two hours. It appears you use that syntax consistently. I can't see why you'd want to execute out of hours handling if "is it 9-5? = true"


Code:
SECTION WORKING_HOURS
/*
Working hours 08:30 to 17:00
*/
/* In hours */
IF (TIME OF DAY = 08:30 .. 17:00) THEN
EXECUTE OOH_1700_TO_0730
END IF



SECTION OOH_1700_TO_0730
IF (TIME OF DAY = 17:00 .. 07:30) THEN
EXECUTE DIVERT_TO_51711
END IF

/* ELSE Transition */
EXECUTE OOH_0730_TO_0830



SECTION OOH_0730_TO_0830
/*

*/
/* In hours */
IF (TIME OF DAY = 07:30 .. 08:30) THEN
EXECUTE DIVERT_TO_52610
END IF

/* ELSE Transition */
EXECUTE DAY_OF_WEEK_CHECK


And then you're in a loop

SECTION DAY_OF_WEEK_CHECK
/*
Monday to Friday
*/
/* If equals saturday or sunday, follow w/end rules, otherwise go to time check */
IF (W_End = Saturday OR Sunday = Sunday) THEN
EXECUTE WEEKENDS_AND_BHS
END IF

/* ELSE Transition */
EXECUTE WORKING_HOURS

SECTION WORKING_HOURS
/*
Working hours 08:30 to 17:00
*/
/* In hours */
IF (TIME OF DAY = 08:30 .. 17:00) THEN
EXECUTE OOH_1700_TO_0730
END IF
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top