Взаимодействие с кнопкой просмотра discord.py не удавалось всякий раз, когда «Нет общего идентификатора успешно возобновPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Взаимодействие с кнопкой просмотра discord.py не удавалось всякий раз, когда «Нет общего идентификатора успешно возобнов

Сообщение Anonymous »

Недавно я создал приложение Discord, используя discord.py для обработки приложений на моем сервере.
Существует функция /apply, которая отправляет встраивание и «ReviewView» в наш канал для сотрудников.

Код: Выделить всё

class ReviewView(View):
def __init__(self, embed_user:discord.user, floor:int):
super().__init__()
self.embed_user = embed_user
self.floor=floor

@discord.ui.button(label="Accept", style=discord.ButtonStyle.success)
async def approve(self, interaction: discord.Interaction, button: discord.ui.Button):
embed = interaction.message.embeds[0]
embed.color = discord.Color.green()

role = get(self.embed_user.guild.roles, name=f"F{self.floor} Carrier")
user = self.embed_user
user_roles = [role.name for role in user.roles]

if not any(role=="Carry Team" for role in user_roles):
carry_team = get(interaction.guild.roles, name=f"Carry Team")
await user.add_roles(carry_team)
try:
dm_embed = discord.Embed(title=f"Your dungeon floor {self.floor} application has been accepted", description="Thank you for joining our carrier program. You will be pinged when a carry service that you provide is requested!")
dm_embed.add_field(name="Rules", value="")
dm_embed.add_field(name="Accepted By", value=f"{interaction.user.mention}", inline=False)

dm_embed.set_author(name=interaction.user.name, icon_url=interaction.user.display_avatar.url)
dm_embed.timestamp = interaction.created_at
dm_embed.color=discord.Color.green()
await user.send(embed=dm_embed)
await interaction.message.edit(embed=embed)
await self.embed_user.add_roles(role)
await interaction.response.send_message(f"{self.embed_user.mention}'s application accepted by {interaction.user.mention}", ephemeral=False)
#This is just a lazy way to deal with when the user turns off server dms
except Exception:
carrier_chat=interaction.guild.get_channel(990438688561463297)
await interaction.message.edit(embed=embed)
await self.embed_user.add_roles(role)
await interaction.response.send_message(f"{self.embed_user.mention}'s application accepted by {interaction.user.mention}", ephemeral=False)
await carrier_chat.send(embed=dm_embed)

pass
Я сохранил объект пользователя Discord во встраивании следующим образом

Код: Выделить всё

view = ReviewView(embed_user=interaction.user, floor=floor)
Это работало нормально, когда я тестировал это сам, но всякий раз, когда консоль отладки показывает «Нет общего идентификатора успешно возобновил сеанс» после приложения, представление просто больше не работает.
Он возвращает только сообщение «Это взаимодействие не удалось», и в консоли ничего не отображается.
Любые идеи будут замечательными!
Позвольте мне узнайте, нужна ли дополнительная информация

Подробнее здесь: https://stackoverflow.com/questions/792 ... -successfu
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»