Discord · Útmutató

Hogyan készíts Discord botot

Frissítve October 10, 2026 4 perc olvasás

Ezen az oldalon
  1. 1. lépés: Hozd létre az alkalmazást és a bot tokenjét
  2. 2. lépés: Hívd meg a botot a szerveredre
  3. 3a. lépés: Írd meg a botot Pythonban (discord.py)
  4. 3b. lépés: Írd meg a botot JavaScriptben (discord.js)
  5. Tartsd a tokent a kódon kívül
  6. 4. lépés: Tartsd online a botodat
  7. GYIK

A Discord bot egy program, amely saját fiókkal lép be a Discordba, és parancsokra válaszol, moderál, játékokat futtat vagy frissítéseket posztol. Az elkészítéséhez három dolog kell: egy alkalmazás a Discord Developer Portalon, néhány sor kód, és egy hely, ahol ez a kód fut.

Ebben az útmutatóban egy működő botot építünk /ping slash paranccsal, Pythonban (discord.py) vagy JavaScriptben (discord.js) — válaszd azt a nyelvet, amelyet ismersz.

1. lépés: Hozd létre az alkalmazást és a bot tokenjét

  1. Nyisd meg a Developer Portalt. Menj a discord.com/developers/applications oldalra, hozz létre egy új alkalmazást, és adj neki nevet.
  2. Szerezd meg a tokent. A Bot oldalon kattints a Reset Token gombra, és másold ki. A Discord csak egyszer mutatja meg; ha elveszíted, állítsd vissza újra.
  3. Tartsd titokban a tokent. Ez a bot jelszava: akinél megvan, az irányítja a botodat. Soha ne illeszd be megosztott kódba, és ne commitold Gitbe.
Kellenek intentek? Egy csak slash parancsokat használó botnak nincs szüksége privilegizált intentre. A Message Content opciót a Bot oldalon csak akkor kapcsold be, ha a botnak olvasnia kell, amit az emberek normál üzenetekben írnak. A több mint 10 000 felhasználós szervereken lévő botoknak a Discord jóváhagyása kell a privilegizált intentekhez.

2. lépés: Hívd meg a botot a szerveredre

  1. Nyisd meg az alkalmazásod Installation oldalát.
  2. A szerverekre (guilds) vonatkozó alapértelmezett telepítési beállításoknál add hozzá a bot és applications.commands hatóköröket, valamint a bot számára szükséges jogosultságokat — ehhez az útmutatóhoz a Send Messages elég.
  3. Nyisd meg a kapott telepítési linket, válaszd ki a szerveredet, és engedélyezd. A bot megjelenik a taglistában, offline állapotban, amíg a kódod el nem indul.

A régebbi útmutatók az OAuth2 > URL Generator menüt használják ugyanezzel a két hatókörrel; ez továbbra is működik.

3a. lépés: Írd meg a botot Pythonban (discord.py)

A discord.py 2.7-hez Python 3.8 vagy újabb kell. Telepítsd, és hozd létre a bot.py fájlt:

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"])

Futtasd úgy, hogy a token egy környezeti változóban legyen, például Linuxon vagy macOS-en így: DISCORD_TOKEN=your-token python bot.py.

3b. lépés: Írd meg a botot JavaScriptben (discord.js)

A discord.js 14-hez Node.js 18 vagy újabb kell. Egy új mappában futtasd az npm install discord.js parancsot, és hozd létre az index.js fájlt:

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);

Indítsd el ezzel: DISCORD_TOKEN=your-token node index.js. Amikor a konzolon megjelenik a Logged in, írd be a /ping parancsot a szervereden.

Tartsd a tokent a kódon kívül

  • Használj környezeti változót vagy .env fájlt, és az első commit előtt add hozzá a .env fájlt a .gitignore-hoz.
  • Ha a token kiszivárog, állítsd vissza azonnal a Bot oldalon. A régi token megszűnik működni, az újat pedig ott frissíted, ahol a bot fut.
  • A GitHub átvizsgálja a nyilvános repókat Discord bot tokenek után, és jelenti őket a Discordnak, amely visszavonhatja őket — így egy véletlenül feltöltött token gyakran már azelőtt leáll, hogy észrevennéd.

4. lépés: Tartsd online a botodat

A botod csak addig online, amíg a kódja fut. Ha bezárod a terminált vagy kikapcsolod a gépet, offline lesz. Három lehetőséged van:

  • Saját gép — ingyenes, fejlesztéshez és teszteléshez megfelel, de a bot alszik, amikor a számítógép is.
  • Ingyenes csomag — a legtöbb altatja vagy korlátozza az egész hónapban futó botokat; a kompromisszumokat az ingyenes Discord bot hosting útmutatóban hasonlítjuk össze.
  • Bot hosting — egy kis, folyamatosan működő szerver. A HytHost Discord bot hostingon feltöltöd a projektet, kiválasztod a Node.js, Python vagy más futtatókörnyezetet, a panel pedig elindítja a botot, és újraindítja, ha összeomlik.

A teljes leírás, a feltöltéstől az automatikus újraindításig, a Discord bot hosztolása 24/7 útmutatóban található.

Futtasd a botodat bekapcsolva hagyott gép nélkül: a HytHost Discord bot hosting támogatja a Node.js, Python, Java, Go, C#, Bun és Lavalink futtatókörnyezetet — €0.89/hó-tól.

Bot hosting csomagok
GYIK

Gyakran ismételt kérdések

Igen. Az alkalmazás, a token és a kód létrehozása semmibe sem kerül, a discord.py és a discord.js pedig ingyenes. Csak akkor fizetsz, ha olyan helyen szeretnéd futtatni, amely online marad.

Amelyiket már ismered. A discord.py és a discord.js is kiforrott, és a teljes Discord API-t lefedi. Ha egyiket sem ismered, a Python egyszerűbben olvasható; a JavaScriptnek nagyobb a könyvtár-ökoszisztémája.

Ellenőrizd, hogy az applications.commands hatókörrel hívtad-e meg, és hogy a kód szinkronizálta-e a parancsokat. A globális parancsok megjelenése eltarthat egy kis ideig; ha nem jelennek meg, indítsd újra a Discordot.

A normál üzenetek szövegének olvasásához a Message Content intent kell, amelyet a Developer Portalon kell bekapcsolni és a kódban kérni. Enélkül a bot továbbra is megkapja a slash parancsokat, az említéseket és a privát üzeneteket.

Azonnal állítsd vissza a Developer Portal Bot oldalán. A régi token megszűnik működni; az újat add meg mindenhol, ahol a bot fut, a régit pedig töröld a kódodból és az előzményekből.

A botod online, a géped nélkül

A HytHost Discord bot hosting Node.js, Python, Java, Go, C#, Bun vagy Lavalink botokat futtat MySQL adatbázissal és biztonsági mentésekkel — €0.89/hó-tól.

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

Hasznos volt ez az útmutató?