Похоже, вы используете v3 бот-фреймворка. Таким образом, вы можете использовать context.Call
или context.Forward
. context.Call
запустит новое диалоговое окно, а затем дождется получения нового сообщения. context.Forward
отправит текущее сообщение в новый диалог.
Если у вас есть диалоговое окно с именем CreateTodoDialog
, и вы хотите запустить его, вы должны использовать context.Call(new CreateTodoDialog(), AfterCreateTodoDialog)
, где AfterCreateTodoDialog
- это то, что вы хотите запустить после нового диалогового окна.
Способ, которым я настраиваю свой диалог luis, состоит в том, чтобы создать метод для каждого намерения, а затем выполнить логику для извлечения любых объектов luis, если таковые имеются, а затем либо вызвать, либо переслать в диалог для каждого намерения. Затем у меня был единственный метод, который я использовал после дочерних диалогов.