Thursday, May 12, 2016

Uncharted 4: A Thief's End Pushes the PS4 to the Limit: FastAGI Can Push Your Asterisk Contact Center There As Well

On May 10th, Naughty Dog released the 4th and likely final installment of the Uncharted series, with Uncharted 4: A Thief's End. The Uncharted series is definitely one of my favourite sets of games, so I was looking forward to the 10th for a long time. Reviews are glowing. Digital Foundry called it a "technical powerhouse" and "the best-looking console game we've ever tested." That's some high praise regarding how this title pushes the limits of the PS4's capabilities. What can you do to push the limits of your Asterisk-based contact center without needing to upgrade your hardware? Let's take a look at FastAGI.

If you've spent a fair amount of time using Asterisk, you'll already know that the Asterisk Gateway Interface (AGI) operations that Asterisk needs to perform are incredibly expensive operations that can chew up precious server CPU resources. How can we reduce the amount of resources required to run these operations?

We cannot simply stop using AGIs are they control many crucial applications, like Dial, and they provide a vital interface for adding more functionality to Asterisk with a number of different programming languages. By using a FastAGI server, we can unload these expensive commands off of the Asterisk server onto a remote server via a network connection. It isn't entirely necessary to house the FastAGI server remotely either. You could simply have it on the Asterisk server itself, but the benefits will still be noticed since all of this heavy processing is still removed from the actual Asterisk service.

FastAGI has certainly made the Q-Suite much more efficient. Using FastAGI allows the Asterisk server to work in a more efficient manner, while actually doing more proper call handling, all without putting too much of a burden on the hardware.

Much like Uncharted 4 on the PS4, FastAGI can be your powerhouse to help push your Asterisk-based contact center to the limits, without a need for more high-end hardware.

For your viewing pleasure, here's the Uncharted 4: A Thief's End Story Trailer. Enjoy!!

Friday, February 26, 2016

Large and In Charge: Tips for Call Center Capacity Planning

You have a successful contact center in operation and things are going well. The site isn't having any issues with call quality, database latency, or agent portal usage. It's a wonderful thing. You have a new client coming on board and all of a sudden, you need four times the capacity and throughput that your site currently handles and handles well. While the new business is certainly welcomed, how can you expand, efficiently and effectively, to meet these new requirements for your contact center?

Trim The (Log) Fat

Each component of your Asterisk based contact center (Asterisk, database, web, and Q-Suite in this case) will keep log files by default. Depending on what your call volume may be or how many agents you have logged in taking calls, these logs can grow very large and very quickly. Logs that grow very large and very quickly can consume a great deal of CPU and write resources on your servers. However, all of these logging mechanisms can have their levels of logging toned down or even turned off. While I wouldn't recommend actively turning off any type of logging, taking the steps to trim the amount of logging done can help your servers focus on their proper tasks.

Work Smarter

Asterisk uses AGI (Asterisk Gateway Interface) applications that can add an enormous amount of functionality to Asterisk with a number of different programming languages. While quite flexible and powerful, AGIs are very expensive operations on their own, and can be even more expensive depending on the type of functionality contained within the relevant piece of code on the other end of the AGI call. Your Asterisk server can potentially end up throttling itself if these operations are abundantly occurring. Incorporating a FastAGI server into your contact center can make a significant performance improvement on your Asterisk server as the FastAGI server allows the running of all AGI applications on a remote machine. Taking those system intensive operations off of your server will allow it work harder, faster, and smarter.

Buff It Up

You may decide that dealing with some system configurations outlined in the two examples above is not your cup of tea and that is fine. Going with the old 'just throw more hardware at it' may be the solution for you. Concerned that your database server might not have the capability to handle the new loads? Get faster disks and more RAM. Web servers might not be optimal for the new influx of agents? Jack up the processing power of the server and give it more RAM. If you can handle the cost of having more power than you need, it's never a bad idea to have some overkill on your contact center hardware.

I've just explained a few ways that you can help scale your call center when capacity planning is your main goal. It's a good stepping stone to ensure that your contact center continues to perform admirably when more business happens to come your way.

Thursday, February 4, 2016

Super Bowl 50 is Coming! Effectively Handling Volume Spikes in your Contact Center ACD

It's that time of year again. Super Bowl Sunday is this weekend. Regardless of which teams happen to be playing in the big game, the Denver Broncos and the Carolina Panthers in this case, it is must-see TV. People watch for various reasons. They want to watch the game itself, they just care about the commercials and the halftime show, or they just want an excuse to hang out with friends on a Sunday night. Whatever your reasoning for watching the Super Bowl, the bottom line is that millions and millions of people tune in who normally would not be tuning in if it were any given Sunday. With the most-watched sporting event worldwide looming on the horizon, let's have a look at how you can handle volume spikes in your contact center ACD.
  • Staff more agents - This one should have been easy to figure out, especially if the volume increase is anticipated. If your inbound ACD is accepting a significantly higher volume of calls than you have agents staffed, a few things can happen and they are all negative. Callers will hang up while waiting in the queues, which inflates the abandoned rate and causes lost sales. Callers will be more irritated due to the long wait times, which tends to project onto the agents. Agents will be under fire for the entire duration of their shift which can cause added stress and can affect performance.
  • Reassign agents on the fly - If you are in a situation where the spike in incoming calls to your contact center ACD is not expected, you can use real-time skills-based routing to get a desired block of agents ready to take calls from the heavily loaded queues. When more agents become available, some of the pitfalls from the first point can be avoided.
  • Turn up new servers - Having more hardware available to tackle an expected spike in calls is definitely a solution, even though it's a brute force solution. Load balancing calls over more Asterisk servers is an efficient way to alleviate system stress. Preparing more servers can be more difficult if you are relying on physical servers, but can be done fairly easily and quickly if you are using a hosted contact center ACD platform.
As with anything, proper planning can aid in preventing unexpected occurrences from ruining a perfectly good business day in your contact center ACD. In the off chance that your day is calling an audible and making things difficult, at least you have some tools to turn things around. Take these points into consideration and the only spike you'll experience will be a touchdown celebration.

In case you may be wondering, I have no horse in this race on Sunday. I'm a New York Giants fan. It would be quite a sight to see one of the most legendary NFL QBs of all-time go out on top in storybook fashion. However, Cam. That Cam guy is awfully good and a complete blast to watch. With that in mind, I'm just going to hope for an epic game while I enjoy the company of a few friends and my homemade Montreal smoked meat. Game on.

Monday, January 18, 2016

Would You Like PBX Dial Notifications for Incoming Calls? You Can Have Them!

These days, more and more people want to stay in the loop as much as possible. With cell phones being almost a necessity, this statement holds true even more. We all want to be notified in one way or another when something of interest happens, whether it's a Facebook message or a Twitter DM. Using PBX dial notifications can help keep you in the loop if and when you are on the go and not currently at your PBX extension's location. I know I'm stepping out of the contact center realm with this PBX-specific topic and that's ok. Let's talk about these dial notifications.

PBX dial notifications via are quite simple to setup and enable in the Q-Suite. There's a checkbox to turn on the feature and then you create your relevant notifications for the PBX extensions that you wish to turn these on for. Simply set an email address and enter the notification message you wish to send to the recipient. Easy as that.

If you're away from your extension, dial notifications have a few advantages:

  1. You get the notification almost immediately after your extension rings, so you will know who is trying to reach you in a very timely manner.
  2. If you were purely relying on voicemails for notifications, you may not get an email if the calling party terminates the call prior to reaching your inbox.
  3. Even if the caller gets to your inbox they may just hang up anyway, which makes the voicemail notification only as useful as the dial notification.
I'm not saying to ditch voicemail notifications for your extension in favour of dial notifications, but it's a good feeling to know that you have multiple notification options for your extension while you may be on the move.

Thursday, December 31, 2015

2015 Wrapup: Contact Center ACD Software's Biggest Hits of 2015!

As we all prepare to send off 2015 and look forward to 2016, let's take a look back at the Top 10 posts from 2015, based on pageviews.
  1. Blog Post Revisited: Capacity planning for large call centers using Asterisk
  2. Keeping callers (or me in this case) interested...or at least trying to
  3. Game of Thrones Episodes Leak! How to Prevent a Similar Event in your Contact Center
  4. Avengers Assemble! Gathering the Pieces You Need for Your Contact Center ACD
  5. Timeout! Sports, Kids, and Contact Centers
  6. Destiny: The Taken King Patch's Painfully Long Download Time and Trying to Avoid Bottlenecks in Your Contact Center ACD
  7. Broken Knight: Consequences of Rushing into Production
  8. Hold For the Holidays: How to Not Annoy Your Holding Customers
  9. Why are my calls disconnecting? I'm not in an elevator!
  10. 3 Minor Annoyances of Not Having Physical Control Over Contact Center Hardware
2015 was a very eventful year, especially in the entertainment industry, and I hope you enjoyed some of the relations I used in my posts. You can probably tell that I like movies and video games a lot. With movies in mind, here's the trailer for the new definition of the Blockbuster, Star Wars: The Force Awakens.

Happy New Year Everyone!

Friday, December 11, 2015

Hold For the Holidays: How to Not Annoy Your Holding Customers

The 2015 holiday shopping season is well under way. Black Friday and Cyber Monday have come and gone, and now we're into the home stretch before the holiday break. I'm keeping a loose eye on Twitter and it appears that a lot of people are tweeting out to companies about being on hold for an atrociously long period of time and they are, of course, not happy about it. Nobody wants to be stuck on hold any longer than they need to be, so I can sympathize with these people. Contact centers should be prepared to handle the influx of calls that are no doubt going to happen during this time period and should be able to adjust accordingly.

Rather than reinventing the wheel, I'd like to direct you to a post I made earlier this year about one of my own personal on hold experiences. Have a look here and see if you can relate to any of these thoughts I put down about the situation.

In my experience, when being on hold waiting for a CSR, I am usually calling in a negative way, like downgrading a service or flat out canceling my account all together. The last thing I need is to sit in a queue for dozens and dozens of minutes, giving me more time to become irritated that I am even calling in in the first place.

Monday, November 30, 2015

Evolution of the Contact Center

The underlying technology stack of a contact center needs to evolve over time, or the technology powering the contact center will eventually become stagnant and stale, and the contact center will never be able to move forward and remain relevant. The Q-Suite has certainly evolved over time and will continue to. Here are a couple of ways how this is going to continue to be accomplished.

Q-Suite 5.10 adds support for Asterisk 11

Q-Suite 6 introduces application server which improves reliability and efficiency

I suppose, in a way, this is similar to natural selection, but in a technology realm instead of in nature. We all still need to evolve and adapt however, if we hope to stick around for awhile.

Friday, November 13, 2015

Anniversaries are Excellent: Big Moments for the Contact Center ACD Software Blog

It's my wedding anniversary today! For superstitious folks, maybe Friday the 13th isn't something to be excited about, but all that really means to me is cheesy fun slasher movies. A wedding anniversary is a big deal that signifies a major life event. Let's take a quick look at some of the major events that the Contact Center ACD Software blog has had over its lifetime.
It's a bit strange to compare blog events to something as important as a wedding anniversary, but I felt like doing it anyway. Enjoy the weekend!

Friday, November 6, 2015

Preparing for the Fallout: Ways to Avoid a Contact Center Disaster

Bethesda's latest installment in the Fallout franchise, Fallout 4, releases in four days. I know a lot of people who are incredibly excited for this game. I'm actually not one of the them, as of now, but that could certainly change. With that in mind, let's talk about a few of the options you have for avoiding a contact center disaster.
  • Database replication - Having a single database is not a completely horrible idea, but what happens if somehow, someway, that specific schema gets corrupted or the hard drive fails during production? Using database replication to maintain a copy of the production database can help ensure that your contact center ACD is down for a minimal amount of time.
  • Multiple physical locations - While it might not be practical for a lot of contact centers, it's worth mentioning that it may be beneficial to house your contact center servers in different locations. Having cloud-based instance to mimic your on-site instance might be an option to entertain. In the event that something out of you control could happen, like earlier this week when a fibre line was cut near the OVH Montreal datacenter, it can help minimize your downtime if you have another instance ready to take over in a pinch.
  • Failover - Using the Q-Suite's Overseer Watchdog, you can seamlessly failover any faulty contact center ACD service and, in most cases, the contact center is able to carry on as if nothing happened. This type of additional feature can aid in keeping you contact center ACD up and running without any noticeable outage time.
Fallout's main premise is how the world looks and feels after a nuclear holocaust. While a contact center outage might not be anywhere near as catastrophic as that, it can certainly be a scary situation to be in. Take some precautions in your center's setup and you might find that it's not as scary as it seems.

Thursday, October 15, 2015

Big Plays From Big Jays: Contact Center ACD All-Stars

It's been a very long time, 1993 to be specific, since folks north of the border have been this excited for MLB playoffs. The Toronto Blue Jays are once again playing ball in October, and after a fairly disastrous start culminating in 2 losses at home, they have roared back to win the ALDS 3 games to 2. Game 5 will certainly go down in playoff baseball lore as one of the weirdest and wackiest games, with a 53-minute 7th inning that would make the greatest storytellers blush with jealousy. Stars shine the brightest in the spotlight, and Jose Bautista was the North Star last night, after his mammoth 3-run blast that put the Jays ahead for good. Let's talk about letting your contact center ACD all-stars shine.

There are two major ways you can get your favourable, high value callers to your best and most qualified agents: Queue priority and skills-based routing.
  • Queue priority - Each inbound contact center ACD queue can be assigned a priority. If you want some of your queues to route calls to agents before any other queues, simply assign a higher priority to those queues and the ACD will send those calls to available agents first.
  • Skills-based routing - Individual agents can be assigned a skill level for any skill that they have assigned to them. Give your best agents higher skill levels in order to route calls to those agents first.
These configuration methods can definitely help with routing important calls to the most capable agents, and customers will certainly appreciate that. I know that on the rare occasion that I've needed to call into the contact center ACD, I am a much more satisfied customer if I get routed to the top of the line agent.

I'll leave this to wrap things up.