33
44from http import HTTPStatus
55from botbuilder .schema import Activity , ActivityTypes , ChannelAccount
6+ from botbuilder .core import ActivityHandler , InvokeResponse , BotFrameworkAdapter
67from botbuilder .core .turn_context import TurnContext
8+ from botbuilder .core .teams .teams_info import TeamsInfo
79from botbuilder .core .teams .teams_helper import deserializer_helper
8- from botbuilder .core import ActivityHandler , InvokeResponse , BotFrameworkAdapter
910from botbuilder .schema .teams import (
1011 AppBasedLinkQuery ,
1112 TeamInfo ,
@@ -357,47 +358,43 @@ async def on_teams_members_added_dispatch_activity( # pylint: disable=unused-ar
357358 team_info : TeamInfo ,
358359 turn_context : TurnContext ,
359360 ):
360- """
361+
361362 team_members = {}
362363 team_members_added = []
363364 for member in members_added :
364365 if member .additional_properties != {}:
365- team_members_added.append(TeamsChannelAccount(member))
366+ team_members_added .append (
367+ deserializer_helper (TeamsChannelAccount , member )
368+ )
366369 else :
367370 if team_members == {}:
368- result = await TeamsInfo.get_members_async (turn_context)
369- team_members = { i.id : i for i in result }
371+ result = await TeamsInfo .get_members (turn_context )
372+ team_members = {i .id : i for i in result }
370373
371374 if member .id in team_members :
372375 team_members_added .append (member )
373376 else :
374- newTeamsChannelAccount = TeamsChannelAccount(
377+ new_teams_channel_account = TeamsChannelAccount (
375378 id = member .id ,
376- name = member.name,
377- aad_object_id = member.aad_object_id,
378- role = member.role
379- )
380- team_members_added.append(newTeamsChannelAccount)
381-
382- return await self.on_teams_members_added_activity(teams_members_added, team_info, turn_context)
383- """
384- team_accounts_added = []
385- for member in members_added :
386- # TODO: fix this
387- new_account_json = member .serialize ()
388- if "additional_properties" in new_account_json :
389- del new_account_json ["additional_properties" ]
390- member = TeamsChannelAccount (** new_account_json )
391- team_accounts_added .append (member )
379+ name = member .name ,
380+ aad_object_id = member .aad_object_id ,
381+ role = member .role ,
382+ )
383+ team_members_added .append (new_teams_channel_account )
384+
392385 return await self .on_teams_members_added_activity (
393- team_accounts_added , turn_context
386+ team_members_added , team_info , turn_context
394387 )
395388
396- async def on_teams_members_added_activity (
397- self , teams_members_added : [TeamsChannelAccount ], turn_context : TurnContext
389+ async def on_teams_members_added_activity ( # pylint: disable=unused-argument
390+ self ,
391+ teams_members_added : [TeamsChannelAccount ],
392+ team_info : TeamInfo ,
393+ turn_context : TurnContext ,
398394 ):
399395 teams_members_added = [
400- ChannelAccount (** member .serialize ()) for member in teams_members_added
396+ ChannelAccount ().deserialize (member .serialize ())
397+ for member in teams_members_added
401398 ]
402399 return await super ().on_members_added_activity (
403400 teams_members_added , turn_context
@@ -415,7 +412,9 @@ async def on_teams_members_removed_dispatch_activity( # pylint: disable=unused-
415412 new_account_json = member .serialize ()
416413 if "additional_properties" in new_account_json :
417414 del new_account_json ["additional_properties" ]
418- teams_members_removed .append (TeamsChannelAccount (** new_account_json ))
415+ teams_members_removed .append (
416+ TeamsChannelAccount ().deserialize (new_account_json )
417+ )
419418
420419 return await self .on_teams_members_removed_activity (
421420 teams_members_removed , turn_context
@@ -425,7 +424,8 @@ async def on_teams_members_removed_activity(
425424 self , teams_members_removed : [TeamsChannelAccount ], turn_context : TurnContext
426425 ):
427426 members_removed = [
428- ChannelAccount (** member .serialize ()) for member in teams_members_removed
427+ ChannelAccount ().deserialize (member .serialize ())
428+ for member in teams_members_removed
429429 ]
430430 return await super ().on_members_removed_activity (members_removed , turn_context )
431431
0 commit comments