async def _list(self, ctx: commands.context) -> None: """Lists the autotweet accounts on the guild""" guild = ctx.message.guild async with ctx.typing(): account_list = {} async for user_id, account in AsyncIter(self.accounts.items(), steps=50): for channel_id, channel_data in account.channels.items(): if chan := guild.get_channel(int(channel_id)): chan_info = f"{account.twitter_name} - {channel_data}\n" if chan not in account_list: account_list[chan] = [chan_info] else: account_list[chan].append(chan_info) account_str = "" for chan, accounts in account_list.items(): account_str += f"{chan.mention} - {humanize_list(accounts)}" embed_list = [] for page in pagify(account_str): embed = discord.Embed( title="Twitter accounts posting in {}".format(guild.name), colour=await self.bot.get_embed_colour(ctx.channel), description=page, ) embed.set_author(name=guild.name, icon_url=guild.icon_url) embed_list.append(embed)
async def get_tweets(self, ctx: commands.context, username: str) -> None: """ Display a users tweets as a scrollable message """ async with ctx.typing(): api = await self.authenticate() await TweetsMenu(source=TweetPages(api=api, username=username, loop=ctx.bot.loop), cog=self).start(ctx=ctx)
async def get_tweets(self, ctx: commands.context, username: str) -> None: """ Display a users tweets as a scrollable message """ async with ctx.typing(): try: api = await self.authenticate() except MissingTokenError as e: await e.send_error(ctx) return await TweetsMenu( source=TweetPages(api=api, username=username, loop=ctx.bot.loop), cog=self ).start(ctx=ctx)