Our Blog

where we write about the things we love



What’s with bots: intelligent interactions for users

Microsoft Ignite is over for another year and this year did not disappoint in terms of the emerging technologies on offer and productivity tools for business and software developers to take advantage of.

Among the many rising technologies is bots. While the term ‘bot’ has been used quite broadly to cover a range of smaller-scale automated tasks and bots themselves are not really a new phenomenon, we’re likely to see their use expanding across a number of business areas in the near future. The potential for bots to offer automated responses or actions to defined events can be quite far-reaching and this translates directly into productivity gains, user engagement and service improvement.

In simple terms, bots are web-based services that take advantage of a range of available natural language and response APIs and services that break down common barriers for computer users. These services include voice or facial recognition, natural language interaction, machine learning for language understanding and a huge list of others. These services are all grouped as connected, related set of APIs called Microsoft Cognitive Services.

Building on this impressive suite of services, Microsoft have also released the Bot Framework that allows services to take advantage of natural language features that make working with IT systems a much more accessible experience for users. These solutions can then be integrated with Skype, Slack, Office and a large range of other tools.

BOT Framework solutions integrated to Skype, Slack, Office, Dynamics

From a practical point of view, businesses can take advantage of bots by integrating them into their existing investments such as web, SMS, SharePoint / Office 365, search, CRM or ERP solutions or even email. Common tasks can be initiated easily by any stakeholder using language that’s familiar and through existing tools such as Skype, Facebook, Slack or a range of other messaging and productivity channels. The experience for the developer is equally easy with a largely “pluggable” approach to software development with a minimum of configuration required for simple but effective solutions.

Given that we’re essentially providing a “human-like” interface to a web service over HTTP, one challenge to overcome is the stateless nature of the web – the problem of having to preserve the context of a conversation to ensure continuity. The Bot Framework achieves this in part by using “Dialogs”: conversational processes that produce a strongly-typed result. Dialog processes wait for a message from the user to the bot and are resumed when the bot receives a message from the user.

The deployment process is a little more involved, requiring “registration” of your bot on an authentication platform: the Microsoft Bot Framework Connector. The connector authenticates conversations and allows the developer to configure the channels they want to make available.

Currently Azure pricing for Bot and cognitive services generally hovers around a very reasonable free rates for around 5000 – 10 000 calls per month for most API rates, making it very accessible for developers to get started and very affordable for businesses to offer further mechanisms for their users and customers that make the user experience that much more engaging and simple.

It’s going to be great seeing how businesses take advantage of bots and enabling their users to engage with their brand in more innovative ways. 

Posted by: Phil Wheeler, Senior Developer, Application Support | 09 November 2016

Tags: Development, Bot Framework

Related blog posts

Blog archive

Stay up to date with all insights from the Intergen blog