Как сохранить результаты из AWS Cloudwatch Queries и объединить их? - PullRequest
0 голосов
/ 21 мая 2019

Когда пользователь вводит недопустимое высказывание, AWS Lex не распознает его и возвращает код ошибки «ERR_CONBOT_RETRY». Я хочу записать это вместе с высказыванием.

Ответ от Лекса не включает высказывание. Таким образом, мы не можем взять ввод пользователя из @ message

Выход Lex

{
  "dialogState": "ElicitIntent",
  "intentName": null,
  "message": "ERR_CONBOT_RETRY",
  "messageFormat": "PlainText",
  "responseCard": null,
  "sessionAttributes": {},
  "slotToElicit": null,
  "slots": null
}

Мой ввод в LEX

{
    "botAlias": "demo",
    "botName": "Test",
    "userId": "4291497024159985",
    "inputText": "Score please",
    "sessionAttributes": {
        "isSpeech": "false",
        "languageCode": "en",
        "inputChannel": "WEB",
        "spanId": "7059150085989143",
        "jwtToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOlsiTVhfQVBJX1JFU09VUkNFIl0sInVzZXJfbmFtZSI6IlRhZ2l0Iiwic2NvcGUiOlsiQ0IiXSwiZXhwIjoxNTU4NDE5NzA1LCJ1c2VyIjp7ImNoYW5uZWwiOiJNWFJFU1QiLCJjaGFubm",
        "loginresponse": "Authenticated",
        "accessToken": "XXXX"
    }
}

Теперь, когда я пытаюсь написать запрос для получения неудачных высказываний, я должен объединить оба вышеупомянутых сценария

fields inputText,@message
| parse @message '"inputText": "*"' as @transcript| filter message="ERR_CONBOT_RETRY"

Это всегда возвращает мне пустой inputText, но я ожидаю, что это будет inputTranscript

...