Multiple ACD Queues: Deliver calls FIFO regardless of queue

I’m running FreePBX 5.211.65-14 and Asterisk 11.12.

I have an ACD environment with 7 different queues. All queues, for the most part, have the same dynamic extensions assigned, except for 2 that have 1 or 2 additional extensions. The issue I’m experiencing is that calls waiting for a shorter amount of time in one queue are being delivered to agents before calls that have been waiting longer in another queue. I suppose this is somewhat logical because each queue is configured independently and can have their own settings (autofill, weight, ring strategy, etc.). However all of these queues are configured exactly the same in freepbx:

  • rrmemory as the strategy
  • Queue weight = 0
  • Skip Busy Agents = Yes
  • Wrap: 1 minute

I’ve tried and do use autofill, but from what I’ve read that just helps deliver more than one waiting call simultaneously if there is are multiple agents available to receive a call.

I guess in layman’s terms what I’m looking for is a way for all of these queues to recognize each other and work together in delivering calls to available agents, first in, first out. Basically so that Queue 1 has a waiting call for 2 minutes, and Queue B, C, and D all have calls waiting for 1 minute, Queue 1’s call should have priority and be delivered and answered first because it’s been waiting the longest.

I feel like this is basic functionality in a contact center environment, yet I can’t find a setting or any documentation in freepbx or asterisk to make it work this way. Maybe I’m missing something very basic, if so I apologize in advance, but any help would be greatly appreciated.