Bot Framework SDK for Java Preview 2
Pre-releaseJava 4.6.0 Preview 2
Java Bot Framework
Status
The current release is Preview 2.
| Package | Status |
|---|---|
| bot-schema | Preview 2 |
| bot-connector | Preview 2 |
| bot-integration-core | Preview 2 |
| Servlet Sample | Preview 2 |
| Spring Boot Sample | Preview 2 |
| bot-builder | Preview 3 |
| Teams Support | Possible Preview 3 |
| bot-dialog | Incomplete |
| bot-ai-luis-v3 | Not Started |
| bot-ai-qna | Not Started |
| bot-applicationinsights | Not Started |
| bot-azure | Not Started |
| bot-configuration | Not Started |
| BotBuilder-Samples | Not Started |
Build Prerequisites
- Java 1.8
- Should be able to execute
java -versionfrom command line.
- Should be able to execute
- Maven
- Should be able to execute
mvn -versionfrom command line.
- Should be able to execute
Changelog
- Updated Channel protocol in bot-connector and bot-schema.
Updated the Channel protocol to bring parity with the other Bot Framework SDK's. This adds a number of new Activity fields, and ConnectorClient.Conversation methods.
- Updated bot-connector authorization to parity with .Net Bot SDK.
Updated bot-connector authorization to feature parity with dotnet, including Adal Authorization.
- Added support for Gov Azure.
Added Gov authorization. The Servlet sample includes ARM templates that can be used to deploy to Gov Azure.
- Added bot-integration-core package.
Added webapp integration related classes: CredentialProvider, ChannelProvider, and Configuration.
- Added Servlet echo sample.
This is a Java Servlet echo sample using bot-connector. This sample includes ARM templates and instructions for deployment to Azure.
- Added Spring Boot echo sample.
This is a Spring Boot echo sample using bot-connector. This sample includes ARM templates and instructions for deployment to Azure. Additionally, Spring Boot apps can easily be run locally from the command line.
- Improved Entity conversion support.
bot-schema/connector use Entity for the wire format (Activity.getEntities). Since there are different types of entities, each with unique properties, Entity.getProperties can be used to access additional properties (see also Entity.getType). Activity.getMentions can be used to get "mention" type entities in the form of a list of Mention objects.
- Switch to CompletableFuture in bot-connector.
Previously, bot-connector was using RxJava Observables. If you were using ConnectorClient methods, your code will need to be updated to use CompletableFuture results. While RxJava still appears as a dependency, it will not be used going forward.
- Standardized on slf4j for logging in Java SDK.
Removed use of other logging frameworks in favor of slf4j. The samples demonstrate using the log4j integrations to slf4j.
- Property utilizing clockSkew in JwtTokenExtractor.
Corrects an issue with messages being dropped in some cases.
- Replaced Fluent property accessors with standard get/set.
The goals is for all class property accessors to utilize standard Java get/set. It's likely that any code utilizing bot-schema classes will need to be updated.
- Removed original bot-connector-sample.