当前位置: 首页>>代码示例>>Python>>正文


Python discord.DiscordException方法代码示例

本文整理汇总了Python中discord.DiscordException方法的典型用法代码示例。如果您正苦于以下问题:Python discord.DiscordException方法的具体用法?Python discord.DiscordException怎么用?Python discord.DiscordException使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在discord的用法示例。


在下文中一共展示了discord.DiscordException方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: post_auto_clans

# 需要导入模块: import discord [as 别名]
# 或者: from discord import DiscordException [as 别名]
def post_auto_clans(self, message=None):
        self.check_settings()
        for server_id, v in self.settings['auto_clan']['servers'].items():
            if v.get('auto'):
                channel_id = v.get('channel_id')
                channel = self.bot.get_channel(channel_id)
                if channel is not None:
                    message_id = v.get('message_id')
                    msg = None
                    if message_id is not None:
                        try:
                            msg = await self.bot.get_message(channel, message_id)
                        except DiscordException:
                            pass
                    try:
                        message = await self.post_clans(channel, msg=msg)
                    except DiscordException:
                        pass
                    else:
                        v['message_id'] = message.id

        dataIO.save_json(JSON, self.settings) 
开发者ID:smlbiobot,项目名称:SML-Cogs,代码行数:24,代码来源:clans.py

示例2: clanwars_stop

# 需要导入模块: import discord [as 别名]
# 或者: from discord import DiscordException [as 别名]
def clanwars_stop(self, ctx):
        """Stop auto display"""
        server = ctx.message.server
        channel = ctx.message.channel
        self.disable_clanwars(server, channel)

        await self.bot.say("Auto clan wars update stopped.")

    # async def post_clanwars_task(self):
    #     """Task: post embed to channel."""
    #     try:
    #         while True:
    #             if self == self.bot.get_cog("Clans"):
    #                 try:
    #                     await self.post_clanwars()
    #                 except DiscordException as e:
    #                     pass
    #                 await asyncio.sleep(TASK_INTERVAL)
    #     except asyncio.CancelledError:
    #         pass 
开发者ID:smlbiobot,项目名称:SML-Cogs,代码行数:22,代码来源:clans.py

示例3: on_command_error

# 需要导入模块: import discord [as 别名]
# 或者: from discord import DiscordException [as 别名]
def on_command_error(ctx, error):
    if isinstance(error, commands.CommandInvokeError):
        error = error.original

    if isinstance(error, (AvraeException, DiscordException)):
        return
    pytest.fail(f"Command raised an error: {error}")
    raise error 
开发者ID:avrae,项目名称:avrae,代码行数:10,代码来源:conftest.py

示例4: respond_with_emote

# 需要导入模块: import discord [as 别名]
# 或者: from discord import DiscordException [as 别名]
def respond_with_emote(message, icon):
        """
        Responds to a message with an emote reaction.
        :type message: discord.Message
        :type icon: discord.Emoji or str
        :param message: The message to respond to with an emote.
        :param icon: The emote to react with to the message.
        :return:
        """
        try:
            await message.add_reaction(icon)
        except discord.DiscordException:
            pass 
开发者ID:lu-ci,项目名称:apex-sigma-core,代码行数:15,代码来源:command.py

示例5: on_command_error

# 需要导入模块: import discord [as 别名]
# 或者: from discord import DiscordException [as 别名]
def on_command_error(self, context: commands.Context, exception: DiscordException) -> None:
        """Check command errors for UserInputError and reset the cooldown if thrown."""
        if isinstance(exception, commands.UserInputError):
            context.command.reset_cooldown(context)
        else:
            await super().on_command_error(context, exception) 
开发者ID:python-discord,项目名称:seasonalbot,代码行数:8,代码来源:bot.py

示例6: time_add

# 需要导入模块: import discord [as 别名]
# 或者: from discord import DiscordException [as 别名]
def time_add(self, ctx: NabCtx, *, _timezone):
        """Adds a new timezone to display.

        You can look by city, country or region.
        Once the timezone is found, you can set the name you want to show on the `time` command.

        Only Server Moderators can use this command."""
        _timezone = _timezone.lower().replace(" ", "_")
        matches = []
        for tz in pytz.all_timezones:
            if _timezone in tz.lower():
                matches.append(tz)
        if not matches:
            return await ctx.send(f"{ctx.tick(False)} No timezones found matching that name.")
        _timezone = await ctx.choose(matches)
        if _timezone is None:
            return
        timezone_time = dt.datetime.now().astimezone(pytz.timezone(_timezone))
        msg = await ctx.send(f"The time in `{_timezone}` is **{timezone_time.strftime('%H:%M')}**.\n"
                             f"What display name do you want to assign? You can `cancel` if you changed your mind.")
        display_name = await ctx.input(timeout=60, clean=True, delete_response=True)
        if display_name is None or display_name.lower() == "cancel":
            return await ctx.send("I guess you changed your mind.")
        try:
            await msg.delete()
        except discord.DiscordException:
            pass

        if len(display_name) > 40:
            return await ctx.send(f"{ctx.tick(False)} The display name can't be longer than 40 characters.")

        try:
            await ctx.pool.execute("INSERT INTO server_timezone(server_id, zone, name) VALUES($1, $2, $3)",
                                   ctx.guild.id, _timezone, display_name.strip())
        except asyncpg.UniqueViolationError:
            return await ctx.error("That timezone already exists.")
        await ctx.send(f"{ctx.tick()} Timezone `{_timezone}` saved successfully as `{display_name.strip()}`.") 
开发者ID:NabDev,项目名称:NabBot,代码行数:39,代码来源:tibia.py

示例7: post_clanwars

# 需要导入模块: import discord [as 别名]
# 或者: from discord import DiscordException [as 别名]
def post_clanwars(self):
        """Post embbed to channel."""
        self.check_settings()
        for server_id, v in self.settings['clan_wars']['servers'].items():
            if v.get('auto'):
                channel_id = v.get('channel_id')
                channel = self.bot.get_channel(channel_id)
                if channel is not None:
                    # post clan wars status
                    try:
                        clans = await self.get_clanwars()
                    except:
                        pass
                    else:
                        em = self.clanwars_embed(clans)
                        message_id = v.get('message_id')
                        message = None
                        if message_id is not None:
                            try:
                                message = await self.bot.get_message(channel, message_id)
                            except DiscordException:
                                pass

                        if message is None:
                            await self.bot.purge_from(channel, limit=10)
                            message = await self.bot.send_message(channel, embed=em)
                            v["message_id"] = message.id
                            dataIO.save_json(JSON, self.settings)
                        else:
                            await self.bot.edit_message(message, embed=em) 
开发者ID:smlbiobot,项目名称:SML-Cogs,代码行数:32,代码来源:clans.py

示例8: display_profile

# 需要导入模块: import discord [as 别名]
# 或者: from discord import DiscordException [as 别名]
def display_profile(self, ctx, tag, **kwargs):
        """Display profile."""
        sctag = SCTag(tag)
        if not sctag.valid:
            await self.bot.say(sctag.invalid_error_msg)
            return

        try:
            player_data = await self.model.player_data(sctag.tag)
        except json.decoder.JSONDecodeError:
            player_data = self.model.cached_player_data(tag)
        except asyncio.TimeoutError:
            player_data = self.model.cached_player_data(tag)

        if player_data is None:
            await self.bot.send_message(ctx.message.channel, "Unable to load from API.")
            return
        if player_data.is_cache:
            await self.bot.send_message(
                ctx.message.channel,
                (
                    "Unable to load from API. "
                    "Showing cached data from: {}.".format(
                        self.model.cached_player_data_timestamp(tag))
                )
            )

        server = ctx.message.server
        for em in self.embeds_profile(player_data, server=server, **kwargs):
            try:
                await self.bot.say(embed=em)
            except discord.DiscordException as e:
                await self.bot.say("Discord error: {e}".format(e=e)) 
开发者ID:smlbiobot,项目名称:SML-Cogs,代码行数:35,代码来源:crprofile.py

示例9: connect_

# 需要导入模块: import discord [as 别名]
# 或者: from discord import DiscordException [as 别名]
def connect_(self, ctx, *, channel: discord.VoiceChannel=None):
        """Connect to a valid voice channel."""
        if not channel:
            try:
                channel = ctx.author.voice.channel
            except AttributeError:
                raise discord.DiscordException('No channel to join. Please either specify a valid channel or join one.')

        player = self.bot.wavelink.get_player(ctx.guild.id)
        await ctx.send(f'Connecting to **`{channel.name}`**', delete_after=15)
        await player.connect(channel.id)

        controller = self.get_controller(ctx)
        controller.channel = ctx.channel 
开发者ID:PythonistaGuild,项目名称:Wavelink,代码行数:16,代码来源:playlist.py

示例10: connect_

# 需要导入模块: import discord [as 别名]
# 或者: from discord import DiscordException [as 别名]
def connect_(self, ctx, *, channel: discord.VoiceChannel = None):
        if not channel:
            try:
                channel = ctx.author.voice.channel
            except AttributeError:
                raise discord.DiscordException('No channel to join. Please either specify a valid channel or join one.')

        player = self.bot.wavelink.get_player(ctx.guild.id)
        await ctx.send(f'Connecting to **`{channel.name}`**')
        await player.connect(channel.id) 
开发者ID:PythonistaGuild,项目名称:Wavelink,代码行数:12,代码来源:basic.py

示例11: update_decks

# 需要导入模块: import discord [as 别名]
# 或者: from discord import DiscordException [as 别名]
def update_decks(self):
        try:
            if self == self.bot.get_cog("RACFDecks"):
                while True:
                    debug("RACF DECKS: update decks")

                    server = None
                    server_id = self.settings.get("server_id")

                    debug("RACF DECKS: update decks server_id:", server_id)

                    if server_id:
                        server = self.bot.get_server(server_id)

                    debug("RACF DECKS: update decks server:", server)
                    if server:
                        try:
                            tasks = []
                            family_auto = self.settings.get('family_auto')
                            family_channel_id = self.settings.get('family_channel_id')
                            if family_auto and family_channel_id:
                                channel = discord.utils.get(server.channels, id=family_channel_id)
                                if channel:
                                    # self.loop.create_task(
                                    #     self.post_decks(channel, fam=True, show_empty=False)
                                    # )
                                    # await self.post_decks(channel, fam=True, show_empty=False)
                                    tasks.append(
                                        self.post_decks(channel, fam=True, show_empty=False)
                                    )

                            gc_auto = self.settings.get('gc_auto')
                            gc_channel_id = self.settings.get('gc_channel_id')
                            if gc_auto and gc_channel_id:
                                channel = discord.utils.get(server.channels, id=gc_channel_id)
                                if channel:
                                    # self.loop.create_task(
                                    #     self.post_decks(channel, fam=False, show_empty=False)
                                    # )
                                    # await self.post_decks(channel, fam=False, show_empty=False)
                                    tasks.append(
                                        self.post_decks(channel, fam=False, show_empty=False)
                                    )

                        except discord.DiscordException as e:
                            print(e)
                        else:
                            debug("RACF DECKS: Task Length: {}".format(len(tasks)))
                            await asyncio.gather(*tasks, return_exceptions=True)
                            debug("RACF DECKS: Gather done")


                    # await asyncio.sleep(3)
                    debug("RACF DECKS: sleep: ", DELAY)
                    await asyncio.sleep(DELAY)
        except asyncio.CancelledError:
            pass 
开发者ID:smlbiobot,项目名称:SML-Cogs,代码行数:59,代码来源:racf_decks.py


注:本文中的discord.DiscordException方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。