хотел сделать что бы при вводе команды бот отправлял в ЛС сообщение с правилами сервера, но не знаю как это сделать

хотел сделать что бы при вводе команды бот отправлял правила сервера в ЛС и это выглядело так:

  1. — Оскорбления └ Оскорбление — умышленное унижение чести и достоинства личности. Оскорбление кого либо на сервере запрещено.

  2. — Рассылка спама. └ Реклама — распространение информации для привлечения внимания к объекту рекламирования. Использование рекламы разрешено только в канале #спам-и-реклама .

и т.д.

но не знаю как это сделать что бы файл c правилами был отдельно от основного кода попробовал сделать так

@client.command()
async def rules(ctx):
    await ctx.author.send (open('RULES_SERVER.txt'))

но бот отправляет это

<_io.TextIOWrapper name='RULES_SERVER.txt' mode='r' encoding='cp1251'>

кто может помочь? буду очень благодарен


Ответы (1 шт):

Автор решения: RAINGM

Лучше делать через саму команду или если хотите изменить, то делать через базу данных. А так я предлагаю неплохое решение.

@bot.command()
async def rules(ctx):
    embed = discord.Embed()
    embed.description = (
        "1. — Оскорбления └ Оскорбление — умышленное унижение чести и достоинства личности. Оскорбление кого либо на сервере запрещено.\n"
        "2. — Рассылка спама. └ Реклама — распространение информации для привлечения внимания к объекту рекламирования. Использование рекламы разрешено только в канале #спам-и-реклама.\n"
    )
    await ctx.author.send(embed=embed)
→ Ссылка