Integrating External Applications with Call Center Systems

When a Call Center System is mentioned what comes to mind often is a call floor with many agents dedicated to taking or making calls for a given campaign.  But now more often the case is an office which needed a queue with enhanced features while integrating with their current work flow and applications.  For one example lets take a quick look at how we use the Q-Suite with Redmine in-house with our support department in our unified communications configuration.  The support department’s role is to handle requests from clients coming in from various sources, we get these requests in three main ways:

  • Incoming calls.  Incoming calls have their caller id looked up and are then linked with given project in redmine.  This allows the Q-Suite screens to pre fill out a search and show most recent issues for that given client.  Having this information available helps our support personnel quickly respond to any questions on outstanding tickets by knowing what outstanding items are still open and their current status.
  • Redmine tickets.  Requests with clients entering a ticket directly with redmine or providing feedback on an existing ticket.  The people on support belong to the redmine queue for the clients they are involved with.  Any open tickets are queued and given out to a support person when they are ready for the next while a caller is not queued.  This works well as there are many times during the day when there are no incoming calls and the system delivers the next redmine ticket to be worked on.  This ensures any outstanding redmine tickets are dealt with and not forgotten, something which can be mistakenly done without a system in place.
  • Email. We also have support email which clients use to initiate a request.  This functions very similar except a lookup is done based on the email address and matched with a client.  This allows the person handling the communication to have the same features when a phone call is coming in where they can match it to any open redmine tickets or create a new one as required.

More information on the Q-Suite is at www.Q-Suite.com and Redmine can be found at www.redmine.org

Three Common IVR / Auto-attendant problems

In setting up an ACD System you need an IVR or auto-attendant to get your callers into the queues to be distributed to your agents.  However there are a few common pitfalls you can mistakenly get into when doing so.

  • Endless loops. A lot of solutions have a built in option to protect a single menu.  This is usually done with a max repeat and then a default option.  This works for that specific menu but you still need to be concerned an overall loop is not put in place.  For example if two menus default options point at each other they can just loop forever without input. I’ve seen a few cases where someone’s phone isn’t properly hung up or the discon from the telco is lost keeping the channel open.  The issue is that with a loop a channel of the trunk is busy until that call is cleared.  The best way to avoid this is an overall counter to protected against overall loops.  This has to be balanced so a normal caller is not affected but users who mistakenly or purposely use up resources can be cleaned in timely manner.  Solve this by visually looking at the IVR and all options and put a counter to stop this. It will save on resources by freeing trunks not being used by real clients.
  • No pause in logic. I’ve seen a loop configured where it checks if agents are logged in and ready to take a call to a given queue and if not then check another and looping until one if found.  This is very much related to the first item if the loop is the dialplan is checking time of day or agents in a queue and not pausing.  A pause can be as simple as an audio playback.  Without that or a wait, for input or just a delay, the channel will loop and do the checks in the dialplan as fast as the server will allow eating up CPU time and raising the load.  If a few callers get into this type of looping it can affect performance of the system which may adversely affect real clients.  This example is flawed in other ways as properly configured queues, priority, skills, and time of day rules should avoid the need for this type of check in most cases — but I did see this one configured and almost put into production.
  • Inconsistent sounding recordings. This is not going to cause any performance issues but can affect client’s perception and confidence in your business.  If the prompts are inconsistent in volume or cut/merged from many small files it will not always sound natural and can be distracting.  Solve this by using a professional, for asterisk systems you can hire Allison Smith to record extra prompts or company names needed.  If recording your own prompts ensure they are all recorded in a similar manner and normalize the volume if needed.

 All of these can be easily avoided with the Q-Suite platform with it’s advanced dialplan builder and audio file management interfaces.  Also highly recommended is testing your IVR configuration from time to time to ensure it still fits your needs and functions as expected.

The Challenge of VoIP System Failures Not Addressed by Most High Availability Designs

Hardware or software can fail at anytime and induce a system failure. It is not possible to reduce such failures to nil. When VoIP based systems experience such failures, it results in the loss of on-going calls. High availability (HA) or redundant systems cannot address this unless they are capable of restoring an on-going call without either one of the end-points re-initiating the call. Most high availability system for Session Initiation Protocol (SIP) based VoIP calls and their redundancy setup, deploy an immediate replacement of the failed component/sub-system to allow continued use of the system. It is good enough for many situations but it might not be adequate for mission critical applications when the HA cannot not restore on-going calls.

Imagine a scenario where an outside caller initiates a call and when it hits the demarcation point of the contact center installation. This could be a premise based contact center or a Cloud set up offering virtual contact center services. When the call setup reaches the intended peer and conversation starts, it is possible that your system, either Cloud based or on-premise solutions, could experience a failure. Once the system detects a failure, its high availability and redundant setup will kick-in and the system will be ready for future calls but what happens to the on-going call? They just die. This is the normal operating mode of traditional high availability systems including most high availability solutions offered for Asterisk. This issue becomes more critical for large contact centers using automatic call distribution (ACD) with significant traffic at any given time.

With contact center ACD, the importance of going beyond the traditional high availability is extremely important. Having the capability to keep calls alive through call survival is critical. This will allow the user to continue the phone conversation without the need for re-initiating the call. It is a sophistication in offering redundancy that goes beyond recognizing the need to bring into action the replacement software and hardware components. It introduces intelligence required in preserving all the on-going calls essential for mission critical systems.

Multi-channel ACD in a Cloud setup

Cloud is the new frontier for voice telephony and the contact center ACD (Automatic Call Distribution). The convergence of the transport mechanism for Voice with Data through Internet Protocol (IP), the acceptance of Session Initiation Protocol (SIP) as the default standard for Voice over IP (VoIP) transmission, and the consolidation of infrastructure accessible through Internet, have created a favorable environment for the growth of ‘Cloud’ based contact services.

Depending on the size and scale of a contact center operation, there are some options on how best to migrate to the Cloud. The larger operations can move to managed services in a Cloud platform where they exercise control over the operation without actually owning all the infrastructure. The smaller operations can be a part of a multi-tenant installation that is segmented and partitioned to provide an exclusive setup. Both these options provide a number of advantages including lower cost of setup and operation as well as the ability to have a geographic distributed work-force.

A multi-channel ACD handles more than voice. The additional channels may handle Chat. Email, and Social media. The ACD serves to distribute the conversations based on skills based routing but the media in the individual channels are handled by the respective media server. In the case of voice communications, the media server is the PBX switch. Asterisk dominates this category as a hybrid PBX which works seamlessly with both VoIP and the traditional Time Division Multiplexing (TDM).

The underlying technology stack for setting up multi-channel contact center ACD does not differ very much between a premise installation or a data center installation in the Cloud. With a competent hosted service provider to offer managed services, this can dramatically reduce the associated Information Technology (IT) operational cost. Also, sites with good connectivity offer the ability to have geographically distributed and remote agents. Some contact center software are multi-tenant by design and this enables the hosted service provider to offer shared IT resources for its tenants, thereby lowering the overall operational cost.