diff --git a/libraries/botbuilder-core/botbuilder/core/teams/teams_activity_handler.py b/libraries/botbuilder-core/botbuilder/core/teams/teams_activity_handler.py index 139f45859..3d8f1590c 100644 --- a/libraries/botbuilder-core/botbuilder/core/teams/teams_activity_handler.py +++ b/libraries/botbuilder-core/botbuilder/core/teams/teams_activity_handler.py @@ -61,20 +61,24 @@ async def on_invoke_activity(self, turn_context: TurnContext): if turn_context.activity.name == "fileConsent/invoke": return await self.on_teams_file_consent( - turn_context, FileConsentCardResponse(**turn_context.activity.value) + turn_context, + FileConsentCardResponse().deserialize(turn_context.activity.value), ) if turn_context.activity.name == "actionableMessage/executeAction": await self.on_teams_o365_connector_card_action( turn_context, - O365ConnectorCardActionQuery(**turn_context.activity.value), + O365ConnectorCardActionQuery().deserialize( + turn_context.activity.value + ), ) return self._create_invoke_response() if turn_context.activity.name == "composeExtension/queryLink": return self._create_invoke_response( await self.on_teams_app_based_link_query( - turn_context, AppBasedLinkQuery(**turn_context.activity.value) + turn_context, + AppBasedLinkQuery().deserialize(turn_context.activity.value), ) ) @@ -82,7 +86,9 @@ async def on_invoke_activity(self, turn_context: TurnContext): return self._create_invoke_response( await self.on_teams_messaging_extension_query( turn_context, - MessagingExtensionQuery(**turn_context.activity.value), + MessagingExtensionQuery().deserialize( + turn_context.activity.value + ), ) ) @@ -113,7 +119,9 @@ async def on_invoke_activity(self, turn_context: TurnContext): return self._create_invoke_response( await self.on_teams_messaging_extension_configuration_query_settings_url( turn_context, - MessagingExtensionQuery(**turn_context.activity.value), + MessagingExtensionQuery().deserialize( + turn_context.activity.value + ), ) ) @@ -132,14 +140,16 @@ async def on_invoke_activity(self, turn_context: TurnContext): if turn_context.activity.name == "task/fetch": return self._create_invoke_response( await self.on_teams_task_module_fetch( - turn_context, TaskModuleRequest(**turn_context.activity.value) + turn_context, + TaskModuleRequest().deserialize(turn_context.activity.value), ) ) if turn_context.activity.name == "task/submit": return self._create_invoke_response( await self.on_teams_task_module_submit( - turn_context, TaskModuleRequest(**turn_context.activity.value) + turn_context, + TaskModuleRequest().deserialize(turn_context.activity.value), ) ) @@ -280,7 +290,9 @@ async def on_teams_task_module_submit( # pylint: disable=unused-argument async def on_conversation_update_activity(self, turn_context: TurnContext): if turn_context.activity.channel_id == Channels.ms_teams: - channel_data = TeamsChannelData(**turn_context.activity.channel_data) + channel_data = TeamsChannelData().deserialize( + turn_context.activity.channel_data + ) if turn_context.activity.members_added: return await self.on_teams_members_added_dispatch_activity( turn_context.activity.members_added, channel_data.team, turn_context @@ -296,7 +308,7 @@ async def on_conversation_update_activity(self, turn_context: TurnContext): if channel_data: if channel_data.event_type == "channelCreated": return await self.on_teams_channel_created_activity( - ChannelInfo(**channel_data.channel), + ChannelInfo().deserialize(channel_data.channel), channel_data.team, turn_context, ) diff --git a/libraries/botbuilder-core/tests/teams/test_teams_activity_handler.py b/libraries/botbuilder-core/tests/teams/test_teams_activity_handler.py index 540d5742b..102d39c3d 100644 --- a/libraries/botbuilder-core/tests/teams/test_teams_activity_handler.py +++ b/libraries/botbuilder-core/tests/teams/test_teams_activity_handler.py @@ -510,6 +510,7 @@ async def test_on_app_based_link_query(self): async def test_on_teams_messaging_extension_bot_message_preview_edit_activity(self): # Arrange + activity = Activity( type=ActivityTypes.invoke, name="composeExtension/submitAction", diff --git a/libraries/botbuilder-schema/botbuilder/schema/teams/_models.py b/libraries/botbuilder-schema/botbuilder/schema/teams/_models.py index e80cee5f9..8cd32a677 100644 --- a/libraries/botbuilder-schema/botbuilder/schema/teams/_models.py +++ b/libraries/botbuilder-schema/botbuilder/schema/teams/_models.py @@ -10,6 +10,7 @@ # -------------------------------------------------------------------------- from msrest.serialization import Model +from botbuilder.schema import Activity class AppBasedLinkQuery(Model): @@ -1575,7 +1576,7 @@ def __init__(self, **kwargs): super(TeamsChannelData, self).__init__(**kwargs) self.channel = kwargs.get("channel", None) # doing camel case here since that's how the data comes in - self.event_type = kwargs.get("eventType", None) + self.event_type = kwargs.get("event_type", None) self.team = kwargs.get("team", None) self.notification = kwargs.get("notification", None) self.tenant = kwargs.get("tenant", None) diff --git a/libraries/botbuilder-schema/botbuilder/schema/teams/_models_py3.py b/libraries/botbuilder-schema/botbuilder/schema/teams/_models_py3.py index 0f3a075a6..4c42229c5 100644 --- a/libraries/botbuilder-schema/botbuilder/schema/teams/_models_py3.py +++ b/libraries/botbuilder-schema/botbuilder/schema/teams/_models_py3.py @@ -10,7 +10,7 @@ # -------------------------------------------------------------------------- from msrest.serialization import Model -from botbuilder.schema import Attachment, ChannelAccount +from botbuilder.schema import Activity, Attachment, ChannelAccount class TaskModuleRequest(Model): @@ -646,7 +646,7 @@ class MessagingExtensionAction(TaskModuleRequest): ~botframework.connector.teams.models.enum :param bot_activity_preview: :type bot_activity_preview: - list[~botframework.connector.teams.models.Activity] + list[~botframework.schema.models.Activity] :param message_payload: Message content sent as part of the command request. :type message_payload: