microsoft-agents-activity 1.2.0.dev20__tar.gz → 1.4.0.dev10__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/PKG-INFO +32 -2
- microsoft_agents_activity-1.4.0.dev10/VERSION.txt +1 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/__init__.py +12 -3
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/_model_utils.py +4 -2
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/activity.py +387 -18
- microsoft_agents_activity-1.4.0.dev10/microsoft_agents/activity/adaptive_card_card.py +35 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/animation_card.py +60 -2
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/audio_card.py +60 -2
- microsoft_agents_activity-1.4.0.dev10/microsoft_agents/activity/basic_card.py +137 -0
- microsoft_agents_activity-1.4.0.dev10/microsoft_agents/activity/card.py +36 -0
- microsoft_agents_activity-1.4.0.dev10/microsoft_agents/activity/channel_id.py +138 -0
- microsoft_agents_activity-1.4.0.dev10/microsoft_agents/activity/config/_coercion.py +99 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/config/_load_configuration.py +1 -1
- microsoft_agents_activity-1.4.0.dev10/microsoft_agents/activity/content_types.py +16 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/conversation_parameters.py +4 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/conversation_reference.py +3 -2
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/entity/__init__.py +3 -0
- microsoft_agents_activity-1.4.0.dev10/microsoft_agents/activity/entity/activity_treatment.py +27 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/entity/ai_entity.py +8 -3
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/entity/entity_types.py +1 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/errors/error_resources.py +6 -0
- microsoft_agents_activity-1.4.0.dev10/microsoft_agents/activity/hero_card.py +137 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/media_card.py +60 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/oauth_card.py +12 -2
- microsoft_agents_activity-1.4.0.dev10/microsoft_agents/activity/receipt_card.py +82 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/signin_card.py +12 -2
- microsoft_agents_activity-1.4.0.dev10/microsoft_agents/activity/suggested_actions.py +62 -0
- microsoft_agents_activity-1.4.0.dev10/microsoft_agents/activity/thumbnail_card.py +137 -0
- microsoft_agents_activity-1.4.0.dev10/microsoft_agents/activity/token_exchange_request.py +18 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/video_card.py +60 -2
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents_activity.egg-info/PKG-INFO +32 -2
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents_activity.egg-info/SOURCES.txt +6 -1
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/readme.md +31 -1
- microsoft_agents_activity-1.2.0.dev20/VERSION.txt +0 -1
- microsoft_agents_activity-1.2.0.dev20/microsoft_agents/activity/_channel_id_field_mixin.py +0 -95
- microsoft_agents_activity-1.2.0.dev20/microsoft_agents/activity/basic_card.py +0 -33
- microsoft_agents_activity-1.2.0.dev20/microsoft_agents/activity/channel_id.py +0 -95
- microsoft_agents_activity-1.2.0.dev20/microsoft_agents/activity/hero_card.py +0 -33
- microsoft_agents_activity-1.2.0.dev20/microsoft_agents/activity/receipt_card.py +0 -39
- microsoft_agents_activity-1.2.0.dev20/microsoft_agents/activity/suggested_actions.py +0 -23
- microsoft_agents_activity-1.2.0.dev20/microsoft_agents/activity/thumbnail_card.py +0 -33
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/LICENSE +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/MANIFEST.in +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/_type_aliases.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/_utils/__init__.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/_utils/_deferred_string.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/action_types.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/activity_event_names.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/activity_importance.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/activity_types.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/adaptive_card_invoke_action.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/adaptive_card_invoke_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/adaptive_card_invoke_value.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/agents_model.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/attachment.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/attachment_data.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/attachment_info.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/attachment_layout_types.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/attachment_view.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/caller_id_constants.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/card_action.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/card_image.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/channel_account.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/channel_adapter_protocol.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/channels.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/config/__init__.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/config/_configure_logging.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/contact_relation_update_action_types.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/conversation_account.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/conversation_members.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/conversation_resource_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/conversation_update_types.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/conversations_result.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/delivery_modes.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/end_of_conversation_codes.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/entity/_schema_mixin.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/entity/entity.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/entity/geo_coordinates.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/entity/mention.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/entity/place.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/entity/product_info.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/entity/stream_info.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/entity/thing.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/error.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/error_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/errors/__init__.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/errors/error_message.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/expected_replies.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/fact.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/inner_http_error.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/input_hints.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/installation_update_action_types.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/invoke_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/media_event_value.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/media_url.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/message_reaction.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/message_reaction_types.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/message_update_types.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/paged_members_result.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/receipt_item.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/resource_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/role_types.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/semantic_action.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/semantic_actions_states.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/sign_in_constants.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/sign_in_resource.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/__init__.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/app_based_link_query.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/batch_failed_entries_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/batch_failed_entry.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/batch_operation_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/batch_operation_state_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/bot_config_auth.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/cache_info.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/cancel_operation_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/channel_info.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/config_auth_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/config_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/config_response_base.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/config_task_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/conversation_list.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/file_consent_card.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/file_consent_card_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/file_download_info.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/file_info_card.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/file_upload_info.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/meeting_details.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/meeting_details_base.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/meeting_end_event_details.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/meeting_event_details.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/meeting_info.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/meeting_notification.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/meeting_notification_base.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/meeting_notification_channel_data.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/meeting_notification_recipient_failure_info.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/meeting_notification_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/meeting_participant_info.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/meeting_participants_event_details.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/meeting_stage_surface.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/meeting_start_event_details.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/meeting_tab_icon_surface.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/message_actions_payload.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/message_actions_payload_app.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/message_actions_payload_attachment.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/message_actions_payload_body.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/message_actions_payload_conversation.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/message_actions_payload_from.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/message_actions_payload_mention.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/message_actions_payload_reaction.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/message_actions_payload_user.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/messaging_extension_action.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/messaging_extension_action_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/messaging_extension_attachment.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/messaging_extension_parameter.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/messaging_extension_query.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/messaging_extension_query_options.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/messaging_extension_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/messaging_extension_result.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/messaging_extension_suggested_action.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/notification_info.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/o365_connector_card.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/o365_connector_card_action_base.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/o365_connector_card_action_card.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/o365_connector_card_action_query.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/o365_connector_card_date_input.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/o365_connector_card_fact.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/o365_connector_card_http_post.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/o365_connector_card_image.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/o365_connector_card_input_base.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/o365_connector_card_multichoice_input.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/o365_connector_card_multichoice_input_choice.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/o365_connector_card_open_uri.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/o365_connector_card_open_uri_target.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/o365_connector_card_section.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/o365_connector_card_text_input.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/o365_connector_card_view_action.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/on_behalf_of.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/read_receipt_info.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/signin_state_verification_query.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/surface.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/tab_context.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/tab_entity_context.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/tab_request.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/tab_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/tab_response_card.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/tab_response_cards.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/tab_response_payload.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/tab_submit.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/tab_submit_data.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/tab_suggested_actions.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/targeted_meeting_notification.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/targeted_meeting_notification_value.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/task_module_card_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/task_module_continue_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/task_module_message_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/task_module_request.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/task_module_request_context.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/task_module_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/task_module_response_base.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/task_module_task_info.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/team_details.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/team_info.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/teams_batch_operation_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/teams_channel_account.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/teams_channel_data.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/teams_channel_data_settings.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/teams_meeting_info.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/teams_meeting_member.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/teams_meeting_participant.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/teams_member.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/teams_paged_members_result.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/tenant_info.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/teams/user_meeting_details.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/text_format_types.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/text_highlight.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/thumbnail_url.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/token_exchange_invoke_request.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/token_exchange_invoke_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/token_exchange_resource.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/token_exchange_state.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/token_or_sign_in_resource_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/token_post_resource.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/token_request.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/token_response.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/token_status.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/transcript.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents/activity/turn_context_protocol.py +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents_activity.egg-info/dependency_links.txt +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents_activity.egg-info/requires.txt +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/microsoft_agents_activity.egg-info/top_level.txt +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/pyproject.toml +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/setup.cfg +0 -0
- {microsoft_agents_activity-1.2.0.dev20 → microsoft_agents_activity-1.4.0.dev10}/setup.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: microsoft-agents-activity
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.4.0.dev10
|
|
4
4
|
Summary: A protocol library for Microsoft Agents
|
|
5
5
|
Author: Microsoft Corporation
|
|
6
6
|
License-Expression: MIT
|
|
@@ -35,6 +35,24 @@ This library is part of the **Microsoft 365 Agents SDK for Python** - a comprehe
|
|
|
35
35
|
<th style="width:20%">Date</th>
|
|
36
36
|
<th style="width:60%">Release Notes</th>
|
|
37
37
|
</tr>
|
|
38
|
+
<tr>
|
|
39
|
+
<td>1.3.0</td>
|
|
40
|
+
<td>2026-07-30</td>
|
|
41
|
+
<td>
|
|
42
|
+
<a href="https://github.com/microsoft/Agents-for-python/blob/main/changelog.md#microsoft-365-agents-sdk-for-python---release-notes-v130">
|
|
43
|
+
1.3.0 Release Notes
|
|
44
|
+
</a>
|
|
45
|
+
</td>
|
|
46
|
+
</tr>
|
|
47
|
+
<tr>
|
|
48
|
+
<td>1.2.0</td>
|
|
49
|
+
<td>2026-07-17</td>
|
|
50
|
+
<td>
|
|
51
|
+
<a href="https://github.com/microsoft/Agents-for-python/blob/main/changelog.md#microsoft-365-agents-sdk-for-python---release-notes-v120">
|
|
52
|
+
1.2.0 Release Notes
|
|
53
|
+
</a>
|
|
54
|
+
</td>
|
|
55
|
+
</tr>
|
|
38
56
|
<tr>
|
|
39
57
|
<td>1.1.0</td>
|
|
40
58
|
<td>2026-06-19</td>
|
|
@@ -53,6 +71,15 @@ This library is part of the **Microsoft 365 Agents SDK for Python** - a comprehe
|
|
|
53
71
|
</a>
|
|
54
72
|
</td>
|
|
55
73
|
</tr>
|
|
74
|
+
<tr>
|
|
75
|
+
<td>0.9.1</td>
|
|
76
|
+
<td>2026-05-04</td>
|
|
77
|
+
<td>
|
|
78
|
+
<a href="https://github.com/microsoft/Agents-for-python/blob/main/changelog.md#microsoft-365-agents-sdk-for-python---release-notes-v091">
|
|
79
|
+
0.9.1 Release Notes
|
|
80
|
+
</a>
|
|
81
|
+
</td>
|
|
82
|
+
</tr>
|
|
56
83
|
<tr>
|
|
57
84
|
<td>0.9.0</td>
|
|
58
85
|
<td>2026-04-15</td>
|
|
@@ -118,11 +145,14 @@ We offer the following PyPI packages to create conversational experiences based
|
|
|
118
145
|
| `microsoft-agents-activity` | [](https://pypi.org/project/microsoft-agents-activity/) | Types and validators implementing the Activity protocol spec. |
|
|
119
146
|
| `microsoft-agents-hosting-core` | [](https://pypi.org/project/microsoft-agents-hosting-core/) | Core library for Microsoft Agents hosting. |
|
|
120
147
|
| `microsoft-agents-hosting-aiohttp` | [](https://pypi.org/project/microsoft-agents-hosting-aiohttp/) | Configures aiohttp to run the Agent. |
|
|
121
|
-
| `microsoft-agents-hosting-
|
|
148
|
+
| `microsoft-agents-hosting-fastapi` | [](https://pypi.org/project/microsoft-agents-hosting-fastapi/) | Configures fastapi to run the Agent. |
|
|
149
|
+
| `microsoft-agents-hosting-msteams` | [](https://pypi.org/project/microsoft-agents-hosting-msteams/) | Provides classes to host an Agent for Teams. |
|
|
122
150
|
| `microsoft-agents-hosting-dialogs` | [](https://pypi.org/project/microsoft-agents-hosting-dialogs/) | Dialog system with waterfall dialogs, prompts, and multi-turn conversation management. |
|
|
151
|
+
| `microsoft-agents-hosting-slack` | [](https://pypi.org/project/microsoft-agents-hosting-slack/) | Provides classes to host an Agent for Slack. |
|
|
123
152
|
| `microsoft-agents-storage-blob` | [](https://pypi.org/project/microsoft-agents-storage-blob/) | Extension to use Azure Blob as storage. |
|
|
124
153
|
| `microsoft-agents-storage-cosmos` | [](https://pypi.org/project/microsoft-agents-storage-cosmos/) | Extension to use CosmosDB as storage. |
|
|
125
154
|
| `microsoft-agents-authentication-msal` | [](https://pypi.org/project/microsoft-agents-authentication-msal/) | MSAL-based authentication for Microsoft Agents. |
|
|
155
|
+
| `microsoft-agents-authentication-entra-auth-sidecar` | [](https://pypi.org/project/microsoft-agents-authentication-entra-auth-sidecar/) | Credential-free Entra ID Agent ID authentication via the sidecar. |
|
|
126
156
|
|
|
127
157
|
Additionally we provide a Copilot Studio Client, to interact with Agents created in CopilotStudio:
|
|
128
158
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
1.4.0.dev10
|
|
@@ -6,6 +6,7 @@ from .action_types import ActionTypes
|
|
|
6
6
|
from .activity import Activity
|
|
7
7
|
from .activity_event_names import ActivityEventNames
|
|
8
8
|
from .activity_types import ActivityTypes
|
|
9
|
+
from .adaptive_card_card import AdaptiveCardCard
|
|
9
10
|
from .adaptive_card_invoke_action import AdaptiveCardInvokeAction
|
|
10
11
|
from .adaptive_card_invoke_response import AdaptiveCardInvokeResponse
|
|
11
12
|
from .adaptive_card_invoke_value import AdaptiveCardInvokeValue
|
|
@@ -16,11 +17,11 @@ from .attachment_info import AttachmentInfo
|
|
|
16
17
|
from .attachment_view import AttachmentView
|
|
17
18
|
from .audio_card import AudioCard
|
|
18
19
|
from .basic_card import BasicCard
|
|
20
|
+
from .card import Card
|
|
19
21
|
from .card_action import CardAction
|
|
20
22
|
from .card_image import CardImage
|
|
21
23
|
from .channels import Channels
|
|
22
24
|
from .channel_account import ChannelAccount
|
|
23
|
-
from ._channel_id_field_mixin import _ChannelIdFieldMixin
|
|
24
25
|
from .channel_id import ChannelId
|
|
25
26
|
from .conversation_account import ConversationAccount
|
|
26
27
|
from .conversation_members import ConversationMembers
|
|
@@ -28,6 +29,7 @@ from .conversation_parameters import ConversationParameters
|
|
|
28
29
|
from .conversation_reference import ConversationReference
|
|
29
30
|
from .conversation_resource_response import ConversationResourceResponse
|
|
30
31
|
from .conversations_result import ConversationsResult
|
|
32
|
+
from .content_types import ContentTypes
|
|
31
33
|
from .expected_replies import ExpectedReplies
|
|
32
34
|
from .entity import (
|
|
33
35
|
Entity,
|
|
@@ -45,6 +47,8 @@ from .entity import (
|
|
|
45
47
|
ProductInfo,
|
|
46
48
|
Thing,
|
|
47
49
|
StreamInfo,
|
|
50
|
+
ActivityTreatment,
|
|
51
|
+
ActivityTreatmentTypes,
|
|
48
52
|
)
|
|
49
53
|
from .error import Error
|
|
50
54
|
from .error_response import ErrorResponse
|
|
@@ -69,6 +73,7 @@ from .thumbnail_card import ThumbnailCard
|
|
|
69
73
|
from .thumbnail_url import ThumbnailUrl
|
|
70
74
|
from .token_exchange_invoke_request import TokenExchangeInvokeRequest
|
|
71
75
|
from .token_exchange_invoke_response import TokenExchangeInvokeResponse
|
|
76
|
+
from .token_exchange_request import TokenExchangeRequest
|
|
72
77
|
from .token_exchange_state import TokenExchangeState
|
|
73
78
|
from .token_or_sign_in_resource_response import TokenOrSignInResourceResponse
|
|
74
79
|
from .token_request import TokenRequest
|
|
@@ -94,7 +99,6 @@ from .sign_in_resource import SignInResource
|
|
|
94
99
|
from .token_exchange_resource import TokenExchangeResource
|
|
95
100
|
from .token_post_resource import TokenPostResource
|
|
96
101
|
|
|
97
|
-
from .delivery_modes import DeliveryModes
|
|
98
102
|
from .caller_id_constants import CallerIdConstants
|
|
99
103
|
|
|
100
104
|
from .conversation_update_types import ConversationUpdateTypes
|
|
@@ -109,6 +113,7 @@ __all__ = [
|
|
|
109
113
|
"Activity",
|
|
110
114
|
"ActionTypes",
|
|
111
115
|
"ActivityEventNames",
|
|
116
|
+
"AdaptiveCardCard",
|
|
112
117
|
"AdaptiveCardInvokeAction",
|
|
113
118
|
"AdaptiveCardInvokeResponse",
|
|
114
119
|
"AdaptiveCardInvokeValue",
|
|
@@ -119,18 +124,19 @@ __all__ = [
|
|
|
119
124
|
"AttachmentView",
|
|
120
125
|
"AudioCard",
|
|
121
126
|
"BasicCard",
|
|
127
|
+
"Card",
|
|
122
128
|
"CardAction",
|
|
123
129
|
"CardImage",
|
|
124
130
|
"Channels",
|
|
125
131
|
"ChannelAccount",
|
|
126
132
|
"ChannelId",
|
|
127
|
-
"_ChannelIdFieldMixin",
|
|
128
133
|
"ConversationAccount",
|
|
129
134
|
"ConversationMembers",
|
|
130
135
|
"ConversationParameters",
|
|
131
136
|
"ConversationReference",
|
|
132
137
|
"ConversationResourceResponse",
|
|
133
138
|
"ConversationsResult",
|
|
139
|
+
"ContentTypes",
|
|
134
140
|
"ExpectedReplies",
|
|
135
141
|
"Entity",
|
|
136
142
|
"AIEntity",
|
|
@@ -170,6 +176,7 @@ __all__ = [
|
|
|
170
176
|
"ThumbnailUrl",
|
|
171
177
|
"TokenExchangeInvokeRequest",
|
|
172
178
|
"TokenExchangeInvokeResponse",
|
|
179
|
+
"TokenExchangeRequest",
|
|
173
180
|
"TokenExchangeState",
|
|
174
181
|
"TokenRequest",
|
|
175
182
|
"TokenResponse",
|
|
@@ -199,5 +206,7 @@ __all__ = [
|
|
|
199
206
|
"load_configuration_from_env",
|
|
200
207
|
"ChannelAdapterProtocol",
|
|
201
208
|
"TurnContextProtocol",
|
|
209
|
+
"ActivityTreatment",
|
|
210
|
+
"ActivityTreatmentTypes",
|
|
202
211
|
"TokenOrSignInResourceResponse",
|
|
203
212
|
]
|
|
@@ -2,10 +2,12 @@
|
|
|
2
2
|
# Licensed under the MIT License.
|
|
3
3
|
|
|
4
4
|
from abc import ABC
|
|
5
|
-
from typing import Any, Callable
|
|
5
|
+
from typing import Any, Callable, TypeVar
|
|
6
6
|
|
|
7
7
|
from .agents_model import AgentsModel
|
|
8
8
|
|
|
9
|
+
AgentsModelT = TypeVar("AgentsModelT", bound=AgentsModel)
|
|
10
|
+
|
|
9
11
|
|
|
10
12
|
class ModelFieldHelper(ABC):
|
|
11
13
|
"""Base class for model field processing prior to initialization of an AgentsModel"""
|
|
@@ -55,7 +57,7 @@ def pick_model_dict(**kwargs):
|
|
|
55
57
|
return model_dict
|
|
56
58
|
|
|
57
59
|
|
|
58
|
-
def pick_model(model_class: type[
|
|
60
|
+
def pick_model(model_class: type[AgentsModelT], **kwargs) -> AgentsModelT:
|
|
59
61
|
"""Picks model fields from the given keyword arguments.
|
|
60
62
|
|
|
61
63
|
Usage:
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
from __future__ import annotations
|
|
5
5
|
|
|
6
6
|
import logging
|
|
7
|
+
import re
|
|
7
8
|
from copy import copy
|
|
8
9
|
from datetime import datetime, timezone
|
|
9
10
|
from typing import Optional, Any, cast, Annotated, TypeVar
|
|
@@ -16,7 +17,6 @@ from pydantic import (
|
|
|
16
17
|
model_validator,
|
|
17
18
|
SerializerFunctionWrapHandler,
|
|
18
19
|
ModelWrapValidatorHandler,
|
|
19
|
-
computed_field,
|
|
20
20
|
ValidationError,
|
|
21
21
|
)
|
|
22
22
|
|
|
@@ -31,6 +31,8 @@ from .entity import (
|
|
|
31
31
|
Entity,
|
|
32
32
|
EntityTypes,
|
|
33
33
|
Mention,
|
|
34
|
+
ActivityTreatment,
|
|
35
|
+
ActivityTreatmentTypes,
|
|
34
36
|
AIEntity,
|
|
35
37
|
ClientCitation,
|
|
36
38
|
ProductInfo,
|
|
@@ -41,7 +43,6 @@ from .text_highlight import TextHighlight
|
|
|
41
43
|
from .semantic_action import SemanticAction
|
|
42
44
|
from .agents_model import AgentsModel
|
|
43
45
|
from .role_types import RoleTypes
|
|
44
|
-
from ._channel_id_field_mixin import _ChannelIdFieldMixin
|
|
45
46
|
from .channel_id import ChannelId
|
|
46
47
|
from ._model_utils import pick_model, SkipNone
|
|
47
48
|
from ._type_aliases import NonEmptyString
|
|
@@ -53,7 +54,7 @@ _EntityT = TypeVar("_EntityT", bound=Entity)
|
|
|
53
54
|
|
|
54
55
|
|
|
55
56
|
# TODO: A2A Agent 2 is responding with None as id, had to mark it as optional (investigate)
|
|
56
|
-
class Activity(AgentsModel
|
|
57
|
+
class Activity(AgentsModel):
|
|
57
58
|
"""An Activity is the basic communication type for the protocol.
|
|
58
59
|
|
|
59
60
|
:param type: Contains the activity type. Possible values include:
|
|
@@ -155,6 +156,7 @@ class Activity(AgentsModel, _ChannelIdFieldMixin):
|
|
|
155
156
|
"""
|
|
156
157
|
|
|
157
158
|
type: NonEmptyString
|
|
159
|
+
channel_id: Optional[ChannelId] = None
|
|
158
160
|
id: Optional[NonEmptyString] = None
|
|
159
161
|
timestamp: datetime = None
|
|
160
162
|
local_timestamp: datetime = None
|
|
@@ -211,10 +213,6 @@ class Activity(AgentsModel, _ChannelIdFieldMixin):
|
|
|
211
213
|
# run Pydantic's standard validation first
|
|
212
214
|
activity = handler(data)
|
|
213
215
|
|
|
214
|
-
# needed to assign to a computed field
|
|
215
|
-
# needed because we override the mixin validator
|
|
216
|
-
activity._set_validated_channel_id(data)
|
|
217
|
-
|
|
218
216
|
# sync sub_channel with productInfo entity
|
|
219
217
|
product_info = activity.get_product_info_entity()
|
|
220
218
|
if product_info and activity.channel_id:
|
|
@@ -280,9 +278,6 @@ class Activity(AgentsModel, _ChannelIdFieldMixin):
|
|
|
280
278
|
if not serialized["entities"]: # after removal above, list may be empty
|
|
281
279
|
del serialized["entities"]
|
|
282
280
|
|
|
283
|
-
# necessary due to computed_field serialization
|
|
284
|
-
self._remove_serialized_unset_channel_id(serialized)
|
|
285
|
-
|
|
286
281
|
return serialized
|
|
287
282
|
|
|
288
283
|
def apply_conversation_reference(
|
|
@@ -437,6 +432,377 @@ class Activity(AgentsModel, _ChannelIdFieldMixin):
|
|
|
437
432
|
"""
|
|
438
433
|
return self if self.__is_activity(ActivityTypes.typing) else None
|
|
439
434
|
|
|
435
|
+
def with_text(self, text: str) -> Self:
|
|
436
|
+
"""
|
|
437
|
+
Sets the text content of the activity.
|
|
438
|
+
|
|
439
|
+
:param text: The text content of the message.
|
|
440
|
+
:returns: This activity, to allow for method chaining.
|
|
441
|
+
"""
|
|
442
|
+
self.text = text
|
|
443
|
+
return self
|
|
444
|
+
|
|
445
|
+
def with_speak(self, speak: str) -> Self:
|
|
446
|
+
"""
|
|
447
|
+
Sets the text to speak for the activity.
|
|
448
|
+
|
|
449
|
+
:param speak: The text to speak.
|
|
450
|
+
:returns: This activity, to allow for method chaining.
|
|
451
|
+
"""
|
|
452
|
+
self.speak = speak
|
|
453
|
+
return self
|
|
454
|
+
|
|
455
|
+
def with_input_hint(self, input_hint: str) -> Self:
|
|
456
|
+
"""
|
|
457
|
+
Sets the input hint for the activity.
|
|
458
|
+
|
|
459
|
+
:param input_hint: Indicates whether the agent is accepting, expecting, or ignoring user input.
|
|
460
|
+
:returns: This activity, to allow for method chaining.
|
|
461
|
+
"""
|
|
462
|
+
self.input_hint = input_hint
|
|
463
|
+
return self
|
|
464
|
+
|
|
465
|
+
def with_summary(self, summary: str) -> Self:
|
|
466
|
+
"""
|
|
467
|
+
Sets the summary of the activity.
|
|
468
|
+
|
|
469
|
+
:param summary: The text to display if the channel cannot render cards.
|
|
470
|
+
:returns: This activity, to allow for method chaining.
|
|
471
|
+
"""
|
|
472
|
+
self.summary = summary
|
|
473
|
+
return self
|
|
474
|
+
|
|
475
|
+
def with_locale(self, locale: str) -> Self:
|
|
476
|
+
"""
|
|
477
|
+
Sets the locale of the activity.
|
|
478
|
+
|
|
479
|
+
:param locale: A locale name for the contents of the text field.
|
|
480
|
+
:returns: This activity, to allow for method chaining.
|
|
481
|
+
"""
|
|
482
|
+
self.locale = locale
|
|
483
|
+
return self
|
|
484
|
+
|
|
485
|
+
def with_text_format(self, text_format: str) -> Self:
|
|
486
|
+
"""
|
|
487
|
+
Sets the text format of the activity.
|
|
488
|
+
|
|
489
|
+
:param text_format: Format of the text fields. Possible values include: 'markdown', 'plain', 'xml'.
|
|
490
|
+
:returns: This activity, to allow for method chaining.
|
|
491
|
+
"""
|
|
492
|
+
self.text_format = text_format
|
|
493
|
+
return self
|
|
494
|
+
|
|
495
|
+
def with_attachment_layout(self, attachment_layout: str) -> Self:
|
|
496
|
+
"""
|
|
497
|
+
Sets the attachment layout hint for the activity.
|
|
498
|
+
|
|
499
|
+
:param attachment_layout: The layout hint for multiple attachments. Possible values include: 'list', 'carousel'.
|
|
500
|
+
:returns: This activity, to allow for method chaining.
|
|
501
|
+
"""
|
|
502
|
+
self.attachment_layout = attachment_layout
|
|
503
|
+
return self
|
|
504
|
+
|
|
505
|
+
def with_delivery_mode(self, delivery_mode: str) -> Self:
|
|
506
|
+
"""
|
|
507
|
+
Sets the delivery mode of the activity.
|
|
508
|
+
|
|
509
|
+
:param delivery_mode: The delivery mode for the activity.
|
|
510
|
+
:returns: This activity, to allow for method chaining.
|
|
511
|
+
"""
|
|
512
|
+
self.delivery_mode = delivery_mode
|
|
513
|
+
return self
|
|
514
|
+
|
|
515
|
+
def with_name(self, name: str) -> Self:
|
|
516
|
+
"""
|
|
517
|
+
Sets the name of the activity.
|
|
518
|
+
|
|
519
|
+
:param name: The name of the operation associated with an invoke or event activity.
|
|
520
|
+
:returns: This activity, to allow for method chaining.
|
|
521
|
+
"""
|
|
522
|
+
self.name = name
|
|
523
|
+
return self
|
|
524
|
+
|
|
525
|
+
def with_value(self, value: object, value_type: str | None = None) -> Self:
|
|
526
|
+
"""
|
|
527
|
+
Sets the value of the activity, and optionally its value type.
|
|
528
|
+
|
|
529
|
+
:param value: A value that is associated with the activity.
|
|
530
|
+
:param value_type: The type of the activity's value object. Only set when provided.
|
|
531
|
+
:returns: This activity, to allow for method chaining.
|
|
532
|
+
"""
|
|
533
|
+
self.value = value
|
|
534
|
+
if value_type is not None:
|
|
535
|
+
self.value_type = value_type
|
|
536
|
+
return self
|
|
537
|
+
|
|
538
|
+
def with_suggested_actions(self, suggested_actions: SuggestedActions) -> Self:
|
|
539
|
+
"""
|
|
540
|
+
Sets the suggested actions for the activity.
|
|
541
|
+
|
|
542
|
+
:param suggested_actions: The suggested actions for the activity.
|
|
543
|
+
:returns: This activity, to allow for method chaining.
|
|
544
|
+
"""
|
|
545
|
+
self.suggested_actions = suggested_actions
|
|
546
|
+
return self
|
|
547
|
+
|
|
548
|
+
def add_text(self, text: str) -> Self:
|
|
549
|
+
"""
|
|
550
|
+
Appends text to the existing text content of the activity.
|
|
551
|
+
|
|
552
|
+
:param text: The text to append to the activity's text.
|
|
553
|
+
:returns: This activity, to allow for method chaining.
|
|
554
|
+
"""
|
|
555
|
+
self.text = (self.text or "") + text
|
|
556
|
+
return self
|
|
557
|
+
|
|
558
|
+
def add_attachment(self, *attachments: Attachment) -> Self:
|
|
559
|
+
"""
|
|
560
|
+
Adds one or more attachments to the activity.
|
|
561
|
+
|
|
562
|
+
:param attachments: The attachments to add to the activity.
|
|
563
|
+
:returns: This activity, to allow for method chaining.
|
|
564
|
+
"""
|
|
565
|
+
if not attachments:
|
|
566
|
+
return self
|
|
567
|
+
|
|
568
|
+
self.attachments = self.attachments or []
|
|
569
|
+
self.attachments.extend(attachments)
|
|
570
|
+
return self
|
|
571
|
+
|
|
572
|
+
def add_entity(self, *entities: Entity) -> Self:
|
|
573
|
+
"""
|
|
574
|
+
Adds one or more entities to the activity.
|
|
575
|
+
|
|
576
|
+
:param entities: The entities to add to the activity.
|
|
577
|
+
:returns: This activity, to allow for method chaining.
|
|
578
|
+
"""
|
|
579
|
+
if not entities:
|
|
580
|
+
return self
|
|
581
|
+
|
|
582
|
+
self.entities = self.entities or []
|
|
583
|
+
self.entities.extend(entities)
|
|
584
|
+
return self
|
|
585
|
+
|
|
586
|
+
def add_mention(
|
|
587
|
+
self,
|
|
588
|
+
account: ChannelAccount,
|
|
589
|
+
text: NonEmptyString | None = None,
|
|
590
|
+
add_text: bool = True,
|
|
591
|
+
) -> Self:
|
|
592
|
+
"""
|
|
593
|
+
Adds a mention of the given account to the activity.
|
|
594
|
+
|
|
595
|
+
:param account: The account to mention.
|
|
596
|
+
:param text: The text of the mention. Defaults to the account's name.
|
|
597
|
+
:param add_text: Whether to prepend the mention markup to the activity's text.
|
|
598
|
+
:returns: This activity, to allow for method chaining.
|
|
599
|
+
"""
|
|
600
|
+
mention_text = text if text is not None else (account.name if account else None)
|
|
601
|
+
if mention_text is None:
|
|
602
|
+
logger.warning("Adding a mention with no text or account name.")
|
|
603
|
+
|
|
604
|
+
markup = f"<at>{mention_text}</at>"
|
|
605
|
+
|
|
606
|
+
if add_text:
|
|
607
|
+
self.text = markup if not self.text else f"{markup} {self.text}"
|
|
608
|
+
|
|
609
|
+
return self.add_entity(Mention(mentioned=account, text=markup))
|
|
610
|
+
|
|
611
|
+
def get_account_mention(self, account_id: NonEmptyString) -> Optional[Mention]:
|
|
612
|
+
"""
|
|
613
|
+
Resolves the mention for the given account id, if any.
|
|
614
|
+
|
|
615
|
+
:param account_id: The id of the account to find a mention for.
|
|
616
|
+
:returns: The matching mention; or None, if none is found.
|
|
617
|
+
"""
|
|
618
|
+
if not self.entities or account_id is None:
|
|
619
|
+
return None
|
|
620
|
+
|
|
621
|
+
for mention in self.get_mentions():
|
|
622
|
+
if mention.mentioned and mention.mentioned.id == account_id:
|
|
623
|
+
return mention
|
|
624
|
+
|
|
625
|
+
return None
|
|
626
|
+
|
|
627
|
+
def is_recipient_mentioned(self) -> bool:
|
|
628
|
+
"""
|
|
629
|
+
Indicates whether the recipient of this activity was mentioned.
|
|
630
|
+
|
|
631
|
+
:returns: True if the recipient was mentioned; otherwise, False.
|
|
632
|
+
"""
|
|
633
|
+
return (
|
|
634
|
+
self.recipient is not None
|
|
635
|
+
and self.recipient.id is not None
|
|
636
|
+
and self.get_account_mention(self.recipient.id) is not None
|
|
637
|
+
)
|
|
638
|
+
|
|
639
|
+
def remove_recipient_mention(self) -> str:
|
|
640
|
+
"""
|
|
641
|
+
Removes the recipient's mention text from the activity's text.
|
|
642
|
+
|
|
643
|
+
:returns: The updated activity text.
|
|
644
|
+
|
|
645
|
+
.. remarks::
|
|
646
|
+
This method is defined on the :class:`microsoft_agents.activity.Activity` class, but is only intended for
|
|
647
|
+
use with a message activity, where the activity Activity.Type is set to ActivityTypes.Message.
|
|
648
|
+
"""
|
|
649
|
+
return self.remove_mention_text(self.recipient.id if self.recipient else None)
|
|
650
|
+
|
|
651
|
+
def remove_mention_text(self, identifier: NonEmptyString | None) -> str:
|
|
652
|
+
"""
|
|
653
|
+
Removes the mention text for the given account id from the activity's text.
|
|
654
|
+
|
|
655
|
+
For example, given the message `<at>echoAgent</at> Hi Agent`, this removes
|
|
656
|
+
`<at>echoAgent</at>`, leaving `Hi Agent`.
|
|
657
|
+
|
|
658
|
+
:param identifier: The id of the account whose mention text should be removed.
|
|
659
|
+
:returns: The updated activity text.
|
|
660
|
+
|
|
661
|
+
.. remarks::
|
|
662
|
+
The format of a mention entity is dependent on the channel, but in all cases
|
|
663
|
+
the Mention.text is expected to contain the exact text for the user as it
|
|
664
|
+
appears in Activity.text.
|
|
665
|
+
"""
|
|
666
|
+
if not identifier:
|
|
667
|
+
return self.text
|
|
668
|
+
|
|
669
|
+
for mention in self.get_mentions():
|
|
670
|
+
if not mention.mentioned or mention.mentioned.id != identifier:
|
|
671
|
+
continue
|
|
672
|
+
|
|
673
|
+
if mention.text is None:
|
|
674
|
+
pattern = f"<at>{re.escape(mention.mentioned.name)}</at>"
|
|
675
|
+
else:
|
|
676
|
+
pattern = re.escape(mention.text)
|
|
677
|
+
|
|
678
|
+
self.text = re.sub(
|
|
679
|
+
pattern, "", self.text or "", flags=re.IGNORECASE
|
|
680
|
+
).strip()
|
|
681
|
+
|
|
682
|
+
return self.text
|
|
683
|
+
|
|
684
|
+
def is_targeted_activity(self) -> bool:
|
|
685
|
+
"""
|
|
686
|
+
Indicates whether this activity is targeted.
|
|
687
|
+
|
|
688
|
+
:returns: True if this activity carries a targeted treatment; otherwise, False.
|
|
689
|
+
"""
|
|
690
|
+
if not self.entities:
|
|
691
|
+
return False
|
|
692
|
+
|
|
693
|
+
for entity in self.entities:
|
|
694
|
+
if (
|
|
695
|
+
entity.type == EntityTypes.ACTIVITY_TREATMENT
|
|
696
|
+
and isinstance(entity, ActivityTreatment)
|
|
697
|
+
and entity.treatment == ActivityTreatmentTypes.TARGETED
|
|
698
|
+
):
|
|
699
|
+
return True
|
|
700
|
+
|
|
701
|
+
return False
|
|
702
|
+
|
|
703
|
+
def make_targeted_activity(self, user: ChannelAccount | None = None) -> Self:
|
|
704
|
+
"""
|
|
705
|
+
Marks this activity as targeted, setting the recipient if provided.
|
|
706
|
+
|
|
707
|
+
:param user: The account to target. Defaults to the current recipient.
|
|
708
|
+
:returns: This activity, to allow for method chaining.
|
|
709
|
+
:raises ValueError: If both the activity's recipient and the user argument are None.
|
|
710
|
+
"""
|
|
711
|
+
if self.is_targeted_activity():
|
|
712
|
+
return self
|
|
713
|
+
|
|
714
|
+
if self.recipient is None and user is None:
|
|
715
|
+
raise ValueError(str(activity_errors.InvalidTargetedActivityRecipient))
|
|
716
|
+
|
|
717
|
+
self.entities = self.entities or []
|
|
718
|
+
self.entities.append(
|
|
719
|
+
ActivityTreatment(treatment=ActivityTreatmentTypes.TARGETED)
|
|
720
|
+
)
|
|
721
|
+
|
|
722
|
+
self.recipient = user if user is not None else self.recipient
|
|
723
|
+
|
|
724
|
+
return self
|
|
725
|
+
|
|
726
|
+
def is_message(self) -> bool:
|
|
727
|
+
"""
|
|
728
|
+
Indicates whether this activity is a message activity.
|
|
729
|
+
|
|
730
|
+
:return: True if this activity is a message activity; otherwise, False.
|
|
731
|
+
"""
|
|
732
|
+
return self.__is_activity(ActivityTypes.message)
|
|
733
|
+
|
|
734
|
+
def is_event(self) -> bool:
|
|
735
|
+
"""
|
|
736
|
+
Indicates whether this activity is an event activity.
|
|
737
|
+
|
|
738
|
+
:return: True if this activity is an event activity; otherwise, False.
|
|
739
|
+
"""
|
|
740
|
+
return self.__is_activity(ActivityTypes.event)
|
|
741
|
+
|
|
742
|
+
def is_invoke(self) -> bool:
|
|
743
|
+
"""
|
|
744
|
+
Indicates whether this activity is an invoke activity.
|
|
745
|
+
|
|
746
|
+
:return: True if this activity is an invoke activity; otherwise, False.
|
|
747
|
+
"""
|
|
748
|
+
return self.__is_activity(ActivityTypes.invoke)
|
|
749
|
+
|
|
750
|
+
def is_typing(self) -> bool:
|
|
751
|
+
"""
|
|
752
|
+
Indicates whether this activity is a typing activity.
|
|
753
|
+
|
|
754
|
+
:return: True if this activity is a typing activity; otherwise, False.
|
|
755
|
+
"""
|
|
756
|
+
return self.__is_activity(ActivityTypes.typing)
|
|
757
|
+
|
|
758
|
+
def is_conversation_update(self) -> bool:
|
|
759
|
+
"""
|
|
760
|
+
Indicates whether this activity is a conversation update activity.
|
|
761
|
+
|
|
762
|
+
:return: True if this activity is a conversation update activity; otherwise, False.
|
|
763
|
+
"""
|
|
764
|
+
return self.__is_activity(ActivityTypes.conversation_update)
|
|
765
|
+
|
|
766
|
+
def is_end_of_conversation(self) -> bool:
|
|
767
|
+
"""
|
|
768
|
+
Indicates whether this activity is an end of conversation activity.
|
|
769
|
+
|
|
770
|
+
:return: True if this activity is an end of conversation activity; otherwise, False.
|
|
771
|
+
"""
|
|
772
|
+
return self.__is_activity(ActivityTypes.end_of_conversation)
|
|
773
|
+
|
|
774
|
+
def is_handoff(self) -> bool:
|
|
775
|
+
"""
|
|
776
|
+
Indicates whether this activity is a handoff activity.
|
|
777
|
+
|
|
778
|
+
:return: True if this activity is a handoff activity; otherwise, False.
|
|
779
|
+
"""
|
|
780
|
+
return self.__is_activity(ActivityTypes.handoff)
|
|
781
|
+
|
|
782
|
+
def is_trace(self) -> bool:
|
|
783
|
+
"""
|
|
784
|
+
Indicates whether this activity is a trace activity.
|
|
785
|
+
|
|
786
|
+
:return: True if this activity is a trace activity; otherwise, False.
|
|
787
|
+
"""
|
|
788
|
+
return self.__is_activity(ActivityTypes.trace)
|
|
789
|
+
|
|
790
|
+
def is_command(self) -> bool:
|
|
791
|
+
"""
|
|
792
|
+
Indicates whether this activity is a command activity.
|
|
793
|
+
|
|
794
|
+
:return: True if this activity is a command activity; otherwise, False.
|
|
795
|
+
"""
|
|
796
|
+
return self.__is_activity(ActivityTypes.command)
|
|
797
|
+
|
|
798
|
+
def is_command_result(self) -> bool:
|
|
799
|
+
"""
|
|
800
|
+
Indicates whether this activity is a command result activity.
|
|
801
|
+
|
|
802
|
+
:return: True if this activity is a command result activity; otherwise, False.
|
|
803
|
+
"""
|
|
804
|
+
return self.__is_activity(ActivityTypes.command_result)
|
|
805
|
+
|
|
440
806
|
@staticmethod
|
|
441
807
|
def create_contact_relation_update_activity():
|
|
442
808
|
"""
|
|
@@ -500,7 +866,9 @@ class Activity(AgentsModel, _ChannelIdFieldMixin):
|
|
|
500
866
|
"""
|
|
501
867
|
return Activity(type=ActivityTypes.message)
|
|
502
868
|
|
|
503
|
-
def create_reply(
|
|
869
|
+
def create_reply(
|
|
870
|
+
self, text: str | None = None, locale: str | None = None
|
|
871
|
+
) -> Activity:
|
|
504
872
|
"""
|
|
505
873
|
Creates a new message activity as a response to this activity.
|
|
506
874
|
|
|
@@ -629,7 +997,7 @@ class Activity(AgentsModel, _ChannelIdFieldMixin):
|
|
|
629
997
|
)
|
|
630
998
|
|
|
631
999
|
@staticmethod
|
|
632
|
-
def create_typing_activity() ->
|
|
1000
|
+
def create_typing_activity() -> Activity:
|
|
633
1001
|
"""
|
|
634
1002
|
Creates an instance of the :class:`microsoft_agents.activity.Activity` class as a TypingActivity object.
|
|
635
1003
|
|
|
@@ -662,8 +1030,8 @@ class Activity(AgentsModel, _ChannelIdFieldMixin):
|
|
|
662
1030
|
agent=copy(self.recipient),
|
|
663
1031
|
conversation=copy(self.conversation),
|
|
664
1032
|
channel_id=(
|
|
665
|
-
self.channel_id
|
|
666
|
-
if force_base_channel
|
|
1033
|
+
ChannelId.get_channel(self.channel_id)
|
|
1034
|
+
if force_base_channel
|
|
667
1035
|
else self.channel_id
|
|
668
1036
|
),
|
|
669
1037
|
locale=self.locale,
|
|
@@ -721,13 +1089,13 @@ class Activity(AgentsModel, _ChannelIdFieldMixin):
|
|
|
721
1089
|
:returns: The array of mentions; or an empty array, if none are found.
|
|
722
1090
|
|
|
723
1091
|
.. remarks::
|
|
724
|
-
This method is defined on the :class:`microsoft_agents.activity.Activity` class, but is only intended for use with
|
|
725
|
-
where the activity Activity.Type is set to ActivityTypes.Message.
|
|
1092
|
+
This method is defined on the :class:`microsoft_agents.activity.Activity` class, but is only intended for use with
|
|
1093
|
+
a message activity, where the activity Activity.Type is set to ActivityTypes.Message.
|
|
726
1094
|
"""
|
|
727
1095
|
if not self.entities:
|
|
728
1096
|
return []
|
|
729
1097
|
raw_mentions = [
|
|
730
|
-
x for x in self.entities if x.type.lower() == EntityTypes.MENTION
|
|
1098
|
+
x for x in self.entities if x.type.lower() == EntityTypes.MENTION.value
|
|
731
1099
|
]
|
|
732
1100
|
|
|
733
1101
|
return Activity._convert_entity_list(raw_mentions, Mention)
|
|
@@ -736,7 +1104,8 @@ class Activity(AgentsModel, _ChannelIdFieldMixin):
|
|
|
736
1104
|
self, reply: ResourceResponse
|
|
737
1105
|
) -> ConversationReference:
|
|
738
1106
|
"""
|
|
739
|
-
Create a ConversationReference based on this Activity's Conversation info and the ResourceResponse from sending an
|
|
1107
|
+
Create a ConversationReference based on this Activity's Conversation info and the ResourceResponse from sending an
|
|
1108
|
+
activity.
|
|
740
1109
|
|
|
741
1110
|
:param reply: ResourceResponse returned from send_activity.
|
|
742
1111
|
|