Поделиться через


DialogContainer class

Контейнер для набора диалогов.

Extends

Dialog<O>

Конструкторы

DialogContainer(string)

Создает новый экземпляр класса Dialog.

Свойства

dialogs

Набор диалоговых окон контейнеров.

id

Уникальный идентификатор диалогового окна. Задает уникальный идентификатор диалогового окна.

telemetryClient

Задайте клиент телеметрии, а также примените его ко всем дочерним диалогам. Будущие диалоги, добавленные в компонент, также наследуют этот клиент. Получите текущий клиент телеметрии.

Унаследованные свойства

EndOfTurn

Возвращает результат конца по умолчанию.

Методы

createChildContext(DialogContext)

Создает внутренний контекст диалогового окна для активного дочернего контейнера.

findDialog(string)

Находит дочернее диалоговое окно, которое ранее было добавлено в контейнер.

onDialogEvent(DialogContext, DialogEvent)

Вызывается при возникновении события, используя DialogContext.emitEvent(), текущим диалогом или диалогом, запущенным текущим диалогом.

Наследуемые методы

beginDialog(DialogContext, O)

При переопределении в производном классе запускает диалоговое окно.

configure(Record<string, unknown>)

Метод Fluent для настройки объекта.

continueDialog(DialogContext)

При переопределении в производном классе продолжается диалоговое окно.

endDialog(TurnContext, DialogInstance, DialogReason)

При переопределении в производном классе выполняет очистку диалогового окна перед завершением.

getConverter(string)
getVersion()

Кодированная строка, используемая для обнаружения изменений бота при повторном развертывании.

repromptDialog(TurnContext, DialogInstance)

При переопределении в производном классе переиздает пользователя для ввода.

resumeDialog(DialogContext, DialogReason, any)

При переопределении в производном классе возобновляет диалоговое окно после завершения диалогового окна над ним в стеке.

Сведения о конструкторе

DialogContainer(string)

Создает новый экземпляр класса Dialog.

new DialogContainer(dialogId?: string)

Параметры

dialogId

string

Необязательный. уникальный идентификатор диалогового окна.

Сведения о свойстве

dialogs

Набор диалоговых окон контейнеров.

dialogs: DialogSet

Значение свойства

id

Уникальный идентификатор диалогового окна. Задает уникальный идентификатор диалогового окна.

string id

Значение свойства

string

Идентификатор диалогового окна.

Комментарии

Это будет автоматически создано, если не указано.

telemetryClient

Задайте клиент телеметрии, а также примените его ко всем дочерним диалогам. Будущие диалоги, добавленные в компонент, также наследуют этот клиент. Получите текущий клиент телеметрии.

BotTelemetryClient telemetryClient

Значение свойства

BotTelemetryClient

BotTelemetryClient для ведения журнала.

Сведения об унаследованном свойстве

EndOfTurn

Возвращает результат конца по умолчанию.

static EndOfTurn: DialogTurnResult

Значение свойства

Комментарии

Этот результат указывает, что диалоговое окно (или логический шаг в диалоговом окне) завершило обработку текущего шага, по-прежнему активно и ожидает дополнительных входных данных.

унаследован от диалогового окна.EndOfTurn

Сведения о методе

createChildContext(DialogContext)

Создает внутренний контекст диалогового окна для активного дочернего контейнера.

function createChildContext(dc: DialogContext): DialogContext | undefined

Параметры

dc
DialogContext

Контекст диалогового окна "Родители".

Возвращаемое значение

DialogContext | undefined

Новый контекст диалогового окна для активного дочернего или undefined, если активный дочерний элемент отсутствует.

findDialog(string)

Находит дочернее диалоговое окно, которое ранее было добавлено в контейнер.

function findDialog(dialogId: string): Dialog | undefined

Параметры

dialogId

string

Идентификатор диалогового окна для поиска.

Возвращаемое значение

Dialog | undefined

При обнаружении диалогового окна; в противном случае значение NULL.

onDialogEvent(DialogContext, DialogEvent)

Вызывается при возникновении события, используя DialogContext.emitEvent(), текущим диалогом или диалогом, запущенным текущим диалогом.

function onDialogEvent(dc: DialogContext, e: DialogEvent): Promise<boolean>

Параметры

dc
DialogContext

Контекст диалогового окна для текущей очереди беседы.

e
DialogEvent

Возникает событие.

Возвращаемое значение

Promise<boolean>

Значение True, если событие обрабатывается текущим диалогом, а пузырьк должен остановиться.

Сведения о наследуемом методе

beginDialog(DialogContext, O)

При переопределении в производном классе запускает диалоговое окно.

function beginDialog(dc: DialogContext, options?: O): Promise<DialogTurnResult>

Параметры

dc
DialogContext

Контекст текущего диалогового окна.

options

O

Необязательный. Аргументы, используемые при запуске диалогового окна.

Возвращаемое значение

Promise<DialogTurnResult>

Комментарии

Производные диалоги должны переопределить этот метод.

DialogContext вызывает этот метод при создании нового DialogInstance для этого диалога, отправляет его в стек диалогов и запускает диалоговое окно.

Диалоговое окно, представляющее одноверную беседу, должно ожидать DialogContext.endDialog перед выходом из этого метода.

См. также

наследуется от диалогового окна.beginDialog

configure(Record<string, unknown>)

Метод Fluent для настройки объекта.

function configure(config: Record<string, unknown>): this

Параметры

config

Record<string, unknown>

Параметры конфигурации для применения.

Возвращаемое значение

this

После завершения операции настраиваемый.

наследуется отConfigurable.configure

continueDialog(DialogContext)

При переопределении в производном классе продолжается диалоговое окно.

function continueDialog(dc: DialogContext): Promise<DialogTurnResult>

Параметры

dc
DialogContext

Контекст текущего диалогового окна.

Возвращаемое значение

Promise<DialogTurnResult>

Обещание разрешения результата поворота диалогового окна.

Комментарии

Производные диалоги, поддерживающие несколько поворотов бесед, должны переопределить этот метод. По умолчанию этот метод сигнализирует о том, что диалоговое окно завершено и возвращается.

DialogContext вызывает этот метод при продолжении диалога.

Чтобы сообщить контексту диалогового окна о завершении этого диалогового окна, дождитесь DialogContext.endDialog перед выходом из этого метода.

См. также

унаследованот диалогового окна".continueDialog

endDialog(TurnContext, DialogInstance, DialogReason)

При переопределении в производном классе выполняет очистку диалогового окна перед завершением.

function endDialog(_context: TurnContext, _instance: DialogInstance, _reason: DialogReason): Promise<void>

Параметры

_context

TurnContext

Объект контекста для поворота.

_instance
DialogInstance

Текущие сведения о состоянии для этого диалогового окна.

_reason
DialogReason

Причина окончания диалогового окна.

Возвращаемое значение

Promise<void>

Комментарии

Производные диалоги, которые должны выполнять ведение журнала или очистку перед завершением, должны переопределить этот метод. По умолчанию этот метод не действует.

DialogContext вызывает этот метод при завершении текущего диалога.

См. также

унаследован отDialog.endDialog

getConverter(string)

function getConverter(_property: string): Converter | ConverterFactory

Параметры

_property

string

Ключ конфигурации условного селектора.

Возвращаемое значение

Преобразователь конфигурации селектора.

унаследован отConfigurable.getConverter

getVersion()

Кодированная строка, используемая для обнаружения изменений бота при повторном развертывании.

function getVersion(): string

Возвращаемое значение

string

Уникальная строка, которая должна изменяться только при изменении диалогового окна таким образом, чтобы перезапустить диалоговое окно.

Комментарии

По умолчанию возвращается диалоговое окно идентификатор, но его можно переопределить, чтобы обеспечить более точную логику обнаружения изменений. Любое диалоговое окно в стеке с изменением версии приведет к возникновению события versionChanged. Если это событие не обрабатывается ботом, возникает ошибка, в результате чего выполняется логика обработчика ошибок ботов.

Возврат пустой строки отключит отслеживание версий для компонента вместе.

унаследовано отDialog.getVersion

repromptDialog(TurnContext, DialogInstance)

При переопределении в производном классе переиздает пользователя для ввода.

function repromptDialog(_context: TurnContext, _instance: DialogInstance): Promise<void>

Параметры

_context

TurnContext

Объект контекста для поворота.

_instance
DialogInstance

Текущие сведения о состоянии для этого диалогового окна.

Возвращаемое значение

Promise<void>

Комментарии

Производные диалоги, поддерживающие проверку и логику повторного запроса, должны переопределить этот метод. По умолчанию этот метод не действует.

DialogContext вызывает этот метод, когда текущее диалоговое окно должно повторно запрашивать входные данные от пользователя. Этот метод реализуется для диалоговых окон запроса.

См. также

унаследован отDialog.repromptDialog

resumeDialog(DialogContext, DialogReason, any)

При переопределении в производном классе возобновляет диалоговое окно после завершения диалогового окна над ним в стеке.

function resumeDialog(dc: DialogContext, reason: DialogReason, result?: any): Promise<DialogTurnResult>

Параметры

dc
DialogContext

Контекст текущего диалогового окна.

reason
DialogReason

Причина возобновления диалога. Обычно это будет DialogReason.endCalled

result

any

Необязательный. Возвращаемое значение, если таковое имеется, из диалогового окна, завершившегося.

Возвращаемое значение

Promise<DialogTurnResult>

Обещание разрешения результата поворота диалогового окна.

Комментарии

Производные диалоги, поддерживающие несколько поворотов бесед, должны переопределить этот метод. По умолчанию этот метод сигнализирует о том, что диалоговое окно завершено и возвращается.

DialogContext вызывает этот метод при возобновлении диалога. Если предыдущее диалоговое окно в стеке вернуло значение, это значение находится в параметре result.

Чтобы запустить диалоговое окно дочерних, используйте DialogContext.beginDialog или DialogContext.prompt; Однако это диалоговое окно не обязательно будет тем, который запустил дочерний диалог. Чтобы сообщить контексту диалогового окна о завершении этого диалогового окна, дождитесь DialogContext.endDialog перед выходом из этого метода.

См. также

унаследовано отDialog.resumeDialog