microsoft-agents-activity 0.9.0.dev2__tar.gz → 0.9.0.dev3__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.
Files changed (222) hide show
  1. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/PKG-INFO +1 -1
  2. microsoft_agents_activity-0.9.0.dev3/VERSION.txt +1 -0
  3. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/__init__.py +3 -0
  4. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/activity.py +0 -3
  5. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/agents_model.py +3 -1
  6. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/entity/__init__.py +2 -0
  7. microsoft_agents_activity-0.9.0.dev3/microsoft_agents/activity/entity/_schema_mixin.py +55 -0
  8. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/entity/ai_entity.py +23 -22
  9. microsoft_agents_activity-0.9.0.dev3/microsoft_agents/activity/entity/entity.py +76 -0
  10. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/entity/entity_types.py +1 -0
  11. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/entity/product_info.py +1 -1
  12. microsoft_agents_activity-0.9.0.dev3/microsoft_agents/activity/entity/stream_info.py +20 -0
  13. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents_activity.egg-info/PKG-INFO +1 -1
  14. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents_activity.egg-info/SOURCES.txt +2 -0
  15. microsoft_agents_activity-0.9.0.dev2/VERSION.txt +0 -1
  16. microsoft_agents_activity-0.9.0.dev2/microsoft_agents/activity/entity/entity.py +0 -41
  17. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/LICENSE +0 -0
  18. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/MANIFEST.in +0 -0
  19. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/_channel_id_field_mixin.py +0 -0
  20. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/_model_utils.py +0 -0
  21. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/_type_aliases.py +0 -0
  22. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/_utils/__init__.py +0 -0
  23. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/_utils/_deferred_string.py +0 -0
  24. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/action_types.py +0 -0
  25. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/activity_event_names.py +0 -0
  26. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/activity_importance.py +0 -0
  27. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/activity_types.py +0 -0
  28. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/adaptive_card_invoke_action.py +0 -0
  29. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/adaptive_card_invoke_response.py +0 -0
  30. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/adaptive_card_invoke_value.py +0 -0
  31. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/animation_card.py +0 -0
  32. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/attachment.py +0 -0
  33. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/attachment_data.py +0 -0
  34. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/attachment_info.py +0 -0
  35. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/attachment_layout_types.py +0 -0
  36. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/attachment_view.py +0 -0
  37. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/audio_card.py +0 -0
  38. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/basic_card.py +0 -0
  39. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/caller_id_constants.py +0 -0
  40. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/card_action.py +0 -0
  41. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/card_image.py +0 -0
  42. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/channel_account.py +0 -0
  43. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/channel_adapter_protocol.py +0 -0
  44. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/channel_id.py +0 -0
  45. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/channels.py +0 -0
  46. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/config/__init__.py +0 -0
  47. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/config/_configure_logging.py +0 -0
  48. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/config/_load_configuration.py +0 -0
  49. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/contact_relation_update_action_types.py +0 -0
  50. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/conversation_account.py +0 -0
  51. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/conversation_members.py +0 -0
  52. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/conversation_parameters.py +0 -0
  53. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/conversation_reference.py +0 -0
  54. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/conversation_resource_response.py +0 -0
  55. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/conversation_update_types.py +0 -0
  56. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/conversations_result.py +0 -0
  57. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/delivery_modes.py +0 -0
  58. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/end_of_conversation_codes.py +0 -0
  59. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/entity/geo_coordinates.py +0 -0
  60. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/entity/mention.py +0 -0
  61. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/entity/place.py +0 -0
  62. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/entity/thing.py +0 -0
  63. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/error.py +0 -0
  64. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/error_response.py +0 -0
  65. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/errors/__init__.py +0 -0
  66. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/errors/error_message.py +0 -0
  67. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/errors/error_resources.py +0 -0
  68. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/expected_replies.py +0 -0
  69. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/fact.py +0 -0
  70. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/hero_card.py +0 -0
  71. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/inner_http_error.py +0 -0
  72. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/input_hints.py +0 -0
  73. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/installation_update_action_types.py +0 -0
  74. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/invoke_response.py +0 -0
  75. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/media_card.py +0 -0
  76. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/media_event_value.py +0 -0
  77. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/media_url.py +0 -0
  78. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/message_reaction.py +0 -0
  79. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/message_reaction_types.py +0 -0
  80. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/message_update_types.py +0 -0
  81. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/oauth_card.py +0 -0
  82. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/paged_members_result.py +0 -0
  83. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/receipt_card.py +0 -0
  84. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/receipt_item.py +0 -0
  85. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/resource_response.py +0 -0
  86. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/role_types.py +0 -0
  87. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/semantic_action.py +0 -0
  88. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/semantic_actions_states.py +0 -0
  89. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/sign_in_constants.py +0 -0
  90. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/sign_in_resource.py +0 -0
  91. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/signin_card.py +0 -0
  92. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/suggested_actions.py +0 -0
  93. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/__init__.py +0 -0
  94. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/app_based_link_query.py +0 -0
  95. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/batch_failed_entries_response.py +0 -0
  96. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/batch_failed_entry.py +0 -0
  97. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/batch_operation_response.py +0 -0
  98. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/batch_operation_state_response.py +0 -0
  99. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/bot_config_auth.py +0 -0
  100. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/cache_info.py +0 -0
  101. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/cancel_operation_response.py +0 -0
  102. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/channel_info.py +0 -0
  103. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/config_auth_response.py +0 -0
  104. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/config_response.py +0 -0
  105. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/config_response_base.py +0 -0
  106. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/config_task_response.py +0 -0
  107. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/conversation_list.py +0 -0
  108. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/file_consent_card.py +0 -0
  109. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/file_consent_card_response.py +0 -0
  110. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/file_download_info.py +0 -0
  111. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/file_info_card.py +0 -0
  112. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/file_upload_info.py +0 -0
  113. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/meeting_details.py +0 -0
  114. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/meeting_details_base.py +0 -0
  115. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/meeting_end_event_details.py +0 -0
  116. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/meeting_event_details.py +0 -0
  117. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/meeting_info.py +0 -0
  118. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/meeting_notification.py +0 -0
  119. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/meeting_notification_base.py +0 -0
  120. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/meeting_notification_channel_data.py +0 -0
  121. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/meeting_notification_recipient_failure_info.py +0 -0
  122. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/meeting_notification_response.py +0 -0
  123. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/meeting_participant_info.py +0 -0
  124. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/meeting_participants_event_details.py +0 -0
  125. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/meeting_stage_surface.py +0 -0
  126. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/meeting_start_event_details.py +0 -0
  127. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/meeting_tab_icon_surface.py +0 -0
  128. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/message_actions_payload.py +0 -0
  129. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/message_actions_payload_app.py +0 -0
  130. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/message_actions_payload_attachment.py +0 -0
  131. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/message_actions_payload_body.py +0 -0
  132. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/message_actions_payload_conversation.py +0 -0
  133. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/message_actions_payload_from.py +0 -0
  134. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/message_actions_payload_mention.py +0 -0
  135. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/message_actions_payload_reaction.py +0 -0
  136. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/message_actions_payload_user.py +0 -0
  137. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/messaging_extension_action.py +0 -0
  138. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/messaging_extension_action_response.py +0 -0
  139. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/messaging_extension_attachment.py +0 -0
  140. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/messaging_extension_parameter.py +0 -0
  141. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/messaging_extension_query.py +0 -0
  142. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/messaging_extension_query_options.py +0 -0
  143. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/messaging_extension_response.py +0 -0
  144. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/messaging_extension_result.py +0 -0
  145. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/messaging_extension_suggested_action.py +0 -0
  146. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/notification_info.py +0 -0
  147. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/o365_connector_card.py +0 -0
  148. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/o365_connector_card_action_base.py +0 -0
  149. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/o365_connector_card_action_card.py +0 -0
  150. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/o365_connector_card_action_query.py +0 -0
  151. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/o365_connector_card_date_input.py +0 -0
  152. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/o365_connector_card_fact.py +0 -0
  153. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/o365_connector_card_http_post.py +0 -0
  154. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/o365_connector_card_image.py +0 -0
  155. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/o365_connector_card_input_base.py +0 -0
  156. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/o365_connector_card_multichoice_input.py +0 -0
  157. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/o365_connector_card_multichoice_input_choice.py +0 -0
  158. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/o365_connector_card_open_uri.py +0 -0
  159. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/o365_connector_card_open_uri_target.py +0 -0
  160. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/o365_connector_card_section.py +0 -0
  161. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/o365_connector_card_text_input.py +0 -0
  162. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/o365_connector_card_view_action.py +0 -0
  163. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/on_behalf_of.py +0 -0
  164. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/read_receipt_info.py +0 -0
  165. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/signin_state_verification_query.py +0 -0
  166. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/surface.py +0 -0
  167. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/tab_context.py +0 -0
  168. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/tab_entity_context.py +0 -0
  169. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/tab_request.py +0 -0
  170. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/tab_response.py +0 -0
  171. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/tab_response_card.py +0 -0
  172. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/tab_response_cards.py +0 -0
  173. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/tab_response_payload.py +0 -0
  174. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/tab_submit.py +0 -0
  175. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/tab_submit_data.py +0 -0
  176. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/tab_suggested_actions.py +0 -0
  177. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/targeted_meeting_notification.py +0 -0
  178. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/targeted_meeting_notification_value.py +0 -0
  179. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/task_module_card_response.py +0 -0
  180. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/task_module_continue_response.py +0 -0
  181. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/task_module_message_response.py +0 -0
  182. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/task_module_request.py +0 -0
  183. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/task_module_request_context.py +0 -0
  184. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/task_module_response.py +0 -0
  185. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/task_module_response_base.py +0 -0
  186. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/task_module_task_info.py +0 -0
  187. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/team_details.py +0 -0
  188. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/team_info.py +0 -0
  189. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/teams_batch_operation_response.py +0 -0
  190. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/teams_channel_account.py +0 -0
  191. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/teams_channel_data.py +0 -0
  192. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/teams_channel_data_settings.py +0 -0
  193. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/teams_meeting_info.py +0 -0
  194. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/teams_meeting_member.py +0 -0
  195. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/teams_meeting_participant.py +0 -0
  196. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/teams_member.py +0 -0
  197. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/teams_paged_members_result.py +0 -0
  198. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/tenant_info.py +0 -0
  199. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/teams/user_meeting_details.py +0 -0
  200. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/text_format_types.py +0 -0
  201. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/text_highlight.py +0 -0
  202. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/thumbnail_card.py +0 -0
  203. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/thumbnail_url.py +0 -0
  204. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/token_exchange_invoke_request.py +0 -0
  205. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/token_exchange_invoke_response.py +0 -0
  206. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/token_exchange_resource.py +0 -0
  207. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/token_exchange_state.py +0 -0
  208. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/token_or_sign_in_resource_response.py +0 -0
  209. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/token_post_resource.py +0 -0
  210. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/token_request.py +0 -0
  211. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/token_response.py +0 -0
  212. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/token_status.py +0 -0
  213. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/transcript.py +0 -0
  214. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/turn_context_protocol.py +0 -0
  215. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents/activity/video_card.py +0 -0
  216. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents_activity.egg-info/dependency_links.txt +0 -0
  217. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents_activity.egg-info/requires.txt +0 -0
  218. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/microsoft_agents_activity.egg-info/top_level.txt +0 -0
  219. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/pyproject.toml +0 -0
  220. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/readme.md +0 -0
  221. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/setup.cfg +0 -0
  222. {microsoft_agents_activity-0.9.0.dev2 → microsoft_agents_activity-0.9.0.dev3}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: microsoft-agents-activity
3
- Version: 0.9.0.dev2
3
+ Version: 0.9.0.dev3
4
4
  Summary: A protocol library for Microsoft Agents
5
5
  Author: Microsoft Corporation
6
6
  License-Expression: MIT
@@ -0,0 +1 @@
1
+ 0.9.0.dev3
@@ -44,6 +44,7 @@ from .entity import (
44
44
  Place,
45
45
  ProductInfo,
46
46
  Thing,
47
+ StreamInfo,
47
48
  )
48
49
  from .error import Error
49
50
  from .error_response import ErrorResponse
@@ -133,6 +134,7 @@ __all__ = [
133
134
  "ExpectedReplies",
134
135
  "Entity",
135
136
  "AIEntity",
137
+ "EntityTypes",
136
138
  "ClientCitation",
137
139
  "ClientCitationAppearance",
138
140
  "ClientCitationImage",
@@ -154,6 +156,7 @@ __all__ = [
154
156
  "OAuthCard",
155
157
  "PagedMembersResult",
156
158
  "Place",
159
+ "StreamInfo",
157
160
  "ProductInfo",
158
161
  "ReceiptCard",
159
162
  "ReceiptItem",
@@ -754,9 +754,6 @@ class Activity(AgentsModel, _ChannelIdFieldMixin):
754
754
  """
755
755
  if citations:
756
756
  ai_entity = AIEntity(
757
- type="https://schema.org/Message",
758
- schema_type="Message",
759
- context="https://schema.org",
760
757
  id="",
761
758
  additional_type=["AIGeneratedContent"],
762
759
  citation=citations,
@@ -8,7 +8,9 @@ from pydantic.alias_generators import to_camel
8
8
 
9
9
 
10
10
  class AgentsModel(BaseModel):
11
- model_config = ConfigDict(alias_generator=to_camel, populate_by_name=True)
11
+ model_config = ConfigDict(
12
+ alias_generator=to_camel, validate_by_name=True, validate_by_alias=True
13
+ )
12
14
 
13
15
  """
14
16
  @model_serializer
@@ -16,6 +16,7 @@ from .ai_entity import (
16
16
  from .geo_coordinates import GeoCoordinates
17
17
  from .place import Place
18
18
  from .product_info import ProductInfo
19
+ from .stream_info import StreamInfo
19
20
  from .thing import Thing
20
21
 
21
22
  __all__ = [
@@ -29,6 +30,7 @@ __all__ = [
29
30
  "Mention",
30
31
  "SensitivityUsageInfo",
31
32
  "SensitivityPattern",
33
+ "StreamInfo",
32
34
  "GeoCoordinates",
33
35
  "Place",
34
36
  "ProductInfo",
@@ -0,0 +1,55 @@
1
+ # Copyright (c) Microsoft Corporation. All rights reserved.
2
+ # Licensed under the MIT License.
3
+
4
+ from typing import Any
5
+ from pydantic import (
6
+ model_serializer,
7
+ model_validator,
8
+ ModelWrapValidatorHandler,
9
+ SerializerFunctionWrapHandler,
10
+ SerializationInfo,
11
+ BaseModel,
12
+ )
13
+
14
+
15
+ def validate_schema_model(data: Any, handler: ModelWrapValidatorHandler):
16
+ """Custom validator to handle the aliases @type, @context, and @id if defined in the destination type."""
17
+ model = handler(data)
18
+ if isinstance(data, dict):
19
+ if "@type" in data:
20
+ setattr(model, "at_type", data["@type"])
21
+ if "@context" in data:
22
+ setattr(model, "at_context", data["@context"])
23
+ if "@id" in data:
24
+ setattr(model, "at_id", data["@id"])
25
+ return model
26
+
27
+
28
+ def serialize_schema_model(
29
+ self, handler: SerializerFunctionWrapHandler, info: SerializationInfo
30
+ ) -> dict[str, Any]:
31
+ """Custom serializer to convert keys to force inclusion of @type, @context, and @id if defined."""
32
+ serialized = handler(self)
33
+ if info.by_alias:
34
+ if hasattr(self, "at_type"):
35
+ serialized["@type"] = getattr(self, "at_type")
36
+ if hasattr(self, "at_context"):
37
+ serialized["@context"] = getattr(self, "at_context")
38
+ if hasattr(self, "at_id"):
39
+ serialized["@id"] = getattr(self, "at_id")
40
+ return serialized
41
+
42
+
43
+ class _SchemaMixin(BaseModel):
44
+ """Mixin class to force inclusion of @property fields when serializing."""
45
+
46
+ @model_validator(mode="wrap")
47
+ @classmethod
48
+ def _validate_model(cls, data: Any, handler: ModelWrapValidatorHandler):
49
+ return validate_schema_model(data, handler)
50
+
51
+ @model_serializer(mode="wrap")
52
+ def _serialize_model(
53
+ self, handler: SerializerFunctionWrapHandler, info: SerializationInfo
54
+ ) -> dict[str, Any]:
55
+ return serialize_schema_model(self, handler, info)
@@ -2,10 +2,11 @@
2
2
  # Licensed under the MIT License.
3
3
 
4
4
  from enum import Enum
5
- from typing import List, Optional, Union, Literal
6
- from dataclasses import dataclass
5
+ from typing import List, Optional, Literal
7
6
 
7
+ from pydantic import Field
8
8
  from ..agents_model import AgentsModel
9
+ from ._schema_mixin import _SchemaMixin
9
10
  from .entity import Entity
10
11
 
11
12
 
@@ -42,33 +43,36 @@ class ClientCitationImage(AgentsModel):
42
43
  name: str = ""
43
44
 
44
45
 
45
- class SensitivityPattern(AgentsModel):
46
+ class SensitivityPattern(AgentsModel, _SchemaMixin):
46
47
  """Pattern information for sensitivity usage info."""
47
48
 
48
- type: str = "DefinedTerm"
49
+ at_type: Literal["DefinedTerm"] = "DefinedTerm"
50
+
49
51
  in_defined_term_set: str = ""
50
52
  name: str = ""
51
53
  term_code: str = ""
52
54
 
53
55
 
54
- class SensitivityUsageInfo(AgentsModel):
56
+ class SensitivityUsageInfo(AgentsModel, _SchemaMixin):
55
57
  """
56
58
  Sensitivity usage info for content sent to the user.
57
59
  This is used to provide information about the content to the user.
58
60
  """
59
61
 
60
62
  type: str = "https://schema.org/Message"
61
- schema_type: str = "CreativeWork"
63
+ at_type: Literal["CreativeWork"] = "CreativeWork"
64
+
62
65
  description: Optional[str] = None
63
66
  name: str = ""
64
67
  position: Optional[int] = None
65
68
  pattern: Optional[SensitivityPattern] = None
66
69
 
67
70
 
68
- class ClientCitationAppearance(AgentsModel):
71
+ class ClientCitationAppearance(AgentsModel, _SchemaMixin):
69
72
  """Appearance information for a client citation."""
70
73
 
71
- type: str = "DigitalDocument"
74
+ at_type: Literal["DigitalDocument"] = "DigitalDocument"
75
+
72
76
  name: str = ""
73
77
  text: Optional[str] = None
74
78
  url: Optional[str] = None
@@ -79,33 +83,30 @@ class ClientCitationAppearance(AgentsModel):
79
83
  usage_info: Optional[SensitivityUsageInfo] = None
80
84
 
81
85
 
82
- class ClientCitation(AgentsModel):
86
+ class ClientCitation(AgentsModel, _SchemaMixin):
83
87
  """
84
88
  Represents a Teams client citation to be included in a message.
85
89
  See Bot messages with AI-generated content for more details.
86
90
  https://learn.microsoft.com/en-us/microsoftteams/platform/bots/how-to/bot-messages-ai-generated-content?tabs=before%2Cbotmessage
87
91
  """
88
92
 
89
- type: str = "Claim"
90
- position: int = 0
91
- appearance: Optional[ClientCitationAppearance] = None
93
+ at_type: Literal["Claim"] = "Claim"
92
94
 
93
- def __post_init__(self):
94
- if self.appearance is None:
95
- self.appearance = ClientCitationAppearance()
95
+ position: int = 0
96
+ appearance: ClientCitationAppearance = Field(
97
+ default_factory=ClientCitationAppearance
98
+ )
96
99
 
97
100
 
98
101
  class AIEntity(Entity):
99
102
  """Entity indicating AI-generated content."""
100
103
 
104
+ at_type: Literal["Message"] = "Message"
105
+ at_context: Literal["https://schema.org"] = "https://schema.org"
106
+
101
107
  type: str = "https://schema.org/Message"
102
- schema_type: str = "Message"
103
- context: str = "https://schema.org"
104
108
  id: str = ""
105
- additional_type: Optional[List[str]] = None
109
+
110
+ additional_type: List[str] = Field(default_factory=lambda: ["AIGeneratedContent"])
106
111
  citation: Optional[List[ClientCitation]] = None
107
112
  usage_info: Optional[SensitivityUsageInfo] = None
108
-
109
- def __post_init__(self):
110
- if self.additional_type is None:
111
- self.additional_type = ["AIGeneratedContent"]
@@ -0,0 +1,76 @@
1
+ # Copyright (c) Microsoft Corporation. All rights reserved.
2
+ # Licensed under the MIT License.
3
+
4
+ from typing import Any
5
+
6
+ from pydantic import (
7
+ model_serializer,
8
+ model_validator,
9
+ SerializationInfo,
10
+ ModelWrapValidatorHandler,
11
+ SerializerFunctionWrapHandler,
12
+ )
13
+ from pydantic.alias_generators import to_camel, to_snake
14
+
15
+ from ..agents_model import AgentsModel, ConfigDict
16
+ from ._schema_mixin import validate_schema_model, serialize_schema_model
17
+
18
+
19
+ def _to_camel_exclude_at(k: str) -> str:
20
+ """Helper function to convert keys to camelCase while preserving keys that start with '@'."""
21
+ if k.startswith("@"):
22
+ return k # preserve keys starting with '@'
23
+ return to_camel(k)
24
+
25
+
26
+ class Entity(AgentsModel):
27
+ """Metadata object pertaining to an activity.
28
+
29
+ :param type: Type of this entity (RFC 3987 IRI)
30
+ :type type: str
31
+ """
32
+
33
+ model_config = ConfigDict(
34
+ extra="allow",
35
+ alias_generator=to_camel,
36
+ validate_by_name=True,
37
+ validate_by_alias=True,
38
+ )
39
+
40
+ type: str
41
+
42
+ @property
43
+ def additional_properties(self) -> dict[str, Any]:
44
+ """Returns the set of properties that are not None."""
45
+ return self.model_extra
46
+
47
+ @model_validator(mode="wrap")
48
+ @classmethod
49
+ def _validate_model(cls, data: Any, handler: ModelWrapValidatorHandler):
50
+ """Custom validator to handle both camelCase and snake_case keys, as well as @type, @context, and @id."""
51
+
52
+ if isinstance(data, dict):
53
+ new_data = {to_snake(k): v for k, v in data.items()}
54
+ return validate_schema_model(new_data, handler)
55
+ return validate_schema_model(data, handler)
56
+
57
+ @model_serializer(mode="wrap")
58
+ def _serialize_model(
59
+ self, handler: SerializerFunctionWrapHandler, info: SerializationInfo
60
+ ) -> dict[str, object]:
61
+ """Custom serializer to convert keys to camelCase and include @type, @context, and @id as needed.
62
+
63
+ Forces the inclusion of the 'type' field in the serialized output, as it is a required field for Entity.
64
+ """
65
+
66
+ data = serialize_schema_model(self, handler, info)
67
+ new_data: dict
68
+
69
+ if info.by_alias:
70
+ new_data = {_to_camel_exclude_at(k): v for k, v in data.items()}
71
+ else:
72
+ new_data = {k: v for k, v in data.items()}
73
+
74
+ new_data["type"] = self.type # ensure type is always included
75
+
76
+ return new_data
@@ -12,3 +12,4 @@ class EntityTypes(str, Enum):
12
12
  PLACE = "Place"
13
13
  THING = "Thing"
14
14
  PRODUCT_INFO = "ProductInfo"
15
+ STREAM_INFO = "streaminfo"
@@ -16,5 +16,5 @@ class ProductInfo(Entity):
16
16
  :type id: str
17
17
  """
18
18
 
19
- type: Literal[EntityTypes.PRODUCT_INFO] = EntityTypes.PRODUCT_INFO
19
+ type: Literal[EntityTypes.PRODUCT_INFO.value] = EntityTypes.PRODUCT_INFO.value
20
20
  id: str = None
@@ -0,0 +1,20 @@
1
+ # Copyright (c) Microsoft Corporation. All rights reserved.
2
+ # Licensed under the MIT License.
3
+
4
+ from .._type_aliases import NonEmptyString
5
+ from .entity import Entity
6
+ from .entity_types import EntityTypes
7
+
8
+
9
+ class StreamInfo(Entity):
10
+
11
+ type: str = EntityTypes.STREAM_INFO.value
12
+
13
+ stream_type: NonEmptyString = "streaming"
14
+ stream_sequence: int
15
+
16
+ stream_id: str = ""
17
+ stream_result: str = ""
18
+
19
+ feedback_loop_enabled: bool = False
20
+ feedback_loop: dict | None = None
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: microsoft-agents-activity
3
- Version: 0.9.0.dev2
3
+ Version: 0.9.0.dev3
4
4
  Summary: A protocol library for Microsoft Agents
5
5
  Author: Microsoft Corporation
6
6
  License-Expression: MIT
@@ -91,6 +91,7 @@ microsoft_agents/activity/config/__init__.py
91
91
  microsoft_agents/activity/config/_configure_logging.py
92
92
  microsoft_agents/activity/config/_load_configuration.py
93
93
  microsoft_agents/activity/entity/__init__.py
94
+ microsoft_agents/activity/entity/_schema_mixin.py
94
95
  microsoft_agents/activity/entity/ai_entity.py
95
96
  microsoft_agents/activity/entity/entity.py
96
97
  microsoft_agents/activity/entity/entity_types.py
@@ -98,6 +99,7 @@ microsoft_agents/activity/entity/geo_coordinates.py
98
99
  microsoft_agents/activity/entity/mention.py
99
100
  microsoft_agents/activity/entity/place.py
100
101
  microsoft_agents/activity/entity/product_info.py
102
+ microsoft_agents/activity/entity/stream_info.py
101
103
  microsoft_agents/activity/entity/thing.py
102
104
  microsoft_agents/activity/errors/__init__.py
103
105
  microsoft_agents/activity/errors/error_message.py
@@ -1 +0,0 @@
1
- 0.9.0.dev2
@@ -1,41 +0,0 @@
1
- # Copyright (c) Microsoft Corporation. All rights reserved.
2
- # Licensed under the MIT License.
3
-
4
- from typing import Any
5
-
6
- from pydantic import model_serializer, model_validator
7
- from pydantic.alias_generators import to_camel, to_snake
8
-
9
- from ..agents_model import AgentsModel, ConfigDict
10
-
11
-
12
- class Entity(AgentsModel):
13
- """Metadata object pertaining to an activity.
14
-
15
- :param type: Type of this entity (RFC 3987 IRI)
16
- :type type: str
17
- """
18
-
19
- model_config = ConfigDict(extra="allow")
20
-
21
- type: str
22
-
23
- @property
24
- def additional_properties(self) -> dict[str, Any]:
25
- """Returns the set of properties that are not None."""
26
- return self.model_extra
27
-
28
- @model_validator(mode="before")
29
- @classmethod
30
- def to_snake_for_all(cls, data):
31
- ret = {to_snake(k): v for k, v in data.items()}
32
- return ret
33
-
34
- @model_serializer(mode="plain")
35
- def to_camel_for_all(self, config):
36
- if config.by_alias:
37
- new_data = {}
38
- for k, v in self:
39
- new_data[to_camel(k)] = v
40
- return new_data
41
- return {k: v for k, v in self}