asterisk/apps
Joshua Colp faab058014 app_queue: Fix members showing as being in call when not.
A change was done which added an 'in_call' flag to queue
members that was set to true while talking to an agent.
Unfortunately in practice this does not accurately reflect
whether they are talking to an agent or not. If a Local
channel is involved and a transfer is performed then the
app_queue application would incorrectly think the agent
was still in a call with the caller. This was done to
fix a race condition between an agent becoming available
by device state and the checking of the last call information
for the wrapup time. There was a small window where the
last call information would be the previous value instead
of the new one.

This change goes about fixing the original issue in a
different way by considering the call completed if device
state is received which would make the agent available
and if they are currently in a call. If this occurs the
last call information is updated before the agent becomes
available ensuring that old information is not present
when checking if the member should be called. This also
improves the transfer situation by actually updating
and enforcing the wrapup time.

ASTERISK-26399
ASTERISK-26400
ASTERISK-26715
ASTERISK-26975

Change-Id: Ife1cb686e3173b3a6d368601adef9aff69d4beea
2017-05-23 09:24:22 -05:00
..
confbridge app_confbridge: Fix reference to cfg in menu_template_handler 2017-05-04 20:13:55 -05:00
app_adsiprog.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
app_agent_pool.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
app_alarmreceiver.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
app_amd.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_authenticate.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
app_bridgeaddchan.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_bridgewait.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_cdr.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
app_celgenuserevent.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_chanisavail.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_channelredirect.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_chanspy.c autochan/mixmonitor/chanspy: Fix unsafe channel locking and references. 2017-03-15 17:18:55 -06:00
app_confbridge.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
app_controlplayback.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_dahdiras.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
app_db.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_dial.c channel: Add ability to request an outgoing channel with stream topology. 2017-04-27 10:39:46 +00:00
app_dictate.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_directed_pickup.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_directory.c realtime: Fix ast_load_realtime_multientry handling 2017-02-21 13:06:29 -06:00
app_disa.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_dumpchan.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_echo.c apps/app_echo: Only relay a single video source change frame 2016-11-14 17:03:32 -05:00
app_exec.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_externalivr.c Implement internal abstraction for iostreams 2016-11-15 22:25:14 +02:00
app_fax.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_festival.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_flash.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_followme.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_forkcdr.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
app_getcpeid.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_ices.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_image.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_ivrdemo.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_jack.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_macro.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_meetme.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_milliwatt.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_minivm.c cleanup: Fix fread() and fwrite() error handling 2017-04-25 16:24:15 -05:00
app_mixmonitor.c autochan/mixmonitor/chanspy: Fix unsafe channel locking and references. 2017-03-15 17:18:55 -06:00
app_morsecode.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_mp3.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_nbscat.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_originate.c manager: Restore Originate failure behavior from Asterisk 11 2017-02-10 18:04:41 -05:00
app_osplookup.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_page.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_playback.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_playtones.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_privacy.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_queue.c app_queue: Fix members showing as being in call when not. 2017-05-23 09:24:22 -05:00
app_read.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_readexten.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_record.c app_record: Add option to prevent silence from being truncated 2017-02-14 09:35:18 -05:00
app_saycounted.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_sayunixtime.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_senddtmf.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_sendtext.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_setcallerid.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_skel.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_sms.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_softhangup.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_speech_utils.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_stack.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_stasis.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_statsd.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_stream_echo.c app_stream_echo: Added a multi-stream echo application 2017-05-17 17:41:11 -05:00
app_system.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_talkdetect.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_test.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_transfer.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_url.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_userevent.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_verbose.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_voicemail.c cleanup: Fix fread() and fwrite() error handling 2017-04-25 16:24:15 -05:00
app_voicemail.exports.in Remove some symbol exports that got missed in the removal of global symbols. 2012-06-15 15:33:41 +00:00
app_waitforring.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_waitforsilence.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_waituntil.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_while.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_zapateller.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
enter.h remove extraneous svn:executable properties 2005-11-29 18:24:39 +00:00
leave.h remove extraneous svn:executable properties 2005-11-29 18:24:39 +00:00
Makefile Build System: Create Makefile macro MOD_ADD_SOURCE. 2015-04-14 12:53:03 -04:00