blob: a9ad9dfbaa33225275eeb51ece146aa6d3b278d2 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
import logging
import arrow
from dateutil.relativedelta import relativedelta
from discord.ext import commands
from bot import start_time
log = logging.getLogger(__name__)
class Uptime(commands.Cog):
"""A cog for posting the bot's uptime."""
def __init__(self, bot: commands.Bot):
self.bot = bot
@commands.command(name="uptime")
async def uptime(self, ctx: commands.Context) -> None:
"""Responds with the 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:
"""Uptime Cog load."""
bot.add_cog(Uptime(bot))
|