summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorJason Parker <jparker@digium.com>2007-08-01 20:05:13 +0000
committerJason Parker <jparker@digium.com>2007-08-01 20:05:13 +0000
commit1bf5335f008820664728eb034504eccdadab385f (patch)
treec91cb242a695f907b75050bb552ae7da82e6b9fa /apps
parent1e4bd7a192e513507ed864488dc90ab5de8060df (diff)
Add the Ring time in the CONNECT on the queue_log and on the Manager event AgentConnect
Closes issue #10349, patch by eliel git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77879 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'apps')
-rw-r--r--apps/app_queue.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/apps/app_queue.c b/apps/app_queue.c
index 291c883bd..79dd301ca 100644
--- a/apps/app_queue.c
+++ b/apps/app_queue.c
@@ -2460,7 +2460,7 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce
{
struct member *cur;
struct callattempt *outgoing = NULL; /* the list of calls we are building */
- int to;
+ int to, orig;
char oldexten[AST_MAX_EXTENSION]="";
char oldcontext[AST_MAX_CONTEXT]="";
char queuename[256]="";
@@ -2583,6 +2583,7 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce
to = (qe->expire - now) * 1000;
else
to = (qe->parent->timeout) ? qe->parent->timeout * 1000 : -1;
+ orig = to;
ring_one(qe, outgoing, &numbusies);
ast_mutex_unlock(&qe->parent->lock);
if (use_weight)
@@ -2918,7 +2919,8 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce
} else
ast_log(LOG_WARNING, "Asked to execute an AGI on this channel, but could not find application (agi)!\n");
}
- ast_queue_log(queuename, qe->chan->uniqueid, member->membername, "CONNECT", "%ld|%s", (long) time(NULL) - qe->start, peer->uniqueid);
+ ast_queue_log(queuename, qe->chan->uniqueid, member->membername, "CONNECT", "%ld|%s|%ld", (long) time(NULL) - qe->start, peer->uniqueid,
+ (long)(orig - to > 0 ? (orig - to) / 1000 : 0));
if (qe->parent->eventwhencalled)
manager_event(EVENT_FLAG_AGENT, "AgentConnect",
"Queue: %s\r\n"
@@ -2928,9 +2930,10 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce
"MemberName: %s\r\n"
"Holdtime: %ld\r\n"
"BridgedChannel: %s\r\n"
+ "Ringtime: %ld\r\n"
"%s",
queuename, qe->chan->uniqueid, peer->name, member->interface, member->membername,
- (long) time(NULL) - qe->start, peer->uniqueid,
+ (long) time(NULL) - qe->start, peer->uniqueid, (long)(orig - to > 0 ? (orig - to) / 1000 : 0),
qe->parent->eventwhencalled == QUEUE_EVENT_VARIABLES ? vars2manager(qe->chan, vars, sizeof(vars)) : "");
ast_copy_string(oldcontext, qe->chan->context, sizeof(oldcontext));
ast_copy_string(oldexten, qe->chan->exten, sizeof(oldexten));