FreePBX | Register | Issues | Wiki | Portal | Support

Queue linear Ring Strategy + Dynamic Agents


(Itzik) #1

Hello community,

We are trying to setup a Queue that has 4 dynamic agents, 101, 102, 103 & 104.
We want the queue to start at 101 for 10 seconds then 102 10 seconds etc. it should ring at each extension for 10 seconds in an order.

So I changed the queue ring strategy to linear, set the agent timeout for 10 seconds, the queue called them in the order they were configured in the dynamic agents section, except the agent at the bottom of the list. It never called that extension the last, sometimes it called it the first and sometimes the third. first I thought it’s something with 104 so I placed 102 at the bottom but it had the same behavior as 104. No matter in what order they logged in, the bottom extension always had problems.

I read the Wiki, and saw that “linear : Rings agents in the order specified (for dynamic agents in the order they logged in).” meaning, that with dynamic agents the queue will preserve the order they logged in (last logged in will be called last) Then why is it calling the agents in the order they are configured in the dynamic members section?
So I tried setting up the queue as Static agents, but it still had issues with the order…

Finally, I created a new Queue, and static agents are now being called in the order they are configured in the queue, and dynamic agents are called in the order they logged in.

Bravo! It works as documented…

But, The reason I tested linear strategy is because we do want the queue to maintain the order configured for dynamic agents. Is there any way to accomplish that?

Thank you

P.S. I also tested rrordered, but with dynamic agents it also calls them in the order they logged in. :disappointed:


(Tom Ray) #2

First, you made changes to an active queue that sounds like agents where already logged in so making those changes in the order doesn’t matter when you’re using things that honor their log in. You had 104 as the last one but it would ring 2nd or 3rd. You changed 102 to the last one, same issues.

Second, you created a new queue that they would have to log into and then you say your ordering worked. Yes because they all where “logged out” and had to “log in”.

Third, have you tried having all your agents log out of the queue you are having a problem with and log in again? In specific orders? In any order? Did you test them actually logging in and out to see if their order is preserved for the ring strategies your tried?

Finally, rrordered is what you want to use when you are trying to control the order the Dynamic agents are called. It uses the config file order not their login order.


(Itzik) #3

Should’ve mentioned, no they were not logged in.

Again, that was not the case. In fact, I see another user had a similar issue. and creating new queues fixed it.

Again they were not logged in at the time of the changes.

No, I actually want that it should always start by 101, rrordered remembers where it left off.
Additionally, I already tested and it preserves the login order.

From my original post:


(Itzik) #4

See asterisk bug report https://issues.asterisk.org/jira/browse/ASTERISK-17049
If you change a Queue to linear, you have to restart asterisk in order for it to work… That explains why it did not work when I originally tried changing a Queue to linear.