Merge "app_queue: Fix initial hold time queue statistic"

pull/9/head
Jenkins2 8 years ago committed by Gerrit Code Review
commit aad6fa6dc7

@ -4072,8 +4072,12 @@ static void recalc_holdtime(struct queue_ent *qe, int newholdtime)
/* 2^2 (4) is the filter coefficient; a higher exponent would give old entries more weight */
ao2_lock(qe->parent);
oldvalue = qe->parent->holdtime;
qe->parent->holdtime = (((oldvalue << 2) - oldvalue) + newholdtime) >> 2;
if ((qe->parent->callscompleted + qe->parent->callsabandoned) == 0) {
qe->parent->holdtime = newholdtime;
} else {
oldvalue = qe->parent->holdtime;
qe->parent->holdtime = (((oldvalue << 2) - oldvalue) + newholdtime) >> 2;
}
ao2_unlock(qe->parent);
}
@ -5651,7 +5655,7 @@ static int update_queue(struct call_queue *q, struct member *member, int callcom
if (callcompletedinsl) {
q->callscompletedinsl++;
}
if (q->callscompletedinsl == 1) {
if (q->callscompleted == 1) {
q->talktime = newtalktime;
} else {
/* Calculate talktime using the same exponential average as holdtime code */

Loading…
Cancel
Save