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


ActivityHandler class

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

Extends

Комментарии

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

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

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

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

Например:

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();
    });

См. также

  • Схема действий Bot Framework

Методы

onCommand(BotHandler)

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

onCommandResult(BotHandler)

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

onConversationUpdate(BotHandler)

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

onDialog(BotHandler)

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

onEndOfConversation(BotHandler)

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

onEvent(BotHandler)

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

onInstallationUpdate(BotHandler)

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

onInstallationUpdateAdd(BotHandler)

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

onInstallationUpdateRemove(BotHandler)

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

onMembersAdded(BotHandler)

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

onMembersRemoved(BotHandler)

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

onMessage(BotHandler)

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

onMessageReaction(BotHandler)

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

onReactionsAdded(BotHandler)

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

onReactionsRemoved(BotHandler)

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

onTokenResponseEvent(BotHandler)

Регистрирует обработчик событий действия для события токенов-ответов, создаваемых для любого входящего действия события 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 .

Комментарии

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

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

onEvent(BotHandler)

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

function onEvent(handler: BotHandler): this

Параметры

handler
BotHandler

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

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

this

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

Комментарии

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

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

onInstallationUpdate(BotHandler)

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

function onInstallationUpdate(handler: BotHandler): this

Параметры

handler
BotHandler

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

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

this

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

Комментарии

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

onInstallationUpdateAdd(BotHandler)

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

function onInstallationUpdateAdd(handler: BotHandler): this

Параметры

handler
BotHandler

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

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

this

Ссылка на объект ActivityHandler . Чтобы обработать событие InstallationUpdateAdd, используйте обработчик событий onInstallationUpdateAdd типа.

onInstallationUpdateRemove(BotHandler)

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

function onInstallationUpdateRemove(handler: BotHandler): this

Параметры

handler
BotHandler

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

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

this

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

Комментарии

Чтобы обработать событие InstallationUpdateRemove, используйте обработчик событий onInstallationUpdateRemove типа.

onMembersAdded(BotHandler)

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

function onMembersAdded(handler: BotHandler): this

Параметры

handler
BotHandler

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

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

this

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

Комментарии

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

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

onMembersRemoved(BotHandler)

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

function onMembersRemoved(handler: BotHandler): this

Параметры

handler
BotHandler

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

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

this

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

Комментарии

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

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

onMessage(BotHandler)

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

function onMessage(handler: BotHandler): this

Параметры

handler
BotHandler

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

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

this

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

Комментарии

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

onMessageReaction(BotHandler)

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

function onMessageReaction(handler: BotHandler): this

Параметры

handler
BotHandler

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

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

this

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

Комментарии

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

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

onReactionsAdded(BotHandler)

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

function onReactionsAdded(handler: BotHandler): this

Параметры

handler
BotHandler

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

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

this

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

Комментарии

Свойство реакции действияAdded включает одну или несколько реакций, которые были добавлены.

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

onReactionsRemoved(BotHandler)

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

function onReactionsRemoved(handler: BotHandler): this

Параметры

handler
BotHandler

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

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

this

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

Комментарии

реакции действия удалены свойство включает одну или несколько реакций, которые были удалены.

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

onTokenResponseEvent(BotHandler)

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

function onTokenResponseEvent(handler: BotHandler): this

Параметры

handler
BotHandler

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

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

this

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

Комментарии

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

Если бот обрабатывает проверку подлинности с помощью 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. Кроме того, каналы и пользовательские адаптеры могут создавать действия с типами, не указанными в схеме. Когда обработчик действия получает такое событие, он выдает событие нераспознанного типа действия.

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

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);
     });
});

См. также