Transfer call to queue with priority for a specific agent

Hi everyone,

I have an Asterisk setup with the Queue() module for call distribution, and it works well for us. However, I have one use case that I haven’t found a clean solution for.

Sometimes, I want to transfer a call into a queue, but with a condition: the call should try a specific agent first, while still being reported in the queue statistics (queue_log). If that agent doesn’t answer, then the call should continue in the queue normally with the standard strategy (round-robin, least recent, etc.).

Key points:

  • I don’t want to change the queue strategy permanently.

  • I don’t want to reconfigure the queue members or add duplicate logins.

  • The solution should still generate the normal queue reports (ENTERQUEUE, CONNECT, ABANDON, etc.), so we can track the call properly.

In other words, the logic I’m looking for is something like:

  1. Send the call to the queue.

  2. Prioritize a specific agent X for this call.

  3. If X doesn’t answer, fall back to the queue’s normal behavior.

Is there a recommended way to achieve this in Asterisk? Maybe some trick with QUEUE_MIN_PENALTY, dynamic members, or another approach? I’d really appreciate any guidance or examples.

Thanks

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.