Welcome to the Bot Framework SDK for .NET repository, which is the home for the libraries and packages that enable developers to build sophisticated bot applications using .NET.
Welcome to the January 2023 patch release of the Bot Framework SDK. This release has been focused on bug fixes.
Full Changelog: https://github.com/microsoft/botbuilder-dotnet/compare/4.19.0...4.19.1
Welcome to the January 2023 release of the Bot Framework SDK. This release has been focused on bug fixes and general improvements.
Full Changelog: https://github.com/microsoft/botbuilder-dotnet/compare/4.18.1...4.19.0
Welcome to the October 2022 release of the Bot Framework SDK. This release has been focused on bug fixes and general improvements.
Full Changelog: https://github.com/microsoft/botbuilder-dotnet/compare/4.17.2...4.18.1
Welcome to the September 2022 release of the Bot Framework SDK. This release has been focused on bug fixes and general improvements.
Full Changelog: https://github.com/microsoft/botbuilder-dotnet/compare/4.17.1...4.17.2
Welcome to the July 2022 release of the Bot Framework SDK. This release has been focused on bug fixes and general improvements.
This release removed the deprecated CosmosDBStorage and CosmosDBStorageOptions class. Existing bots should use CosmosDBPartitionedStorage and CosmosDBPartitionedStorageOptions instead.
The update to v13 can cause issues due to NewtonSoft v13 defaulting to a lower MaxDepth than v12. This can cause exceptions while processing some payloads, especially when using Adaptive Dialogs. The following change should be made in your bots Startup.cs to set the MaxDepth to a higher value
services.AddHttpClient().AddControllers().AddNewtonsoftJson(options =>
{
options.SerializerSettings.MaxDepth = HttpHelper.BotMessageSerializerSettings.MaxDepth;
});
Full Changelog: https://github.com/microsoft/botbuilder-dotnet/compare/4.16.1...4.17.0
This is a May 2022 patch release containing bug fixes.
Welcome to the April 2021 release of the Bot Framework SDK. This release has been focused on performance, bug fixes and general improvements.
Introducing support for Direct Line App Service Extension with Cloud Adapter and Microsoft.Bot.Connector.Streaming.
Introducing SDK support for the Federated Search Platform. This includes Activity Handler support for Typeahead search in Adaptive Cards.
Full Changelog: https://github.com/microsoft/botbuilder-dotnet/compare/releases/4.15...releases/4.16
This is a January 2022 patch release containing bug fixes and performance improvements.
This release introduces some minor breaking changes in the Adaptive libraries that greatly improve the bot's cold start times. These changes should not impact composer bots that haven't been customized. Customized bots will be impacted only if they extended the following classes:
TemplateEngineLanguageGenerator
loadOnConstructor
optional parameter from the class constructor. Templates are now only loaded as needed and not at bot startup. This parameter is no longer necessary and should be removed.LanguageGeneratorManager
loadOnConstructor
optional parameter from the class constructor. Most templates are now processed as needed and not at bot startup. This parameter is no longer necessary and should be removed.@exports
feature are still loaded on startup, a bot with a large number of templates that use the @exports
directive will experience longer startup times.LanguageGeneratorManager
LanguageGenerators
property type has changed from ConcurrentDictionary<string, LanguageGenerator>
to ConcurrentDictionary<string, Lazy<LanguageGenerator>>
to allow on demand initialization and the property is now read only.MultiLanguageGenerator
LanguageGenerators
property type has changed from ConcurrentDictionary<string, LanguageGenerator>
to ConcurrentDictionary<string, Lazy<LanguageGenerator>>
to allow on demand initialization and the property is now read only.MultiLanguageGeneratorBase
TryGetGenerator(DialogContext dialogContext, string locale, out LanguageGenerator generator)
method signature has changed to MultiLanguageGeneratorBase.TryGetGenerator(DialogContext dialogContext, string locale, out Lazy<LanguageGenerator> generator)
and the classes that derive from it have been updated accordingly.
Developers that need to access the languageGenerator
instance right away after calling TryGetGenerator()
can force the initialization by accessing the Value
property of the returned Lazy<LanguageGenerator>
.Welcome to the November 2021 release of the Bot Framework SDK. This release has been focused on bug fixes and general improvements.
SDK [release notes]
Azure Bot's identity management has been updated to include support for 1) User-Assigned Managed Identity, and 2) Azure AD Single Tenant app. This is in addition to the currently supported Azure AD Multi-Tenant app identity. For more details on how to create and deploy an Azure Bot using these new identity mechanisms, please refer to the following docs: Create an Azure Bot resource Deploy your bot to Azure
A new streaming library Microsoft.Bot.Connector.Streaming
has been released which greatly improves performance of bots using web sockets. This library will exist side-by-side with the legacy streaming library Microsoft.Bot.Streaming
. CloudAdapter
uses the new streaming library by default, and BotFrameworkHttpAdapter
uses the legacy streaming library by default. Both these defaults can be overridden by the bot's adapter by overriding a virtual method.
Code to override CloudAdapter
to use legacy streaming library:
protected override StreamingConnection CreateWebSocketConnection(WebSocket socket, ILogger logger)
{
return new LegacyStreamingConnection(socket, logger);
}
Code to override BotFrameworkHttpAdapter
to use new streaming library:
public override StreamingRequestHandler CreateStreamingRequestHandler(IBot bot, WebSocket socket, string audience)
{
var connection = new WebSocketStreamingConnection(socket, Logger);
return new StreamingRequestHandler(bot, this, connection, audience);
}
This release introduces a global flag called "Templates.EnableFromFile" that indicates whether the Adaptive Expression fromFile function is allowed in LG templates. If an application had previously made use of this function, it is now required to add the line "Templates.EnableFromFile = true;" to the Startup.cs code.
missingProperties
custom function to get all variables the template contains by @Danieladu in https://github.com/microsoft/botbuilder-dotnet/pull/5518
Full Changelog: https://github.com/microsoft/botbuilder-dotnet/compare/4.14.0...4.15.0
This release introduces a global flag called "Templates.EnableFromFile" that indicates whether the Adaptive Expression fromFile function is allowed in LG templates. If an application had previously made use of this function, it is now required to add the line "Templates.EnableFromFile = true;" to the Startup.cs code.
Welcome to the June 2021 release of the Bot Framework SDK. This has been largely a maintenance release with a few notable items including support for Microsoft Teams MeetingStart
and MeetingEnd
events, and Get Meeting Info
. See below for the full set of changes.
The Slack adapter now prioritizes User.Id
over Bot.Id
when setting the Activity.From.Id
. [5393 ]