mirror of
https://github.com/asterisk/asterisk.git
synced 2025-11-09 19:38:22 +00:00
Fix Queue Log Reporting Every Call COMPLETECALLER With "h" Extension Present
When the "h" extension is present within the context of the queue, all calls
are being reported COMPLETECALLER even when the agent is hanging up the call.
This patch checks to see if the agent hung-up or not instead of only relying on
checking if the queue (caller) channel hung-up or not. It would appear that
having the h extension in the mix, the pbx goes to the h extension,
"hanging-up" the queue channel and triggering the reporting of COMPLETECALLER.
(closes issue ASTERISK-20743)
Reported by: call
Tested by: call, Michael L. Young
Patches:
asterisk-20743-q-cmplt-caller.diff
uploaded by Michael L. Young (license 5026)
Review: https://reviewboard.asterisk.org/r/2256/
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@378514 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -5252,7 +5252,7 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce
|
||||
qe->chan->exten, qe->chan->context, (long) (callstart - qe->start),
|
||||
(long) (time(NULL) - callstart), qe->opos);
|
||||
send_agent_complete(qe, queuename, peer, member, callstart, vars, sizeof(vars), TRANSFER);
|
||||
} else if (ast_check_hangup(qe->chan)) {
|
||||
} else if (ast_check_hangup(qe->chan) && !ast_check_hangup(peer)) {
|
||||
ast_queue_log(queuename, qe->chan->uniqueid, member->membername, "COMPLETECALLER", "%ld|%ld|%d",
|
||||
(long) (callstart - qe->start), (long) (time(NULL) - callstart), qe->opos);
|
||||
send_agent_complete(qe, queuename, peer, member, callstart, vars, sizeof(vars), CALLER);
|
||||
|
||||
Reference in New Issue
Block a user