From d821b4e2bd908e38cf3476dc5adb43211ccbcd3a Mon Sep 17 00:00:00 2001 From: vcokltfre Date: Wed, 12 May 2021 19:26:41 +0100 Subject: feat: merge ping and uptime cogs (#722) --- bot/exts/evergreen/ping.py | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) (limited to 'bot/exts/evergreen/ping.py') diff --git a/bot/exts/evergreen/ping.py b/bot/exts/evergreen/ping.py index 97f8b34d..07c13524 100644 --- a/bot/exts/evergreen/ping.py +++ b/bot/exts/evergreen/ping.py @@ -1,11 +1,14 @@ +import arrow +from dateutil.relativedelta import relativedelta from discord import Embed from discord.ext import commands +from bot import start_time from bot.constants import Colours class Ping(commands.Cog): - """Ping the bot to see its latency and state.""" + """Get info about the bot's ping and uptime.""" def __init__(self, bot: commands.Bot): self.bot = bot @@ -21,7 +24,21 @@ class Ping(commands.Cog): await ctx.send(embed=embed) + # Originally made in 70d2170a0a6594561d59c7d080c4280f1ebcd70b by lemon & gdude2002 + @commands.command(name="uptime") + async def uptime(self, ctx: commands.Context) -> None: + """Get the current uptime of the bot.""" + difference = relativedelta(start_time - arrow.utcnow()) + uptime_string = start_time.shift( + seconds=-difference.seconds, + minutes=-difference.minutes, + hours=-difference.hours, + days=-difference.days + ).humanize() + + await ctx.send(f"I started up {uptime_string}.") + def setup(bot: commands.Bot) -> None: - """Cog load.""" + """Load the Ping cog.""" bot.add_cog(Ping(bot)) -- cgit v1.2.3