This page contains comprehensive information dealing with configuration issues. Please read carefully. Contact Sytel Support if you have any questions.
Fig. 1 - SCC Deployment Plan for Hosted Deployment (v10.6)
Fig. 1 shows a generic deployment plan for medium to large scale hosted deployments. Consult with Sytel Support to determine the most suitable deployment for your specific requirements.
Softdial Contact Center and Softdial Telephony Gateway are validated for use on the Windows Server 2012 OS.
At the time of writing (V10.6.262) STG runs as a 32 bit process on an x64 OS, including Windows 2008 R2. A native x64 version is currently in Q.A.
Virtualisation platform support (See also Virtualisation Issues):
Only hypervisors and processor architectures that support reservation of processor power and memory for a VM may be used to host SCC. This means Nehalem or Sandy Bridge architecture Intel processors.
Softdial Contact Center has been validated against the following Hypervisors
Installing Windows Server 2008/R2:
* - It is possible to use Windows Firewall and UAC if your IT policy dictates this. It will make administering your SCC install more cumbersome.
Installations should be distributed across 2 or more servers, depending on the initial number of agents and scale up that may be required.
Some understanding of the limiting factors applicable to the individual applications will be helpful in deciding the most appropriate configuration for your system.
Softdial CallGem™ caches dialing information for each number, agent and campaign as well as the last hour's enumeration message history. Softdial CallGem™ is a 32 bit application so the limiting factor here is the 2 GB available memory. Theoretically this should support up to 2000 agents but the actual number will be dependent on the no. of agents per campaign and the amount of data that is embedded with the data messages.
On a dedicated server a safe upper limit would be 1000 agents with typical data payload. (Data payload may be significantly higher depending on the business application e.g. Market Research). For most modern Server hardware (2GHz+ Core 2 CPU) CPU usage should not be an issue.
Note that the dialer simulation engine will try to use as much CPU resource as is available but this is run as a low priority process such that it will not restrict other OS processes that require CPU resources.
The limiting factor as far as Softdial Campaign Manager™ is concerned is the available network bandwidth therefore the number of agents that can be supported on a single server will largely be determined by the data bandwidth between Softdial Campaign Manager™ and the database server. As a 'rule of thumb' for 1Gb/s NIC we would suggest up to 500 agents on a dedicated CM Server. Since Softdial Scripter™ has similar network bandwidth based limits, this would drop to 250 agents if Softdial Campaign Manager™ and Softdial Scripter™ were installed on the same server.
Due to the non-deterministic CPU loading, memory usage and bandwidth characteristics it is always recommended that Publisher is installed on a dedicated server (with the exception of the 'single box' solution described above).
Softdial Telephony Gateway™ and its media stack is also a 32 bit process. In this case the agent limit is imposed by the no. of available OS handles which we increase from the default 10000 to 18000. This equates to 1000 channels of voice media processing or 300 agents with some redundancy. It is possible to configure a Softdial Telephony Gateway™ cluster with up to 8 STG instances to provide support for a theoretical maximum 2400 agents.
There are other factors which can limit the number of supported agents below this theoretical max:
In practice we have found that a realistic average for the number of agents supported per server is around 200 - 220.
For more information see the Sytel Media Server page.
For backup and fast recovery we recommend thatSoftdial Contact Center™ is run 'virtualised' where possible.
Here is a baseline spec for 100 and 200 agent systems supporting all SCC functionality:
And optionally
And optionally
When a TCP/IP socket is closed, it goes into TIME_WAIT state before closing, for a period of time determined by the operating system. A socket in TIME_WAIT state cannot be reused; this can limit the maximum rate at which network connections can be created and disconnected.
The client application normally closes the socket; if the application is on a different machine, the limitation usually applies to the machine running the application. The symptoms of a machine that is reaching these limits include:
All of the TCP/IP resources of the operating system are in use, and requests for new connections fail. Running the netstat -a command on the application machine shows a large number of sockets in TIME_WAIT state.
Performance deteriorates.
To improve the ability of the Windows operating system to deal with a high rate of network connections, add the following registry entries in
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TCPIP\Parameters
Key | Description |
---|---|
TcpTimedWaitDelay | A DWORD value, in the range 30-300, determines the time in seconds that elapses before TCP can release a closed connection and reuse its resources. Set this to a low value to reduce the amount of time that sockets stay in TIME_WAIT. |
MaxUserPort | A DWORD value that determines the highest port number that TCP can assign when an application requests an available user port. Set this to a high value to increase the total number of sockets that can be connected to the port. |
For example, a system making a large number of connection requests might perform better if TcpTimedWaitDelay is set to 30 seconds, and MaxUserPort is set to 32678.
There are some Windows OS resource issues that will restrict the number of tenants / services that can be supported on a single server, whether physical or virtual.
As well as the usual disk space, CPU and Memory limitations, you also need to consider limitations imposed by the OS on the desktop heap used by the various Softdial services.
For guidance, our testing with Windows Server 2012 32 bit OS showed that running 25 tenants on a single server with each tenant simultaneously running the following tenant services,
resulted in approximately 90% desktop heap usage.
This is something you should consider if you are intending to deploy multiple tenants per server.
Particular care should be taken with some key issues highlighted here:
The latest versions of Softdial Contact Center web applications are compatible with
The following port numbers are used by CallGem. To avoid port conflicts, they must not be used by any other application:
Refer to the Help documentation for a list of Registry settings that may be modified for configuration purposes. Registry Keys that are not listed in the Help documentation must not be changed except where advised by Sytel engineers - see the CallGem Registry Settings page.
Changes to the
See Name Space Editor.
Softdial applications connecting to CallGem must avoid using illegal characters in object and address identifiers. Identifiers are used to index collections of objects such as campaigns, tenants, agents, queues etc. Any string that is used as an identifier for one of these objects must be validated against a consistent set of 'Illegal Characters' so that wherever these identifiers are used, transformed or cross API boundaries they will remain valid.
Identifiers may be used freely in 4 contexts: the OS, XML, SQL and SDMP. This means that the range of invalid characters is the superset of:
Therefore the set of illegal characters for object identifiers is:
/ \ : * ? " < > | & % ! ' ;
and the set of illegal characters for address identifiers is:
/ \ * ? " < > | & % ! ' ;
Illegal characters can sometimes be inadvertently passed to Softdial CallGem™ from user generated input. For example, this can happen if input text is copied or sent from a third party application which may insert hidden illegal characters causing the Softdial application to generate an alert containing these characters. This alert is passed to Softdial CallGem™ which, in some circumstances, may cause Softdial CallGem™ to fail.
From V10.6.395 we have improved validation of alerts received by CallGem to eliminate failures caused by alerts containing user generated illegal characters.
(See also .NET Service Log Configuration)
On 64-bit machines where you see HKEY_LOCAL_MACHINE\Software
replace with HKEY_LOCAL_MACHINE\Software\Wow6432Node
.
Note that even though CM runs native 64-bit we still use the 32-bit registry redirect for compatibility.
HKEY_LOCAL_MACHINE\Software\Wow6432Node\Sytel\CMServer\<tenant>\
3 registry values, all REG_DWORD
LogPurgeDays
- default is 28, controls purge cycle for SCM log and TXlog files.LogSQLErrorPurgeDays
- default is 28, controls purge cycle for SQL error logs.AuditPurgeDays
- default is 28, controls purge cycle for audittrail data in SQL databaseHKEY_LOCAL_MACHINE\Software\Wow6432Node\Sytel\Dialer\
2 registry values, all REG_DWORD
LargeLogDays
- default is 28, controls purge cycle for msglog filesLogDays
- default is 28, controls purge cycle for syslog, transactionlog and statlog files.The log purge cycle is controlled by a setting in the .exe.config file located in the same directory as the executable.
<add key="MaxDaysOld" value="28" />
The value can be changed but must be enclosed in quotes.
All of these settings require a service restart to take effect.
See the Softdial Logs page for more details of configuring logging levels on .NET services.