Как вызвать родительский диалог в Microsoft Teams Bot - NodeJS?
У меня есть три диалога:, и. и оба могут вызывать .Теперь если вызывается из, в конце, как мне определить, что был вызван из, и мне нужно перезвонить ему. Если я использую
return await context.endDialog();
, он переходит к следующему шагу. Диалоговые вызовы происходят на основе таких условий, как
DialogA {
async step1(context) {
if(some condition) {
return await context.beginDialog(DialogC);
}
//some other code
}
async step2(context) {
//step2 processing code
}
}
Все диалоги - это WATERFALLDIALOG. Поэтому мне нужно найти, как мне вернуться в ту же точку, где я вызвал
DialogC
в любом из диалоговых окон или перезапустите
DialogA
или
DialogB
.
1 ответ
Я думаю, что класс ReplaceDialog - это, возможно, то, что вы ищете, если я понял ваше требование. Кроме того, вы можете передать значение в свой диалог, используя свойство options.
DialogA
var options = ‘FromDialogA’
return await context.beginDialog(DialogC, options)
DialogC
if (context.options == ‘FromDialogA’) {
// back to the parent dialog
return await context.replaceDialog(DialogA)
}