ActivityHandler Класс

  • java.lang.Object
    • com.microsoft.bot.builder.ActivityHandler

Реализации


public class ActivityHandler
implements Bot

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

Сводка по конструктору

Конструктор Описание
ActivityHandler()

Сводка по методу

Модификатор и тип Метод и описание
protected InvokeResponse createInvokeResponse(Object body)

Создает успешный вызовответа с указанным текстом.

protected java.util.concurrent.CompletableFuture<AdaptiveCardInvokeResponse> onAdaptiveCardInvoke(TurnContext turnContext, AdaptiveCardInvokeValue invokeValue)

Вызывается при отправке ботом действия адаптивной карточки.

protected java.util.concurrent.CompletableFuture<java.lang.Void> onCommandActivity(TurnContext turnContext)

Вызывается при получении действия команды при использовании базового поведения onTurn(TurnContext turnContext).

protected java.util.concurrent.CompletableFuture<java.lang.Void> onCommandResultActivity(TurnContext turnContext)

Вызывается при получении действия командыResult при использовании базового поведения onTurn(TurnContext turnContext).

protected java.util.concurrent.CompletableFuture<java.lang.Void> onConversationUpdateActivity(TurnContext turnContext)

Вызывается при получении действия обновления беседы из канала при использовании базового поведения onTurn(TurnContext turnContext).

protected java.util.concurrent.CompletableFuture<java.lang.Void> onEndOfConversationActivity(TurnContext turnContext)

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

protected java.util.concurrent.CompletableFuture<java.lang.Void> onEvent(TurnContext turnContext)

Вызывается при получении события, отличного от маркеров или ответа, при использовании базового поведения onEventActivity(TurnContext turnContext).

protected java.util.concurrent.CompletableFuture<java.lang.Void> onEventActivity(TurnContext turnContext)

Вызывается при получении действия события из соединителя при использовании базового поведения onTurn(TurnContext turnContext).

protected java.util.concurrent.CompletableFuture<java.lang.Void> onInstallationUpdate(TurnContext turnContext)

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

protected java.util.concurrent.CompletableFuture<java.lang.Void> onInstallationUpdateAdd(TurnContext turnContext)

Переопределите это в производном классе, чтобы обеспечить логику, относясь к типам действий.установкадействия обновления с параметром action (действие) значение add.

protected java.util.concurrent.CompletableFuture<java.lang.Void> onInstallationUpdateRemove(TurnContext turnContext)

Переопределите это в производном классе, чтобы обеспечить логику, относясь к типам действий.установкадействия обновления с параметром action (действие) значение remove(Удалить).

protected java.util.concurrent.CompletableFuture<InvokeResponse> onInvokeActivity(TurnContext turnContext)

Вызывается при получении действия вызова из соединителя при использовании базового поведенияTurn.

protected java.util.concurrent.CompletableFuture<java.lang.Void> onMembersAdded(List<ChannelAccount> membersAdded, TurnContext turnContext)

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

protected java.util.concurrent.CompletableFuture<java.lang.Void> onMembersRemoved(List<ChannelAccount> membersRemoved, TurnContext turnContext)

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

protected java.util.concurrent.CompletableFuture<java.lang.Void> onMessageActivity(TurnContext turnContext)

Переопределите это в производном классе, чтобы обеспечить логику, конкретную для ActivityTypes#MESSAGE действий, таких как логика беседы.

protected java.util.concurrent.CompletableFuture<java.lang.Void> onMessageReactionActivity(TurnContext turnContext)

Вызывается при получении действия события из соединителя при использовании базового поведения onTurn(TurnContext turnContext).

protected java.util.concurrent.CompletableFuture<java.lang.Void> onReactionsAdded(List<MessageReaction> messageReactions, TurnContext turnContext)

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

protected java.util.concurrent.CompletableFuture<java.lang.Void> onReactionsRemoved(List<MessageReaction> messageReactions, TurnContext turnContext)

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

protected java.util.concurrent.CompletableFuture<java.lang.Void> onSignInInvoke(TurnContext turnContext)

Вызывается при получении события "signin/verifyState" или "signin/tokenExchange", когда используется базовое поведениеInvokeActivity.

protected java.util.concurrent.CompletableFuture<java.lang.Void> onTokenResponseEvent(TurnContext turnContext)

Вызывается при получении события "token/response" при использовании базового поведения onEventActivity(TurnContext turnContext).

java.util.concurrent.CompletableFuture<java.lang.Void> onTurn(TurnContext turnContext)

Вызывается адаптером (например, BotFrameworkAdapter) во время выполнения для обработки входящего Activity.

protected java.util.concurrent.CompletableFuture<java.lang.Void> onTypingActivity(TurnContext turnContext)

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

protected java.util.concurrent.CompletableFuture<java.lang.Void> onUnrecognizedActivityType(TurnContext turnContext)

Вызывается при получении действия, отличного от сообщения, обновления беседы или события при использовании базового поведения onTurn(TurnContext turnContext).

Методы, унаследованные от java.lang.Object

java.lang.Object.clone java.lang.Object.equals java.lang.Object.finalize java.lang.Object.getClass java.lang.Object.hashCode java.lang.Object.notify java.lang.Object.notifyAll java.lang.Object.toString java.lang.Object.wait java.lang.Object.wait java.lang.Object.wait

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

ActivityHandler

public ActivityHandler()

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

createInvokeResponse

protected InvokeResponse createInvokeResponse(Object body)

Создает успешное выполнение InvokeResponse с указанным текстом.

Параметры:

body - Текст, возвращаемый в ответе вызова.

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

Объект InvokeResponse.

onAdaptiveCardInvoke

protected CompletableFuture onAdaptiveCardInvoke(TurnContext turnContext, AdaptiveCardInvokeValue invokeValue)

Вызывается при отправке ботом действия адаптивной карточки.

Параметры:

turnContext - Строго типизированный объект контекста для этого шага.
invokeValue - Строковый типизированный объект из значения входящего действия.

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

Задача, представляющая выполняемую рабочую очередь. Когда метод {@link OnInvokeActivity(TurnContext(InvokeActivity)}получает вызов с InvokeActivity.nameadaptiveCard/action, он вызывает этот метод.

onCommandActivity

protected CompletableFuture onCommandActivity(TurnContext turnContext)

Вызывается при получении действия команды при использовании базового поведения onTurn(TurnContext turnContext). Команды — это запросы на выполнение действия и получателей обычно отвечают на одно или несколько действий commandResult. Получатели также должны явно отклонять неподдерживаемые действия команд.

Параметры:

turnContext - Строго типизированный объект контекста для этого шага.

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

Задача, представляющая выполняемую рабочую очередь. Когда метод onTurn(TurnContext turnContext) получает действие команды, он вызывает этот метод. В производном классе переопределите этот метод, чтобы добавить логику, которая применяется ко всем действиям comand. Добавьте логику для применения перед конкретной логикой обработки команд перед вызовом метода базового класса onCommandActivity(TurnContext turnContext). Добавьте логику для применения после конкретной логики обработки команд после вызова метода базового класса onCommandActivity(TurnContext turnContext). Действия команд передают программную информацию от клиента или канала боту. Значение действия команды определяется свойством name, которое имеет смысл в пределах канала.

onCommandResultActivity

protected CompletableFuture onCommandResultActivity(TurnContext turnContext)

Вызывается при получении действия CommandResult при использовании базового поведения onTurn(TurnContext turnContext). Действия CommandResult можно использовать для обмена данными о результатах выполнения команды.

Параметры:

turnContext - Строго типизированный объект контекста для этого шага.

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

Задача, представляющая выполняемую рабочую очередь. Когда метод onTurn(TurnContext turnContext) получает действие CommandResult, он вызывает этот метод. В производном классе переопределите этот метод, чтобы добавить логику, которая применяется ко всем действиям comand. Добавьте логику для применения перед определенной логикой обработки CommandResult перед вызовом метода базового класса onCommandResultActivity(TurnContext turnContext). Добавьте логику для применения после конкретной логики обработки CommandResult после вызова метода базового класса onCommandResultActivity(TurnContext turnContext). Действия CommandResult передают программную информацию от клиента или канала боту. Значение действия CommandResult определяется свойством name, которое имеет смысл в области канала.

onConversationUpdateActivity

protected CompletableFuture onConversationUpdateActivity(TurnContext turnContext)

Вызывается при получении действия обновления беседы из канала при использовании базового поведения onTurn(TurnContext turnContext).

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

Например, бот может отвечать на добавление пользователя, приветствуя пользователя. По умолчанию этот метод вызывает onMembersAdded(List<ChannelAccount> membersAdded, TurnContext turnContext), если какие-либо пользователи были добавлены или onMembersRemoved(List<ChannelAccount> membersRemoved, TurnContext turnContext), если какие-либо пользователи были удалены. Метод проверяет идентификатор члена таким образом, чтобы он ответил только на обновления, касающиеся членов, отличных от самого бота.

Параметры:

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

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

Задача, представляющая выполняемую рабочую очередь.

onEndOfConversationActivity

protected CompletableFuture onEndOfConversationActivity(TurnContext turnContext)

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

Параметры:

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

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

Задача, представляющая выполняемую рабочую очередь.

onEvent

protected CompletableFuture onEvent(TurnContext turnContext)

Вызывается при получении события, отличного от маркеров или ответа, при использовании базового поведения onEventActivity(TurnContext turnContext).

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

По умолчанию этот метод ничего не делает.

Когда метод onEventActivity(TurnContext turnContext) получает событие с Activity#getName(), отличной от "token/response", он вызывает этот метод.

Параметры:

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

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

Задача, представляющая выполняемую рабочую очередь.

onEventActivity

protected CompletableFuture onEventActivity(TurnContext turnContext)

Вызывается при получении действия события из соединителя при использовании базового поведения onTurn(TurnContext turnContext).

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

По умолчанию этот метод вызывает onTokenResponseEvent(TurnContext turnContext), если имя действия — "token/response" или onEvent(TurnContext turnContext) в противном случае. Событие "token/response" может быть активировано com.microsoft.bot.schema.OAuthCard.

Когда метод onTurn(TurnContext turnContext) получает действие события, он вызывает этот метод.

Если событие Activity#getName имеет значение "token/response", оно вызывает onTokenResponseEvent(TurnContext turnContext) в противном случае вызывает onEvent(TurnContext turnContext).

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

Действия событий передают программные сведения от клиента или канала боту. Значение действия события определяется свойством Activity#getName, которое имеет смысл в пределах области канала. Событие "token/response" может быть активировано com.microsoft.bot.schema.OAuthCard или запросом OAuth.

Параметры:

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

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

Задача, представляющая выполняемую рабочую очередь.

onInstallationUpdate

protected CompletableFuture onInstallationUpdate(TurnContext turnContext)

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

Параметры:

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

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

Задача, представляющая выполняемую рабочую очередь.

onInstallationUpdateAdd

protected CompletableFuture onInstallationUpdateAdd(TurnContext turnContext)

Переопределите это в производном классе, чтобы предоставить логику, относясь к действиям ActivityTypes.InstallationUpdate, с помощью действия "action", заданного как "add".

Параметры:

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

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

Задача, представляющая выполняемую рабочую очередь.

onInstallationUpdateRemove

protected CompletableFuture onInstallationUpdateRemove(TurnContext turnContext)

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

Параметры:

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

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

Задача, представляющая выполняемую рабочую очередь.

onInvokeActivity

protected CompletableFuture onInvokeActivity(TurnContext turnContext)

Вызывается при получении действия вызова из соединителя при использовании базового поведения onTurn.

Вызов действий можно использовать для взаимодействия с различными вещами. По умолчанию этот метод вызовет onSignInvokeAsync, если имя действия — signin/verifyState или signin/tokenExchange.

Вызов signin/verifyState или signin/tokenExchange можно активировать с помощью OAuthCard.

Параметры:

turnContext - Текущий turnContext.

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

Задача, представляющая выполняемую рабочую очередь.

onMembersAdded

protected CompletableFuture onMembersAdded(List membersAdded, TurnContext turnContext)

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

Когда метод onConversationUpdateActivity(TurnContext turnContext) получает действие обновления беседы, указывающее, что один или несколько пользователей, отличных от присоединения к беседе, вызывает этот метод.

Параметры:

membersAdded - Список всех участников, добавленных в беседу, как описано действием обновления беседы.
turnContext - Объект контекста для этого поворота.

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

Задача, представляющая выполняемую рабочую очередь.

onMembersRemoved

protected CompletableFuture onMembersRemoved(List membersRemoved, TurnContext turnContext)

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

Когда метод onConversationUpdateActivity(TurnContext turnContext) получает действие обновления беседы, указывающее, что один или несколько пользователей, отличных от бота, покидают беседу, вызывает этот метод.

Параметры:

membersRemoved - Список всех участников, удаленных из беседы, как описано действием обновления беседы.
turnContext - Объект контекста для этого поворота.

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

Задача, представляющая выполняемую рабочую очередь.

onMessageActivity

protected CompletableFuture onMessageActivity(TurnContext turnContext)

Переопределите это в производном классе, чтобы обеспечить логику, конкретную для ActivityTypes#MESSAGE действий, таких как логика беседы.

Когда метод onTurn(TurnContext turnContext) получает действие сообщения, он вызывает этот метод.

Параметры:

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

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

Задача, представляющая выполняемую рабочую очередь.

onMessageReactionActivity

protected CompletableFuture onMessageReactionActivity(TurnContext turnContext)

Вызывается при получении действия события из соединителя при использовании базового поведения onTurn(TurnContext turnContext).

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

Действие, которое соответствует реакции сообщения, указано в свойстве replyToId. Значение этого свойства — это идентификатор действия ранее отправленного действия, возвращаемого боту в качестве ответа от вызова отправки.

Когда метод onTurn(TurnContext turnContext) получает действие реакции сообщения, он вызывает этот метод. Если реакция сообщения указывает на то, что реакции были добавлены в сообщение, он вызывает onReactionsAdded(List<MessageReaction> messageReactions, TurnContext turnContext). Если реакция сообщения указывает на то, что реакции были удалены из сообщения, он вызывает onReactionsRemoved(List<MessageReaction> messageReactions, TurnContext turnContext).

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

Параметры:

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

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

Задача, представляющая выполняемую рабочую очередь.

onReactionsAdded

protected CompletableFuture onReactionsAdded(List messageReactions, TurnContext turnContext)

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

Реакции на сообщения соответствуют пользователю, добавляя "нравится" или "грустный" и т. д. (часто эмодзи) в ранее отправленное сообщение в беседе. Реакции на сообщения поддерживаются только несколькими каналами. Действие, на которое сообщение реагирует, определяется свойством Activity#getReplyToId() действия. Значение этого свойства — это идентификатор действия ранее отправленного действия. Когда бот отправляет действие, канал назначает ему идентификатор, который доступен в com.microsoft.bot.schema.ResourceResponse#getId результата.

Параметры:

messageReactions - Добавлен список реакций.
turnContext - Объект контекста для этого поворота.

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

Задача, представляющая выполняемую рабочую очередь.

onReactionsRemoved

protected CompletableFuture onReactionsRemoved(List messageReactions, TurnContext turnContext)

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

Реакции на сообщения соответствуют пользователю, добавляя "нравится" или "грустный" и т. д. (часто эмодзи) в ранее отправленное сообщение в беседе. Реакции на сообщения поддерживаются только несколькими каналами. Действие, на которое сообщение реагирует, определяется свойством Activity#getReplyToId() действия. Значение этого свойства — это идентификатор действия ранее отправленного действия. Когда бот отправляет действие, канал назначает ему идентификатор, который доступен в com.microsoft.bot.schema.ResourceResponse#getId результата.

Параметры:

messageReactions - Список реакций удален.
turnContext - Объект контекста для этого поворота.

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

Задача, представляющая выполняемую рабочую очередь.

onSignInInvoke

protected CompletableFuture onSignInInvoke(TurnContext turnContext)

Вызывается при получении события signin/verifyState или signin/tokenExchange, когда используется базовое поведение onInvokeActivity.

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

Когда метод onInvokeActivity получает вызов с именем token/response, он вызывает этот метод.

Если бот использует OAuthPrompt, перенаправьте входящее действие в текущее диалоговое окно.

Параметры:

turnContext - Текущий turnContext.

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

Задача, представляющая выполняемую рабочую очередь.

onTokenResponseEvent

protected CompletableFuture onTokenResponseEvent(TurnContext turnContext)

Вызывается при получении события "token/response" при использовании базового поведения onEventActivity(TurnContext turnContext).

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

По умолчанию этот метод ничего не делает.

Когда метод onEventActivity(TurnContext turnContext) получает событие с Activity#getName() "token/response", он вызывает этот метод.

Параметры:

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

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

Задача, представляющая выполняемую рабочую очередь.

onTurn

public CompletableFuture onTurn(TurnContext turnContext)

Вызывается адаптером (например, BotFrameworkAdapter) во время выполнения для обработки входящего Activity.

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

В производном классе переопределите этот метод, чтобы добавить логику, которая применяется ко всем типам действий. Добавьте логику, применяемую перед логикой для конкретного типа перед вызовом метода базового класса onTurn(TurnContext turnContext). Добавьте логику, применяемую после логики для конкретного типа после вызова метода базового класса onTurn(TurnContext turnContext).

Параметры:

turnContext - Объект контекста для этого поворота. Предоставляет сведения о входящем действии и других данных, необходимых для обработки действия.

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

Задача, представляющая выполняемую рабочую очередь.

onTypingActivity

protected CompletableFuture onTypingActivity(TurnContext turnContext)

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

Параметры:

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

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

Задача, представляющая выполняемую рабочую очередь.

onUnrecognizedActivityType

protected CompletableFuture onUnrecognizedActivityType(TurnContext turnContext)

Вызывается при получении действия, отличного от сообщения, обновления беседы или события при использовании базового поведения onTurn(TurnContext turnContext).

При переопределении это может реагировать на любой из других типов действий, таких как com.microsoft.bot.schema.ActivityTypes#CONTACT_RELATION_UPDATE или com.microsoft.bot.schema.ActivityTypes#END_OF_CONVERSATION.

По умолчанию этот метод ничего не делает.

Когда метод onTurn(TurnContext turnContext) получает действие, которое не является сообщением, обновлением беседы, реакцией сообщения или действием события, он вызывает этот метод.

Параметры:

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

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

Задача, представляющая выполняемую рабочую очередь.

Применяется к