bst icon indicating copy to clipboard operation
bst copied to clipboard

Multi-value slots

Open habuma opened this issue 4 years ago • 0 comments

Is your feature request related to a problem? Please describe. I'd like to use BST to test utterances/intents where the slot is a multi-value slot. But it doesn't work, because Alexa.getSlotValueV2(handlerInput.requestEnvelope, slotName) returns null. That's because BST doesn't support the "List" slot type.

For example, given a multi-value slot named "cities" of type "AMAZON.US_CITY", and an utterance of "I like Dallas, Detroit, and San Antonio", the slot JSON looks like this when run through BST:

{"cities":{"name":"cities","value":"Dallas Detroit and San Antonio","confirmationStatus":"NONE"}}

That same slot, when run in a deployed skill looks like this:

        "cities": {
          "name": "cities",
          "confirmationStatus": "NONE",
          "source": "USER",
          "slotValue": {
            "type": "List",
            "values": [
              {
                "type": "Simple",
                "value": "Dallas"
              },
              {
                "type": "Simple",
                "value": "Detroit"
              },
              {
                "type": "Simple",
                "value": "San Antonio"
              }
            ]
          }
        },

Notice the "slotValue" property and the breakout of each city.

Describe the solution you'd like I'd like to be able to test multi-value slot intents the same as BST already supports single-value slots.

Describe alternatives you've considered I probably could create a filter that populates the request to match the structure of a multi-value slot. But that is non-ideal. BST should support multi-value slots, which has been a feature of ASK since mid-2020.

habuma avatar Oct 25 '21 04:10 habuma