def set_cooldown(self, cmd, user, amount):
if isinstance(user, str):
cd_name = f'cd_{cmd}_{user}'
else:
cd_name = f'cd_{cmd}_{user.id}'
entry = self.cache.get_cache(cd_name)
if entry:
self.cache.del_cache(cd_name)
else:
entry = await self.cds.find_one({'name': cd_name})
end_stamp = arrow.utcnow().timestamp + amount
if entry:
await self.cds.update_one({'name': cd_name}, {'$set': {'end_stamp': end_stamp}})
else:
cd_data = {
'name': cd_name,
'end_stamp': end_stamp
}
await self.cds.insert_one(cd_data)
评论列表
文章目录