Я только начал создавать чат-бот с помощью Amazon Lex.Я хотел бы использовать некоторые атрибуты сеанса, чтобы сохранить состояние разговора.По сути, мой бот сначала выбирает файл из БД, например, файл «abc123», а затем сохраняет состояние этого файла, чтобы пользователю не нужно было указывать файл при попытке извлечь содержимое из этого файла.Как сохранить состояние потока в файле?
Я создал Intent под названием «FileQuery» и изменил атрибут sessionAttribute на «file»: fileNo
fileNo передается через пользователейвход в чатбот и сохраняется в переменной.Вот моя лямбда-функция ниже.
exports.handler = (event, context, callback) => {
//storing users input for file into "file"
var fileNo = event.currentIntent.slots.FileNumber;
callback(null, {
"sessionAttributes": {
"file": fileNo,
"key": "value"
},
"dialogAction": {
"type": "Close",
"fulfillmentState": "Fulfilled",
"message": {
"contentType": "PlainText",
"content": "File " + fileNo + " selected"
}
}
});
}; //end
Когда пользователь вводит: «Выберите файл abc123»
Lex: «Файл abc123 выбран»
Пользователь: «Дайте мнеимя и контактная информация "
Я хочу, чтобы Lex / Lambda поняла файл в контексте и получила информацию об этом файле.Как я могу это сделать?