At SeniorHomes.com, we operate a call center that screens thousands of leads and processes tens of thousands of calls per month. To handle this volume, we decided to build our own call center product using the Twilio API. This decision was reached after researching nearly a dozen call center products, and finding that none of them allowed us the flexibly and integration we required. If you'd like to read more regarding this decision, read Twilio’s case study about SeniorHomes.com.
Over the next couple months, we will discuss some of the more interesting technologies that our engineering team has implemented in our call center. Our goal, through these posts, is to share how some of the more difficult problems were solved and the results of implementing these solutions.
Real-time updates using node.js
One challenge with our call center is that we operate a mixed inbound/outbound environment. Our call center agents are responsible for handling both inbound callers and placing outbound calls, depending on the overall inbound call volume. What this means is that our agents need to monitor the statuses of their coworkers to determine whether they should make themselves available for answering calls or place outbound calls. The challenge with this system is that the agents’ statuses need to be shared across the entire team on a real-time basis, something that has been traditionally difficult to do with internet-based applications.
Node.js with WebSockets was used to handle the real-time data sharing. We found this solution was very scalable and had great performance. Compared to AJAX polling (another option considered), the amount of server traffic generated by the node.js/WebSocket system was at least 100x better, and (more importantly) the responsiveness of the system was at least 10x better.After implementing the node.js/WebSocket solution, we’ve noticed immediate improvements in our inbound service rate. To operate a mixed inbound/outbound call center environment, it’s imperative that agents have real-time data regarding the availability of other agents to manage their availability for inbound calls, and the node.js system has provided a great solution to this problem.
This technology enables our team of expert Care Advisors to provide immediate service to clients, maintaining the SeniorHomes.com quality service standard. In an upcoming post, we'll be discussing the implications of rapid lead response times in the healthcare and senior living industry, as well as how this technology benefits our customers.
Post by Ken Ploeger