Я здесь вижу 4 отдельных вопроса и вижу 0 попыток самостоятельно это реализовать.
Да все это сделать можно, открываете
документацию и изучаете.
Даже 3 строчки что вы приложили дают понять, что вы ее не открывали, поскольку слеш-команды принимают не
Контекст
, а
Взаимодействие. Это разные объекты с разными атрибутами и методами.
@client.tree.command()
async def send(interaction: discord.Interaction, text_to_send: str):
await interaction.response.send_message(text_to_send)
В частности у него есть атрибут
response, который как раз отвечает за ответ, а не самостоятельное сообщение.
Кто вызвал команду лежит в
user.
Для выбора человека и выбора из пунктов нужно ознакомиться со страницей
discord-converters, там даны все типы, которые можно передать в параметры команды. Нужно только проставить типы, все остальное библиотека делает сама.