У меня есть одно намерение в моем умении NoteMyDetail, в котором есть три обязательных слота: name
, age
, gender
. У меня есть различные высказывания, такие как «запишите мои данные», «запишите мое имя как {name}» и т. Д. Поэтому, если я скажу «запишите мои данные» em> он один за другим запрашивает все значения, и если я скажу «запишите мое имя как Джо», он запросит только возраст и пол.
Теперь проблема, с которой я столкнулся, заключается в том, как добавить проверки для этих слотов, потому что, когда Алекса спрашивает: «сколько вам лет», и я отвечаю, что меня зовут Джо или какой-то тарабарщину, она отправляет «?» в значении слота.
Как мне убедиться, что значение является числом только для возраста?
РЕДАКТИРОВАТЬ: Итак, я использовал код ссылки: https://gist.github.com/stormbytes/7ee3a05aa03c0ada0621dde746f2a6f9#file-index-js-L31
У меня есть слоты по мере необходимости, поэтому он запрашивает все значения, а затем проверяет значение, которое нарушает поток, поэтому я сделал значения слотов как необязательные и проверил, если значение определено / не определено. Я получаю следующий ответ в симуляторе, но он говорит: «Возникла проблема с ответом запрошенного навыка»
{
"body": {
"version": "1.0",
"response": {
"outputSpeech": {
"type": "SSML",
"ssml": "<speak> Sorry I did not get the age, please say it again </speak>"
},
"directives": [
{
"type": "Dialog.ElicitSlot",
"slotToElicit": "ageValue"
}
],
"reprompt": {
"outputSpeech": {
"type": "SSML",
"ssml": "<speak> Please tell me your age </speak>"
}
},
"shouldEndSession": false
},
"sessionAttributes": {},
"userAgent": "ask-nodejs/1.0.25 Node/v6.10.3"
}
}
Dialog.ElicitSlot
. См. Это: developer.amazon.com/docs/custom -скиллы /. Вы можете проситьAge
сколько угодно раз. - person Nikhil Wagh   schedule 11.06.2018slotToElicit : sugarlevel
, а неage
? - person Nikhil Wagh   schedule 11.06.2018DeviceLog
в тестовом симуляторе Alexa. Вы сможете найтиCaptureDebugger
. Возможно, вы сможете выяснить, что именно идет не так. Поскольку, если вы получили такой ответ, ошибки быть не должно. - person Nikhil Wagh   schedule 11.06.2018intentSchema
? Загрузите его в git и вставьте ссылку. - person Nikhil Wagh   schedule 11.06.2018