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


Dialog class

Определяет основное поведение для всех диалогов.

Extends

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

Dialog(string)

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

Свойства

EndOfTurn

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

id

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

telemetryClient

Возвращает клиент телеметрии для этого диалогового окна. Задает клиент телеметрии для этого диалогового окна.

Методы

beginDialog(DialogContext, O)

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

continueDialog(DialogContext)

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

endDialog(TurnContext, DialogInstance, DialogReason)

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

getVersion()

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

onDialogEvent(DialogContext, DialogEvent)

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

repromptDialog(TurnContext, DialogInstance)

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

resumeDialog(DialogContext, DialogReason, any)

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

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

configure(Record<string, unknown>)

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

getConverter(string)

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

Dialog(string)

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

new Dialog(dialogId?: string)

Параметры

dialogId

string

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

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

EndOfTurn

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

static EndOfTurn: DialogTurnResult

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

Комментарии

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

id

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

string id

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

string

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

Комментарии

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

telemetryClient

Возвращает клиент телеметрии для этого диалогового окна. Задает клиент телеметрии для этого диалогового окна.

BotTelemetryClient telemetryClient

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

BotTelemetryClient

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

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

beginDialog(DialogContext, O)

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

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

Параметры

dc
DialogContext

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

options

O

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

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

Promise<DialogTurnResult>

Комментарии

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

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

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

См. также:

continueDialog(DialogContext)

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

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

Параметры

dc
DialogContext

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

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

Promise<DialogTurnResult>

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

Комментарии

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

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

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

См. также:

endDialog(TurnContext, DialogInstance, DialogReason)

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

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

Параметры

_context

TurnContext

Объект контекста для шага.

_instance
DialogInstance

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

_reason
DialogReason

Причина завершения диалога.

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

Promise<void>

Комментарии

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

DialogContext вызывает этот метод, когда текущий диалог завершается.

См. также:

getVersion()

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

function getVersion(): string

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

string

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

Комментарии

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

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

onDialogEvent(DialogContext, DialogEvent)

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

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

Параметры

dc
DialogContext

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

e
DialogEvent

Создаваемое событие.

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

Promise<boolean>

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

repromptDialog(TurnContext, DialogInstance)

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

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

Параметры

_context

TurnContext

Объект контекста для шага.

_instance
DialogInstance

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

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

Promise<void>

Комментарии

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

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

См. также:

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 .

См. также:

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

configure(Record<string, unknown>)

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

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

Параметры

config

Record<string, unknown>

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

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

this

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

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

getConverter(string)

function getConverter(_property: string): Converter | ConverterFactory

Параметры

_property

string

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

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

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

Наследуется отConfigurable.getConverter