A Discordon az emberek együttműködnek, hogy megosszák egymással ötleteiket, megvitassák a projekteket, és általában az életről és a hobbikról csevegjenek. De a Discord botok a feladatok automatizálása mellett szórakoztatóbbá tehetik a chatszobáit. Ezek bármiek lehetnek, a véletlenszerű viccek elmondásától a konkrét zene lejátszásáig és így tovább.
Mindazonáltal van néhány alapvető lépés, amelyet követnie kell a Discord bot készítésének megtanulásakor. Ebben a cikkben megvizsgáljuk őket.
Lássunk neki.
1. Hozd létre a Discord szerveredet
Mielőtt létrehozna egy Discord botot, először egy szerver létrehozásával kell kezdenie, mivel ez a bot hozzárendelési helye.
A Discord szerver vagy csevegőszoba egy olyan hely, ahol a platformon kezelheti a csatornákat és a kommunikációt.
Discord-kiszolgáló létrehozásához lépjen a következő oldalra: Discord weboldal és jelentkezzen be a Discord irányítópultjára. Vagy hozzon létre egy fiókot, ha még nem rendelkezik vele.
Az irányítópulton az alábbi lépéseket követve létrehozhat egy Discord-kiszolgálót:
- Kattintson a kiegészítésre (+) ikont a bal oldalsávon.
- Válaszd ki a Saját létrehozása választási lehetőség.
- Válasszon célt a szerver létrehozásához.
- Szabja testre szerverét egy profilképpel és egy névvel. Ezután kattintson Teremt.
Létrehozott egy Discord-kiszolgálót, és készen áll egy bot létrehozására bizonyos tevékenységek vezérlésére.
2. Állítsa be és hozza létre a Discord Botot
Ezután létre kell hozni egy Discord botot egy Discord alkalmazáson belül a következő oldalon Discord fejlesztői portál. Vagy beírhatja a következő URL-t a böngésző címmezőjébe:
https://discord.com/developers/applications
A fejlesztői konzolban:
- Kattintson Új alkalmazás a bal felső sarokban.
- Adja meg a pályázat nevét a megadott mezőben. Ezután kattintson Teremt.
- Tekintse meg a bal oldalsávot, és válassza ki Bot.
- Kattintson Bot hozzáadása a szélső jobb oldalon.
- A következő promptból válassza a lehetőséget Igen, csináld!
- Kattintson Másolat hogy másolja a bot tokenjét. Illessze be biztonságos helyre, és ne fedje fel.
- Görgessen le, és kapcsolja be az alatta lévő kapcsolót JELENLÉT SZÁNDÉK. Kapcsolja be az alatti kapcsolót is SZERVERTAGOK SZÁNDÉKA.
- Ezután kattintson OAuth2 a bal oldali sávon, hogy hitelesítési prioritásokat adjon a Discord botjához.
- Válassza ki URL generátor bot-meghívó URL létrehozásához a korábban létrehozott szerverhez.
- A lehetőségek közül, alatt HATÁLYOK, válassza ki bot.
- Görgessen le a BOT ENGEDÉLY szakaszt, és válasszon szerepeket a Discord bot számára. Ebben az esetben megadjuk a Adminisztrátor szerep.
- Görgessen le, és kattintson MÁSOLAT hogy a generált URL-t a vágólapra másolja.
Most kapcsolja össze a szervert a bottal.
Mint említettük, a bot elsősorban a szerveren belül működik. Ezért a Discord bot létrehozása után, ahogy mi tettük, hozzá kell rendelnie egy olyan szerverhez, ahol működni szeretné.
Tehát miután kimásolta a generált URL-t, kövesse az alábbi lépéseket a chat-szoba és a Discord bot összekapcsolásához:
- Illessze be a kimásolt URL-t a böngésző címmezőjébe, és jelentkezzen be.
- A promptban kattintson a gombra Válasszon ki egy szervert és válassza ki a korábban létrehozottat.
- Kattintson Folytatni A folytatáshoz.
- Megjelenik egy új menü a korábban beállított engedélyek listájával. Válassza ki Engedélyezze.
- Oldja meg a CAPTCHA-t a Discord bot engedélyezésének befejezéséhez.
Létrehozott egy Discord botot. Menjen vissza a szerver irányítópultjára, és a jobb oldalsávon megjelenik a robot. De amint látja, jelenleg offline állapotban van. Tehát még nem működik, amíg nem programozod rá.
Ahhoz, hogy a bot működjön, meg kell írnia egy szkriptet az Ön számára legmegfelelőbb programozási nyelven.
3. Programozza be Discord Botját Python használatával
Ebben az oktatóanyagban Pythont használunk, és a Discord botot a helyi gépen tároljuk. Ha akarja, a sajátját felhőszolgáltatásokon, például a Herokuban is tárolhatja, ha minden be van állítva. Merüljünk el.
Állítsa be a Python-t és a könyvtárakat
A Discord bot Python programozásához használja a discord.py modul, amely csak a Python 3.5.3 vagy újabb verziójával működik.
Ha még nem tette meg, vagy van egy korábbi verziója, lépjen a következő helyre: python.org a legújabb Python verzió letöltéséhez.
A számítógépére telepített Python verziót a következő parancs beírásával ellenőrizheti a terminálon:
python --verzió
Ha a Python naprakész, nyissa meg a terminált a projektgyökérnek. Azután aktiváljon egy Python virtuális környezetet.
Ezenkívül telepítenie kell discord.py és egy hangtámogatási csomagot hívnak discord.py[hang].
Ha a virtuális környezet aktív, futtassa a következő parancsot a terminálon a csomagok telepítéséhez:
pip install -U discord.py discord.py[voice]
Üzenet küldése Discord Botjával
Itt programozhatja be Discord botját, hogy egyéni üzenettel válaszoljon, amikor szöveget küld egy csatornán.
De először írja be a következő kódot a szkript tetejére a Discord bot inicializálásához:
import viszály
# Importálja a parancsmodult:
a discord.ext import parancsokból
# Inicializálja a bot példányt, és használjon üres előtagot:
bot = parancsok. Bot (command_prefix="")
A bot változó egyéni parancsokat hív meg a parancs osztály. És a parancs_előtag a zárójelben lehetővé teszi az előtte lévő karakter megadását. Az olyan karakterek, mint a dollárjel ($), a felkiáltójel (!), az „és” (&) és egyebek gyakori előtagok, amelyek megelőzik a botparancsokat.
De esetünkben az előtagot töröltük. Így nincs szüksége rá, miközben a Discord botot utasítja.
Használni a @bot.command() lakberendező, adjunk egyedi parancsot, Szia, és adjon meg egy válaszszöveget a Discord bot számára, amikor meglátja.
Vegye figyelembe, hogy az egyéni parancsok Python-függvények:
import viszály
# Importálja a parancsmodult:
a discord.ext import parancsokból
# Inicializálja a bot példányt:
bot = parancsok. Bot (command_prefix="")
@bot.command()
async def Szia (ctx):
await ctx.send("Szia, üdvözöljük szerverünkön")
Most futtassa a Python szkriptet a termináljában. Ezután lépjen a Discord-ba, és küldje el a "Szia" üzenetet, hogy lássa a varázslat kibontakozását.
Ha alaposan megnézzük, látni fogja, hogy használtuk a asyncvárják módszer a funkció kiszolgálására. Ez elengedhetetlen, mivel ez az egyetlen módja annak, hogy a modul kommunikáljon a Discorddal.
A ctx példány egy kontextus, és számos funkciója van. De ebben az esetben lehetővé teszi a Discord bot számára, hogy üzenetet küldjön.
Üdvözöljük az új csatornatagokat a robotjával
Ebben a példában látni fogja, hogyan használhatja az eseményeket üdvözlő üzenet kiváltására, amikor valaki csatlakozik a szerveréhez. Azt is megtudhatja, hogyan jelenítheti meg az üdvözlő üzenetben az új tagok felhasználónevét és azt a szervert, amelyhez csatlakozott.
Használjuk @bot.event itt helyette. Ez a következőképpen működik:
@bot.event
async def on_member_join (tag):
céh = tag.guild
ha a guild.system_channel értéke nem None:
detailMessage = 'Üdvözöljük {0.mention} felhasználót a {1.name}!'.formátumban (tag, céh)
await guild.system_channel.send (detailMessage)
A on_member_join A funkció egy eseménytípus. Vannak azonban sokan mások is. A on_ready módszer például egy széles körben használt esemény annak ellenőrzésére, hogy egy bot készen áll-e vagy sem.
Továbbá az azt követő feltétel a ha utasítás ellenőrzi, hogy a csatlakoztatott szerver (céh vagy chat szoba) létezik-e vagy sem. Ha igen, akkor a Python karakterlánc formátummetódus az új tag felhasználónevének és a kiszolgálónak a kiadásához, amelyhez csatlakozott.
Most kérje meg egy barátját, hogy csatlakozzon a szerverhez, hogy lássa, mi történik. Érdemes lehet azonban először egy ál Discord-fiókkal kipróbálni, hogy biztosan működjön.
Kérje meg a Discord Botot, hogy csatlakozzon vagy hagyja el az audiocsatornát
Most bővítsük ki a kódot. Ezúttal pedig felszólítja a botját, hogy csatlakozzon vagy hagyja el az audiocsatornát, amikor egy adott parancsot kap.
Az alábbi példakódban a Discord bot csatlakozik egy hangcsatornához, amikor beírja az „enter” szót:
@bot.command()
async def enter (ctx):
ha ctx.author.voice:
várja a ctx.message.author.voice.channel.connect()
A feltétel a ha nyilatkozat ellenőrzi, hogy csatlakoztál-e már egy audiocsatornához. Ha igen, a várják kulcsszó összekapcsolja vele a Discord botot.
Ez azt jelenti, hogy csatlakoznia kell egy hangcsatornához, mielőtt a parancs működni fog.
jegyzet: Győződjön meg arról, hogy minden frissítés után leállítja és újraindítja a Python-szkriptet. Lehetővé teszi a Python számára a módosítások szinkronizálását.
Miután újra végrehajtotta a Python-szkriptet, nyissa meg a Discord-ot, és írja be belép– most látni fogja, hogy a Discord botja csatlakozott az audiocsatornához.
Ugyanolyan egyszerű megkérni a robotot, hogy hagyja el a csatornát, mint hozzáadni.
A következő kód arra utasítja, hogy hagyja el a csatornát, amikor beírja a megfelelő parancsot. Ebben az esetben a „hagyni” szót használjuk:
@bot.command()
aszinkron def szabadság (ctx):
if ctx.voice_client:
várja a ctx.guild.voice_client.disconnect()
Állítsa le, és futtassa újra a szkriptet. A Discord botnak most el kell hagynia az audiocsatornát, amikor elküldi a "leave" parancsot.
Folytassa a Discord Bot fejlesztésével
Ez az! Csináltál magadnak egy működőképes Discord botot. Állítsa össze a példakód blokkokat, és folytassa a funkciók hozzáadásával a Discord botot. Például megmondhatja, hogy játssza le a zenét a számítógépéről vagy egy streaming platformról, amint csatlakozik egy audiocsatornához.
A Discord botok használata szórakoztató. Ha még nem automatizálod velük a feladatokat a chatszobáidban, akkor komoly hatékonyságtól essz el.
A botok hasznos eszközök lehetnek a Discord-kiszolgáló kezeléséhez. Itt van minden, amit tudni kell a hozzáadásuk módjáról.
Olvassa el a következőt
- Programozás
- Piton
- Viszály
- Programozás
Idowu szenvedélyesen rajong minden intelligens technológiáért és a termelékenységért. Szabadidejében kódolással játszik, és ha unatkozik sakktáblára vált, de szeret időnként kiszakadni a rutinból. Szenvedélye, hogy megmutassa az embereknek a modern technológiát, arra sarkallja, hogy többet írjon.
Iratkozzon fel hírlevelünkre
Csatlakozzon hírlevelünkhöz műszaki tippekért, ismertetőkért, ingyenes e-könyvekért és exkluzív ajánlatokért!
Kattintson ide az előfizetéshez