Lex v2 fulfillment with Lambda function - issue with message to return to user

0

I have a Lex v2 bot which uses a Lambda function (Nodejs 16) for fulfillment. I can confirm that the bot is setup to call the function, the function itself is called as I can see log entries in the Cloudwatch tail, the response is sent back without error to the Lex bot however the message that I have defined in the response JSON does not play. Not sure what I'm doing wrong, the format of the response message appears fine and I get no errors thrown from Lex when testing - the only issue is that I just get the default message that the intent is fulfilled, I don't see the response message that I'm setting. I'm attaching the response JSON below. Do I need to do something special within the configuration of the Lex fulfillment messages to reference a variable?? (Note: both fulfillment and closing are active in the bot, however I do not have custom messages defined for either)

JSON I'm sending back:

{
  "sessionState": {
    "dialogAction": {
      "type": "Delegate"
    },
    "intent": {
      "confirmationState": "Confirmed",
      "name": "LexIntent",
      "state": "Fulfilled"
    }
  },
  "messages": [
    {
      "contentType": "PlainText",
      "content": "Hello World from my Lambda function"
    }
  ]
}

gefragt vor 8 Monaten639 Aufrufe
1 Antwort
0
Akzeptierte Antwort

Hello,

I understand that you have a LEX bot invoking your lambda function and function is returning Json back to LEX bot and you are not able to receive the configured message and getting the default message which states that the intent is fulfilled.

From the AWS documentation, I found this point “state – The state can only be ‘ReadyForFulfillment’ if dialogAction.type is Delegate.

[+] https://docs.aws.amazon.com/lexv2/latest/dg/lambda-response-format.html

From the JSON response shared by you I could see that you are configuring state as {“state”: “Fulfilled”}. Could you please try to modify this to {“state": "ReadyForFulfillment”} and check if it works for you and I would also request you to refer the above article for additional information regarding the response format. Please note that response field information is case sensitive.

Further if you have any queries please reach out to AWS Premium Support.

Thank you

likhita
beantwortet vor 8 Monaten
profile picture
EXPERTE
überprüft vor 2 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen