Ввод actions_intent_CANCEL
напрямую был полностью уместен.Большинство из них в раскрывающемся списке предназначены для целей типа «Добро пожаловать», а не для событий в разговоре, которые могут произойти.У вас правильное название действия.
Похоже, вы в основном правильно с ним обращаетесь.Единственное, что вам нужно сделать, это явно закрыть диалог.
Если вы используете веб-крючок для выполнения, то, как вы это сделаете, зависит от используемой вами библиотеки (при условии, что вы используете библиотеку).).
Если вы используете библиотеку actions-on-google, вы должны использовать функцию conv.close()
:
conv.close(`Okay, let's try this again later.`);
С библиотекой диалогового потока это будет agent.end()
:
agent.end(`Okay, let's try this again later.`);
Если вы используете многоязычность, вы можете либо установить для параметра среды ShouldClose
значение true, либо установить для него значение true в ответе.
Response: {
"Action.multivocal.welcome": [
{
Template: {
Text: "Hello world."
},
ShouldClose: true
}
]
}
Если выиспользуя JSON, вы можете установить для payload.data.expectUserResponse
значение false.
Наконец, если вы не используете веб-крючок для выполнения, а просто используете раздел «Ответы» диалогового потока, вы должны включить «Установить это намерение как конецразговор "вкл.