"Get Next Case" optimized for time zones
I have a call center that makes calls on accounts from 7AM to 11PM CT. The customers live in many time zones and can only be contacted between 8AM and 9PM local time. Ex: Customer in ET, can be called between 7AM and 8PM CT. Customer in PT can be called between 9AM and 11PM CT.
There can be tens of thousands of accounts available to call on any given day and are assigned to just a few workbaskets.
The OOTB "Get Next" relies on the assignment and urgency to return a result set of available cases. Post-query filtering is then used to determine if any of the cases in the result set are usable at that moment. With the volume of cases in the workbaskets, the query could return a group of cases where nothing is callable at that time of day.
We currently have a very customized version of "Get Next" that uses very complicated joins to return a result set that is more likely usable. By doing this we have lost a lot of flexibility in how "Get Next" works. We are looking to get back to something that is closer to OOTB functions.
I assume that this is an issue with many call centers, especially marketing and collections environments. Is there a suggested approach to optimize Get Next to handle calling windows?
(Note: currently all our users are in CT, but we want a solution that works no matter what the local time is for the user and the customer.)