vollchara
@vollchara
Нубик

Как сделать, что бы команда работала только в лс + лог?

По задумке бот должен реагировать на команду, которая отправлена в лс. Если команда отправлена в канале сервера - никакой реакции. На деле, бот воспринимает команду как в лс, так и в каналах.
1. Как собственно сделать, что бы реакция на команду была только в лс?
2. Как сделать лог сообщений лс бота к примеру за 24ч, по форме user/message?
@bot.command()
async def anon(ctx, *, arg):
    if discord.ChannelType.private:
    	channel = bot.get_channel(#id)
    	await channel.send(arg)
  • Вопрос задан
  • 103 просмотра
Решения вопроса 1
1. https://discordpy.readthedocs.io/en/stable/ext/com...
@bot.command()
@commands.dm_only()
async def cmd(...):


2. https://discordpy.readthedocs.io/en/stable/api.htm...
https://discordpy.readthedocs.io/en/stable/api.htm...
https://discordpy.readthedocs.io/en/stable/api.htm...
isinstance(ctx.channel, discord.DMchannel)
# или
ctx.channel.type == discord.ChannelType.private
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
deeplay Новосибирск
от 130 000 ₽
Enjoy PRO Санкт-Петербург
от 140 000 до 180 000 ₽
от 130 000 ₽
22 окт. 2020, в 22:02
5000 руб./за проект
22 окт. 2020, в 21:51
1500 руб./за проект
22 окт. 2020, в 21:22
500 руб./за проект