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


ActivityHandler class

Обработчик действий, создающих события, для ботов. Расширяет ActivityHandlerBase.

Extends

Комментарии

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

Чтобы зарегистрировать обработчик для события, используйте соответствующий метод on event . Если для события зарегистрировано несколько обработчиков, они выполняются в том порядке, в котором они были зарегистрированы.

Этот объект создает ряд событий при обработке входящего действия. Обработчик может остановить распространение события, не вызывая функцию продолжения.

Тип события Описание
Вращение Сначала создается для каждого действия.
Тип Создается для конкретного типа действия перед созданием события для любого подтипа.
Подтип Создается для определенных специализированных событий на основе содержимого действия.
Диалог Создается в качестве конечного события обработки действия.

Например:

const bot = new ActivityHandler();

server.post('/api/messages', (req, res) => {
    adapter.processActivity(req, res, async (context) => {
        // Route to bot's activity logic.
        await bot.run(context);
    });
});

bot.onTurn(async (context, next) => {
        // Handle a "turn" event.
        await context.sendActivity(`${ context.activity.type } activity received.`);
        // Continue with further processing.
        await next();
    })
    .onMessage(async (context, next) => {
        // Handle a message activity.
        await context.sendActivity(`Echo: ${ context.activity.text }`);
        // Continue with further processing.
        await next();
    });

См. также:

Методы

onCommand(BotHandler)

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

onCommandResult(BotHandler)

Регистрирует обработчик событий действия для действия CommandResult .

onConversationUpdate(BotHandler)

Регистрирует обработчик событий действия для события обновления диалога , выдаваемого для каждого действия обновления входящего диалога.

onDialog(BotHandler)

Регистрирует обработчик событий действия для события диалогового окна , выдаваемого как последнее событие для входящего действия.

onEndOfConversation(BotHandler)

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

onEvent(BotHandler)

Регистрирует обработчик событий действия для события события , выдаваемого для каждого входящего действия события.

onInstallationUpdate(BotHandler)

Регистрирует обработчик событий действия для действия installationupdate .

onInstallationUpdateAdd(BotHandler)

Регистрирует обработчик событий действия для действия installationupdate add .

onInstallationUpdateRemove(BotHandler)

Регистрирует обработчик событий действия для действия installationupdate remove .

onMembersAdded(BotHandler)

Регистрирует обработчик событий действия для события добавления участников , выдаваемого для любого входящего действия обновления диалога, включающего участников, добавленных в беседу.

onMembersRemoved(BotHandler)

Регистрирует обработчик событий действия для события удаления участников , выдаваемого для любого действия обновления входящего диалога, включающего участников, удаленных из диалога.

onMessage(BotHandler)

Регистрирует обработчик событий действия для события сообщения , выдаваемого для каждого действия входящего сообщения.

onMessageReaction(BotHandler)

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

onReactionsAdded(BotHandler)

Регистрирует обработчик событий действия для события добавления реакций , выдаваемого для любого действия реакции входящего сообщения, описывающего реакции, добавленные в сообщение.

onReactionsRemoved(BotHandler)

Регистрирует обработчик событий действия для события удаления реакций , выдаваемого для любого действия реакции на входящее сообщение, описывающего реакции, удаленные из сообщения.

onTokenResponseEvent(BotHandler)

Регистрирует обработчик событий действия для события token-response , выдаваемого для любого входящего tokens/response действия события. Они создаются в рамках потока проверки подлинности OAuth.

onTurn(BotHandler)

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

onTyping(BotHandler)

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

onUnrecognizedActivityType(BotHandler)

Регистрирует обработчик событий действия для события нераспознанного типа действия , создаваемого для входящего действия с типом, для которого ActivityHandler не предоставляет обработчик событий.

run(TurnContext)

Вызывается для запуска процесса выброса событий.

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

onCommand(BotHandler)

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

function onCommand(handler: BotHandler): this

Параметры

handler
BotHandler

Обработчик событий.

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

this

Ссылка на объект ActivityHandler .

Комментарии

Для обработки события Command используйте обработчик событий для конкретного типа onCommand .

onCommandResult(BotHandler)

Регистрирует обработчик событий действия для действия CommandResult .

function onCommandResult(handler: BotHandler): this

Параметры

handler
BotHandler

Обработчик событий.

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

this

Ссылка на объект ActivityHandler .

Комментарии

Для обработки события CommandResult используйте обработчик событий для конкретного типа onCommandResult .

onConversationUpdate(BotHandler)

Регистрирует обработчик событий действия для события обновления диалога , выдаваемого для каждого действия обновления входящего диалога.

function onConversationUpdate(handler: BotHandler): this

Параметры

handler
BotHandler

Обработчик событий.

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

this

Ссылка на объект ActivityHandler .

Комментарии

Действия по обновлению бесед описывают изменения метаданных беседы, такие как название, участники или другие сведения, относящиеся к каналу.

Чтобы обработать, когда участники добавляются в диалог или удаляются из него, используйте обработчики событий подтипа onMembersAdded и onMembersRemoved .

onDialog(BotHandler)

Регистрирует обработчик событий действия для события диалогового окна , выдаваемого как последнее событие для входящего действия.

function onDialog(handler: BotHandler): this

Параметры

handler
BotHandler

Обработчик событий.

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

this

Ссылка на объект ActivityHandler .

onEndOfConversation(BotHandler)

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

function onEndOfConversation(handler: BotHandler): this

Параметры

handler
BotHandler

Обработчик событий.

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

this

Ссылка на объект ActivityHandler .

Комментарии

Это действие обычно отправляется из навыка в вызывающий объект Skill, указывающий на конец этого конкретного дочернего диалога.

Для обработки завершения диалога используйте обработчик событий, зависящий от типа onEndOfConversation .

onEvent(BotHandler)

Регистрирует обработчик событий действия для события события , выдаваемого для каждого входящего действия события.

function onEvent(handler: BotHandler): this

Параметры

handler
BotHandler

Обработчик событий.

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

this

Ссылка на объект ActivityHandler .

Комментарии

Действия событий передают программную информацию из клиента или канала боту. Значение действия события определяется свойством имени действия, которое имеет смысл в области канала. Действия событий предназначены для переноса как интерактивной информации (например, нажатия кнопки), так и неинтерактивной (например, уведомление о том, что клиент автоматически обновляет встроенную модель речи).

Для обработки tokens/response события события используйте обработчик событий подтипа onTokenResponseEvent . Для обработки других именованных событий добавьте логику в этот обработчик.

onInstallationUpdate(BotHandler)

Регистрирует обработчик событий действия для действия installationupdate .

function onInstallationUpdate(handler: BotHandler): this

Параметры

handler
BotHandler

Обработчик событий.

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

this

Ссылка на объект ActivityHandler .

Комментарии

Для обработки события InstallationUpdate используйте обработчик событий для конкретного типа onInstallationUpdate .

onInstallationUpdateAdd(BotHandler)

Регистрирует обработчик событий действия для действия installationupdate add .

function onInstallationUpdateAdd(handler: BotHandler): this

Параметры

handler
BotHandler

Обработчик событий.

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

this

Ссылка на объект ActivityHandler . Для обработки события InstallationUpdateAdd используйте обработчик событий для конкретного типа onInstallationUpdAdd .

onInstallationUpdateRemove(BotHandler)

Регистрирует обработчик событий действия для действия installationupdate remove .

function onInstallationUpdateRemove(handler: BotHandler): this

Параметры

handler
BotHandler

Обработчик событий.

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

this

Ссылка на объект ActivityHandler .

Комментарии

Для обработки события InstallationUpdateRemove используйте обработчик событий для конкретного типа onInstallationUpdateRemove .

onMembersAdded(BotHandler)

Регистрирует обработчик событий действия для события добавления участников , выдаваемого для любого входящего действия обновления диалога, включающего участников, добавленных в беседу.

function onMembersAdded(handler: BotHandler): this

Параметры

handler
BotHandler

Обработчик событий.

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

this

Ссылка на объект ActivityHandler .

Комментарии

Свойство действия membersAdded содержит участников, добавленных в беседу, которые могут включать бота.

Для обработки событий обновления диалога в целом используйте обработчик событий для конкретного типа onConversationUpdate .

onMembersRemoved(BotHandler)

Регистрирует обработчик событий действия для события удаления участников , выдаваемого для любого действия обновления входящего диалога, включающего участников, удаленных из диалога.

function onMembersRemoved(handler: BotHandler): this

Параметры

handler
BotHandler

Обработчик событий.

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

this

Ссылка на объект ActivityHandler .

Комментарии

Свойство действия membersRemoved содержит участников, удаленных из беседы, которые могут включать бота.

Для обработки событий обновления диалога в целом используйте обработчик событий для конкретного типа onConversationUpdate .

onMessage(BotHandler)

Регистрирует обработчик событий действия для события сообщения , выдаваемого для каждого действия входящего сообщения.

function onMessage(handler: BotHandler): this

Параметры

handler
BotHandler

Обработчик событий.

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

this

Ссылка на объект ActivityHandler .

Комментарии

Действия с сообщениями представляют содержимое, предназначенное для отображения в диалоговом интерфейсе, и может содержать текст, речь, интерактивные карточки, двоичные или неизвестные вложения. Не все действия с сообщениями содержат текст. Свойство text действия может иметь значение null или undefined.

onMessageReaction(BotHandler)

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

function onMessageReaction(handler: BotHandler): this

Параметры

handler
BotHandler

Обработчик событий.

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

this

Ссылка на объект ActivityHandler .

Комментарии

Действия реагирования на сообщения представляют собой реагирование на имеющееся действие сообщения в диалоге. На исходное действие ссылается свойство replyToId действия реакции на сообщение. Свойство from представляет источник реакции, например пользователя, который отреагировал на сообщение.

Чтобы обработать, когда реакции добавляются в сообщения в беседе или удаляются из них, используйте обработчики событий подтипа onReactionsAdded и onReactionsRemoved .

onReactionsAdded(BotHandler)

Регистрирует обработчик событий действия для события добавления реакций , выдаваемого для любого действия реакции входящего сообщения, описывающего реакции, добавленные в сообщение.

function onReactionsAdded(handler: BotHandler): this

Параметры

handler
BotHandler

Обработчик событий.

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

this

Ссылка на объект ActivityHandler .

Комментарии

Свойство activity's reactionsAdded включает одну или несколько добавленных реакций.

Для обработки событий реакции на сообщения в целом используйте обработчик событий типа onMessageReaction .

onReactionsRemoved(BotHandler)

Регистрирует обработчик событий действия для события удаления реакций , выдаваемого для любого действия реакции на входящее сообщение, описывающего реакции, удаленные из сообщения.

function onReactionsRemoved(handler: BotHandler): this

Параметры

handler
BotHandler

Обработчик событий.

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

this

Ссылка на объект ActivityHandler .

Комментарии

Свойство activity's reactionsRemoved включает одну или несколько реакций, которые были удалены.

Для обработки событий реакции на сообщения в целом используйте обработчик событий типа onMessageReaction .

onTokenResponseEvent(BotHandler)

Регистрирует обработчик событий действия для события token-response , выдаваемого для любого входящего tokens/response действия события. Они создаются в рамках потока проверки подлинности OAuth.

function onTokenResponseEvent(handler: BotHandler): this

Параметры

handler
BotHandler

Обработчик событий.

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

this

Ссылка на объект ActivityHandler .

Комментарии

Свойство value действия содержит маркер пользователя.

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

Для обработки других именованных событий и событий в целом используйте обработчик событий типа onEvent .

onTurn(BotHandler)

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

function onTurn(handler: BotHandler): this

Параметры

handler
BotHandler

Обработчик событий.

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

this

Ссылка на объект ActivityHandler .

onTyping(BotHandler)

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

function onTyping(handler: BotHandler): this

Параметры

handler
BotHandler

Обработчик событий.

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

this

Ссылка на объект ActivityHandler .

Комментарии

Для обработки события typeing используйте обработчик события для конкретного типа onTyping .

onUnrecognizedActivityType(BotHandler)

Регистрирует обработчик событий действия для события нераспознанного типа действия , создаваемого для входящего действия с типом, для которого ActivityHandler не предоставляет обработчик событий.

function onUnrecognizedActivityType(handler: BotHandler): this

Параметры

handler
BotHandler

Обработчик событий.

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

this

Ссылка на объект ActivityHandler .

Комментарии

Не ActivityHandler определяет события для всех типов действий, определенных в схеме действий Bot Framework. Кроме того, каналы и пользовательские адаптеры могут создавать действия с типами, не указанными в схеме. Когда обработчик действия получает такое событие, он создает событие нераспознанного типа действия.

Свойство type действия содержит тип действия.

run(TurnContext)

Вызывается для запуска процесса выброса событий.

function run(context: TurnContext): Promise<void>

Параметры

context
TurnContext

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

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

Promise<void>

Комментарии

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

Например:

 server.post('/api/messages', (req, res) => {
     adapter.processActivity(req, res, async (context) => {
         // Route to bot's activity logic.
         await bot.run(context);
     });
});

См. также: