Oma esimese Discordi boti loomine on lihtsam, kui sa arvad. Sa ei vaja arvutiteaduse kraadi ega aastatepikkust programmeerimiskogemust. 2026. aastal võtab funktsionaalse boti ehitamine ja juurutamine fookuse korral aega nädalavahetuse.
See juhend juhatab sind läbi kogu protsessi: boti registreerimine, esimese käsu kirjutamine, kohalik testimine ja otseülekande juurutamine. Lõpuks on sul serveris töötav bot.
Mõistmine, mis on Discordi bot
Discordi bot on programm, mis ühendub Discordiga API kaudu ja reageerib sündmustele: kui keegi kirjutab käsu, reageerib sõnumile, liitub serveriga jne.
Põhimõisted:
- Rakendus vs. Bot: Sinu "rakendus" on registreeritud Discordi arendajaportaalis. "Bot" on selle rakendusega seotud kasutajakonto. Ühel rakendusel on üks bot.
- Tokenid: Salajane võti, mis autentib sinu boti. Ära seda kunagi jaga. See on nagu sinu boti parool.
- Intentsioonid: Õigused, mis võimaldavad sinu botil näha teatud sündmusi (sõnumeid, reaktsioone, liikmete staatuse muutusi jne). Sa lubad ainult seda, mida vajad.
- Käsud: Botid reageerivad käskudele. Kaasaegsed botid kasutavad kaldkriipsuga käske (
/käsk) eesliite käskude (!käsk) asemel. Kaldkriipsuga käske toetatakse ametlikult ja need on soovitatavad. - Sündmused: Sinu bot kuulab Discordi sündmusi (sõnum saadetud, reaktsioon lisatud, liige liitus) ja reageerib neile.
Samm 1: Registreeri oma bot Discordi arendajaportaalis
See on koht, kus sinu bot ametlikult Discordi süsteemis eksisteerib.
Protsess:
- Mine Discordi arendajaportaali
- Logi sisse oma Discordi kontoga
- Klõpsa "Uus rakendus"
- Nimetage see (nt "Minu esimene bot")
- Klõpsa "Loo"
- Sa oled nüüd oma rakenduse seadetes
Nüüd loo boti kasutaja:
- Mine "Bot" sektsiooni (vasakpoolne külgriba)
- Klõpsa "Lisa bot"
- Boti kasutajanime all näed nuppu "TOKEN"
- Kopeeri token – see on see, kuidas sinu bot autentib. Hoia seda saladuses. Ära seda kunagi avalikult jaga ega commit'i seda GitHubi ilma krüpteerimiseta.
Konfigureeri boti seaded:
- Luba "Sõnumi sisu intentsioon" (võimaldab botil lugeda sõnumi teksti)
- Luba "Serveri liikmete intentsioon" (võimaldab botil näha, kes on serveris)
- Kerige alla "OAuth2" sektsiooni
Samm 2: Genereeri oma boti kutselink
Sa vajad spetsiaalset kutselinki, et bot serverisse lisada.
Arendajaportaalis:
- Mine "OAuth2" → "URL-i generaator"
- Märgi "ULATUSED" all:
bot - Vali "ÕIGUSED" all, mida sinu bot saab teha:
Saada sõnumeid(oluline iga boti jaoks)Halda sõnumeid(kui sa modereerid)Lisa reaktsioone(kui bot reageerib asjadele)Ühenda+Räägi(kui see on muusika/hääle bot)- Õppimiseks vali lihtsalt
Saada sõnumeid+Loe sõnumeid(minimaalselt vajalik)
- Kopeeri genereeritud URL allosas
- Jaga seda URL-i serveri omanikega (või kasuta seda ise, et lisada oma testserverisse)
Ära kasuta administraatori õigusi kui see pole absoluutselt vajalik. Üleliigne õiguste andmine on turvarisk.
Samm 3: Vali oma keel ja raamistik
Kaks peamist võimalust algajatele:
JavaScript (discord.js)
Discord.js on kõige populaarsem Discordi boti raamistik. Suur kogukond, palju õpetusi ja suurepärane dokumentatsioon.
Plussid:
- Suurim kogukond ja kõige rohkem õpetusi veebis
- discord.js dokumentatsioon on suurepärane
- Node.js on laialdaselt kasutusel ja lihtne õppida
- Lihtne juurutamine enamikule hostimisplatvormidele
Miinused:
- JavaScriptil on omapärad (async/await õppimiskõver)
- Node.js lisab Pythoniga võrreldes mälukasutust
Alustamine:
- Installi Node.js (v18+)
- Loo projektikaust
npm init -ynpm install discord.js
Python (discord.py)
Lihtsam süntaks, sobib suurepäraselt algajatele, suurepärane põhitõdede õppimiseks.
Plussid:
- Lihtsaim süntaks õppimiseks
- Intuitiivne algajatele
- discord.py dokumentatsioon on hea
- Pythonit kasutatakse kõikjal (andmeteadus, veeb, automatiseerimine)
Miinused:
- Väiksem kogukond kui discord.js (kuid siiski suur)
- Vähem õpetusi kui JavaScriptil
- Veidi suurem mälukasutus
Alustamine:
- Installi Python 3.10+
- Loo projektikaust
pip install discord.py
Soovitus algajatele: Kui sa tead Pythonit, kasuta discord.py. Kui sa tead JavaScripti, kasuta discord.js. Kui sa ei tea kumbagi, on Pythonit lihtsam õppida, kuid JavaScriptil on rohkem ressursse veebis. Vali üks ja pühendu.
Samm 4: Kirjuta oma esimene bot (Pythoni näide)
Siin on minimaalne töötav Discordi bot Pythonis, mis reageerib käskudele:
import discord
from discord.ext import commands
# Loo bot käsu eesliite ja intentsioonidega
intents = discord.Intents.default()
intents.message_content = True
bot = commands.Bot(command_prefix='!', intents=intents)
@bot.event
async def on_ready():
print(f'{bot.user} on Discordiga ühendatud!')
@bot.command(name='hello', help='Ütleb tere')
async def hello(ctx):
await ctx.send(f'Tere {ctx.author.name}!')
@bot.command(name='ping', help='Vastab pongiga')
async def ping(ctx):
await ctx.send('Pong!')
bot.run('SINU_TOKEN_SIIN')
Mida see teeb:
- Ühendub Discordiga
- Kuulab
!helloja!pingkäske - Reageerib sõnumiga, kui see käivitatakse
Selle käivitamiseks:
- Asenda
'SINU_TOKEN_SIIN'oma tegeliku tokeniga 1. sammust - Salvesta kui
bot.py - Käivita:
python bot.py - Discordis kirjuta
!hellomis tahes kanalisse - Bot vastab: "Tere [SinuNimi]!"
Samm 5: Testi kohalikult
Enne juurutamist testi oma boti kohalikult (oma arvutis).
Seadista testserver:
- Loo privaatne Discordi server testimiseks
- Lisa oma bot sinna, kasutades kutselinki 2. sammust
- Käivita oma boti kood kohalikult
- Kirjuta käske testserverisse
- Jälgi vigu oma terminalis; paranda need
Levinud vead:
- "Vigane token" – Sa kopeerisid tokeni valesti või see on aegunud. Genereeri uuesti arendajaportaalis.
- "Puuduvad õigused" – Botil pole õigust seda toimingut selles kanalis teha. Lisa õigusi või kasuta kanalit, kus botil on rohkem õigusi.
- "Intentsioonid pole lubatud" – Sa pead lubama intentsioonid arendajaportaalis (Sõnumi sisu intentsioon, Serveri liikmete intentsioon jne).
Testi põhjalikult. Tootmises vigadega bot on piinlik.
Samm 6: Lisa rohkem käske
Nüüd, kui sa mõistad põhitõdesid, laienda rohkem funktsioone.
Pythoni näide – lihtne majanduskäsk:
@bot.command(name='balance', help='Kontrolli oma müntide saldot')
async def balance(ctx):
# Päris botis päriks see andmebaasist
# Praegu tagasta lihtsalt näidisväärtus
await ctx.send(f'{ctx.author.name}, sul on 100 münti!')
@bot.command(name='roll', help='Veereta täringut (1-6)')
async def roll(ctx):
import random
result = random.randint(1, 6)
await ctx.send(f'{ctx.author.name} veeretatud: **{result}**')
Iga käsk on lihtne funktsioon. Lisa nii palju kui soovid.
Samm 7: Juuruta oma bot
Kohalik hostimine sobib testimiseks, kuid sinu bot peatub, kui sa oma sülearvuti sulged. Juuruta serverisse, et see töötaks 24/7.
Tasuta hostimisvalikud
Replit (lihtsaim algajatele):
- Mine Replit.com
- Loo uus Repl → Python (või Node.js)
- Kleebi oma boti kood
- Klõpsa "Käivita"
- Replit hostib seda tasuta (piirangutega: võib pärast tegevusetust magama jääda)
Railway.app (kaasaegne, usaldusväärne):
- Mine Railway.app
- Ühenda GitHub (või laadi failid otse üles)
- Loo uus projekt → vali oma bot
- Railway juurutab automaatselt
- Tasuta pakett sisaldab 5 dollari suurust kuukrediiti
Glitch (sarnane Replitile):
- Mine Glitch.com
- Loo uus projekt
- Kleebi kood
- Glitch hoiab seda töös (tasuta paketi piirides)
Oluline: Ära kodeeri oma tokenit koodi, mida sa GitHubi pushid. Kasuta keskkonnamuutujaid:
import os
from dotenv import load_dotenv
load_dotenv()
TOKEN = os.getenv('DISCORD_TOKEN')
bot.run(TOKEN)
Loo kohalikult .env fail (lisa .gitignore faili, et seda ei commit'itaks):
DISCORD_TOKEN=sinu_tegelik_token_siin
Replitis/Railway's määra token salajase keskkonnamuutujana platvormi seadetes (mitte koodis).
Levinud algajate vead
Viga 1: Tokeni kodeerimine Ära kunagi pane oma tokenit koodi, mida sa GitHubi pushid. Lekkinud tokenitega botid on kohe ohus. Kasuta keskkonnamuutujaid.
Viga 2: Vigade käsitlemata jätmine Sinu bot jookseb ootamatu sisendi korral kokku. Lisa veakäsitlus:
@bot.command()
async def divide(ctx, a: int, b: int):
try:
result = a / b
await ctx.send(result)
except ZeroDivisionError:
await ctx.send('Nulliga jagamine pole võimalik!')
except ValueError:
await ctx.send('Palun sisesta kehtivad numbrid!')
Viga 3: Kiiruspiirangute eiramine Discord piirab, kui kiiresti sa saad sõnumeid saata. Ära spämmita API-t. Lisa viivitusi hulgi toimingute vahele.
Viga 4: Intentsioonide ignoreerimine Paljud algajate botid ebaõnnestuvad, kuna nad ei luba vajalikke intentsioone arendajaportaalis. Kontrolli intentsioone, mida sinu bot vajab, enne juurutamist.
Viga 5: Liiga ambitsioonikas ulatus Ära proovi ehitada majandussüsteemi, modereerimist, muusikat ja 50 käsku oma esimeses botis. Alusta 3-5 lihtsa käskuga. Laienda, kui sa oled mugav.
Järgmised sammud
Nüüd, kui sul on põhiline bot:
- Laienda funktsionaalsust: Lisa rohkem käske, kasuta andmebaase andmete säilitamiseks, rakenda keerukat loogikat
- Kasuta kaldkriipsuga käske: Kaasaegne
/käsksüntaks eesliite käskude asemel - Lisa reaktsioone: Lase kasutajatel klõpsata nuppe või reageerida emotikonidega
- Ühenda andmebaas: Salvesta kasutaja andmeid, münte, eelistusi (SQLite algajatele, PostgreSQL skaleerimiseks)
- Liitu kogukondadega: Discordi boti arendajate kogukonnad (reddit.com/r/discordbots, Discord.js tugiserver) vastavad igale küsimusele
Ressursid
- discord.js dokumentatsioon: https://discord.js.org
- discord.py dokumentatsioon: https://discordpy.readthedocs.io
- Discord API dokumendid: https://discord.com/developers/docs/intro
- YouTube'i õpetused: Otsi "[discord.js/discord.py] õpetus" – tohutu hulk sisu
Sinu esimene Discordi bot on nädalavahetuse projekt. Sinu esimene hea Discordi bot on kuu aega praktikat. Sinu esimest boti, mida kasutab 1000 serverit, on kuude pikkune iteratsioon, funktsioonide arendus ja kogukonna ehitamine. Alusta kohe, itereeri pidevalt ja ära mõtle üle.