146 Commits

Author SHA1 Message Date
Italo Rossi
8b6f40f967 FS-8584 - [mod_callcenter] Requesting agents and tiers when reloading queue
Before this callcenter_config queue reload [queuename] only reloads the queue
parameters and now it'll include a CC-Queue header with the queuename when using
mod_xml_curl and request a new config for updating agents and tiers related to the
queue.

If you are using mod_xml_curl please make sure to return the raw xml config file
with all the settings, queues, agents and tiers tags when we request the config
without a CC-Queue specified. If this header is present you can build the xml with
items only related to the queue requested.
2016-05-13 22:21:04 -03:00
Italo Rossi
8e112294bf Merge pull request #816 in FS/freeswitch from ~FLOKR/freeswitch:feature/FS-9079-adding-new-strategy-to-mod_callcenter to master
* commit '8b42c77c3b63abd0f75819cc183150663cc58a1d':
  FS-9079: [mod_callcenter] Add ring-progressively strategy
2016-05-02 12:42:10 -05:00
Florent Krieg
8b42c77c3b FS-9079: [mod_callcenter] Add ring-progressively strategy
A new strategy is now available through mod_callcenter, which aim
is to provide a mix between top-down and ring-all strategies.

If set to ring-progressively, the strategy will call an agent, and
then a second agent, and then a third agent, without cancelling
previous calls.

The delay between each call is 10 sec by default, but it can be
changed using the queue variable ring-progressively-delay.
2016-05-02 10:26:20 +02:00
Italo Rossi
96e963d3eb Merge pull request #691 in FS/freeswitch from ~RAJESH.VAYA/freeswitch:feature/mod_callcenter-json-api to master
* commit '23e53df7211aaaa8168b185411c85d0a35be2d33':
  FS-8799 [mod_callcenter] Add JSON API interface for mod_callcenter
2016-05-01 20:40:35 -05:00
Italo Rossi
3f5af35fd3 FS-9025 - [mod_callcenter] bypass_media_after_bridge working for member channel 2016-04-07 17:54:28 -03:00
Italo Rossi
e95da7a80f FS-8856 - [mod_callcenter] Inserting member as a new one when restoring action fails because our agent_dispatch_thread removed the members just before we tried to update him. 2016-02-22 09:54:53 -03:00
Rodrigo Ramírez Norambuena
1661fc6a51 FS-8822 - [mod_callcenter] Realtime counter for calls in a queue
Added counters for answered and abandoned calls for a queue.

Create two vars for cc_queue struct
    - calls_answered
    - calls_abandoned

These increases when the call is hangup.

This change also :
 - refactor long lines of header and body to  print the queue information.
 - Update year in copyright
2016-02-08 01:22:37 -03:00
Italo Rossi
fe5fd7667a FS-8768 - [mod_callcenter] Releasing db handle after reserving agent 2016-01-30 22:35:32 -03:00
rajeshvaya
23e53df721 FS-8799 [mod_callcenter] Add JSON API interface for mod_callcenter
Adding a JSON API interface to fetch data in the JSON format. It abides with the JSON command and its implementations by other modules like mod_verto.
It outputs the exactly same column names as the data in CLI.
Various listing of mod_callcenter data such as agents, queues, members, tiers are as follows below.

- Listing of agents
Command: `json {"command": "callcenter_config", "format": "pretty", "data": {"arguments":"agent list"}}`

- Listing of queues
Command: `json {"command": "callcenter_config", "format": "pretty", "data": {"arguments":"queue list"}}`

- Listing of agents for a queue
Command: `json {"command": "callcenter_config", "data": {"arguments":"queue list agents", "queue_name":"support@default"}}`
(`queue_name` is a required)

- Listing of members(callers) for a queue
Command: `json {"command": "callcenter_config", "data": {"arguments":"queue list members", "queue_name":"support@default"}}`

- Listing of tiers for a queue
Command: `json {"command": "callcenter_config","data": {"arguments":"queue list tiers", "queue_name":"support@default"}}`

- Listing of members(callers)
Command: `json {"command": "callcenter_config","data": {"arguments":"member list"}}`

- Listing of tiers
Command: `json {"command": "callcenter_config","data": {"arguments":"tier list"}}`

It handles various errors and also returns back response in JSON as follow
E.g. Send a command without a required field (`queue_name`)
Command: `json {"command": "callcenter_config", "data": {"arguments":"queue list agents"}}`
Output: `{"command":"callcenter_config","data":{"arguments":"queue list agents"},"status":"error","message":"The command returned an error","response":{"error":"Missing data attribute: queue_name"}}`
2016-01-30 12:25:57 +04:00
Anthony Minessale
f8b19b7485 FS-8190 #resolve [When using nixevent, freeswitch stops sending us certain custom event that were NOT part of the nixevent command] 2015-09-21 18:00:32 -05:00
Mike Jerris
5c59a0159d FS-7966: fix more msvc 2015 warnings. 2015-08-31 17:08:52 -04:00
Michael Jerris
164c6111a1 FS-7966: remove some older versions of msvc build system as these will no longer work soon, please use 2015 instead 2015-08-31 10:19:10 -05:00
Michael Giagnocavo
5e456fe9a6 FS-7966. First pass at moving to Visual Studio 2015.
The new C compiler breaks a lot of things. snprintf and timespec now exist, and redefining causes an error.
Many more things are warnings, so warnings-as-errors will fail - remove it from some projects for now.
V8: don't pass VS version to build batch file.
mod_sofia: Config has too-long if/elseif chain. Break this up to avoid "parser stack overflow; program too complex".
Add mod_conference.h to project and dir to includes.
2015-08-21 18:28:32 -04:00
Italo Rossi
be3c868655 FS-7467: mod_callcenter - Fixing uuid-standby agents. 2015-06-22 17:51:08 -03:00
Michael Giagnocavo
f116387443 FS-7644. Change 2013.vcxproj references to 2013 2015-06-18 04:17:53 -06:00
Jeff Lenk
345e50d25a FS-7644 2015-06-11 15:29:28 -05:00
Michael Jerris
2cc0348422 FS-7635: remove msvc 2005 2008 and 2010 non working build systems. There are now multiple more recent (3 different ones) and some free versions of the compiler that can be used. 2015-06-10 16:33:14 -04:00
Italo Rossi
bebd4c4e3e FS-7138 - new mod_callcenter param: reserve-agents
Sets the agent state to Reserved before calling him. In this case,
the Agent is first updated to state Reserved ONLY if his previous
state was Waiting and status was Available/Available (On Demand).
The purpose is to avoid possible race conditions when external
applications are manipulating `agents` table.

Disabled by default.
2015-06-08 14:38:51 -03:00
Ítalo Rossi
6f057b795e Merge pull request #249 in FS/freeswitch from ~SAFAROV/freeswitch-mod-radius-cdr_improvement:origin/FS-7524 to master
* commit '7e1f8bc4c7795451ee6140f65588e590cc4af024':
  FS-7524: mod_callcenter - Fixing tiers, level and position should default to 1 instead of 0
2015-06-05 13:08:58 -05:00
Sergey Safarov
7e1f8bc4c7 FS-7524: mod_callcenter - Fixing tiers, level and position should default to 1 instead of 0 2015-06-05 19:35:04 +03:00
Ítalo Rossi
0c45bee409 Merge pull request #257 in FS/freeswitch from ~ITALOROSSI/freeswitch:bugfix/FS-7569-mod_callcenter_strategy to master
* commit '890991cd28bb2b2860c988476f8641d7b32f02c8':
  FS-7569 mod_callcenter - Tracking queue strategy changes to avoid stuck members
2015-06-02 17:48:46 -05:00
Ítalo Rossi
e6bb3ed434 Merge pull request #246 in FS/freeswitch from ~ITALOROSSI/freeswitch:bugfix/FS-7464-callcenter-cannot-play-us-ring-tone_stream to master
* commit '1bc241922e3136dda8067723a4d4c9ebdd51f101':
  FS-7464 mod_callcenter moh-sound needs to be expanded when containing variables.
2015-06-02 17:33:29 -05:00
Italo Rossi
890991cd28 FS-7569 mod_callcenter - Tracking queue strategy changes to avoid stuck members 2015-05-25 15:00:14 -03:00
Italo Rossi
1bc241922e FS-7464 mod_callcenter moh-sound needs to be expanded when containing variables. 2015-05-03 20:25:42 -03:00
Victor Torres
69d5333bfc FS-7445 fixes cc_outbound_cid_name_prefix 2015-04-17 18:50:16 -03:00
Artur Zaprzała
0df4085c3d Fix race condition when callcenter member cancels the call. 2015-02-18 14:26:02 +01:00
Marc Olivier Chouinard
e1cb0e8632 Merge pull request #127 in FS/freeswitch from ~ITALOROSSI/freeswitch:mod_callcenter-queue-list-count-by-state to master
* commit 'f63f8686bc8da391b3c46b24e10571215c8b377f':
  FS-7049 - Documentation for state optional paramenter in callcenter_config queue list and count
  fix FS-7049 - Count and list agents based on their state
2014-12-11 21:01:03 -06:00
Italo Rossi
f63f8686bc FS-7049 - Documentation for state optional paramenter in callcenter_config queue list and count 2014-12-11 23:43:03 -03:00
Humberto Diógenes
1bcdb49bce Fix JIRA (FS-7018): mod_callcenter's longest-idle-agent strategy is unfair 2014-12-04 16:12:20 -03:00
Italo Rossi
80649df65c fix FS-7049 - Count and list agents based on their state 2014-12-02 22:57:43 -03:00
Italo Rossi
f87c335e8a Only waiting for agent channel to hangup.
If the member do an attended transfer this loop stops and
the agent is set to Available state again, when in fact he still
busy with other channel.

This was happening, for example, when a member calls support queue, then
the support operator do an attended transfer to sales queue, while the sales
operator is talking the member that was transferred, the sales queue will
send calls to the operator, which is not expected.
2014-11-03 12:02:03 -03:00
Brian West
07f4c6204e FS-6646 --resolve 2014-07-11 11:03:22 -05:00
Marc Olivier Chouinard
29e2263442 CID:1210789 Make return value of a function available from the another calling function. Also add a small status check. 2014-05-16 17:18:17 -04:00
Marc Olivier Chouinard
8fa7398760 CID:1025868 Simplified a function arguments never called. 2014-05-16 17:03:59 -04:00
Anthony Minessale
7151d6acea FS-6402 part 2 2014-04-02 03:21:37 +05:00
Anthony Minessale
5c0cff70b3 FS-6402 --resolve 2014-04-02 01:20:19 +05:00
Anthony Minessale
804ef7709d change from sqlite hash to newly added one 2014-03-09 00:37:17 +05:00
Michael Jerris
bcd9f49fbe move applications to use automake 2014-03-07 18:36:12 -05:00
Marc Olivier Chouinard
365f81b412 FS-4898 --resolve 2014-02-24 08:52:36 -05:00
Marc Olivier Chouinard
295796d831 FS-3743 --resolve 2014-02-24 08:38:31 -05:00
Marc Olivier Chouinard
8dab4f358a FS-6236 --resolve 2014-02-20 16:20:17 -05:00
Ken Rice
6e7d5d0897 update copyright header for 2014 2014-02-12 12:08:56 -06:00
Peter Olsson
5a820fdc78 Disabled some compiler warnings on Windows build (for Visual Studio 2012), also disabled code analysis one some projects. This should make the Windows build more clean in the future. 2014-01-22 22:47:11 +01:00
Peter Olsson
084e245085 Lots of trivial tweaks to minimize compiler warnings, especially on 64-bit platform: Added missing type casts, changed types, added missing NULL checks. 2014-01-22 22:30:23 +01:00
Marc Olivier Chouinard
cc8a8c5198 FS-6095 --resolve modified to protect against memory leak and make it more consistant with other modules 2014-01-14 09:34:20 -05:00
Marc Olivier Chouinard
8f73c4ef44 FS-6062 --resolve 2013-12-23 07:34:34 -05:00
Marc Olivier Chouinard
9ecbb54061 FS-5850 --resolve Thanks 2013-11-28 01:28:00 -05:00
Marc Olivier Chouinard
a19d013d3e FS-5993 --resolve 2013-11-27 19:19:31 -05:00
Marc Olivier Chouinard
a34095a4b7 FS-5843 Give this a try 2013-10-04 15:47:19 -04:00
Marc Olivier Chouinard
9104aab9de FS-5843 --resolve Thanks 2013-10-04 15:21:27 -04:00