def info(self, ctx):
"""Show bot's info"""
embed = discord.Embed(title="Bot's info", type="rich embed")
embed.set_thumbnail(url=discord.utils.find(lambda x: x.id == self.bot.user.id, \
ctx.message.server.members).avatar_url)
delta = datetime.now() - self.bot.created_at
embed.set_footer(text="Created at " + self.bot.created_at.strftime("%d/%m/%Y %H:%M:%S") + " (" + \
utils.convert_seconds_to_str(delta.total_seconds()) + " ago)")
python_version = str(subprocess.check_output("python --version", shell=True))[2:-5]
python_version += " " + platform.architecture()[0][:-3] + " bits"
commit = str(subprocess.check_output("git rev-parse HEAD", shell=True))[2:-3]
os_infos = "Running on " + platform.platform()
if platform.machine().endswith("64"):
os_infos += " 64 bits"
else:
os_infos += " 32 bits"
embed.add_field(name="Python's version", value=python_version)
embed.add_field(name="Commit", value=commit)
embed.add_field(name="Bot's version", value=self.bot.version)
embed.add_field(name="Discord's version", value=discord.__version__)
embed.add_field(name="Environment", value=os_infos)
embed.add_field(name="Total commands typed", value=str(self.bot.total_commands + 1))
delta = (datetime.now() - self.bot.launched_at) + self.bot.total_runtime
msg = utils.convert_seconds_to_str(delta.total_seconds())
if msg != "":
embed.add_field(name="Total run time", value=msg)
delta = datetime.now() - self.bot.launched_at
msg = utils.convert_seconds_to_str(delta.total_seconds())
if msg != "":
embed.add_field(name="Run time", value=msg)
embed.add_field(name="Servers", value=str(len(self.bot.servers)))
embed.add_field(name="Text channels", value=str(len([x for x in self.bot.get_all_channels() if x.type == discord.ChannelType.text])))
embed.add_field(name="Voice channels", value=str(len([x for x in self.bot.get_all_channels() if x.type == discord.ChannelType.voice])))
known_members = []
for server in self.bot.servers:
for member in server.members:
if member.id not in known_members:
known_members.append(member.id)
embed.add_field(name="Members", value=str(len(known_members)))
await self.bot.send_message(destination=ctx.message.channel, embed=embed)
评论列表
文章目录