共用方式為


ActivityHandler 類別

定義

介面的實作 IBot ,用於進一步的子類別化。

public class ActivityHandler : Microsoft.Bot.Builder.IBot
type ActivityHandler = class
    interface IBot
Public Class ActivityHandler
Implements IBot
繼承
ActivityHandler
衍生
實作

備註

衍生自這個類別,以插入程式碼來處理特定活動類型。 從衍生類別呼叫基類實作,即可新增物件的前置和後置處理 Activity

建構函式

ActivityHandler()

介面的實作 IBot ,用於進一步的子類別化。

方法

CreateInvokeResponse(Object)

InvokeResponse 主體初始化為傳遞的參數且狀態等於 OK 的處理站。

OnAdaptiveCardInvokeAsync(ITurnContext<IInvokeActivity>, AdaptiveCardInvokeValue, CancellationToken)

當 Bot 傳送調適型卡片動作執行時叫用。

OnCommandActivityAsync(ITurnContext<ICommandActivity>, CancellationToken)

使用 的基底行為 OnTurnAsync(ITurnContext, CancellationToken) 時收到命令活動時叫用。 命令是執行動作的要求,而接收者通常會以一或多個 commandResult 活動回應。 接收者也應該明確拒絕不支援的命令活動。

OnCommandResultActivityAsync(ITurnContext<ICommandResultActivity>, CancellationToken)

使用 的基底行為 OnTurnAsync(ITurnContext, CancellationToken) 時收到 CommandResult 活動時叫用。 CommandResult 活動可用來傳達命令執行的結果。

OnConversationUpdateActivityAsync(ITurnContext<IConversationUpdateActivity>, CancellationToken)

使用 的基底行為 OnTurnAsync(ITurnContext, CancellationToken) 時,從通道接收交談更新活動時叫用。 交談更新活動在回應要新增或從交談中移除的使用者時很有用。 例如,Bot 可以藉由問候使用者來回應要新增的使用者。 根據預設,如果已新增任何使用者,或 OnMembersRemovedAsync(IList<ChannelAccount>, ITurnContext<IConversationUpdateActivity>, CancellationToken) 已移除任何使用者,這個方法會呼叫 OnMembersAddedAsync(IList<ChannelAccount>, ITurnContext<IConversationUpdateActivity>, CancellationToken) 。 方法會檢查成員識別碼,使其只會回應 Bot 本身以外的成員的更新。

OnEndOfConversationActivityAsync(ITurnContext<IEndOfConversationActivity>, CancellationToken)

在衍生類別中覆寫此專案,以提供活動的特定 EndOfConversation 邏輯,例如交談式邏輯。

OnEventActivityAsync(ITurnContext<IEventActivity>, CancellationToken)

使用 的基底行為 OnTurnAsync(ITurnContext, CancellationToken) 時,從連接器接收事件活動時叫用。 事件活動可用來傳達許多不同的專案。 根據預設,如果活動的名稱為 tokens/responseOnEventAsync(ITurnContext<IEventActivity>, CancellationToken) ,這個方法會呼叫 OnTokenResponseEventAsync(ITurnContext<IEventActivity>, CancellationToken)tokens/response事件可由 觸發 OAuthCard

OnEventAsync(ITurnContext<IEventActivity>, CancellationToken)

使用 的基底行為 OnEventActivityAsync(ITurnContext<IEventActivity>, CancellationToken) 時,收到 以外的 tokens/response 事件時叫用。 如果 Bot 是要處理其他事件,可以選擇性地覆寫這個方法。 根據預設,此方法不會執行任何動作。

OnInstallationUpdateActivityAsync(ITurnContext<IInstallationUpdateActivity>, CancellationToken)

在衍生類別中覆寫此專案,以提供活動 InstallationUpdate 特定的邏輯。

OnInstallationUpdateAddAsync(ITurnContext<IInstallationUpdateActivity>, CancellationToken)

在衍生類別中覆寫此專案,以提供 'action' 設定為 'add' 之活動的特定 InstallationUpdate 邏輯。

OnInstallationUpdateRemoveAsync(ITurnContext<IInstallationUpdateActivity>, CancellationToken)

覆寫衍生類別中的這個 ,以提供 'action' 設為 'remove' 之 InstallationUpdate 活動的特定邏輯。

OnInvokeActivityAsync(ITurnContext<IInvokeActivity>, CancellationToken)

使用 的基底行為 OnTurnAsync(ITurnContext, CancellationToken) 時,從連接器接收叫用活動時叫用。 叫用活動可用來傳達許多不同的專案。 根據預設,如果活動的名稱為 signin/verifyStatesignin/tokenExchange ,這個方法會呼叫 OnSignInInvokeAsync(ITurnContext<IInvokeActivity>, CancellationToken)signin/verifyStatesignin/tokenExchange 叫用可由 觸發 OAuthCard

OnMembersAddedAsync(IList<ChannelAccount>, ITurnContext<IConversationUpdateActivity>, CancellationToken)

在衍生類別中覆寫此專案,以在 Bot 加入交談的成員時提供邏輯,例如 Bot 的歡迎邏輯。

OnMembersRemovedAsync(IList<ChannelAccount>, ITurnContext<IConversationUpdateActivity>, CancellationToken)

在衍生類別中覆寫此專案,以在 Bot 以外的成員離開交談時提供邏輯,例如 Bot 的良好依據邏輯。

OnMessageActivityAsync(ITurnContext<IMessageActivity>, CancellationToken)

在衍生類別中覆寫此專案,以提供活動的特定 Message 邏輯,例如交談式邏輯。

OnMessageReactionActivityAsync(ITurnContext<IMessageReactionActivity>, CancellationToken)

使用 的基底行為 OnTurnAsync(ITurnContext, CancellationToken) 時,從連接器接收事件活動時叫用。 訊息反應會對應至使用者新增 'like' 或 'sad' 等。 (通常會將 emoji) 到先前傳送的活動。 只有少數通道才支援訊息反應。 訊息反應對應的活動會在 replyToId 屬性中指出。 此屬性的值是先前傳回給 Bot 的活動活動識別碼,作為來自傳送呼叫的回應。

OnReactionsAddedAsync(IList<MessageReaction>, ITurnContext<IMessageReactionActivity>, CancellationToken)

在衍生類別中覆寫此專案,以提供先前活動回應新增至交談時的邏輯。

OnReactionsRemovedAsync(IList<MessageReaction>, ITurnContext<IMessageReactionActivity>, CancellationToken)

在衍生類別中覆寫此專案,以提供從交談中移除先前活動回應時的邏輯。

OnSearchInvokeAsync(ITurnContext<IInvokeActivity>, SearchInvokeValue, CancellationToken)

在傳送具有 'application/search' 名稱的「叫用」活動時叫用 Bot。

OnSignInInvokeAsync(ITurnContext<IInvokeActivity>, CancellationToken)

使用 的基底行為 OnInvokeActivityAsync(ITurnContext<IInvokeActivity>, CancellationToken)signin/verifyState ,會在 收到 或 signin/tokenExchange 事件時叫用。 如果使用 OAuthPrompt ,請覆寫這個方法,將此 Activity 轉送至目前的對話方塊。 根據預設,此方法不會執行任何動作。

OnTokenResponseEventAsync(ITurnContext<IEventActivity>, CancellationToken)

使用 的基底行為 OnEventActivityAsync(ITurnContext<IEventActivity>, CancellationToken)tokens/response 收到事件時叫用。 如果使用 OAuthPrompt ,請覆寫這個方法,將此 Activity 轉送至目前的對話方塊。 根據預設,此方法不會執行任何動作。

OnTurnAsync(ITurnContext, CancellationToken)

例如,配接器 (呼叫的 BotFrameworkAdapter 執行時間) ,以便處理輸入 Activity

OnTypingActivityAsync(ITurnContext<ITypingActivity>, CancellationToken)

在衍生類別中覆寫此專案,以提供活動的特定 Typing 邏輯,例如交談式邏輯。

OnUnrecognizedActivityTypeAsync(ITurnContext, CancellationToken)

使用 的基底行為 OnTurnAsync(ITurnContext, CancellationToken) 時,收到訊息、交談更新或事件以外的活動時叫用。 如果覆寫,這可能會回應任何其他活動類型,例如 ContactRelationUpdateEndOfConversation 。 根據預設,此方法不會執行任何動作。

適用於