intent_request
- это входящий «запрос» или «событие» от Lex к вашей лямбда-функции. Он содержит всю необходимую информацию о вводе данных пользователем и обработке этого ввода вашим ботом Lex (запуск определенного намерения, заполнение определенных слотов, подтверждений и т. Д.)
Это должна быть та документация, которую вы ищете.
Формат события и ответа лямбда-функции:
В этом разделе описывается структура данных о событиях, которые Amazon Lex предоставляет лямбда-функции. Используйте эту информацию для анализа ввода в вашем лямбда-коде. Он также объясняет формат ответа, который Amazon Lex ожидает от вашей лямбда-функции.
А вот формат события / запроса:
{
"currentIntent": {
"name": "intent-name",
"slots": {
"slot name": "value",
"slot name": "value"
},
"slotDetails": {
"slot name": {
"resolutions" : [
{ "value": "resolved value" },
{ "value": "resolved value" }
],
"originalValue": "original text"
},
"slot name": {
"resolutions" : [
{ "value": "resolved value" },
{ "value": "resolved value" }
],
"originalValue": "original text"
}
},
"confirmationStatus": "None, Confirmed, or Denied (intent confirmation, if configured)"
},
"bot": {
"name": "bot name",
"alias": "bot alias",
"version": "bot version"
},
"userId": "User ID specified in the POST request to Amazon Lex.",
"inputTranscript": "Text used to process the request",
"invocationSource": "FulfillmentCodeHook or DialogCodeHook",
"outputDialogMode": "Text or Voice, based on ContentType request header in runtime API request",
"messageVersion": "1.0",
"sessionAttributes": {
"key": "value",
"key": "value"
},
"requestAttributes": {
"key": "value",
"key": "value"
}
}
Данные slots
находятся внутри currentIntent
, и они находятся внутри всего объекта intent_request
. Вот почему вы видите код: intent_request['currentIntent']['slots']
Чтобы получить атрибуты сеанса, вы можете найти их здесь: intent_request['sessionAttributes']
Также чрезвычайно полезен точный текст, вводимый пользователем: intent_request['inputTranscript']
person
Jay A. Little
schedule
08.09.2018