WaterfallStepContext class
Объект контекста, переданный в WaterfallStep
.
- Extends
Конструкторы
Waterfall |
Создает новый экземпляр WaterfallStepContext. |
Свойства
active |
|
child | |
dialog |
|
index | Индекс текущего каскадного шага, выполняемого. |
options | Все параметры, переданные в каскадный диалог шагов при запуске с |
reason | Причина выполнения каскадного шага. |
result | Результаты, возвращаемые диалоговым окном или запросом, который был вызван на предыдущем каскадном шаге. |
values | Словарь значений, которые будут сохранены во всех каскадных шагах. |
Унаследованные свойства
context | Возвращает объект контекста для поворота. |
dialogs | Возвращает диалоговые окна, которые можно вызывать непосредственно из этого контекста. |
parent | Контекст родительского диалогового окна для этого контекста диалогового окна или |
services | Возвращает коллекцию служб, которая является контекстной для этого контекста диалога. |
stack | Возвращает текущий стек диалогов. |
state | Возвращает DialogStateManager, который управляет представлением всех областей памяти. |
Методы
next(any) | Переходит к следующему каскаду шагу. |
Наследуемые методы
begin |
Запускает экземпляр диалогового окна и отправляет его в стек диалогов. Создает новый экземпляр диалогового окна и отправляет его в стек. |
cancel |
Отменяет все диалоговые окна в стеке диалогов и очищает стек. |
continue |
Продолжает выполнение активного диалогового окна, если он есть, передав этот контекст диалогового окна в его метод Dialog.continueDialog. |
emit |
Ищет диалоговое окно с заданным идентификатором. |
end |
Заканчивает диалоговое окно и выводит его из стека. Возвращает необязательный результат родительскому элементу диалогового окна. |
find |
Ищет диалоговое окно с заданным идентификатором. |
get |
Получите CultureInfo в DialogContext. |
prompt(string, string | Partial<Activity> | Prompt |
Вспомогательные функции для упрощения форматирования параметров вызова диалогового окна запроса. |
prompt(string, string | Partial<Activity> | Prompt |
Вспомогательные функции для упрощения форматирования параметров вызова диалогового окна запроса. |
replace |
Заканчивает активное диалоговое окно и запускает новый диалог на его месте. |
reprompt |
Запрашивает активное диалоговое окно для повторного запроса пользователя на ввод. |
Сведения о конструкторе
WaterfallStepContext(DialogContext, WaterfallStepInfo<O>)
Создает новый экземпляр WaterfallStepContext.
new WaterfallStepContext(dc: DialogContext, info: WaterfallStepInfo<O>)
Параметры
Контекст диалогового окна для текущей очереди беседы.
- info
Значения для инициализации контекста шага с помощью.
Сведения о свойстве
activeDialog
DialogInstance | undefined activeDialog
Значение свойства
DialogInstance | undefined
Сведения о состоянии диалогового окна в верхней части стека диалоговых окон или undefined
, если стек пуст.
child
DialogContext | undefined child
Значение свойства
DialogContext | undefined
Контекст диалогового окна для дочернего элемента, если активное диалоговое окно является контейнером.
dialogManager
Предупреждение
Теперь этот API является нерекомендуемым.
This property serves no function.
DialogManager dialogManager
Значение свойства
Текущий экземпляр диспетчера диалогов. Это свойство устарело.
index
Индекс текущего каскадного шага, выполняемого.
number index
Значение свойства
number
Индекс текущего каскадного шага, выполняемого.
options
Все параметры, переданные в каскадный диалог шагов при запуске с DialogContext.beginDialog()
.
O options
Значение свойства
O
Любые параметры каскадного диалога были вызваны.
reason
Причина выполнения каскадного шага.
DialogReason reason
Значение свойства
Причина выполнения каскадного шага.
result
Результаты, возвращаемые диалоговым окном или запросом, который был вызван на предыдущем каскадном шаге.
any result
Значение свойства
any
Результат предыдущего каскадного шага.
values
Словарь значений, которые будут сохранены во всех каскадных шагах.
object values
Значение свойства
object
Словарь значений, которые будут сохранены во всех каскадных шагах.
Сведения об унаследованном свойстве
context
Возвращает объект контекста для поворота.
context: TurnContext
Значение свойства
TurnContext
Наследуется отDialogContext.context
dialogs
Возвращает диалоговые окна, которые можно вызывать непосредственно из этого контекста.
dialogs: DialogSet
Значение свойства
Унаследовано отDialogContext.dialogs
parent
Контекст родительского диалогового окна для этого контекста диалогового окна или undefined
, если этот контекст не имеет родительского элемента.
parent: DialogContext | undefined
Значение свойства
DialogContext | undefined
Комментарии
При попытке запустить диалоговое окно контекст диалогового окна ищет Dialog.id в диалоговых окнах. Если диалоговое окно для запуска не найдено в этом контексте диалога, он выполняет поиск в родительском контексте диалогового окна и т. д.
наследуется отDialogContext.parent
services
Возвращает коллекцию служб, которая является контекстной для этого контекста диалога.
services: TurnContextStateCollection
Значение свойства
TurnContextStateCollection
наследуется отDialogContext.services
stack
Возвращает текущий стек диалогов.
stack: DialogInstance[]
Значение свойства
унаследован отDialogContext.stack
state
Возвращает DialogStateManager, который управляет представлением всех областей памяти.
state: DialogStateManager
Значение свойства
наследуется отDialogContext.state
Сведения о методе
next(any)
Переходит к следующему каскаду шагу.
function next(result?: any): Promise<DialogTurnResult>
Параметры
- result
-
any
(Необязательно) результат для передачи на следующий шаг.
Возвращаемое значение
Promise<DialogTurnResult>
Обещание с помощью DialogTurnResult.
Комментарии
return await step.skip();
Сведения о наследуемом методе
beginDialog(string, object)
Запускает экземпляр диалогового окна и отправляет его в стек диалогов. Создает новый экземпляр диалогового окна и отправляет его в стек.
function beginDialog(dialogId: string, options?: object): Promise<DialogTurnResult>
Параметры
- dialogId
-
string
Идентификатор запускаемого диалогового окна.
- options
-
object
Необязательный. Аргументы для передачи в диалоговое окно при запуске.
Возвращаемое значение
Promise<DialogTurnResult>
обещание, разрешающее результат поворота диалога.
Комментарии
Если в стеке уже есть активное диалоговое окно, это диалоговое окно будет приостановлено, пока он не будет снова верхним диалогом в стеке.
Состояние возвращаемого объекта описывает состояние стека диалогов после завершения этого метода.
Этот метод создает исключение, если запрошенное диалоговое окно не удается найти в этом контексте диалога или любом из его предков.
Например:
const result = await dc.beginDialog('greeting', { name: user.name });
См. также
наследуется отDialogContext.beginDialog
cancelAllDialogs(boolean, string, any)
Отменяет все диалоговые окна в стеке диалогов и очищает стек.
function cancelAllDialogs(cancelParents?: boolean, eventName?: string, eventValue?: any): Promise<DialogTurnResult>
Параметры
- cancelParents
-
boolean
Необязательный. Если true
все родительские диалоги также будут отменены.
- eventName
-
string
Необязательный. Имя настраиваемого события для вызова в виде диалоговых окон отменено. По умолчанию используется cancelDialog.
- eventValue
-
any
Необязательный. Значение для передачи вместе с пользовательским событием отмены.
Возвращаемое значение
Promise<DialogTurnResult>
обещание, разрешающее результат поворота диалога.
Комментарии
Это вызывает метод Dialog.endDialog для каждого диалогового окна перед удалением диалогового окна из стека.
Если изначально в стеке были диалоговые окна, состояние возвращаемого значения отменено; в противном случае пустой.
В этом примере очищается стек диалогов dc
перед запуском диалогового окна bookFlight.
await dc.cancelAllDialogs();
return await dc.beginDialog('bookFlight');
См. также
наследуется отDialogContext.cancelAllDialogs
continueDialog()
Продолжает выполнение активного диалогового окна, если он есть, передав этот контекст диалогового окна в его метод Dialog.continueDialog.
function continueDialog(): Promise<DialogTurnResult>
Возвращаемое значение
Promise<DialogTurnResult>
обещание, разрешающее результат поворота диалога.
Комментарии
После завершения вызова можно проверить контекста поворота, которое ответило свойству, чтобы определить, отправляет ли диалоговое окно ответ пользователю.
Состояние возвращаемого объекта описывает состояние стека диалогов после завершения этого метода.
Как правило, этот вызов выполняется из обработчика поворота бота.
Например:
const result = await dc.continueDialog();
if (result.status == DialogTurnStatus.empty && dc.context.activity.type == ActivityTypes.message) {
// Send fallback message
await dc.context.sendActivity(`I'm sorry. I didn't understand.`);
}
унаследовано отDialogContext.continueDialog
emitEvent(string, any, boolean, boolean)
Ищет диалоговое окно с заданным идентификатором.
function emitEvent(name: string, value?: any, bubble?: boolean, fromLeaf?: boolean): Promise<boolean>
Параметры
- name
-
string
Имя создаваемого события.
- value
-
any
Необязательный. Значение для отправки вместе с событием.
- bubble
-
boolean
Необязательный. Пометка, чтобы определить, должно ли событие быть пузырьково в родительский, если он не обрабатывается локально. По умолчанию используется значение true
.
- fromLeaf
-
boolean
Необязательный. Указывает, генерируется ли событие конечным узлом.
Возвращаемое значение
Promise<boolean>
true
, если событие было обработано.
Комментарии
Выдает именованное событие для текущего диалогового окна или пользователя, который его запустил, для обработки.
наследуется отDialogContext.emitEvent
endDialog(any)
Заканчивает диалоговое окно и выводит его из стека. Возвращает необязательный результат родительскому элементу диалогового окна.
function endDialog(result?: any): Promise<DialogTurnResult>
Параметры
- result
-
any
Необязательный. Результат передачи родительской логики. Это может быть следующий диалог в стеке или если это был последний диалог в стеке, родительский контекст диалогового окна или обработчик поворота бота.
Возвращаемое значение
Promise<DialogTurnResult>
обещание, разрешающее результат поворота диалога.
Комментарии
Диалоговое окно родительского — это следующее диалоговое окно в стеке диалогов, если он есть. Этот метод вызывает метод Dialog.resumeDialog родительского объекта, передав результат, возвращаемый конечным диалогом. Если родительское диалоговое окно отсутствует, то поворот заканчивается и результат доступен боту через свойство результата возвращенного объекта.
Состояние возвращаемого объекта описывает состояние стека диалогов после завершения этого метода.
Как правило, этот вызов выполняется из логики для определенного диалогового окна, чтобы сообщить контексту диалога о завершении диалогового окна, диалоговое окно должно быть удалено из стека, а родительский диалог должен возобновиться.
Например:
return await dc.endDialog(returnValue);
См. также
унаследовано отDialogContext.endDialog
findDialog(string)
Ищет диалоговое окно с заданным идентификатором.
function findDialog(dialogId: string): Dialog | undefined
Параметры
- dialogId
-
string
Идентификатор диалогового окна для поиска.
Возвращаемое значение
Dialog | undefined
Диалоговое окно для предоставленного идентификатора.
Комментарии
Если диалоговое окно для запуска не найдено в DialogSet, связанном с этим контекстом диалога, он пытается найти диалоговое окно в родительском контексте диалогового окна.
См. также
- диалоговые окна
- родительских
наследуется отDialogContext.findDialog
getLocale()
Получите CultureInfo в DialogContext.
function getLocale(): string
Возвращаемое значение
string
строка языкового стандарта.
наследуется отDialogContext.getLocale
prompt(string, string | Partial<Activity> | PromptOptions)
Вспомогательные функции для упрощения форматирования параметров вызова диалогового окна запроса.
function prompt(dialogId: string, promptOrOptions: string | Partial<Activity> | PromptOptions): Promise<DialogTurnResult>
Параметры
- dialogId
-
string
Идентификатор диалогового окна запроса для запуска.
- promptOrOptions
-
string | Partial<Activity> | PromptOptions
Текст начального запроса для отправки пользователю, действие, которое будет отправлено в качестве начального запроса, или объект, с помощью которого будет отформатировать диалоговое окно запроса.
Возвращаемое значение
Promise<DialogTurnResult>
Комментарии
Этот вспомогательный метод форматирует объект, используемый в качестве параметра options
, а затем вызывает beginDialog для запуска указанного диалогового окна запроса.
return await dc.prompt('confirmPrompt', `Are you sure you'd like to quit?`);
Наследуется отDialogContext.prompt
prompt(string, string | Partial<Activity> | PromptOptions, string | Choice[])
Вспомогательные функции для упрощения форматирования параметров вызова диалогового окна запроса.
function prompt(dialogId: string, promptOrOptions: string | Partial<Activity> | PromptOptions, choices: string | Choice[]): Promise<DialogTurnResult>
Параметры
- dialogId
-
string
Идентификатор диалогового окна запроса для запуска.
- promptOrOptions
-
string | Partial<Activity> | PromptOptions
Текст начального запроса для отправки пользователя, действия
- choices
-
string | Choice[]
Необязательный. Массив вариантов выбора для пользователя для использования с ChoicePrompt.
Возвращаемое значение
Promise<DialogTurnResult>
Комментарии
Этот вспомогательный метод форматирует объект, используемый в качестве параметра options
, а затем вызывает beginDialog для запуска указанного диалогового окна запроса.
return await dc.prompt('confirmPrompt', `Are you sure you'd like to quit?`);
Наследуется отDialogContext.prompt
replaceDialog(string, object)
Заканчивает активное диалоговое окно и запускает новый диалог на его месте.
function replaceDialog(dialogId: string, options?: object): Promise<DialogTurnResult>
Параметры
- dialogId
-
string
Идентификатор запускаемого диалогового окна.
- options
-
object
Необязательный. Аргументы для передачи в новое диалоговое окно при запуске.
Возвращаемое значение
Promise<DialogTurnResult>
обещание, разрешающее результат поворота диалога.
Комментарии
Это особенно полезно для создания цикла или перенаправления в другое диалоговое окно.
Состояние возвращаемого объекта описывает состояние стека диалогов после завершения этого метода.
Этот метод аналогичен окончанию текущего диалога и немедленному началу нового. Однако родительское диалоговое окно не возобновляется и не уведомляется.
См. также
наследуется отDialogContext.replaceDialog
repromptDialog()
Запрашивает активное диалоговое окно для повторного запроса пользователя на ввод.
function repromptDialog(): Promise<void>
Возвращаемое значение
Promise<void>
Комментарии
При этом вызывается метод
Например:
await dc.repromptDialog();
Унаследовано отDialogContext.repromptDialog