Background and availability

APPLIES TO: SDK v3

Why did Microsoft develop the Bot Framework?

We created the Bot Framework to make it easier for developers to build and connect great bots to users, wherever they converse, including on Microsoft's premier channels.

What is the v4 SDK?

Bot Framework v4 SDK builds on the feedback and learnings from the prior Bot Framework SDKs. It introduces the right levels of abstraction while enabling rich componentization of the bot building blocks. You can start with a simple bot and grow your bot in sophistication using a modular and extensible framework. You can find FAQ for the SDK on GitHub.

How to run a bot offline?

Before talking about the use of a bot offline, meaning a bot not deployed on Azure or on some other host services but on premises, let's clarify a few points.

  • A bot is a web service that does not have a UI, so the user must interact with it via other means, in the form of channels, which use the Bot Framework Service. The connector functions as a proxy to relay messages between a client and the bot.
  • The connector is a global application hosted on Azure nodes and spread geographically for availability and scalability.
  • You use the Bot Channel Registration to register the bot with the connector.

    Note

    The bot must have its endpoint publicly reachable by the connector.

You can run a bot offline with limited capabilities. For example, if you want to use a bot offline that has LUIS capability, you must build a container for the bot, and required tools, and a container for LUIS. Both connected via Docker Compose bridged network.

This is a "partial" offline solution because a Cognitive Services container needs periodic online connection.

Note

The QnA service is not supported in a bot running offline.

For more information, see:

Bot Framework SDK Version 3 Lifetime Support and Deprecation Notice

Microsoft Bot Framework SDK V4 was released in September 2018, and since then we have shipped a few dot-release improvements. As announced previously, the V3 SDK is being retired. Accordingly, there will be no more development in V3 repositories. Existing V3 bot workloads will continue to run without interruption. We have no plans to disrupt any running workloads.

As mentioned, Bot Builder SDK V3 bots continue to run and be supported by Azure Bot Service. Bot Builder SDK V3 will only be supported for critical security bug fixes, connector, and protocol layer compatibility updates.

All new features and capabilities are developed exclusively on Bot Framework SDK V4. Customers are encouraged to migrate their bots to V4 as soon as possible.

We highly recommend that you start migrating your V3 bots to V4. In order to support this migration we have produced migration documentation and will provide extended support for migration initiatives (via standard channels such as Stack Overflow and Microsoft Customer Support).

For more information please refer to the following references:

V3 Status Summary

ABS Service

  1. The ABS service side will continue to support running V3 bots with no planned end of life and any running bots will not be disrupted.
  2. Channels will remain compatible with V3 with no disruption or end of life plan.
  3. Creation of new V3 bots is disabled on the portal; however, expert users who wish to deploy their V3 bots independently, not on ABS (e.g. as webapp service) can do so.

SDK and Tools

  1. We are not investing in V3 from SDK side, and will only apply critical security fixes to the SDK branches for the foreseeable future (Exception: We plan to add a Skills connector to allow V4 bots to call legacy V3 bots).
  2. SDKs and tools development is exclusively on V4 with no V3 work done or planned (hence we're already "there").
  3. We do not prevent anyone from running old tools to manage their V3 bots.

How can I migrate Azure Bot Service from one region to another?

Azure Bot Service does not support region move. It's a global service that is not tied to any specific region.