ActivityHandler 類別
處理活動,且應該進行子類別化。
建構函式
ActivityHandler()
備註
衍生自這個類別以處理特定活動類型。 Yon 可以藉由呼叫衍生類別中的基類,來新增活動的前置和後置處理。
方法
| on_adaptive_card_invoke |
當 Bot 傳送調適型卡片動作執行時叫用。 當on_invoke_activity方法收到 Invoke,且 Activity.name adaptiveCard/action時,它會呼叫此方法。 |
| on_conversation_update_activity |
使用 on_turn 基底行為時,從通道接收交談更新活動時叫用。 |
| on_end_of_conversation_activity |
從通道接收交談結束活動時叫用。 |
| on_event |
當使用 的基底行為時,收到 on_event_activity 以外的事件時叫用。 |
| on_event_activity |
使用 on_turn 基底行為時,從連接器接收事件活動時叫用。 |
| on_installation_update |
覆寫衍生類別中的這個 ,以提供 ActivityTypes.InstallationUpdate 活動特有的邏輯。 |
| on_installation_update_add |
覆寫衍生類別中的這個 ,以提供 ActivityTypes.InstallationUpdate 活動特有的邏輯,並將 'action' 設定為 'add'。 |
| on_installation_update_remove |
覆寫衍生類別中的這個 ,以提供 ActivityTypes.InstallationUpdate 活動特有的邏輯,並將 'action' 設定為 'remove'。 |
| on_invoke_activity |
註冊針對每個傳入事件活動活動發出之 叫用 事件的活動事件處理程式。 |
| on_members_added_activity |
覆寫衍生類別中的這個方法,以提供 Bot 加入交談以外的成員時的邏輯。 您可以新增 Bot 的歡迎邏輯。 交談更新活動 :type members_added:List :p aram turn_context:這個回合的內容物件:type turn_context:TurnContext |
| on_members_removed_activity |
覆寫衍生類別中的這個方法,以提供 Bot 以外的成員離開交談時的邏輯。 您可以新增 Bot 的良好邏輯。 交談更新活動 :type members_added:List :p aram turn_context:這個回合的內容物件:type turn_context:TurnContext |
| on_message_activity |
覆寫衍生類別中的這個方法,以提供活動的特定邏輯,例如交談邏輯。 |
| on_message_reaction_activity |
使用 on_turn 基底行為時,從連接器接收事件活動時叫用。 |
| on_reactions_added |
覆寫衍生類別中的這個方法,以在將先前活動的反應新增至交談時提供邏輯。 |
| on_reactions_removed |
覆寫衍生類別中的這個方法,以提供邏輯,以便從交談中移除對先前活動的反應。 |
| on_sign_in_invoke |
當使用 on_invoke_activity(TurnContext{InvokeActivity}) 的基本行為時,收到 signin/verifyState 或 signin/tokenExchange 事件時叫用。 如果使用 OAuthPrompt,請覆寫此方法,將這個活動」/ 轉送至目前的對話方塊。 根據預設,此方法不會執行任何動作。 |
| on_token_response_event |
使用 的基底行為時,收到 on_event_activity 事件時叫用。 如果使用 oauth_prompt,請覆寫此方法,將此活動轉送至目前的對話方塊。 |
| on_turn |
在執行時間由配接器呼叫(例如,<xref:botbuilder.core.activity_handler.BotFrameworkAdapter>),以處理輸入 Activity。 |
| on_typing_activity |
覆寫衍生類別中的這個 ,以提供 ActivityTypes.typing 活動特有的邏輯,例如交談邏輯。 |
| on_unrecognized_activity_type |
使用 on_turn 基底行為時,收到訊息、交談更新或事件以外的活動時叫用。 如果覆寫,這個方法可能會回應任何其他活動類型。 |
on_adaptive_card_invoke
當 Bot 傳送調適型卡片動作執行時叫用。
當on_invoke_activity方法收到 Invoke,且 Activity.name adaptiveCard/action時,它會呼叫此方法。
async on_adaptive_card_invoke(turn_context: TurnContext, invoke_value: AdaptiveCardInvokeValue) -> AdaptiveCardInvokeResponse
參數
| 名稱 | Description |
|---|---|
|
turn_context
必要
|
這個回合的內容物件。 |
|
invoke_value
必要
|
<xref:botframework.schema.models.AdaptiveCardInvokeValue>
來自傳入活動值的字串型別物件。 |
傳回
| 類型 | Description |
|---|---|
|
HealthCheckResponse 物件 |
on_conversation_update_activity
使用 on_turn 基底行為時,從通道接收交談更新活動時叫用。
async on_conversation_update_activity(turn_context: TurnContext)
參數
| 名稱 | Description |
|---|---|
|
turn_context
必要
|
這個回合的內容物件 |
傳回
| 類型 | Description |
|---|---|
|
工作,表示要執行的工作排入佇列 |
備註
當 on_turn 方法收到交談更新活動時,它會呼叫此方法。 也
- 如果交談更新活動指出 Bot 以外的成員已加入交談,則會呼叫 on_members_added_activity 方法。
- 如果交談更新活動指出 Bot 以外的成員離開交談,則會呼叫 on_members_removed_activity 方法。
- 在衍生類別中,覆寫此方法以新增套用至所有交談更新活動的邏輯。 在呼叫這個基類方法之前,新增要套用的成員之前所要套用的邏輯。
on_end_of_conversation_activity
從通道接收交談結束活動時叫用。
async on_end_of_conversation_activity(turn_context: TurnContext)
參數
| 名稱 | Description |
|---|---|
|
turn_context
必要
|
這個回合的內容物件 |
傳回
| 類型 | Description |
|---|---|
|
工作,表示要執行的工作排入佇列 |
on_event
當使用 的基底行為時,收到 on_event_activity 以外的事件時叫用。
async on_event(turn_context: TurnContext)
參數
| 名稱 | Description |
|---|---|
|
turn_context
必要
|
這個回合的內容物件 |
傳回
| 類型 | Description |
|---|---|
|
工作,表示要執行的工作排入佇列 |
備註
使用 on_event_activity 方法時,會使用活動名稱以外的活動名稱 token/response,它會呼叫此方法。 如果 Bot 是要處理其他事件,可以選擇性地覆寫這個方法。
on_event_activity
使用 on_turn 基底行為時,從連接器接收事件活動時叫用。
async on_event_activity(turn_context: TurnContext)
參數
| 名稱 | Description |
|---|---|
|
turn_context
必要
|
這個回合的內容物件 |
傳回
| 類型 | Description |
|---|---|
|
工作,表示要執行的工作排入佇列 |
備註
當 on_turn 方法收到事件活動時,它會呼叫此方法。 如果活動名稱是 token/response,則會呼叫 on_token_response_event;否則,它會呼叫 on_event。
在衍生類別中,覆寫此方法以新增適用於所有事件活動的邏輯。 在呼叫這個基類方法之前,新增要套用至特定事件處理邏輯的邏輯。 在呼叫這個基類方法之後,新增要套用的特定事件處理邏輯。
事件活動會將程式設計資訊從用戶端或通道傳達給 Bot。 事件活動的意義是由事件活動名稱屬性所定義,此屬性在通道範圍內有意義。
on_installation_update
覆寫衍生類別中的這個 ,以提供 ActivityTypes.InstallationUpdate 活動特有的邏輯。
async on_installation_update(turn_context: TurnContext)
參數
| 名稱 | Description |
|---|---|
|
turn_context
必要
|
這個回合的內容物件 |
傳回
| 類型 | Description |
|---|---|
|
工作,表示要執行的工作排入佇列 |
on_installation_update_add
覆寫衍生類別中的這個 ,以提供 ActivityTypes.InstallationUpdate 活動特有的邏輯,並將 'action' 設定為 'add'。
async on_installation_update_add(turn_context: TurnContext)
參數
| 名稱 | Description |
|---|---|
|
turn_context
必要
|
這個回合的內容物件 |
傳回
| 類型 | Description |
|---|---|
|
工作,表示要執行的工作排入佇列 |
on_installation_update_remove
覆寫衍生類別中的這個 ,以提供 ActivityTypes.InstallationUpdate 活動特有的邏輯,並將 'action' 設定為 'remove'。
async on_installation_update_remove(turn_context: TurnContext)
參數
| 名稱 | Description |
|---|---|
|
turn_context
必要
|
這個回合的內容物件 |
傳回
| 類型 | Description |
|---|---|
|
工作,表示要執行的工作排入佇列 |
on_invoke_activity
註冊針對每個傳入事件活動活動發出之 叫用 事件的活動事件處理程式。
async on_invoke_activity(turn_context: TurnContext) -> InvokeResponse | None
參數
| 名稱 | Description |
|---|---|
|
turn_context
必要
|
這個回合的內容物件 |
傳回
| 類型 | Description |
|---|---|
|
工作,表示要執行的工作排入佇列 |
on_members_added_activity
覆寫衍生類別中的這個方法,以提供 Bot 加入交談以外的成員時的邏輯。 您可以新增 Bot 的歡迎邏輯。
交談更新活動 :type members_added:List :p aram turn_context:這個回合的內容物件:type turn_context:TurnContext
async on_members_added_activity(members_added: List[ChannelAccount], turn_context: TurnContext)
參數
| 名稱 | Description |
|---|---|
|
members_added
必要
|
|
|
turn_context
必要
|
|
傳回
| 類型 | Description |
|---|---|
|
工作,表示要執行的工作排入佇列 |
備註
當 on_conversation_update_activity 方法收到交談更新活動,指出 Bot 以外的一或多個使用者正在加入交談時,它會呼叫此方法。
on_members_removed_activity
覆寫衍生類別中的這個方法,以提供 Bot 以外的成員離開交談時的邏輯。 您可以新增 Bot 的良好邏輯。
交談更新活動 :type members_added:List :p aram turn_context:這個回合的內容物件:type turn_context:TurnContext
async on_members_removed_activity(members_removed: List[ChannelAccount], turn_context: TurnContext)
參數
| 名稱 | Description |
|---|---|
|
members_removed
必要
|
|
|
turn_context
必要
|
|
傳回
| 類型 | Description |
|---|---|
|
工作,表示要執行的工作排入佇列 |
備註
當 on_conversation_update_activity 方法收到交談更新活動,指出 Bot 以外的一或多個使用者離開交談時,它會呼叫此方法。
on_message_activity
覆寫衍生類別中的這個方法,以提供活動的特定邏輯,例如交談邏輯。
async on_message_activity(turn_context: TurnContext)
參數
| 名稱 | Description |
|---|---|
|
turn_context
必要
|
這個回合的內容物件 |
傳回
| 類型 | Description |
|---|---|
|
工作,表示要執行的工作排入佇列 |
on_message_reaction_activity
使用 on_turn 基底行為時,從連接器接收事件活動時叫用。
async on_message_reaction_activity(turn_context: TurnContext)
參數
| 名稱 | Description |
|---|---|
|
turn_context
必要
|
這個回合的內容物件 |
傳回
| 類型 | Description |
|---|---|
|
工作,表示要執行的工作排入佇列 |
備註
訊息反應會對應至使用者,將「讚」或「悲傷」等(通常是表情符號)新增至先前傳送的活動。
只有少數通道支援訊息反應。 訊息反應所對應的活動會在回復 Id 屬性中指出。 這個屬性的值是先前傳回給 Bot 的活動活動標識碼,做為來自傳送呼叫的回應。 當 on_turn 方法收到訊息反應活動時,它會呼叫此方法。
- 如果訊息反應指出已將回應新增至訊息,則會呼叫
<xref:botbuilder.core.activity_handler.ActivityHandler.on_reaction_added>。
- 如果訊息反應指出已從訊息中移除回應,則會呼叫 <xref:botbuilder.core.activity_handler.ActivityHandler.on_reaction_removed>。
在衍生類別中,覆寫此方法以新增套用至所有訊息反應活動的邏輯。 新增邏輯以在呼叫這個基類方法之前新增或移除回應之前套用邏輯。 新增邏輯,以在呼叫這個基類方法之後新增或移除響應之後套用的邏輯。
on_reactions_added
覆寫衍生類別中的這個方法,以在將先前活動的反應新增至交談時提供邏輯。
async on_reactions_added(message_reactions: List[MessageReaction], turn_context: TurnContext)
參數
| 名稱 | Description |
|---|---|
|
message_reactions
必要
|
新增的反應清單 |
|
turn_context
必要
|
這個回合的內容物件 |
傳回
| 類型 | Description |
|---|---|
|
工作,表示要執行的工作排入佇列 |
備註
訊息反應會對應至使用者將「喜歡」或「悲傷」等(通常是表情符號)新增至先前在交談中傳送的訊息。 只有少數通道支援訊息反應。 訊息回應的活動是由活動的ID屬性所識別。 這個屬性的值是先前傳送之活動的活動標識碼。 當 Bot 傳送活動時,通道會將識別碼指派給它,該標識碼可在結果的資源響應標識碼中取得。
on_reactions_removed
覆寫衍生類別中的這個方法,以提供邏輯,以便從交談中移除對先前活動的反應。
async on_reactions_removed(message_reactions: List[MessageReaction], turn_context: TurnContext)
參數
| 名稱 | Description |
|---|---|
|
message_reactions
必要
|
已移除的反應清單 |
|
turn_context
必要
|
這個回合的內容物件 |
傳回
| 類型 | Description |
|---|---|
|
工作,表示要執行的工作排入佇列 |
備註
訊息反應會對應至使用者將「喜歡」或「悲傷」等(通常是表情符號)新增至先前在交談中傳送的訊息。 只有少數通道支援訊息反應。 活動回復Id屬性會識別訊息所回應的活動。 這個屬性的值是先前傳送之活動的活動標識碼。 當 Bot 傳送活動時,通道會將識別碼指派給它,該標識碼可在結果的資源響應標識碼中取得。
on_sign_in_invoke
當使用 on_invoke_activity(TurnContext{InvokeActivity}) 的基本行為時,收到 signin/verifyState 或 signin/tokenExchange 事件時叫用。 如果使用 OAuthPrompt,請覆寫此方法,將這個活動」/ 轉送至目前的對話方塊。 根據預設,此方法不會執行任何動作。
async on_sign_in_invoke(turn_context: TurnContext)
參數
| 名稱 | Description |
|---|---|
|
turn_context
必要
|
這個回合的內容物件 |
傳回
| 類型 | Description |
|---|---|
|
工作,表示要執行的工作排入佇列 |
on_token_response_event
使用 的基底行為時,收到 on_event_activity 事件時叫用。 如果使用 oauth_prompt,請覆寫此方法,將此活動轉送至目前的對話方塊。
async on_token_response_event(turn_context: TurnContext)
參數
| 名稱 | Description |
|---|---|
|
turn_context
必要
|
這個回合的內容物件 |
傳回
| 類型 | Description |
|---|---|
|
工作,表示要執行的工作排入佇列 |
備註
當 on_event 方法收到活動名稱為 token/response的事件時,它會呼叫此方法。 如果您的 Bot 使用 oauth_prompt,請將傳入活動轉送至目前的對話方塊。
on_turn
在執行時間由配接器呼叫(例如,<xref:botbuilder.core.activity_handler.BotFrameworkAdapter>),以處理輸入 Activity。
async on_turn(turn_context: TurnContext)
參數
| 名稱 | Description |
|---|---|
|
turn_context
必要
|
這個回合的內容物件 |
傳回
| 類型 | Description |
|---|---|
|
工作,表示要執行的工作排入佇列 |
備註
它會根據要處理的活動類型呼叫此類別中的其他方法,讓衍生類別能夠以受控制的方式提供特定類型的邏輯。 在衍生類別中,覆寫此方法以新增適用於所有活動類型的邏輯。 也
on_typing_activity
覆寫衍生類別中的這個 ,以提供 ActivityTypes.typing 活動特有的邏輯,例如交談邏輯。
async on_typing_activity(turn_context: TurnContext)
參數
| 名稱 | Description |
|---|---|
|
turn_context
必要
|
這個回合的內容物件 |
傳回
| 類型 | Description |
|---|---|
|
工作,表示要執行的工作排入佇列 |