Thursday, May 21, 2015

Hot Leads, High Performance

Someone is really interested in your product. They've filled out the form on the web site and clicked "Contact Me". They're still thinking about you. Now, who do you have call them? It's a lot like pizza. When it's hot and fresh at just the right time, it's a magical experience.

Web-based, hot or live leads are a fantastic way to generate a contact with your client. If your prospect went through the trouble of filling out the form, they're never going to be more interested in hearing from you. It's really important to make sure the call is handled by someone qualified to handle it.

Having the lead information populated in a skills-based queue is your best option. You can filter the leads to make sure they get into the right queue, and then use skills to make sure only the right agents are taking calls from that queue. Skill priorities can be used to make sure that the best qualified agent at the time a lead comes in takes it.

Social media and other non-media types can also be handled using the skills-based queuing method. Again, the most important thing is to make sure your qualified agents are handling these contacts in a timely manner. Wait too long, and your opportunity is gone. Give it to the wrong agent, and you've blown the opportunity. The right agent at the right time? It's magic.

Tuesday, May 19, 2015

Running the Beachfront Call Center

In 2004, we had a client with a call center in Northern New Brunswick.  For a dozen seats, he required thousands of dollars in telephony equipment, including the Pika board required to wire in the multiple incoming telephone channels, CTI server and a server to manage the leads and agent interaction. A few years later, and after a downturn in the economy, he was able to repurpose the equipment. He moved it to his basement, kept a few call center seats there, and used DSL to connect to a SIP provider. If he were to start today, he wouldn't need the telephony card, the servers, and the wiring. He could start in his basement, using the Cloud,  and only move to an outside office when his growth demanded.

A lot of people don't understand what exponential means. You might think it means a lot. It's more than that. Moore's law says that the number of components on an integrated circuit doubles every two years. What that means is an astounding performance boost in hardware every couple of years. It also means that the capacity of the Cloud is ever increasing. Where it would have been highly impractical to host a call center in the Cloud in 2004, it's astonishingly easy today. What's tough today will be routine tomorrow, and trivial in a few years. Software as a Service is becoming routine.

What does that mean for your call center and the contact center technology it's using? Great things, for sure. Capabilities are improving. Costs are dropping. It's easier to get quality software like Asterisk running on the Cloud. APIs make it easier to incorporate contact center features into the software you're using today. And it just gets better. As hardware improves, you can easily upgrade the hardware. As software improves, you get the benefit. What will be possible in two years? Who knows? Better speech recognition for sure. Additional logic for routing calls to the right party? Freedom to run your call center remotely? From the beachfront? Remote agents working from convenient locations? Well, those are already here.

Thursday, May 14, 2015

What To Do Before Someone Lets The Smoke Out of Your Server

Who let the smoke out?
The client was worried because one of the Asterisk servers had gone down without any notice at all. The overseer process on the other Asterisk server had noticed, and had taken over as the active server. The disruption was minimal. Agents were at work. But the client wanted to know what had happened, and what we could do to prevent the issue in the first place. After 30 minutes of poring over logs, digging around, and contacting the colo, we discovered that a tech had decided to swap out the power bar connected to that server. There was no notice, and not even a courtesy three-finger salute

Whether it's an incompetent tech, a bad power supply, or a network port going out, you will experience downtime. If you see the "magic smoke" leaving your server, it's expired. Kaput. When your call center technology needs to be up, you need to make sure you're using a high availability solution. High availability can be as simple as a watchdog process monitoring the health of your server, some means of synchronization, and kicking off a recovery process on the spare when the watchdog detects a failure. Better implementations will include the ability to monitor both servers and services. You'll also want to have multiple servers, services, and monitoring for the health of each. High availability in the Q-Suite, Indosoft's call center software, involves all of these.

Monitoring servers is important. Having a web server running successfully on dying hardware means a future dead web server. System load, free memory, disk usage, and other factors are all important. Many processes will not work successfully if the disk has been remounted read only or is full. Think about what that does to your recordings. You needed those, right? If it looks like your system is running into trouble, it's better to do the handoff before something fails hard.

Monitoring the services requires that we be able to define what numbers to use. A database process using 32 GB of memory may be correctly running and configured. An apache process using 32 GB of memory is a recipe for disaster. An Asterisk process using 32 GB means that something has already gone horribly wrong. On the other hand, an Asterisk process using a big chunk of available CPU is normal, and seeing the same in the web service is a sign of impending doom. Other factors such as thread count and responsiveness can let you know that your processes are performing well or on the verge of failure.

One way to move a service is to transfer a floating IP address representing the service master to a spare machine. In the Q-Suite implementation of overseer/watchdog, a number of IPs can be set up. For instance, you might have 4 active Asterisk servers and 3 active web servers. Each would use their own floating IP, which could be handed off. Sometimes you have sets of IPs that move together, such as the case where a server has multiple IPs for incoming trunks. In other cases, you want the IPs to remain separate. You can't make a server act as 3 web servers and perform as well as 3 separate machines, for instance.

With all the moving parts, it's up to the software provider to configure and test failover, to ensure it's working properly. Environmental factors can complicate things, such as network hardware, so it's not the sort of thing you should be expected to configure yourself. Once it's set up and you can monitor it, though, it's reassuring to know that you can have the odd failure without bringing down your floor.

Tuesday, May 12, 2015

4 Keys To Soft Phone Delight

A colleague once visited a client site, and found their server room to be a nightmare. Among other things, they had insisted their telco give them a PRI connection due to the improved reliability they thought they'd get. They had also decided to use a PRI to SIP connection in the server room to allow the flexibility of moving the telphony connection from one server to another if needed. When Justin got there, he found a SIP to PRI device on the telco side, and a PRI to SIP device connecting in to Asterisk.

Even in the on-premise world, SIP (and other VoIP technologies) are the norm rather than the exception. When you've got your call center system in the Cloud, anything else is going to be unnecessarily complicated. Usually that means a SIP trunk and SIP phones for your agents. And usually that means softphones for your agents.

"X is the worst possible softphone, except all the others." Ripping off Churchill for a quote is something I'm always happy to do. Replace X with X-Lite, 3cx, Zimbra, Eyebeam and Bria at various times in the last decade. I've tried them. I've sometimes struggled with them. I've cursed them all, but really, it's tough to get a phone right. There are a few things you can do to make the experience a little better:

  1. Turn off silence suppression: Silence suppression is when your softphone sends nothing when your agent (and call floor) is silent. Silence may be audio that's quieter than a certain threshold if you have background noise suppression turned on. For recording, etc. that would require your telephony system to generate silence in any ongoing recordings, etc. just to keep things synched up. Asterisk doesn't support that.

  2. Turn off call inactivity timer: in conjunction with 1), if the phone determines there isn't any activity, it hangs up the call. Many of our clients want the agent music on hold to be silence, and sometimes this is detected as a lack of network activity. This results in agent connections hanging up mysteriously and wastes a lot of time.


  3. Turn off unnecessary codecs: Usually G711 is your go-to choice. G729 is more common in Cloud deployments. Softphones come with a lot of codecs. You don't want most of them. Trying to use a codec your server doesn't support (well) or your telco doesn't support is going to result in audio issues or missing audio. G711 is used because it's an open standard with great sound quality. G729 is used because the licensing cost is usually pretty low and the combination of bandwidth use and quality is very good.
  4. When using G729: make sure to pay for the codec and licenses. Sometimes you'll hear that it's not necessary to buy the license if you're doing passthrough. Passthrough is when the trunk is doing G729 and you're directly connecting to a G729 phone. That's true. However, in the call center, you're usually doing more. Playing music on hold. Recording the call. Managing three-way calls, conference calls, playing audio prompts, etc.. All those require the telephony server to do more than simply pass the audio straight through. That requires a codec and licenses. G729 is a patented technology, so make sure you purchase your licenses from a reputable vendor, such as Digium, in order to avoid any legal hassles.
These four things will let you stop worrying about your agent phones and get on with the business of running your business.

Thursday, May 7, 2015

Take What You Do, Be Like Steve Jobs

Steve Jobs wasn't the best software developer. He also wasn't a world-class designer. But when he combined software with design, he created something world class. You may have a CRM, or agent interface, that you've invested a lot into. Wouldn't it be great if you could combine it with call center technology to create something better?

There is more than one way to log in to your call center system. The provided agent screens are the most straightforward way. But an Application Program Interface (API) can give you another way. A web-based system using an XML call is pretty common these days. This gives you an easy to program way to interact with the system. The return values are usually pretty simple to understand as well, coming in a well-defined standard.

Another possibility is using a library that can be incorporated into your application. .NET applications, written in Microsoft's popular software framework, can interface with a .NET library. Your call center needs are handled by your program, which just calls the functions it needs.

Finally, your call center software may have its own defined interface and functionality that you can hook into directly. Sometimes this is the best way to access very particular functionality that you need without adding a lot of overhead or complexity into your application. It may not be simple or supported by a wide set of standards, but having that capability available is better than a completely closed system.

Whether you just want to add dialing capability to your CRM, to your custom application, or you just want to build your own live reports for your contact center ACD system, you have the power. If you want to build your own agent interaction screens to incorporate what you already do with the power of inbound queues, you can. Just make sure that you're using a full-featured, flexible call center software suite like Q-Suite that gives you this capability. Then you, too, can make something world class.

Tuesday, May 5, 2015

Vendor lock-in can happen to anyone, even with paper towels

Our landlords have fallen to the vendor lock-in trap with the paper towel dispensers in the washrooms. The paper towel dispensers don't use normal rolls of paper, they require a proprietary roll that has a plastic peg in the middle of the roll.



For some reason, they are unable to get that specific brand of paper towel and are now having to use an open solution:



With cloud-based call centre software and PBX systems, proprietary phone sets aren't an issue. The days of having to find a specific model of phone that works with a specific model of phone system are over. VoIP systems use standards-based SIP phones which can be an actual phone that sits on your desk, or an app that runs on your computer or smartphone. If you need to expand your office, new phones are easy to find.

Using Indosoft's cloud-based call centre software, you'll never have to resort to the equivalent of drying your hands on your shirt.

Thursday, April 30, 2015

Schedule the Sale


Callbacks can be a great way to give that last push to get your sale. Callbacks can also drain the performance (and profitability) of your call center. For such an important tool, they can be woefully misunderstood. Your call center software likely has a number of settings surrounding callbacks. Make sure you understand what your agents are doing with their callbacks.

There are two primary types of scheduled callbacks

  1. Unowned callbacks: The agent sets the contact to be dialed again at a certain time. The call will be sent to the next agent requesting a contact from that campaign at the scheduled time.

  2. Agent Owned callbacks: The agent sets the contact to be dialed at a certain time. That agent is presented with the call at the scheduled time.

Unowned callbacks are a very simple case. Because a larger pool of agents can get the call, and the original caller doesn't matter, they skip a lot of the complications of owned callbacks. They're also not used very often. Normally when you're doing callbacks you want to keep the benefits of the relationship with the original agent. A familiar voice. Also, agents can get upset when they set up the callback, but somebody else gets the sale.

Agent owned callbacks are the most common case. Your agent talks to someone. They need more time to think about it, or want their spouse on the call or something. Of course it's better if you can close on the first call, but a callback gives you another chance. So what things can go wrong?

  • Lead Hoarding is probably the worst case. This happens when agents set every call they've handled as a callback. Busy, no answer, answering machine, doesn't matter. They had it on the screen once, so they feel they own it. There are a couple of problems with this:

    • Your agents will increasingly be spending their time working leads where the call recipient doesn't answer the phone. If the lead is no answer or answering machine more than a couple of times, they may just be screening their calls.

    • You're not in control of what leads your agents are dialing. If you have a new list that you want to dial, your hoarding agents are still dialing leads from last month.

    • Legitimate callbacks that get scheduled for a particular time may get missed by a wide margin because there are so many other leads that were scheduled to be called earlier.


  • Setting too many callbacks is a subset of lead hoarding. Sometimes an agent is so worried about getting a rejection that they work harder at getting a callback than a sale. Or maybe they're really good at avoiding rejection and getting another shot at it. However it works, if the agent has 5 calls scheduled for 3pm, only one of those callbacks is going to be on time. So this can be a temporary thing (ie. 5 people wanted to be called at 3pm on Thursday) or a chronic problem (the agent has so many callbacks they're still spending most of their time on callbacks).

  • Setting the callback to a bad time. Whether it's setting the callback to a time when the agent isn't actually working, to setting the callback outside of legal calling times, your agents need to put a little thought into when the callback should happen. Sometimes this happens accidentally, but your agent screen interface should be doing the time zone conversions in the background. Your agents shouldn't be trying to figure out whether it'll be midnight in Topeka.
It's important that if you allow agent owned callbacks that you have procedures in place to monitor and manage them. Your contact center software should have the features allowing this. For example, on Q-Suite, you can reassign callbacks, reschedule missed callbacks, or have agents who can receive another agent's callbacks if they aren't logged in when the callback is scheduled. Reviewing the number of callbacks overall, each agents callbacks, and the list of missed callbacks are all important. This allows you to keep callback problems from stealing productivity from your agents. Make sure your callbacks are being used properly, and watch productivity soar.