Most call centers will not have the inhouse means to easily calculate trunk requirements. They may have limited knowledge and understanding of their current data and future calling patterns. And they may also lack the tools to forecast future volumes, from their base data.
For outbound predictive dialing, external trunk requirements may vary between just over one trunk per agent to up to say 2.5 trunks per agent. As a standard rule of thumb, Sytel recommends an external trunk ratio of 1.5 trunks per agent when the live call rate is above 35 %.
Between 20% and 35% we recommend an external trunk ratio of 2 trunks per agent. If the level of live calls is likely to be lower than 20%, this may require a trunk/agent ratio greater than 2 (depending on local telephony issues such as signalling type, SIT detection, AMD etc). Please consult Sytel for advice.
For those customers who seek more precision, please see Sytel's outbound planning tool Oceanic® , which will calculate exact trunk requirements for any type of campaign.
There are a number of contact center resource management packages available that can be used to calculate requirements. These packages can be particularly useful for helping to marry service levels with peaks and troughs in calling activity, and should help in planning the trunk requirements for a call center operation.
The cost of these packages may be more than some customers will want to bear and Sytel is happy to provide guidelines on request, but will look to customers to have some understanding of their current and future calling volumes and other metrics such as required average talk and wrap time and call response times. Please contact us if you have any concerns in this area.
General requirements are:
Call throughput limits are imposed by SIP carriers. They protect their SIP networks with session border controllers (SBCs) that do several things:
The SBC can be thought of as a call and media processing device (STG may be configured as a kind of SBC). SBCs are generally hardware devices which have finite limits on call processing capacity.
These limits are set by SBC manufacturers based on the throughput capabilities of their devices. A typical SBC configuration allows for a call launch rate of 1 call per second for each 100 trunk lines, with a healthy safety margin (~300%). This is consistent with call launch rates across the network at large from domestic subscribers.
Predictive dialers need to have a higher rate of calls being launched than is typical. This requirement must made clear to the service provider when specifying the service requirement.
As a rule of thumb, a good predictive dialer can launch 1 call per second for each 10 trunk lines, or 1 call for each 5 predictive agents per second, roughly ten times the throughput that most carrier SBCs are designed to provide.
In all sites where SIP trunking is used, STG should be configured to limit the number of calls per second to a value that is appropriate for the size of the installation (See Managing Throughput ).
Setting this limit will ensure that the carrier does not reject calls at the SBC owing to lack of capacity and also prompt the user to verify that the carrier can handle the throughput rates needed by a dialer.
(See also CTI Integration - Best Practice)
Calls may be delivered to the network via a wide range of media and signalling types. In practice there are two main groups of telephony protocols in regular use. The advice below reflects the state of the industry at the time of writing. This will be subject to change.
In all TDM environments, calls are circuit-switched leading to high reliability and low latency once the call is switched end-to-end. If your carrier provides a TDM service (E1 or T1) you may have a choice of Channel Associative Signalling (CAS) or Common Channel Signalling (CCS) protocols. This is also predicated on the equipment that is used to launch calls.
Generally CCS protocols (e.g. ISDN) provide far quicker and more reliable call signalling than CAS protocols. CAS should be avoided for the carrier connection whenever possible. In North America if the customer has a choice of ISDN protocol delivery from their carrier, NI2 is preferable to AT&T or NI1. In the EU, ETS300 is prevalent and should be used whenever possible.
In mixed-mode signalling environments such as the US and whenever calls cross from one type of network to another (Cellular and IP for example) there is the potential for signalling degradation. In such circumstances the telephony equipment deployed should have some means of performing inband signal processing to determine call outcomes.
Carrier-based IP services can be inconsistent in the service provided. It is important to ensure that the SIP carrier chosen can deliver the signalling and quality of service required. Of critical importance when deploying a dialer against IP telephony are:
Securing a Quality of Service (QoS) - guaranteed service from the carrier
Ensuring that the SIP carrier can deliver the correct intercept signalling for the region, ideally both out of band and SIT but at least one of these.
Ensuring that the dialing equipment can perform inband signal processing; otherwise any SIP or H.323 signalling events may be degraded.
In card based (ProsodyX) systems the number of available channels is dictated by the number of physical DSPs fitted to the card. Typically this is 120 channels per DSP but may vary depending on the type of card.
In a host based (ProsodyS) system, the number of available channels is dictated by the specification of the host platform (See Sytel Media Server ).
Whatever the configuration the number of agents and calls that can be supported depends on
the total telephony system channel capacity and
the number of channel resources that will be consumed per call.
The number of channels used per call session will vary depending on typical business practice and workflow.
To determine this, the following factors must be considered:
Process | No. of Channels Consumed |
---|---|
Inbound Call | 1 per call |
Outbound Call | 1 per call |
Call Recording | 1 per recording |
Playing a Wav File | 1 per call |
Playing a TTS Fragment | 1 per call |
Echo Cancellation | 2 per call (1 for echo canceller, one for ref input) |
Call Progress Detection | 1 per call (DTMF, SIT, AMD, FAX) |
Conferencing | 1 per conference leg |
Add up the number of channels used based on your workflow this will give you the maximum number of channels used per call.
Divide the value from 1. above by the value from 2. above and enter the result into the <maxIpCallsPerDsp> element in the STG config.xml file.
This will provide the system with the correct set of variables to anticipate channel exhaustion and prevent resource errors (-107) from occuring.
Most carrier echo cancellation has a 64ms tail and processing is done in the DSPs on the media gateways. Prosody S echo cancellation has a 200ms tail to allow for transcode latency.
In extreme circumstances some calls can have up to 500ms echo. In these unusual cases it is likely that the far end carrier is mediating the call from SS7 to SIP, transcoding to G.729 for transmission over an internet connection to the respondent's home, which then gets converted back to Analog, for example, a respondent using MagicJack Plus connected to an analog handset. There is nothing that any carrier or Sytel can do to eliminate an echo tail of this duration.
Prerecorded messages to be played by the telephony layer must be recorded in a compatible format. For messages to be played using the Aculab Prosody/ ProsodyS system, sound files must be recorded in CCITT 8KHz Mono, ALaw or ULaw depending on the locale set on installation.
See Playing Messages for details on how Softdial CallGem™ handles sound files.
For detailed information on how to manage RNA timeout effectively, see Performance Issues, Ring No Answer Timeout - Best Pactise section.
In an ISDN trunking environment (the norm for most installations), running at or close to trunk capacity can lead to local fast busies. Even though Softdial CallGem™'s API expressly caters for such resource management issues there will inevitably be some crossover.
To avoid problems in live running, there are a number of steps integrators should take:
Softdial CallGem™ has logic to throttle trunk utilisation when fast busies are signalled. If fast busies are mis-signalled as some other type of failure, this will lead to Softdial CallGem™ working very quickly through the calling list and disposing potential live contacts as calls failed. (See also Resilience Measures - Network provider issues - Fast Busies section)
A typical 100-seat outbound call center generates a similar level of busy hour call attempts to a telephone exchange serving 25,000 residential customers. This is why call centers can fall foul of telephone network bottlenecks. There are a number of actions that can and should be taken to minimise this problem.
When a predictive call connects there are two ways of getting the connected call to an agent; the dialing engine can make a routing decision, or a telephony device may route the call to an agent.
Because Softdial CallGem™ is 'in charge' of call center resources it is generally safer to have Softdial CallGem™ make the routing decision. There are good reasons why the telephony device may want, or need, to make the routing decision (skills-based routing support on the telephony device, or PBX integration where some form of MakePredictiveCall API is supported). In these cases there are a number of additional things that integrators must manage carefully:
In order to ensure that Softdial CallGem™ adjusts pacing to take account of agent movement, agents must request release from the campaign which will then take a finite (but usually short) time to grant. Integrators supporting switch-determined routing must ensure this negotiation process is implemented as per the Softdial CallGem™ API documentation.
Since the telephony device takes responsibility for routing connected calls, the telephony device must also make the decision to abandon a call if no agents are available. If is an agent waiting in the predictive pool and a call is connected, the call must be connected to the agent even if, for example, the agent's skill profile is a poor match for the call.
When performing switch-determined routing with skills based predictive campaigns, the rules are:
Call progress analysis in abstract terms is about determining the outcome of a call from a number of signalling sources; out-of band signalling, inband signalling and media stream analysis.
For most call centers this often gets simplified to 'run Answering Machine Detection (AMD)'.
Generally, hardware architectures that support multiple media/signal analysis tasks on the same call are better than architectures that support one only type of task for a given call. Support for SIT (carrier intercepts) and signalling tone detection is usually highly desirable if:
Support for inband signalling protocols such as robbed-bit only has value if dialing into North America AND the signal analysis equipment does not support SIT/tone detection.
AMD has business value only in environments where nuisance calling is tolerated and it will not affect the likely outcome of a call. AMD is inherently failure-prone and so managing detection failures should form part of an AMD delivery strategy. Because of the delays in doing such detection (i.e. the called party is kept waiting), then AMD is often best avoided.
When customers are keen to use AMD, despite its inherent delays, we advise that controlled campaigns should be run. One week, say, with AMD on and one week with it turned off. When AMD is turned off, talk time per agent hour will drop, but very often overall results will improve, because of better call quality. See also Performance Issues - Answer Machine Detection section.