Я не знаю, почему поле activeDialog
dialogContext всегда не определено.Мне нужно использовать его, чтобы увидеть, находится ли пользователь в середине диалога с водопадом.Вот как выглядит мой бот-код (в машинописном тексте):
export class MyBot{
constructor(){
this.dialogState = this.conversationState.createProperty("dialog-state");
this.dialogs = new DialogSet(this.dialogState);
this.dialogs.add(new ChoicePrompt("choice-prompt"));
const steps = [
step => step.prompt("choice-prompt", "What browser are you currently using?", ["!", "1"]),
step => step.prompt("choice-prompt", "And what device are you using?", "!", "1")
];
this.dialogs.add(new WaterfallDialog("something", steps));
}
public async onTurn(context: TurnContext) {
const dc = await this.dialogs.createContext(context);
console.log(dc.activeDialog); // always logs undefined
return dc.beginDialog("something");
}
}