Activity 类
活动是 Bot Framework 3.0 协议的基本通信类型。
构造函数
Activity(*, type=None, id: str = None, timestamp=None, local_timestamp=None, local_timezone: str = None, service_url: str = None, channel_id: str = None, from_property=None, conversation=None, recipient=None, text_format=None, attachment_layout=None, members_added=None, members_removed=None, reactions_added=None, reactions_removed=None, topic_name: str = None, history_disclosed: bool = None, locale: str = None, text: str = None, speak: str = None, input_hint=None, summary: str = None, suggested_actions=None, attachments=None, entities=None, channel_data=None, action: str = None, reply_to_id: str = None, label: str = None, value_type: str = None, value=None, name: str = None, relates_to=None, code=None, expiration=None, importance=None, delivery_mode=None, listen_for=None, text_highlights=None, semantic_action=None, caller_id: str = None, **kwargs)
参数
| 名称 | 说明 |
|---|---|
|
type
必需
|
str 或
<xref:botframework.connector.models.ActivityTypes>
包含活动类型。 可能的值包括:“message”、“contactRelationUpdate”、“conversationUpdate”、“type”、“endOfConversation”、“event”、“invoke”、“deleteUserData”、“messageUpdate”、“messageDelete”、“installationUpdate”、“messageReaction”、“suggestion”、“trace”、“handoff” |
|
id
必需
|
包含唯一标识通道上的活动的 ID。 |
|
timestamp
必需
|
包含以 ISO-8601 格式表示的消息的日期和时间。 |
|
local_timestamp
必需
|
包含以 ISO-8601 格式表示的消息的本地日期和时间。 例如,2016-09-23T13:07:49.4714686-07:00。 |
|
local_timezone
必需
|
包含以 IANA 时区数据库格式表示的消息本地时区的名称。 例如,美国/Los_Angeles。 |
|
service_url
必需
|
包含指定通道的服务终结点的 URL。 由通道设置。 |
|
channel_id
必需
|
包含唯一标识通道的 ID。 由通道设置。 |
|
from_property
必需
|
<xref:botframework.connector.models.ChannelAccount>
标识邮件的发件人。 |
|
conversation
必需
|
<xref:botframework.connector.models.ConversationAccount>
标识活动所属的会话。 |
|
recipient
必需
|
<xref:botframework.connector.models.ChannelAccount>
标识邮件的收件人。 |
|
text_format
必需
|
str 或
<xref:botframework.connector.models.TextFormatTypes>
文本字段的格式默认值:markdown。 可能的值包括:“markdown”、“plain”、“xml” |
|
attachment_layout
必需
|
str 或
<xref:botframework.connector.models.AttachmentLayoutTypes>
多个附件的布局提示。 默认值:列表。 可能的值包括:“list”、“carousel” |
|
members_added
必需
|
list[<xref:botframework.connector.models.ChannelAccount>]
添加到会话的成员集合。 |
|
members_removed
必需
|
list[<xref:botframework.connector.models.ChannelAccount>]
从会话中删除的成员集合。 |
|
reactions_added
必需
|
list[<xref:botframework.connector.models.MessageReaction>]
添加到对话中的反应集合。 |
|
reactions_removed
必需
|
list[<xref:botframework.connector.models.MessageReaction>]
从对话中删除的反应集合。 |
|
topic_name
必需
|
会话的更新主题名称。 |
|
history_disclosed
必需
|
指示通道的先前历史记录是否被披露。 |
|
locale
必需
|
文本字段内容的区域设置名称。 区域设置名称是与语言关联的 ISO 639 双字母或三字母区域性代码和与国家或地区关联的 ISO 3166 双字母子文化代码的组合。 区域设置名称还可以对应于有效的 BCP-47 语言标记。 |
|
text
必需
|
消息的文本内容。 |
|
speak
必需
|
要说的文本。 |
|
input_hint
必需
|
str 或
<xref:botframework.connector.models.InputHints>
指示将消息传递到客户端后机器人是接受、期望还是忽略用户输入。 可能的值包括:“acceptingInput”、“ignoringInput”、“expectingInput” |
|
summary
必需
|
通道无法呈现卡片时要显示的文本。 |
|
suggested_actions
必需
|
<xref:botframework.connector.models.SuggestedActions>
活动的建议作。 |
|
attachments
必需
|
list[<xref:botframework.connector.models.Attachment>]
附件 |
|
entities
必需
|
list[<xref:botframework.connector.models.Entity>]
表示消息中提到的实体。 |
|
channel_data
必需
|
包含特定于通道的内容。 |
|
action
必需
|
指示是否已从发件人的联系人列表中添加或删除 contactRelationUpdate 的收件人。 |
|
reply_to_id
必需
|
包含此邮件作为答复的消息的 ID。 |
|
label
必需
|
活动的描述性标签。 |
|
value_type
必需
|
活动值对象的类型。 |
|
value
必需
|
与活动关联的值。 |
|
name
必需
|
与调用或事件活动关联的作的名称。 |
|
relates_to
必需
|
<xref:botframework.connector.models.ConversationReference>
对另一个对话或活动的引用。 |
|
code
必需
|
str 或
<xref:botframework.connector.models.EndOfConversationCodes>
endOfConversation 活动的代码,指示会话结束的原因。 可能的值包括:“unknown”、“completedSuccessfully”、“userCancelled”、“botTimedOut”、“botIssuedInvalidMessage”、“channelFailed” |
|
expiration
必需
|
活动被视为“已过期”的时间,不应提供给收件人。 |
|
importance
必需
|
str 或
<xref:botframework.connector.models.ActivityImportance>
活动的重要性。 可能的值包括:“low”、“normal”、“high” |
|
delivery_mode
必需
|
str 或
<xref:botframework.connector.models.DeliveryModes>
用于向收件人发出活动备用传递路径的信号的传递提示。 默认传递模式为“default”。 可能的值包括:“normal”、“notification”、“expectReplies”、“ephemeral” |
|
listen_for
必需
|
语音和语言启动系统应侦听的短语和引用列表 |
|
text_highlights
必需
|
list[<xref:botframework.connector.models.TextHighlight>]
活动包含 ReplyToId 值时要突出显示的文本片段集合。 |
|
semantic_action
必需
|
<xref:botframework.connector.models.SemanticAction>
此请求随附的可选编程作 |
|
caller_id
必需
|
包含标识机器人调用方 IRI 的字符串。 此字段不打算通过网络传输,而是由机器人和客户端根据断言调用方标识(例如令牌)的可加密验证数据填充。 |
仅限关键字的参数
| 名称 | 说明 |
|---|---|
|
type
必需
|
|
|
id
必需
|
|
|
timestamp
必需
|
|
|
local_timestamp
必需
|
|
|
local_timezone
必需
|
|
|
service_url
必需
|
|
|
channel_id
必需
|
|
|
from_property
必需
|
|
|
conversation
必需
|
|
|
recipient
必需
|
|
|
text_format
必需
|
|
|
attachment_layout
必需
|
|
|
members_added
必需
|
|
|
members_removed
必需
|
|
|
reactions_added
必需
|
|
|
reactions_removed
必需
|
|
|
topic_name
必需
|
|
|
history_disclosed
必需
|
|
|
locale
必需
|
|
|
text
必需
|
|
|
speak
必需
|
|
|
input_hint
必需
|
|
|
summary
必需
|
|
|
suggested_actions
必需
|
|
|
attachments
必需
|
|
|
entities
必需
|
|
|
channel_data
必需
|
|
|
action
必需
|
|
|
reply_to_id
必需
|
|
|
label
必需
|
|
|
value_type
必需
|
|
|
value
必需
|
|
|
name
必需
|
|
|
relates_to
必需
|
|
|
code
必需
|
|
|
expiration
必需
|
|
|
importance
必需
|
|
|
delivery_mode
必需
|
|
|
listen_for
必需
|
|
|
text_highlights
必需
|
|
|
semantic_action
必需
|
|
|
caller_id
必需
|
|
方法
| apply_conversation_reference |
使用现有 ConversationReference 中的传递信息更新此活动 传入活动,其中机器人是收件人;否则为 False。 默认值为 False,活动会将机器人显示为发送方。 |
| as_contact_relation_update_activity |
以 ContactRelationUpdateActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。 |
| as_conversation_update_activity |
以 ConversationUpdateActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。 |
| as_end_of_conversation_activity |
以 EndOfConversationActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。 |
| as_event_activity |
以 EventActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。 |
| as_handoff_activity |
以 HandoffActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。 |
| as_installation_update_activity |
以 InstallationUpdateActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。 |
| as_invoke_activity |
以 InvokeActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。 |
| as_message_activity |
以 MessageActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。 |
| as_message_delete_activity |
以 MessageDeleteActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。 |
| as_message_reaction_activity |
以 MessageReactionActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。 |
| as_message_update_activity |
以 MessageUpdateActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。 |
| as_suggestion_activity |
以 SuggestionActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。 |
| as_trace_activity |
以 TraceActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。 |
| as_typing_activity |
以 TypeActivity 对象的形式返回此活动;如果这不是该类型的活动,则为 null。 |
| create_contact_relation_update_activity |
将 Activity 类的实例创建为ContactRelationUpdateActivity 对象。 |
| create_conversation_update_activity |
将 Activity 类的实例创建为 ConversationUpdateActivity 对象。 |
| create_end_of_conversation_activity |
将 Activity 类的实例创建为 EndOfConversationActivity 对象。 |
| create_event_activity |
将 Activity 类的实例创建为 EventActivity 对象。 |
| create_handoff_activity |
将 Activity 类的实例创建为 HandoffActivity 对象。 |
| create_invoke_activity |
将 Activity 类的实例创建为 InvokeActivity 对象。 |
| create_message_activity |
将 Activity 类的实例创建为 MessageActivity 对象。 |
| create_reply |
创建一个新消息活动作为对此活动的响应。 |
| create_trace |
基于此活动创建新的跟踪活动。 默认值为值类型的名称。 :p aram 标签:可选,此跟踪作的描述性标签。 |
| create_trace_activity |
将 Activity 类的实例创建为 TraceActivity 对象。 默认值为值类型的名称。 :p aram 标签:可选,此跟踪作的描述性标签。 |
| create_typing_activity |
将 Activity 类的实例创建为 TypeActivity 对象。 |
| get_conversation_reference |
基于此活动创建 ConversationReference。 |
| get_mentions |
解析此活动的实体中的提及。 |
| get_reply_conversation_reference |
基于此活动的对话信息和 ResourceResponse 发送活动来创建 ConversationReference。 |
| has_content |
指示此活动是否包含内容。 |
| is_from_streaming_connection |
确定活动是通过 Http/Https 连接发送的,也可以通过查看service_url属性来确定这一点:(1) 通过 http/https 发送消息的所有通道不是流式传输(2)通过流式传输发送消息的通道具有不以 http/https 开头的 ServiceUrl。 |
apply_conversation_reference
使用现有 ConversationReference 中的传递信息更新此活动
传入活动,其中机器人是收件人;否则为 False。 默认值为 False,活动会将机器人显示为发送方。
apply_conversation_reference(reference: ConversationReference, is_incoming: bool = False)
参数
| 名称 | 说明 |
|---|---|
|
reference
必需
|
|
|
is_incoming
|
默认值: False
|
返回
| 类型 | 说明 |
|---|---|
|
他的活动,更新了传递信息。 |
注解
对传入活动调用 GetConversationReference 以获取对话引用,然后可以使用该引用使用正确的传递信息更新传出活动。
as_contact_relation_update_activity
以 ContactRelationUpdateActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。
as_contact_relation_update_activity()
返回
| 类型 | 说明 |
|---|---|
|
此活动作为消息活动;或无。 |
as_conversation_update_activity
以 ConversationUpdateActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。
as_conversation_update_activity()
返回
| 类型 | 说明 |
|---|---|
|
此活动作为会话更新活动;或无。 |
as_end_of_conversation_activity
以 EndOfConversationActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。
as_end_of_conversation_activity()
返回
| 类型 | 说明 |
|---|---|
|
此活动作为会话活动的结束;或无。 |
as_event_activity
以 EventActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。
as_event_activity()
返回
| 类型 | 说明 |
|---|---|
|
此活动作为事件活动;或无。 |
as_handoff_activity
以 HandoffActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。
as_handoff_activity()
返回
| 类型 | 说明 |
|---|---|
|
此活动作为移交活动;或无。 |
as_installation_update_activity
以 InstallationUpdateActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。
as_installation_update_activity()
返回
| 类型 | 说明 |
|---|---|
|
此活动作为安装更新活动;或无。 |
as_invoke_activity
以 InvokeActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。
as_invoke_activity()
返回
| 类型 | 说明 |
|---|---|
|
此活动作为调用活动;或无。 |
as_message_activity
以 MessageActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。
as_message_activity()
返回
| 类型 | 说明 |
|---|---|
|
此活动作为消息活动;或无。 |
as_message_delete_activity
以 MessageDeleteActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。
as_message_delete_activity()
返回
| 类型 | 说明 |
|---|---|
|
此活动作为消息删除请求;或无。 |
as_message_reaction_activity
以 MessageReactionActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。
as_message_reaction_activity()
返回
| 类型 | 说明 |
|---|---|
|
此活动作为消息反应活动;或无。 |
as_message_update_activity
以 MessageUpdateActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。
as_message_update_activity()
返回
| 类型 | 说明 |
|---|---|
|
此活动作为消息更新请求;或无。 |
as_suggestion_activity
以 SuggestionActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。
as_suggestion_activity()
返回
| 类型 | 说明 |
|---|---|
|
此活动作为建议活动;或无。 |
as_trace_activity
以 TraceActivity 对象的形式返回此活动;或 None,如果这不是该类型的活动。
as_trace_activity()
返回
| 类型 | 说明 |
|---|---|
|
此活动作为跟踪活动;或无。 |
as_typing_activity
以 TypeActivity 对象的形式返回此活动;如果这不是该类型的活动,则为 null。
as_typing_activity()
返回
| 类型 | 说明 |
|---|---|
|
此活动作为键入活动;或 null。 |
create_contact_relation_update_activity
将 Activity 类的实例创建为ContactRelationUpdateActivity 对象。
static create_contact_relation_update_activity()
返回
| 类型 | 说明 |
|---|---|
|
新的联系人关系更新活动。 |
create_conversation_update_activity
将 Activity 类的实例创建为 ConversationUpdateActivity 对象。
static create_conversation_update_activity()
返回
| 类型 | 说明 |
|---|---|
|
新的聊天更新活动。 |
create_end_of_conversation_activity
将 Activity 类的实例创建为 EndOfConversationActivity 对象。
static create_end_of_conversation_activity()
返回
| 类型 | 说明 |
|---|---|
|
对话活动的新结束。 |
create_event_activity
create_handoff_activity
create_invoke_activity
create_message_activity
create_reply
创建一个新消息活动作为对此活动的响应。
create_reply(text: str = None, locale: str = None)
参数
| 名称 | 说明 |
|---|---|
|
text
|
答复的文本。 默认值: None
|
|
locale
|
文本的语言代码。 默认值: None
|
返回
| 类型 | 说明 |
|---|---|
|
新消息活动。 |
注解
新活动基于此活动设置路由信息。
create_trace
基于此活动创建新的跟踪活动。
默认值为值类型的名称。 :p aram 标签:可选,此跟踪作的描述性标签。
create_trace(name: str, value: object = None, value_type: str = None, label: str = None)
参数
| 名称 | 说明 |
|---|---|
|
name
必需
|
|
|
value
|
默认值: None
|
|
value_type
|
默认值: None
|
|
label
|
默认值: None
|
返回
| 类型 | 说明 |
|---|---|
|
新的跟踪活动。 |
create_trace_activity
将 Activity 类的实例创建为 TraceActivity 对象。
默认值为值类型的名称。 :p aram 标签:可选,此跟踪作的描述性标签。
static create_trace_activity(name: str, value: object = None, value_type: str = None, label: str = None)
参数
| 名称 | 说明 |
|---|---|
|
name
必需
|
|
|
value
|
默认值: None
|
|
value_type
|
默认值: None
|
|
label
|
默认值: None
|
返回
| 类型 | 说明 |
|---|---|
|
新的跟踪活动。 |
create_typing_activity
get_conversation_reference
基于此活动创建 ConversationReference。
get_conversation_reference()
返回
| 类型 | 说明 |
|---|---|
|
包含此活动的会话的对话引用。 |
get_mentions
解析此活动的实体中的提及。
get_mentions() -> List[Mention]
返回
| 类型 | 说明 |
|---|---|
|
提及数组;如果找不到空数组,则为空数组。 |
注解
此方法在 Activity 类上定义,但仅用于消息活动,其中 activity.Type 设置为 ActivityTypes.Message。
get_reply_conversation_reference
基于此活动的对话信息和 ResourceResponse 发送活动来创建 ConversationReference。
get_reply_conversation_reference(reply: ResourceResponse) -> ConversationReference
参数
| 名称 | 说明 |
|---|---|
|
reply
必需
|
从send_activity返回的 ResourceResponse。 |
返回
| 类型 | 说明 |
|---|---|
|
可以存储和用于删除或更新活动的 ConversationReference。 |
has_content
指示此活动是否包含内容。
has_content() -> bool
返回
| 类型 | 说明 |
|---|---|
|
如果此活动有任何要发送的内容,则为 True;否则为 false。 |
注解
此方法在 Activity 类上定义,但仅用于消息活动,其中 activity.Type 设置为 ActivityTypes.Message。
is_from_streaming_connection
确定活动是通过 Http/Https 连接发送的,也可以通过查看service_url属性来确定这一点:(1) 通过 http/https 发送消息的所有通道不是流式传输(2)通过流式传输发送消息的通道具有不以 http/https 开头的 ServiceUrl。
is_from_streaming_connection() -> bool
返回
| 类型 | 说明 |
|---|---|
|
如此 如果活动源自流式处理连接。 |