Discord · Водич

Како да направите Discord бот

Ажурирано October 10, 2026 4 мин. читање

На оваа страница
  1. Чекор 1: Создајте ја апликацијата и токенот на ботот
  2. Чекор 2: Поканете го ботот на вашиот сервер
  3. Чекор 3а: Напишете го ботот во Python (discord.py)
  4. Чекор 3б: Напишете го ботот во JavaScript (discord.js)
  5. Чувајте го токенот надвор од кодот
  6. Чекор 4: Држете го ботот онлајн
  7. ЧПП

Discord бот е програма што се најавува на Discord со сопствена сметка и одговара на команди, модерира, игра игри или објавува новости. За да направите бот ви требаат три работи: апликација во Developer Portal на Discord, неколку линии код и место каде тој код ќе работи.

Овој водич гради функционален бот со slash команда /ping, во Python (discord.py) или JavaScript (discord.js) — изберете го јазикот што го знаете.

Чекор 1: Создајте ја апликацијата и токенот на ботот

  1. Отворете го Developer Portal. Одете на discord.com/developers/applications, создајте нова апликација и дајте ѝ име.
  2. Земете го токенот. На страницата Bot кликнете Reset Token и копирајте го. Discord го прикажува само еднаш; ако го изгубите, ресетирајте го повторно.
  3. Чувајте го токенот во тајност. Тој е лозинката на ботот: кој и да го има, го контролира вашиот бот. Никогаш не го вметнувајте во код што го споделувате и не го праќајте во Git.
Дали ви требаат intents? На бот што користи само slash команди не му треба привилегиран intent. Вклучете Message Content на страницата Bot само ако ботот мора да чита што луѓето пишуваат во обични пораки. Ботовите на сервери со повеќе од 10.000 корисници бараат одобрение од Discord за привилегирани intents.

Чекор 2: Поканете го ботот на вашиот сервер

  1. Отворете ја страницата Installation на вашата апликација.
  2. Во стандардните поставки за инсталација на сервери додајте ги scopes bot и applications.commands, како и дозволите што му требаат на ботот — Send Messages е доволно за овој водич.
  3. Отворете го добиениот линк за инсталација, изберете го серверот и одобрете. Ботот се појавува во листата на членови, офлајн додека не се стартува вашиот код.

Постарите упатства користат OAuth2 > URL Generator со истите два scopes; тоа сè уште функционира.

Чекор 3а: Напишете го ботот во Python (discord.py)

discord.py 2.7 бара Python 3.8 или понов. Инсталирајте го и создајте bot.py:

pip install discord.py
import os
import discord
from discord import app_commands

class Bot(discord.Client):
    def __init__(self):
        super().__init__(intents=discord.Intents.default())
        self.tree = app_commands.CommandTree(self)

    async def setup_hook(self):
        await self.tree.sync()

bot = Bot()

@bot.tree.command(description="Replies with Pong!")
async def ping(interaction: discord.Interaction):
    await interaction.response.send_message("Pong!")

bot.run(os.environ["DISCORD_TOKEN"])

Стартувајте го со токенот во променлива на околината, на пример DISCORD_TOKEN=your-token python bot.py на Linux или macOS.

Чекор 3б: Напишете го ботот во JavaScript (discord.js)

discord.js 14 бара Node.js 18 или понов. Во нова папка извршете npm install discord.js и создајте index.js:

const { Client, Events, GatewayIntentBits, REST, Routes, SlashCommandBuilder } = require('discord.js');

const commands = [new SlashCommandBuilder().setName('ping').setDescription('Replies with Pong!').toJSON()];
const client = new Client({ intents: [GatewayIntentBits.Guilds] });

client.once(Events.ClientReady, async (c) => {
  await new REST().setToken(process.env.DISCORD_TOKEN).put(Routes.applicationCommands(c.user.id), { body: commands });
  console.log(`Logged in as ${c.user.tag}`);
});

client.on(Events.InteractionCreate, async (interaction) => {
  if (interaction.isChatInputCommand() && interaction.commandName === 'ping') await interaction.reply('Pong!');
});

client.login(process.env.DISCORD_TOKEN);

Стартувајте го со DISCORD_TOKEN=your-token node index.js. Кога конзолата ќе прикаже Logged in, напишете /ping на вашиот сервер.

Чувајте го токенот надвор од кодот

  • Користете променлива на околината или датотека .env и додајте .env во .gitignore пред првиот commit.
  • Ако токенот протече, ресетирајте го веднаш на страницата Bot. Стариот токен престанува да работи, а новиот го ажурирате таму каде што работи ботот.
  • GitHub ги скенира јавните репозиториуми за токени на Discord ботови и ги пријавува на Discord, кој може да ги поништи — па токен објавен по грешка често престанува да работи пред да забележите.

Чекор 4: Држете го ботот онлајн

Вашиот бот е онлајн само додека работи неговиот код. Затворете го терминалот или исклучете го компјутерот и тој оди офлајн. Имате три опции:

  • Вашиот компјутер — бесплатно, добро за развој и тестирање, но ботот спие кога спие и компјутерот.
  • Бесплатен план — повеќето ги паузираат или ограничуваат ботовите што работат цел месец; компромисите се споредени во бесплатен хостинг за Discord ботови.
  • Хостинг за ботови — мал сервер што е секогаш вклучен. На HytHost хостинг за Discord ботови го прикачувате проектот, избирате Node.js, Python или друг runtime, а панелот го стартува ботот и го рестартира ако падне.

Целото упатство, од прикачување до автоматско рестартирање, е во како да хостирате Discord бот 24/7.

Стартувајте го ботот без да го оставате компјутерот вклучен: HytHost хостингот за Discord ботови поддржува Node.js, Python, Java, Go, C#, Bun и Lavalink — од €0.89/мес.

Видете ги плановите за ботови
ЧПП

Често поставувани прашања

Да. Создавањето на апликацијата, токенот и кодот не чини ништо, а discord.py и discord.js се бесплатни. Плаќате само ако сакате да го хостирате некаде каде што ќе остане онлајн.

Што и да веќе знаете. discord.py и discord.js се зрели и го покриваат целиот Discord API. Ако не знаете ниту едно, Python се чита поедноставно; JavaScript има поголем екосистем на библиотеки.

Проверете дали сте го поканиле со scope applications.commands и дали кодот ги синхронизирал командите. На глобалните команди може да им треба малку време да се појават; ако не се појават, рестартирајте го Discord.

За читање обичен текст на пораки е потребен intent Message Content, вклучен во Developer Portal и побаран во кодот. Без него ботот сепак прима slash команди, спомнувања и директни пораки.

Ресетирајте го веднаш на страницата Bot во Developer Portal. Стариот токен престанува да работи; ставете го новиот таму каде што работи ботот и отстранете го стариот од кодот или историјата.

Вашиот бот, онлајн без вашиот компјутер

HytHost хостингот за Discord ботови работи со Node.js, Python, Java, Go, C#, Bun или Lavalink, со MySQL база и резервни копии — од €0.89/мес.

Live chat 8 AM – 11 PM (Chișinău time) · tickets answered during business hours

Дали овој водич ви беше корисен?