Skip to content

Releases: alexa/alexa-skills-kit-sdk-for-java

2.2.1

17 May 16:28
Compare
Choose a tag to compare

This release includes serialization/deserialization optimizations to the AWS Lambda SkillStreamHandler class and corrects unexpected behavior where request interceptors would not be executed if a request handler could not be found.

2.2.0

11 May 21:54
Compare
Choose a tag to compare

This release introduces In Skill Purchasing. Please refer to this wiki on how to get started.

2.1.0

17 May 17:07
Compare
Choose a tag to compare

This release introduces support for returning additional metadata about the playing track with the Play directive. More information here.

2.0.2

05 Apr 22:02
Compare
Choose a tag to compare

This release fixes a fix bug that would cause the first persistence attributes read to always return an empty result when the autoCreateTable feature was enabled (#85).

2.0.1

30 Mar 20:32
Compare
Choose a tag to compare

This release fixes a Map immutability bug affecting empty request and persistent attributes in the AttributesManager.

Release of the ASK SDK v2 for Java

29 Mar 15:51
Compare
Choose a tag to compare

For more information about version 2 of the Alexa Skills Kit (ASK) Software Development Kit (SDK) for Java, see this blog post.

Releasing Java SDK 1.8.1

07 Dec 01:21
Compare
Choose a tag to compare

Added an user agent to collect metrics for SDK usage

Releasing Java SDK 1.8.0

23 Nov 00:44
Compare
Choose a tag to compare

This release adds support for Body Template 7.

Support for progressive response API, Alexa list events, and Alexa list APIs

14 Nov 00:10
Compare
Choose a tag to compare

Progressive Response API Support

Adds API support for dispatching progressive responses. This new capability helps you to keep your users engaged while a full response to a skill request is being processed. Progressive response API calls are facilitated by the included DirectiveServiceClient.

Alexa List Events

Additional Alexa list skill events are now supported. The new events are triggered when lists are:

  • Created
  • Updated
  • Deleted

These events can be handled by your skill by implementing the HouseholdListEventListenerV2 interface and configuring your skill to listen to the corresponding events.

Alexa List API Support

API support has been added for Alexa lists. Using the included ListServiceClient, you can now programmatically retrieve list info and list items, create lists and list items, delete lists and list items, and update lists and list items.

Support for Entity Resolution And unit test release

28 Sep 22:50
Compare
Choose a tag to compare

Adds SDK support for entity resolution

Skill developers now can take advantage of entity resolution, which enables them to define synonyms for slot values. Alexa Service will try to resolve the value and return consistent data to developers.

Currently, developers must use the Code Editor in the Skill Builder(beta) to define synonyms and IDs for slot values. For more information on how to define synonyms and IDs, please refer to Entity Resolution Developer Guide.

For example, for an intent request like the following:

{
  "type": "IntentRequest",
  "intent": {
    "name": "GetMediaIntent",
    "slots": {
      "MediaType": {
        "name": "MediaType",
        "value": "track",
        "resolutions": {
          "resolutionsPerAuthority": [
            {
              "authority": "amzn1.er-authority.echo-sdk.<skill_id>.MEDIA_TYPE",
              "status": {
                "code": "ER_SUCCESS_MATCH"
              },
              "values": [
                {
                  "value": {
                    "name": "song",
                    "id": "SONG"
                  }
                }
              ]
            }
          ]
        }
      }
    }
  }
}

Developer can access the user-spoken value using:

String value = intent.getSlot("MediaType").getValue(); //  "track"

while the additional information (such as the unique ID and resolved values) is provided inside Resolutions property. For example:

Slot slot = intent.getSlot(slotName);
Resolutions resolutions = slot.getResolutions();
Resolution resolution  = resolutions.getResolutionAtIndex(index);
ValueWrapper valueWrapper = resolution.getValueWrapperAtIndex(index);
Value value = valueWrapper.getValue();
String ID = value.getId(); //  "SONG"
String name = value.getName(); // "song"

Releasing unit tests for SDK

Developers now can run automated unit tests using Maven.

  1. Download and extract the latest SDK package
  2. Navigate to the package root directory where the pom.xml is located
  3. run mvn clean test

Packages for unit tests can be found under tst/ folder