This month’s call was hosted by Andrew Clear, Senior Program Manager on the Bot Framework team. He shared what’s new and exciting in the Bot world, not only with regard to Microsoft Teams, but the Bot Framework in general.
Some of the features covered include:
Bot Framework 4.8 SDK is live!
Get Member changes for Microsoft Teams
Currently, bot developers who want to retrieve information for one or more members of a chat or team use the Microsoft Teams bot APIs TeamsInfo.GetMembersAsync (for C#) or TeamsInfo.getMembers (for TypeScript/Node.js) APIs (documented here). There are a number of changes coming to Microsoft Teams Bot APIs for to make improvements, including:
- A new paged API for retrieving profile information for members of a chat/team. (GA Now!)
- A new API for retrieving the profile information for a single user. (GA Now!)
- GetMembersAsync (C#) and TeamsInfo.getMembers (TypeScript/Node.js) is formally deprecated and will stop working in late 2021.
By late 2021, bots will not be able to proactively retrieve the userPrincipalName or email properties for members of a chat/team and will need to use Microsoft Graph to retrieve them.
Skills (Bots talking to bots)
Starting with version 4.7 of the Bot Framework SDK, you can extend a bot using another bot (a skill). A skill can be consumed by various other bots, facilitating reuse, and in this way, you can create a user-facing bot and extend it by consuming your own or 3rd party skills.
- A skill is a bot that can perform a set of tasks for another bot. Depending on design, a skill can also function as a typical, user-facing bot.
- A skill consumer is a bot that can invoke one or more skills. With respect to skills, a root bot is a user-facing bot that is also a skill consumer.
- A skill manifest is a JSON file that describes the actions the skill can perform, its input and output parameters, and the skill’s endpoints.
- Developers who don’t have access to the skill’s source code can use the information in the manifest to design their skill consumer. See how to implement a skill for a sample skill manifest.
- The skill manifest schema is a JSON file that describes the schema of the skill manifest. The current version is skill-manifest-2.0.0.json.
Adaptive dialogs (Preview), Declarative and more
The Adaptive dialog is a new way to model conversations that takes the best of waterfall dialogs and prompts and simplifies sophisticated conversation modelling primitives like building a dialog dispatcher and ability to handle interruptions elegantly. The new Adaptive dialog and the event model simplify sophisticated conversation modelling primitives, eliminate much of the boiler plate code and helps you focus on the model of the conversation rather than the mechanics of dialog management. An Adaptive dialog is a derivative of a Dialog and interacts with the rest of the SDK dialog system.
Composer (Preview) UI Bot building for developers
Bot Framework Composer is a visual designer that lets you quickly and easily build sophisticated conversational bots without writing code. With the Composer, the same technologies that power the Bot Framework SDK are now available to you!
Power Virtual Agents
Power Virtual Agents allows developers and power users to create complex, intelligent bots completely through an easy to use web-based UI. You can also re-use your existing bots by turning them into Skills and adding them to your PVA conversational flows.
For more information on the Bot Framework or to learn how to get started, please visit us at https://dev.botframework.com/
Watch the call here.
Microsoft Teams Resources
- Yeoman generator to build Teams apps
- Microsoft Teams developer documentation
- Microsoft Teams issues and technical questions – StackOverflow
- Microsoft Teams recommendations and suggestions – Microsoft Teams User Voice
- Ask the Experts – Discussion and Blogs – Microsoft Tech Community
- Microsoft Teams Feedback
Next month’s call is on Tuesday, April 21, 2020 at 8:00AM PST. Download the calendar invite at https://aka.ms/microsoftteamscommunitycall