Building bots with Redux

Overview A key part of what makes the Azure Bot Service so great is it’s flexibility, which we’ve been emphasizing from the very beginning. When we’ve talked about flexibility in the past, we’ve typically referred to the Azure Bot Service’s ability to seamlessly connect your bots to multiple channels at once, and the option to easily add cognitive services such….

Reminder: The Bot Framework State service has been retired – what you need to know

The Microsoft Bot Framework State service is now retired as of March 30, 2018. Previously, bots built on the Azure Bot Service or the Bot Builder SDK had a default connection to this service hosted by Microsoft to store bot state data. Now that the service has been retired, your bots will need to be updated to use their own….

Fix for SNAT Exhaustion – Node.js Bots

This fix is to address time outs with Direct Line causing a 500:Connect ETIMEDOUT error under high loads – Use the AgentKeepAlive NPM module to ensure re-use of the SSL connections Tune the MaxSockets parameter of the AgentKeepAlive instance to be at least 160 to match the number of SNAT port. const Agent = require(‘agentkeepalive’); const keepaliveAgent = new Agent({….

Contributing to LUIS with Microsoft/Recognizers-Text – Part 3

Welcome to the final article of this series! Hopefully if you’re reading this, you know that this is article is part of an ongoing guide on how to extend the Microsoft/Recognizers-Text project to support new languages. This exciting new open-source project released by the LUIS team provides robust recognition and resolution for unit entities commonly expressed in everyday language. In our previous….

Bot State Service will soon be retired on March 31st, 2018

Up until now, we have been providing a default state service for bots built using either the Node.js or .NET SDK’s. The state service is used to store and retrieve user and conversation data within the context of a conversation. Over the last several months as the bot framework has grown, we’ve been encouraging users to implement their own state….

Conversational Bots Deep Dive – What’s new with the General Availability of Azure Bot Service and Language Understanding

Microsoft brings the latest advanced chatbot capabilities to developers’ fingertips, allowing them to create apps that see, hear, speak, understand, and interpret users’ needs — using natural communication styles and methods.” We’re excited to announce we’re making generally available Microsoft Cognitive Services Language Understanding service (LUIS) and Azure Bot Service, two top notch AI services to create digital agents that interact in natural ways and make sense….

New Bot Connector support for ASP.NET Core 2.0 and 1.1

We’ve released two new nuget packages for the Microsoft Bot Connector to support .NET Core 2.0: Microsoft.Bot.Connector.AspNetCore.1.1.3.2.nupkg Microsoft.Bot.Connector.AspNetCore.2.0.0.3.nupkg The above packages each target ASPNetCore 1.x and ASPNetCore 2.x respectively, and provision authentication for your bot. They must also use Microsoft.Bot.Connector.3.12.2.4 or higher. ASP.NET core 1.1 – install AspNetCore 1.1.3.2 and use the following JSON schema in appsettings.json – { “Logging”:….

QnA maker for Node.js bots

QnA Maker is currently one of the most popular  cognitive services our customers are enthusiastic about using. Back in August we published a blog post describing how to  create card attachments for answers returned from QnA maker for .NET. In this post, we’ll be describing how to do the exact same thing for bots built with the Bot Builder SDK for….

Dialog management with QnA, LUIS, and Scorables

Figuring out how to manage your bot’s conversational flow is one of the most challenging aspects to bot development, and also related to some of the most commonly asked questions we receive from the community. In this article we’ll discuss different ways to manage your bot dialog by leveraging two popular Microsoft cognitive services – QnA Maker and LUIS. The sample….

Optimizing latency with the Bot Framework

Responsiveness in a conversational bot is critical for a good user experience, as users want responses to be fast. With maximizing user satisfaction as a goal in mind, there are some basic operations which every bot must still do, such as getting an authorization token, and getting/setting conversation state. In this post we’d like to go over some ways to….