Как отправить сообщение от имени своего бота в определенный канал
Не могу разобраться как это сделать
Источник: Stack Overflow на русском
Не могу разобраться как это сделать
Подключить модуль для поиска
from disnake import utils
Сначала тебе нужно получить этот самый канал. Для получения канала нужен его ID или хотя-бы название.
channel = utils.get(*сервер*.channels, id=*ID*)
channel = utils.get(*сервер*.channels, name=*название*)
channel = utils.get(client.get_all_channels(), id=*ID*)
А дальше просто отправить сообщение
channel.send('Сообщение')
@bot.command(name="send_message")
async def send_message(ctx, chat_id : int, *, message : str):
channel = bot.get_channel(chat_id)
await channel.send(message)
Я сделал это так
Чтобы отправить сообщение от имени своего бота в определенный канал Discord, нужно:
import discord
client = discord.Client()
@client.event
async def on_ready():
# Получаем идентификатор канала по его имени
channel = discord.utils.get(client.get_all_channels(), name='channel_name')
# Отправляем сообщение в канал
await client.send_message(channel, 'Hello, this is a message from my bot!')
client.run('BOT_TOKEN')
В этом коде используем библиотеку discord.py
для создания экземпляра клиента Discord. Мы используем декоратор on_ready
для определения функции, которая будет вызвана при готовности клиента.
Не забудьте заменить BOT_TOKEN на токен вашего бота и 'channel_name' на имя канала, где вы хотите отправить сообщение.