ActivityHandler 类
处理活动,应进行子类化。
构造函数
ActivityHandler()
注解
派生自此类以处理特定活动类型。 Yon 可以通过调用派生类中的基类来添加活动的预处理和后期处理。
方法
| on_adaptive_card_invoke |
当机器人发送自适应卡片作执行时调用。 当 on_invoke_activity 方法收到具有 adaptiveCard/actionActivity.name 的 Invoke 时,它将调用此方法。 |
| 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 |
重写派生类中的此方法,以便在机器人加入聊天以外的成员时提供逻辑。 可以添加机器人的欢迎逻辑。 对话更新活动 :type members_added:List :p aram turn_context:此轮次的上下文对象:type turn_context:TurnContext |
| on_members_removed_activity |
重写派生类中的此方法,以便在机器人离开聊天以外的成员时提供逻辑。 可以添加机器人的良好逻辑。 对话更新活动 :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.type 活动的逻辑,例如聊天逻辑。 |
| on_unrecognized_activity_type |
使用 on_turn 的基本行为时,在收到消息、会话更新或事件以外的活动时调用。 如果重写,此方法可能会响应任何其他活动类型。 |
on_adaptive_card_invoke
当机器人发送自适应卡片作执行时调用。
当 on_invoke_activity 方法收到具有 adaptiveCard/actionActivity.name 的 Invoke 时,它将调用此方法。
async on_adaptive_card_invoke(turn_context: TurnContext, invoke_value: AdaptiveCardInvokeValue) -> AdaptiveCardInvokeResponse
参数
| 名称 | 说明 |
|---|---|
|
turn_context
必需
|
此轮次的上下文对象。 |
|
invoke_value
必需
|
<xref:botframework.schema.models.AdaptiveCardInvokeValue>
传入活动值中的字符串类型对象。 |
返回
| 类型 | 说明 |
|---|---|
|
HealthCheckResponse 对象 |
on_conversation_update_activity
使用 on_turn 的基本行为时,从通道接收会话更新活动时调用。
async on_conversation_update_activity(turn_context: TurnContext)
参数
| 名称 | 说明 |
|---|---|
|
turn_context
必需
|
此轮次的上下文对象 |
返回
| 类型 | 说明 |
|---|---|
|
表示要执行的工作的任务 |
注解
当 on_turn 方法收到会话更新活动时,它将调用此方法。 也
- 如果聊天更新活动指示机器人以外的成员加入会话,则调用 on_members_added_activity 方法。
- 如果聊天更新活动指示机器人以外的成员离开会话,则调用 on_members_removed_activity 方法。
- 在派生类中,重写此方法以添加应用于所有聊天更新活动的逻辑。 在调用此基类方法之前添加要应用的成员或移除逻辑之前要应用的逻辑。
on_end_of_conversation_activity
从通道接收会话结束活动时调用。
async on_end_of_conversation_activity(turn_context: TurnContext)
参数
| 名称 | 说明 |
|---|---|
|
turn_context
必需
|
此轮次的上下文对象 |
返回
| 类型 | 说明 |
|---|---|
|
表示要执行的工作的任务 |
on_event
在使用 的基本行为时,当收到非 on_event_activity 的事件时调用。
async on_event(turn_context: TurnContext)
参数
| 名称 | 说明 |
|---|---|
|
turn_context
必需
|
此轮次的上下文对象 |
返回
| 类型 | 说明 |
|---|---|
|
表示要执行的工作的任务 |
注解
当使用 on_event_activity 方法接收除 令牌/响应以外的活动名称的事件时,它将调用此方法。 如果机器人旨在处理杂项事件,则可以选择性地重写此方法。
on_event_activity
使用 on_turn 的基本行为时,从连接器接收事件活动时调用。
async on_event_activity(turn_context: TurnContext)
参数
| 名称 | 说明 |
|---|---|
|
turn_context
必需
|
此轮次的上下文对象 |
返回
| 类型 | 说明 |
|---|---|
|
表示要执行的工作的任务 |
注解
当 on_turn 方法收到事件活动时,它将调用此方法。 如果活动名称 令牌/响应,则调用 on_token_response_event;否则,它将调用 on_event。
在派生类中,重写此方法以添加应用于所有事件活动的逻辑。 在调用此基类方法之前,在特定的事件处理逻辑之前添加要应用的逻辑。 在调用此基类方法后,添加要应用于特定事件处理逻辑的逻辑。
事件活动将来自客户端或通道的编程信息传达给机器人。 事件活动的含义由事件活动名称属性定义,该属性在通道范围内有意义。
on_installation_update
重写派生类中的此项,以提供特定于 ActivityTypes.InstallationUpdate 活动的逻辑。
async on_installation_update(turn_context: TurnContext)
参数
| 名称 | 说明 |
|---|---|
|
turn_context
必需
|
此轮次的上下文对象 |
返回
| 类型 | 说明 |
|---|---|
|
表示要执行的工作的任务 |
on_installation_update_add
重写派生类中的此项,以提供特定于 ActivityTypes.InstallationUpdate 活动的逻辑,将“action”设置为“add”。
async on_installation_update_add(turn_context: TurnContext)
参数
| 名称 | 说明 |
|---|---|
|
turn_context
必需
|
此轮次的上下文对象 |
返回
| 类型 | 说明 |
|---|---|
|
表示要执行的工作的任务 |
on_installation_update_remove
重写派生类中的此项,以提供特定于 ActivityTypes.InstallationUpdate 活动的逻辑,将“action”设置为“remove”。
async on_installation_update_remove(turn_context: TurnContext)
参数
| 名称 | 说明 |
|---|---|
|
turn_context
必需
|
此轮次的上下文对象 |
返回
| 类型 | 说明 |
|---|---|
|
表示要执行的工作的任务 |
on_invoke_activity
为 调用 事件注册活动事件处理程序,该事件针对每个传入事件活动发出。
async on_invoke_activity(turn_context: TurnContext) -> InvokeResponse | None
参数
| 名称 | 说明 |
|---|---|
|
turn_context
必需
|
此轮次的上下文对象 |
返回
| 类型 | 说明 |
|---|---|
|
表示要执行的工作的任务 |
on_members_added_activity
重写派生类中的此方法,以便在机器人加入聊天以外的成员时提供逻辑。 可以添加机器人的欢迎逻辑。
对话更新活动 :type members_added:List :p aram turn_context:此轮次的上下文对象:type turn_context:TurnContext
async on_members_added_activity(members_added: List[ChannelAccount], turn_context: TurnContext)
参数
| 名称 | 说明 |
|---|---|
|
members_added
必需
|
|
|
turn_context
必需
|
|
返回
| 类型 | 说明 |
|---|---|
|
表示要执行的工作的任务 |
注解
当 on_conversation_update_activity 方法收到一个会话更新活动,该活动指示机器人以外的一个或多个用户正在加入聊天时,它将调用此方法。
on_members_removed_activity
重写派生类中的此方法,以便在机器人离开聊天以外的成员时提供逻辑。 可以添加机器人的良好逻辑。
对话更新活动 :type members_added:List :p aram turn_context:此轮次的上下文对象:type turn_context:TurnContext
async on_members_removed_activity(members_removed: List[ChannelAccount], turn_context: TurnContext)
参数
| 名称 | 说明 |
|---|---|
|
members_removed
必需
|
|
|
turn_context
必需
|
|
返回
| 类型 | 说明 |
|---|---|
|
表示要执行的工作的任务 |
注解
当 on_conversation_update_activity 方法收到会话更新活动,该活动指示机器人离开聊天以外的一个或多个用户时,它将调用此方法。
on_message_activity
重写派生类中的此方法,以提供特定于活动(如聊天逻辑)的逻辑。
async on_message_activity(turn_context: TurnContext)
参数
| 名称 | 说明 |
|---|---|
|
turn_context
必需
|
此轮次的上下文对象 |
返回
| 类型 | 说明 |
|---|---|
|
表示要执行的工作的任务 |
on_message_reaction_activity
使用 on_turn 的基本行为时,从连接器接收事件活动时调用。
async on_message_reaction_activity(turn_context: TurnContext)
参数
| 名称 | 说明 |
|---|---|
|
turn_context
必需
|
此轮次的上下文对象 |
返回
| 类型 | 说明 |
|---|---|
|
表示要执行的工作的任务 |
注解
消息反应对应于将“like”或“sad”等(通常为表情符号)添加到以前发送的活动的用户。
消息反应仅受一些通道支持。 消息响应对应于的活动在回复 Id 属性中指示。 此属性的值是以前发送的活动的活动 ID,作为发送调用的响应返回给机器人。 当 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)
参数
| 名称 | 说明 |
|---|---|
|
message_reactions
必需
|
添加的反应列表 |
|
turn_context
必需
|
此轮次的上下文对象 |
返回
| 类型 | 说明 |
|---|---|
|
表示要执行的工作的任务 |
注解
消息反应对应于将“赞”或“悲伤”等(通常为表情符号)添加到对话中之前发送的消息。 消息反应仅支持几个通道。 消息响应的活动由活动的 ID 属性的回复标识。 此属性的值是以前发送的活动的活动 ID。 当机器人发送活动时,通道会向其分配 ID,该 ID 在结果的资源响应 ID 中可用。
on_reactions_removed
重写派生类中的此方法,以提供逻辑,以便在从会话中删除对上一活动的反应时。
async on_reactions_removed(message_reactions: List[MessageReaction], turn_context: TurnContext)
参数
| 名称 | 说明 |
|---|---|
|
message_reactions
必需
|
已删除的反应列表 |
|
turn_context
必需
|
此轮次的上下文对象 |
返回
| 类型 | 说明 |
|---|---|
|
表示要执行的工作的任务 |
注解
消息反应对应于将“赞”或“悲伤”等(通常为表情符号)添加到对话中之前发送的消息。 消息反应仅支持几个通道。 消息响应的活动由活动的对 Id 属性的回复标识。 此属性的值是以前发送的活动的活动 ID。 当机器人发送活动时,通道会向其分配 ID,该 ID 在结果的资源响应 ID 中可用。
on_sign_in_invoke
在使用 on_invoke_activity(TurnContext{InvokeActivity})的基本行为时,在收到 signin/verifyState 或 signin/tokenExchange 事件时调用。 如果使用 OAuthPrompt,请重写此方法以将此活动转发到当前对话框。 默认情况下,此方法不执行任何作。
async on_sign_in_invoke(turn_context: TurnContext)
参数
| 名称 | 说明 |
|---|---|
|
turn_context
必需
|
此轮次的上下文对象 |
返回
| 类型 | 说明 |
|---|---|
|
表示要执行的工作的任务 |
on_token_response_event
在使用 的基本行为时收到 on_event_activity 事件时调用。 如果使用 oauth_prompt,请重写此方法以将此活动转发到当前对话框。
async on_token_response_event(turn_context: TurnContext)
参数
| 名称 | 说明 |
|---|---|
|
turn_context
必需
|
此轮次的上下文对象 |
返回
| 类型 | 说明 |
|---|---|
|
表示要执行的工作的任务 |
注解
当 on_event 方法收到活动名称为 令牌/响应的事件时,它将调用此方法。 如果机器人使用 oauth_prompt,请将传入活动转发到当前对话框。
on_turn
适配器(例如,<xref:botbuilder.core.activity_handler.BotFrameworkAdapter>)在运行时调用,以处理入站 Activity。
async on_turn(turn_context: TurnContext)
参数
| 名称 | 说明 |
|---|---|
|
turn_context
必需
|
此轮次的上下文对象 |
返回
| 类型 | 说明 |
|---|---|
|
表示要执行的工作的任务 |
注解
它基于要处理的活动的类型调用此类中的其他方法,从而允许派生类以受控方式提供特定于类型的逻辑。 在派生类中,重写此方法以添加适用于所有活动类型的逻辑。 也
on_typing_activity
重写派生类中的此项,以提供特定于 ActivityTypes.type 活动的逻辑,例如聊天逻辑。
async on_typing_activity(turn_context: TurnContext)
参数
| 名称 | 说明 |
|---|---|
|
turn_context
必需
|
此轮次的上下文对象 |
返回
| 类型 | 说明 |
|---|---|
|
表示要执行的工作的任务 |