211 Commits

Author SHA1 Message Date
Andrey Volk
3134c9aa57 [mod_callcenter] Fix use of uninitialized res variable in cc_agent_update() 2021-03-17 19:38:10 +03:00
Seven Du
a6a5784871
[mod_callcenter] fix leak (#1050)
[mod_callcenter] Fix small leak in cc-instance-id configuration parameter.
2021-02-13 12:34:54 -05:00
Andrey Volk
0275ea1eb4 [Build-System] Use $(DefaultPlatformToolset) so it's easier to build using newer Microsoft Visual Studio versions. 2020-05-25 14:18:25 +04:00
Andrey Volk
f113efd7ae [mod_callcenter] scan-build: Fix dead initialization. 2020-02-26 16:53:21 +04:00
Ítalo Rossi
3de3ec3b1a [mod_callcenter] Adding SAF_SUPPORT_NOMEDIA to callcenter_track since we don't need media up for it. Also, a small fix to make it compile on OSX. 2019-11-26 01:33:12 +04:00
Areski Belaid
647ed310e5 [mod_callcenter] Unreserve callcenter events when config errors loading 2019-11-11 20:23:20 +04:00
Andrey Volk
71b0ab24b1 FS-12001: [mod_callcenter] Workaround issues with renaming tables and columns in SQLite version prior to 2019-02-07 (3.27.0). 2019-08-20 18:39:01 +04:00
Fernando S Santos
d3487dcc39 FS-12001: [mod_callcenter] Renamed column name from 'system' to 'instance_id' to make mod_callcenter work with MySQL through mod_mariadb 2019-08-14 16:59:09 -03:00
Andrey Volk
718d2341f7 FS-11952: [Core] Fix memory leaks. 2019-07-24 20:26:32 +04:00
António Silva
1a4e4e2f78 FS-9894 [mod_callcenger] fix call timeout if agent contact as leg_timeout to higger value than 60 2019-04-15 16:15:43 +02:00
Anthony Minessale
d3e320ef56 FS-11346: [core] add api to pass pre-parsed values instead of dial strings to switch_ivr_originate
SWITCH_DECLARE(switch_status_t) switch_dial_handle_create(switch_dial_handle_t **handle);
SWITCH_DECLARE(void) switch_dial_handle_destroy(switch_dial_handle_t **handle);
SWITCH_DECLARE(void) switch_dial_handle_add_leg_list(switch_dial_handle_t *handle, switch_dial_leg_list_t **leg_listP);
SWITCH_DECLARE(void) switch_dial_leg_list_add_leg(switch_dial_leg_list_t *parent, const char *dial_string, switch_dial_leg_t **legP);
SWITCH_DECLARE(void) switch_dial_handle_add_global_var(switch_dial_handle_t *handle, const char *var, const char *val);
SWITCH_DECLARE(void) switch_dial_handle_add_global_var_printf(switch_dial_handle_t *handle, const char *var, const char *fmt, ...);
SWITCH_DECLARE(switch_status_t) switch_dial_handle_add_leg_var(switch_dial_leg_t *leg, const char *var, const char *val);
SWITCH_DECLARE(switch_status_t) switch_dial_handle_add_leg_var_printf(switch_dial_leg_t *leg, const char *var, const char *fmt, ...);
SWITCH_DECLARE(int) switch_dial_handle_get_peers(switch_dial_handle_t *handle, int idx, char **array, int max);
SWITCH_DECLARE(int) switch_dial_handle_get_vars(switch_dial_handle_t *handle, int idx, switch_event_t **array, int max);
SWITCH_DECLARE(switch_event_t *) switch_dial_handle_get_global_vars(switch_dial_handle_t *handle);
SWITCH_DECLARE(switch_event_t *) switch_dial_leg_get_vars(switch_dial_leg_t *leg);
SWITCH_DECLARE(int) switch_dial_handle_get_total(switch_dial_handle_t *handle);
SWITCH_DECLARE(void) switch_ivr_orig_and_bridge(switch_core_session_t *session, const char *data, switch_dial_handle_t *dh);

add switch_dial_handle_t *dh to end of args for switch_ivr_originate
2018-08-22 18:20:13 +00:00
Andrey Volk
671da28796 FS-11263: [Build-System] Move FreeSWITCH build system to Visual Studio 2017 on Windows. 2018-07-24 07:21:55 +00:00
Andrey Volk
1284fbb027 FS-10493: [mod_callcenter] Replace core uuid with cc_instance_id taken from callcenter.conf.xml 2018-02-14 00:53:22 +03:00
Italo Rossi
0781fafb7c Merge pull request #1464 in FS/freeswitch from ~BODJI/freeswitch:FS-10299-mod_callcenter-database-blocking to master
* commit 'b185cc6e2471bd83e560f9c75a5828537848418e':
  FS-10299: [mod_callcenter] Add an option to disable global database lock on mod_callcenter
2018-02-02 14:27:49 +00:00
Italo Rossi
19e543ba3d FS-10521 FS-10612 [mod_callcenter] Member exit reason set to EXIT_WITH_KEY when it should be TIMEOUT and only set EXIT_WITH_KEY if the key pressed is set at cc_exit_keys 2018-01-25 10:49:59 -03:00
Mathieu Bodjikian (MacBook-Pro-de-Mathieu.local)
b185cc6e24 FS-10299: [mod_callcenter] Add an option to disable global database lock on mod_callcenter 2018-01-24 20:46:39 +01:00
Italo Rossi
32954c1b91 FS-10772 - [mod_callcenter] commit 404c69698ed7a4ff215cf2d430b6a1721c693eb1 added an invalid WHERE syntax, fixed. 2017-11-03 14:47:19 -03:00
Italo Rossi
298a468edf FS-10771 - [mod_callcenter] s/member_channel/member_session when session logging 2017-11-03 13:38:04 -03:00
Italo Rossi
15455f7060 FS-10738 [mod_callcenter] - setting bridged = 0 if member give up too early 2017-10-17 20:32:35 -03:00
Italo Rossi
94e943963f FS-10738 [mod_callcenter] - Do not set state to Idle if On Demand agents do not answer call 2017-10-17 16:26:57 -03:00
Italo Rossi
75c56a0007 FS-10661: [mod_callcenter] Making cc_export_vars work with uuid-standby agents 2017-09-14 22:18:20 -03:00
Italo Rossi
77dcd007ad FS-10660: [mod_callcenter] Park agent session before play cc_warning_tone - avoid double playback causing distorted audio 2017-09-14 21:02:56 -03:00
Italo Rossi
7f31967a31 FS-10666: [mod_callcenter] Adding callcenter_break agent api
callcenter_break agent <uuid> can be called with an uuid that represents
an outbound session created to call an agent.

The current behavior of mod_callcenter is to keep watching this channel
until it is hangup, once the hangup happens the bridge-agent-end and
member-queue-end events are fired, agent is released on the database
so it can receive more calls and member is also updated on database.

If you do not want to the agent channel hangup to release the agent you can
call this app with the agent session uuid and the agent will be released and
available to receive more calls. This is useful when the agent is located on a
remote freeswitch box and transfer the call internally, the original leg between
the first FreeSWITCH and the remote box remains live and the agent will only be
Available when the original call hangup.
2017-09-13 17:39:43 -03:00
Italo Rossi
54e6cd3ebf FS-10237 [mod_callcenter] Do not kick member out at max wait time if we are originating to an agent already. 2017-08-10 00:36:58 -05:00
Italo Rossi
ec44f5adf2 Revert "FS-10237 [mod_callcenter] Do not kick member out on timeout if originating to an agent"
This reverts commit b4ada1b849d526e3d808fd22626b7d618289c537.
2017-08-08 14:45:05 -05:00
Marc Olivier Chouinard
a1740fb600 FS-10512: Fix issue with callcenter topdown strategy 2017-07-20 21:33:55 -03:00
Italo Rossi
304ddb13cb Revert "FS-10314: Initial commit adding profiles to mod_callcenter"
This reverts commit 54c93528dc890aa2e52720617999f9ec5aa2e477.
2017-07-18 13:25:22 -03:00
Italo Rossi
58d25329b9 Revert "FS-10511: Set status as External call when using callcenter_track"
This reverts commit 1ce87dfca17a53b81cb87a761b385ab48371782f.
2017-07-18 13:09:39 -03:00
Marc Olivier Chouinard
1ce87dfca1 FS-10511: Set status as External call when using callcenter_track 2017-07-18 11:14:43 -04:00
Marc Olivier Chouinard
54c93528dc FS-10314: Initial commit adding profiles to mod_callcenter 2017-07-18 10:34:07 -04:00
Italo Rossi
8ea3e3c7bc Merge pull request #1313 in FS/freeswitch from ~ANTONIO/freeswitch:bugfix/FS-10368-mod_callcenter-lock-database-errors to master
* commit '04854fddaa1548e5d57a90fad74a433bee7a0750':
  Revert "FS-10299 [mod_callcenter] Removing global lock on all cc_execute_sql functions when executing database queries"
2017-07-06 20:52:51 +00:00
Italo Rossi
38ff0f79e9 Merge pull request #1273 in FS/freeswitch from ~EDUARDO/freeswitch:FS-10304-prevent-infinite-logging-when-a to master
* commit 'be741eab2ce34122755198c31894941f6e7da7d2':
  FS-10304: [mod_callcenter] Prevent infinite logging when a stale queue member in found in the database
2017-07-05 18:51:03 +00:00
Italo Rossi
3fef65b7c2 FS-10432 [mod_callcenter] Increase agent contact field up to 1024. 2017-06-28 16:43:16 -03:00
Antonio
04854fddaa Revert "FS-10299 [mod_callcenter] Removing global lock on all cc_execute_sql functions when executing database queries"
This reverts commit faf87febdb5a90f7c339df6934fd7eb04c927b67.
2017-06-23 19:02:39 +02:00
Italo Rossi
b4ada1b849 FS-10237 [mod_callcenter] Do not kick member out on timeout if originating to an agent
Now we're passing member_session as session parameter to switch_ivr_originate, this will make
the cc_export_vars no longer needed in the future as now all the variables previously
exported will be seen by switch_ivr_originate because member_session is the ORIGINATOR.

cc_export_vars still works.
2017-06-13 00:12:15 -03:00
Eduardo Marinho
be741eab2c FS-10304: [mod_callcenter] Prevent infinite logging when a stale queue member in found in the database
Having a member from a queue that is no longer found on the current system
causes infinite logging about skipping a member.

There is already cleanup code for abandoned calls in same function, but it can
never be reached for this case, because there is no queue.

If the queue is never found again in the system, the logging would continue
forever or until the stale record gets removed from the database.

FS-10304 #resolve
2017-05-11 09:43:58 -03:00
Italo Rossi
faf87febdb FS-10299 [mod_callcenter] Removing global lock on all cc_execute_sql functions when executing database queries 2017-05-09 11:44:30 -03:00
Italo Rossi
97cece8968 FS-10298 [mod_callcenter] Firing bridge-agent-end if we failed to bridge answered agent with member. 2017-05-09 11:20:04 -03:00
Italo Rossi
13d5dff27d Merge pull request #1203 in FS/freeswitch from ~F93/freeswitch:bugfix/FS-10085-incorrect-no_answer_delay_time-behavoir to master
* commit '051cf19c93224bdab37fbfda68f9caaa0813aefa':
  FS-10085 [mod_callcenter] fix no_answer_delay_time behavoir in ring-all strategy
2017-04-29 00:56:43 +00:00
Italo Rossi
b8af27863d Merge pull request #1202 in FS/freeswitch from ~PECHEN/freeswitch:feature/FS-10082-full-list-members-by-api to master
* commit 'f411dd49c5f951992345dcd810c5a70d8a235839':
  FS-10082 [mod_callcenter] full list members by api
2017-03-12 13:12:00 -05:00
Italo Rossi
9bb7a7d8cd Merge pull request #1074 in FS/freeswitch from ~WHENRY/freeswitch:feature/FS-9757_multi_box_patch to master
* commit '404c69698ed7a4ff215cf2d430b6a1721c693eb1':
  FS-9757 Store real system uuid in members system col and compare
2017-03-12 13:08:37 -05:00
Alexandr Popov
f411dd49c5 FS-10082 [mod_callcenter] full list members by api 2017-03-06 17:53:48 +02:00
Roman Sukhov
051cf19c93 FS-10085 [mod_callcenter] fix no_answer_delay_time behavoir in ring-all strategy 2017-03-03 14:23:57 +03:00
Sergey Safarov
df1ab07ca4 FS-9924: Removed extra space in source files 2017-02-09 23:59:49 -05:00
Italo Rossi
59da3cc493 FS-10012 [mod_callcenter] Enabling bypass media if agents leg have bypass_media_after_bridge=true #resolve 2017-02-05 14:57:51 -03:00
William Henry
404c69698e FS-9757 Store real system uuid in members system col and compare 2017-01-27 16:38:13 -05:00
Italo Rossi
594b36022e [mod_callcenter] FS-9894: Removing reference to call_timeout, use leg_timeout instead 2016-12-29 13:19:02 -03:00
Italo Rossi
72927b994c [mod_callcenter] FS-9891: Checking if we got a valid pointer for a queue 2016-12-29 12:59:24 -03:00
Italo Rossi
50714ec5e4 [mod_callcenter] FS-9891: Get queue again to increase calls answered and abandoned 2016-12-27 21:35:17 -03:00
Italo Rossi
717dea47fb [mod_callcenter] FS-9347: Do not log as error when the member is gone just before we assigned an agent, now logging as DEBUG 2016-12-27 21:19:57 -03:00