Add on_member_join and on_member_remove

This commit is contained in:
Dustin Pianalto 2019-12-14 15:30:34 -09:00
parent 86b1797a86
commit 9022f6c3ca

View File

@ -25,6 +25,37 @@ class UserEvents(commands.Cog):
json=data)
user_logger.info(f'User Update Response:\n{await resp.json()}')
@commands.Cog.listener()
async def on_member_join(self, member):
data = {
'id': member.id,
'username': member.username,
'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 = {
'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: {resp}')
@commands.Cog.listener()
async def on_member_remove(self, member):
pass
def setup(bot):
bot.add_cog(UserEvents(bot))