TwitchIO: удалить одно сообщение в канале

#python-3.x #twitch-api

#python-3.x #twitch-api

Вопрос:

Как я могу удалить одно сообщение, отправленное пользователем с помощью TwitchIO?

 @bot.event
async def event_message(ctx):
    await ctx.content.delete() # Does not work
    await ctx.content.remove() # Does not work
    await ctx.channel.timeout(ctx.author, 1) # Does not work
  

Ответ №1:

Вопрос старше, но я все равно на него отвечу.
Twitchio напрямую не поддерживает это.
Но вы можете удалять отдельные сообщения в чате Twitch, см. Документацию Twitch IRC.
CLEARMSG (команды Twitch)
Для этого вам нужен идентификатор сообщения. Вы получаете идентификатор в тегах сообщений.
Теги сообщений
Пример кода:

 async def event_message(message):
    if not message.author.name == self.bot.nick:
        message_id = message.tags['id']
        await message.channel.send(f"/delete {message_id}")
  

Если вы хотите отключить кого-либо, выполните следующие действия:

 await message.channel.timeout(message.author.name, 120, f"reason")
  

Документация Twitchio по каналу.Тайм-аут