diff options
author | 2020-09-15 11:19:31 +0700 | |
---|---|---|
committer | 2020-09-15 11:19:31 +0700 | |
commit | 58bf220e216b5568eea35f3bca9e1770dd9b1cc9 (patch) | |
tree | 93ab8a05a69e10f43a77b6606ed67fcf76c3abfa /bot/exts/evergreen/status_cats.py | |
parent | Apply suggestions from code review (diff) | |
parent | Merge pull request #435 from python-discord/topic-embeds (diff) |
Merge branch 'master' into master
Diffstat (limited to 'bot/exts/evergreen/status_cats.py')
-rw-r--r-- | bot/exts/evergreen/status_cats.py | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/bot/exts/evergreen/status_cats.py b/bot/exts/evergreen/status_cats.py new file mode 100644 index 00000000..586b8378 --- /dev/null +++ b/bot/exts/evergreen/status_cats.py @@ -0,0 +1,33 @@ +from http import HTTPStatus + +import discord +from discord.ext import commands + + +class StatusCats(commands.Cog): + """Commands that give HTTP statuses described and visualized by cats.""" + + def __init__(self, bot: commands.Bot): + self.bot = bot + + @commands.command(aliases=['statuscat']) + async def http_cat(self, ctx: commands.Context, code: int) -> None: + """Sends an embed with an image of a cat, potraying the status code.""" + embed = discord.Embed(title=f'**Status: {code}**') + + try: + HTTPStatus(code) + + except ValueError: + embed.set_footer(text='Inputted status code does not exist.') + + else: + embed.set_image(url=f'https://http.cat/{code}.jpg') + + finally: + await ctx.send(embed=embed) + + +def setup(bot: commands.Bot) -> None: + """Load the StatusCats cog.""" + bot.add_cog(StatusCats(bot)) |