Hi all,
I’d like to clarify the intended behaviour of a FIFO queue, with regards to the delivery strategy – by default, do FIFO-placed calls ring through to all members of the queue, or do they do it round-robin?
I have the following simple configuration:
<fifo name="2000@sample.com" importance="0">
<member timeout="20" simo="1" lag="5">{fifo_member_wait=nowait}user/1001@sample.com</member>
<member timeout="20" simo="1" lag="5">{fifo_member_wait=nowait}user/1002@sample.com</member>
</fifo>
The behaviour I’m seeing is this: When I put a call through to the FIFO, it first tries to deliver it to 1001, then 1002, and so on. If I put a call through the first time, it goes to 1001, but if I call again, it starts at 1002.
If on the other hand, I put the following in the dialplan:
<action application=”set” data=”fifo_destroy_after_use=true” />
The first time I place a call, it follows the round-robin behaviour described above, but any subsequent calls get delivered simulatenously to the FIFO members (i.e. 1001 and 1002 ring at the same time until one picks it up).
I can’t make head nor tail of how this is supposed to work. I’ve read various posts on this list which describe the behaviour as being concurrent, but so far I have only managed to reliable get it working sequentially.
Any comments or ideas welcome.
Regards,
Alvaro