]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
[mod_callcenter] FS-9891: Get queue again to increase calls answered and abandoned
authorItalo Rossi <italorossib@gmail.com>
Wed, 28 Dec 2016 00:35:17 +0000 (21:35 -0300)
committerItalo Rossi <italorossib@gmail.com>
Wed, 28 Dec 2016 00:35:17 +0000 (21:35 -0300)
src/mod/applications/mod_callcenter/mod_callcenter.c

index 6eabeeba59ab46251d836a6583e64dae90b3245e..88250aefe0f78d872f6789292f781e33203ee018 100644 (file)
@@ -3122,8 +3122,9 @@ SWITCH_STANDARD_APP(callcenter_function)
                                                  switch_str_nil(switch_channel_get_variable(member_channel, "caller_id_name")),
                                                  switch_str_nil(switch_channel_get_variable(member_channel, "caller_id_number")),
                                                  queue_name, cc_member_cancel_reason2str(h->member_cancel_reason));
+               queue = get_queue(queue_name);
                queue->calls_abandoned++;
-
+               queue_rwunlock(queue);
        } else {
                switch_log_printf(SWITCH_CHANNEL_SESSION_LOG(member_session), SWITCH_LOG_DEBUG, "Member %s <%s> is answered by an agent in queue %s\n", switch_str_nil(switch_channel_get_variable(member_channel, "caller_id_name")), switch_str_nil(switch_channel_get_variable(member_channel, "caller_id_number")), queue_name);
 
@@ -3135,7 +3136,9 @@ SWITCH_STANDARD_APP(callcenter_function)
 
                /* Update some channel variables for xml_cdr needs */
                switch_channel_set_variable_printf(member_channel, "cc_cause", "%s", "answered");
+               queue = get_queue(queue_name);
                queue->calls_answered++;
+               queue_rwunlock(queue);
 
        }