]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
app_queue: update RT members when the 1st call joins a queue with no agents 94/1694/3
authorCarlos Oliva <carlos.oliva@invoxcontact.com>
Fri, 18 Dec 2015 15:54:41 +0000 (16:54 +0100)
committerCarlos Oliva <carlos.oliva@invoxcontact.com>
Fri, 18 Dec 2015 15:56:28 +0000 (16:56 +0100)
If a call enters on a queue and the members on that queue are updated in
realtime (ex: using mysql inserting a new agent) the queue members are
never refreshed and the call will stay in the queue until other event occurs.
This happens only if this is the first call of the queue and there is no
agents servicing.
This patch prevent this issue, ensuring realtime members are updated if
there is one call in the queue and no available agents

ASTERISK-25442 #close

Change-Id: If1e036d013a5c1d8b0bf60d71d48fe98694a8682

apps/app_queue.c

index 5a8dcd24655d32af7b2e668e9504dbe2ced9d165..45d00939cacafeaa0eedb18da385fcf7dd3522a5 100644 (file)
@@ -5191,6 +5191,11 @@ static int is_our_turn(struct queue_ent *qe)
                res = 0;
        }
 
+       /* Update realtime members if this is the first call and number of avalable members is 0 */
+       if (avl == 0 && qe->pos == 1) {
+               update_realtime_members(qe->parent);
+       }
+
        return res;
 }