Fixed bug in on_member_join

This commit is contained in:
Dustin Pianalto 2019-12-15 00:37:08 -09:00
parent 9677b8b368
commit c67d7922dc

View File

@ -27,7 +27,7 @@ class UserEvents(commands.Cog):
if resp.status == 400: if resp.status == 400:
data = { data = {
'id': after.id, 'id': after.id,
'username': after.username, 'username': after.name,
'discriminator': after.discriminator, 'discriminator': after.discriminator,
'guilds': [f'{self.bot.api_base}/guilds/{after.guild.id}/'], 'guilds': [f'{self.bot.api_base}/guilds/{after.guild.id}/'],
'animated': after.is_avatar_animated(), 'animated': after.is_avatar_animated(),
@ -42,33 +42,30 @@ class UserEvents(commands.Cog):
@commands.Cog.listener() @commands.Cog.listener()
async def on_member_join(self, member): async def on_member_join(self, member):
try: data = {
'id': member.id,
'username': member.name,
'discriminator': member.discriminator,
'guilds': [f'{self.bot.api_base}/guilds/{member.guild.id}/'],
'animated': member.is_avatar_animated(),
'avatar': member.avatar or str(member.default_avatar),
'bot': member.bot
}
resp = await self.bot.aio_session.post(f'{self.bot.api_base}/users/',
headers=self.bot.auth_header,
json=data)
msg = await resp.json()
if resp.status == 400 and 'user with this id already exists.' \
in msg.get('id', []):
data = { data = {
'id': member.id, 'id': member.id,
'username': member.username, 'guilds': [f'{self.bot.api_base}/guilds/{member.guild.id}/']
'discriminator': member.discriminator,
'guilds': [f'{self.bot.api_base}/guilds/{member.guild.id}/'],
'animated': member.is_avatar_animated(),
'avatar': member.avatar or str(member.default_avatar),
'bot': member.bot
} }
resp = await self.bot.aio_session.post(f'{self.bot.api_base}/users/', resp = await self.bot.aio_session.put(f'{self.bot.api_base}/users/{member.id}/',
headers=self.bot.auth_header, headers=self.bot.auth_header,
json=data) json=data)
msg = await resp.json() msg = await resp.json()
if resp.status == 400 and 'user with this id already exists.' \ user_logger.info(f'User Joined: {msg}')
in msg.get('id', []):
data = {
'id': member.id,
'guilds': [f'{self.bot.api_base}/guilds/{member.guild.id}/']
}
resp = await self.bot.aio_session.put(f'{self.bot.api_base}/users/{member.id}/',
headers=self.bot.auth_header,
json=data)
msg = await resp.json()
user_logger.info(f'User Joined: {msg}')
except Exception as e:
user_logger.error(e)
@commands.Cog.listener() @commands.Cog.listener()
async def on_member_remove(self, member): async def on_member_remove(self, member):