Interactive Voice Response Bot

Bot Service
Cognitive Search
Language Understanding
Web Apps

Solution Idea

If you'd like to see us expand this article with more information, implementation details, pricing guidance, or code examples, let us know with GitHub Feedback!

This solution creates an intelligent interactive voice response (IVR) application that processes customer order requests for bicycles and bicycle accessories. Businesses with no existing IVR solution can easily get started automating requests, or, where existing human-operated systems exist, this solution can be extended to incorporate existing functionality and workflows.


Architecture diagram Download an SVG of this architecture.


Estimated Daily Cost: $11.08

For more details on this solution, including source code and data customization, please fork or explore this project on GitHub.

Automated customer interaction is essential to a business of any size. In fact, 61% of consumers prefer to communicate via speech, and most of them prefer self-service. Because customer satisfaction is a priority for all businesses, self-service is a critical facet of any customer-facing communications strategy.

In an era when mobile phones are dominant and keypads are not always readily accessible, interactive voice response (IVR) systems provide an intuitive, simple, and convenient method for customers to convey their requests. This solution provides an intelligent and natural self-service experience that can be repurposed across all customer channels.

The Cortana Intelligence Suite provides advanced analytics tools backed by Microsoft's Azure cloud platforms-data ingestion, data storage, data processing and advanced analytics components-all of the essential elements for building an automated IVR solution.

This solution deploys a fully integrated service stack that manages speech requests via Skype and the Microsoft Bot Framework.

The target use case of this solution is for a fictitious company, Contoso LLC, which sells bicycles and bicycle equipment to its customers. Contoso currently processes new product orders and queries through human operators. This automated solution allows Contoso to seamlessly scale up to handle a large call volumes while maintaining zero wait times and freeing up staff to manage other tasks.

The "Deploy" button on this page will launch a workflow that deploys an instance of this solution within an Azure subscription of your choosing. The solution includes multiple Azure services (described below) and provides a few short instructions after the deployment that will help you setup communications with your new bot.

AI and NLP Azure Services

  • Bing Speech transcribes raw speech data into text form
  • LUIS (Language Understanding Intelligent Service) identifies caller intent (place an order, find an order, etc.) and spoken entities (product categories, dates, times, etc.) from the transcribed text.
  • Azure Cognitive Search matches and ranks products from the inventory against the caller's description, and applies advanced text analysis for common synonyms.
  • Microsoft Bot Framework processes conversation results from the caller and manages the call workflow.

Supporting Azure Services

  • Azure Web App hosts the core logic of the bot as a Node.js web app
  • Cosmos DB stores shared session state for every conversation, allowing the web application to scale out in a stateless architecture.
  • Azure SQL stores product inventory and order status