Hi everyone,
I'm working on implementing a time-based voicemail feature (so we can dynamically change the threshold just by updating the integer in a data table) with in-queue logic in Genesys and using this expression to check the threshold:
```
DateTimeDiff(GetCurrentDateTimeUtc(), Flow.StartDateTimeUtc) >= MakeDuration(0, 0, Task.maxQueueTime, 0)
```
I have multiple hold prompts running in a loop, and I'm checking the threshold after each prompt. If the threshold is met, the loop should exit and run additional checks before offering a callback.
However, I'm facing an issue: if I set a threshold of 1 minute and the caller enters the queue at 40 seconds, the callback should be offered at 1 minute 40 seconds approx.
Instead, the loop doesn't exit until all prompts finish, meaning the caller might receive a callback offer at around 2 minutes 49 seconds.
Does anyone know how to resolve this? I understand reducing the number of prompts could help, but ideally, checking the threshold after each prompt should exit the loop-but it's not happening. Any ideas?
#Routing(ACD/IVR)------------------------------
Phaneendra
Technical Solutions Consultant
Monash University
Australia
------------------------------