Discord Components Select Menu. Не работает код, причину найти не могу
Подскажите пожалуйста. В чем кроется беда? Делал по гайду, но даже так выдает ошибку
Сам код:
@bot.command()
async def button(ctx):
await ctx.send(content='Select Menu Test', components=[Select(
placeholder='Select Something!',
options=[
SelectOption(label='Option1', value='1'),
SelectOption(label='Option2', value='2'),
SelectOption(label='Option3', value='3'),
SelectOption(label='Cancel', value='Cancel')
],
custom_id='SelectTesting'
)])
interaction = await bot.wait_for('select Option', check=lambda inter: inter.custom_id == 'SelectTesting' and inter.user == ctx.author)
res = interaction.values[0]
if res == 'Cancel':
await interaction.send('You have canceled your select option')
elif res == '1':
await interaction.send('You have chosen option 1')
else:
await interaction.send(res)
Ошибка:
Traceback (most recent call last):
File "C:\Users\Katerina\Desktop\proj\bot\botrun.py", line 5, in <module>
from discord_components import Select, SelectOption
File "C:\Users\Katerina\Desktop\proj\venv\lib\site-packages\discord_components\__init__.py", line 1, in <module>
from .client import *
File "C:\Users\Katerina\Desktop\proj\venv\lib\site-packages\discord_components\client.py", line 14, in <module>
from .interaction import Interaction, InteractionEventType
File "C:\Users\Katerina\Desktop\proj\venv\lib\site-packages\discord_components\interaction.py", line 28, in <module>
class InteractionEventType(IntEnum):
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.1520.0_x64__qbz5n2kfra8p0\lib\enum.py", line 289, in __new__
enum_member = __new__(enum_class, *args)
TypeError: int() argument must be a string, a bytes-like object or a real number, not 'NoneType'
Ответы (1 шт):
Автор решения: s_l_a_v_k_a
→ Ссылка
@bot.command()
async def button(ctx):
await ctx.send('Select Menu Test',
components=[
SelectMenu(
custom_id='SelectTesting',
placeholder='Select Something!',
options=[
SelectOption(label='Option1', value='1'),
SelectOption(label='Option2', value='2'),
SelectOption(label='Option3', value='3'),
SelectOption(label='Cancel', value='Cancel')
]
)]
)
@client.event
@on_select_option(interaction):
if inter.values[0] == "1":
await interaction.respond(type=6) #обновить селектор, да бы не вылезало: Ошибка взаимодействия.
await interaction.send('Select Menu Test',
components=[
SelectMenu(
custom_id='SelectTesting',
placeholder='Select Something!',
options=[
SelectOption(label='Option1', value='1'),
SelectOption(label='Option2', value='2'),
SelectOption(label='Option3', value='3'),
SelectOption(label='Cancel', value='Cancel')
]
)]
)
await interaction.send('You have chosen option 1', ephemeral=False)