mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-04-28 13:14:23 +00:00
mod_fifo: Document effect of fifo strategy and importance
This commit is contained in:
parent
96012ffb3a
commit
431d7d97c7
@ -2983,6 +2983,33 @@ SWITCH_STANDARD_APP(fifo_function)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Before we can pick a caller we have to decide on a fifo
|
||||||
|
node to service if the consumer can service more than
|
||||||
|
one.
|
||||||
|
|
||||||
|
If all fifos have an importance of zero, we'll find the
|
||||||
|
first node that wins based on the chosen strategy.
|
||||||
|
|
||||||
|
The `waiting_longer` strategy will choose the node that
|
||||||
|
hasn't been empty for the longest time.
|
||||||
|
|
||||||
|
The `more_ppl` strategy will choose the node that has
|
||||||
|
the most people waiting.
|
||||||
|
|
||||||
|
If a node has an importance value set, it will cause us
|
||||||
|
to ignore later nodes with equivalent or lower
|
||||||
|
importance values. This means that a node with the
|
||||||
|
same importance that would otherwise win based on the
|
||||||
|
strategy will not be considered at all if it comes
|
||||||
|
later in the list. Note also that the high importance
|
||||||
|
node may still lose if a considered fifo earlier in the
|
||||||
|
list beats it per the strategy.
|
||||||
|
|
||||||
|
Note that when the consumer has been delivered by an
|
||||||
|
outbound strategy there will only be one fifo node
|
||||||
|
passed to us, so neither the importance nor the
|
||||||
|
strategy here will have any effect.
|
||||||
|
*/
|
||||||
for (i = 0; i < node_count; i++) {
|
for (i = 0; i < node_count; i++) {
|
||||||
if (!(node = node_list[i])) {
|
if (!(node = node_list[i])) {
|
||||||
continue;
|
continue;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user