Пример #1
0
    async def _list_sound_queue(self, ctx):
        """list current items in queue"""
        queue = self.bot.audio.list_queue(ctx.guild.id)
        msg = ""
        _index = 0

        if queue is not None:
            for t in queue:
                msg += f"\n# Position {_index} #\n- "
                msg += f"{t.title}"
                _index = _index + 1

        for page in fmt.pagify(msg, delims=["\n#"], page_length=1990):
            if page:
                await self.bot.sendc(ctx, fmt.box(page, "md"))
            else:
                await self.bot.sendc(ctx, fmt.box("Queue is empty."))
Пример #2
0
    async def history(self, ctx):
        """displays the last 10 received commands since last restart"""
        if ctx.guild.id in ctx.bot.last_cmd_cache:
            msg = ""
            for m in ctx.bot.last_cmd_cache[ctx.guild.id]:
                msg += f"{m.author} - {m.content}\n"

            await self.bot.sendc(ctx, fmt.box(msg, "md"))
Пример #3
0
    async def list(self, ctx):
        """displays a list of all users on your server"""
        msg = ""
        for member in self.bot.guild.members:
            msg += f"{member.display_name} - created at {member.created_at} - joined at {member.joined_at}\n"

        for page in fmt.pagify(msg, delims=["\n#"], page_length=1990):
            await self.bot.sendc(ctx, fmt.box(page, "md"))
Пример #4
0
    async def raw(self, ctx, name: clean_content):
        """raw tag data"""
        with self.bot.session_scope() as session:
            t = Tag.get(name, ctx.guild.id, session)
            msg = f"==== {t.Name} ====\n\n"

            for entry in t.entries.all():
                msg += entry.TextContent

            await self.bot.sendc(ctx, fmt.box(msg))
Пример #5
0
 async def list(self, ctx):
     """
     list all current timed messages
     """
     to_send = ""
     with self.bot.session_scope() as session:
         msgs = TimedMessage.get_all_from_guild(ctx.guild.id, session)
         for msg in msgs:
             to_send += f"{str(msg)}\n\n"
     for page in pagify(to_send, delims=["\n#"], page_length=1990):
         await self.bot.sendc(ctx, box(page, "md"))
Пример #6
0
    async def list(self, ctx):
        """a list of all available tags"""
        self.bot.log.info("list")
        with self.bot.session_scope() as session:
            tags = Tag.get_all_from_guild(ctx.guild.id, session)

            msg = ""
            last_header = "^"
            for t in tags:
                if t.Name[0] is not last_header:
                    last_header = t.Name[0]
                    msg += f"\n# {last_header} #\n- "
                msg += f"[{t.Name}]"
                typ = TagType(t.Type).name.upper()[0]
                msg += f"({typ}|{t.entries.count()}) - "

            for page in fmt.pagify(msg, delims=["\n#"], page_length=1990):
                await self.bot.sendc(ctx, fmt.box(page, "md"))
Пример #7
0
 async def info(self, ctx, name: clean_content):
     """information about the tag"""
     with self.bot.session_scope() as session:
         t = Tag.get(name, ctx.guild.id, session)
         await self.bot.sendc(ctx, fmt.box(str(t)))