@chalkprince

Как исправить простого дискорд бота?

import discord
from discord.ext import commands

intents=intents=discord.Intents.all()

bot = commands.Bot(command_prefix = '.', intents = intents)

@bot.event
async def on_ready():
    print('текст')

@bot.event
async def on_member_join(member):
    await member.send("ТЕКСТ!")
    
    for ch in bot.get.guild(member.guild.id).channel:
        if ch.name == "962359853995671572":
            await bot.get.channel(ch.id).send( f'{member}, ТЕКСТ')
async def on_member_leave(member):
    await member.send("ТЕКСТ")

    for ch in bot.get.guild(member.guild.id).channel:
        if ch.name == "967540720284098560":
            await bot.get.channel(ch.id).send( f'{member}, ТЕКСТ')

bot.run('ТОКЕН')


Бот уже отправляет в лс сообщение, НО на нужный канал на сервере - нет. Есть ли ошибка в коде?
  • Вопрос задан
  • 60 просмотров
Решения вопроса 1
Alumber
@Alumber
Учусь python. Люблю помогать другим.
Во-первых, пожалуйста, в следующий раз, отправляй код через значек >, во вторых, судя по тому, что я могу увидеть, ты смотреть имя канал, а указываешь айди. Используй:
if (ch.id == "967540720284098560"):
    ...
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы