På Discord samarbejder folk om at dele ideer, diskutere projekter og chatte om livet og hobbyer generelt. Men Discord-bots kan gøre dine chatrum sjovere ud over at automatisere opgaver. Disse kan være alt fra at fortælle tilfældige vittigheder til at spille bestemt musik og mere.
Ikke desto mindre er der nogle vigtige trin, du skal følge, mens du lærer at lave en Discord-bot. Vi vil udforske dem i denne artikel.
Lad os komme igang.
1. Opret din Discord-server
Før du opretter en Discord bot, skal du starte med at oprette en server, da det er bottens tildelingssted.
En Discord-server eller et chatrum er et rum, hvor du administrerer kanaler og kommunikation på platformen.
For at oprette en Discord-server skal du gå over til Discord hjemmeside og log ind på dit Discord-dashboard. Eller opret en konto, hvis du ikke allerede har en.
Når du er på dit Dashboard, skal du følge disse trin for at lave en Discord-server:
- Klik på tilføjelsen (+) ikonet i venstre sidebjælke.
- Vælg Opret min egen mulighed.
- Vælg et formål med at oprette din server.
- Tilpas din server med et profilbillede og et navn. Klik derefter skab.
Du har nu oprettet en Discord-server og er klar til at lave en bot til at kontrollere visse aktiviteter på den.
2. Konfigurer og opret din Discord Bot
Dernæst vil du oprette en Discord-bot i en Discord-applikation ved at gå til Discord udviklerportal. Eller du kan i stedet skrive følgende URL i din browsers adressefelt:
https://discord.com/developers/applications
En gang i udviklerkonsollen:
- Klik Ny ansøgning øverst til venstre.
- Angiv et navn til din ansøgning i det givne felt. Klik derefter skab.
- Se til venstre sidebjælke, og vælg Bot.
- Klik Tilføj Bot yderst til højre.
- Vælg fra den næste prompt Ja, gør det!
- Klik Kopi for at kopiere dit bot-token. Indsæt dette et sikkert sted, og afslør det ikke.
- Rul ned og slå kontakten under NÆRVÆRELSESHENSIKT. Tænd også for kontakten under SERVERMEDLEMMERS HENSYN.
- Klik derefter OAuth2 på venstre bjælke for at tilføje autentificeringsprioriteter til din Discord-bot.
- Vælg URL Generator for at generere en bot-invitations-URL til den server, du oprettede tidligere.
- Fra mulighederne under OMFANG, Vælg bot.
- Rul ned til BOT TILLADELSE sektion og vælg roller til din Discord-bot. I dette tilfælde giver vi det Administrator rolle.
- Rul til bunden og klik KOPI for at kopiere den genererede URL til dit udklipsholder.
Nu for at linke din server til botten.
Som vi nævnte, fungerer en bot primært inde på serveren. Derfor, efter at have oprettet en Discord-bot, som vi gjorde, bliver du nødt til at tildele den til en server, hvor du vil have den til at virke.
Så når du kopierer den genererede URL, skal du følge disse næste trin for at linke dit chatrum til Discord-botten:
- Indsæt den kopierede URL i din browsers adressefelt og log på den.
- Klik på fra prompten Vælg en server og vælg den, du oprettede tidligere.
- Klik Blive ved at fortsætte.
- Du vil se en ny menu med en liste over tilladelser, du har angivet tidligere. Vælg Bemyndige.
- Løs CAPTCHA for at fuldføre godkendelsen af din Discord-bot.
Du har nu oprettet en Discord-bot. Gå tilbage til dit server-dashboard, og du vil se robotten i højre sidebjælke. Men som du kan se, er den offline i øjeblikket. Så det virker ikke endnu, før du programmerer det til at gøre det.
For at få din bot til at fungere, skal du skrive et script på et hvilket som helst programmeringssprog, der fungerer bedst for dig.
3. Programmer din Discord Bot ved hjælp af Python
Til denne tutorial bruger vi Python og hoster Discord-botten på den lokale maskine. Du kan hoste din på cloud-tjenester som Heroku, hvis du vil, når alt er sat op. Lad os dykke ned.
Konfigurer Python og biblioteker
For at programmere din Discord-bot med Python, skal du bruge discord.py modul, som kun virker med Python 3.5.3 eller nyere.
Hvis du ikke allerede har gjort det eller har en tidligere version, skal du gå til python.org for at downloade den seneste Python-version.
Du kan kontrollere Python-versionen installeret på din pc ved at indtaste følgende kommando i din terminal:
python --version
Hvis Python er opdateret, skal du åbne terminalen til dit projektrod. Derefter aktivere et virtuelt Python-miljø.
Du bliver også nødt til at installere discord.py og en stemmestøttepakke kaldet discord.py[stemme].
Med det virtuelle miljø aktivt, kør følgende kommando i din terminal for at installere disse pakker:
pip install -U discord.py discord.py[voice]
Send en besked med din Discord Bot
Her programmerer du din Discord-bot til at svare med en brugerdefineret besked, når du sender en tekst i en kanal.
Men først skal du skrive følgende kode øverst i dit script for at initialisere din Discord-bot:
import uenighed
# Importer kommandomodulet:
fra discord.ext import kommandoer
# Initialiser bot-instansen og brug et tomt præfiks:
bot = kommandoer. Bot (command_prefix="")
Det bot variabel kalder brugerdefinerede kommandoer fra kommando klasse. Og kommando_præfiks i parentes kan du angive et tegn, der går forud for det. Tegn som dollartegn ($), udråbstegn (!), og-tegn (&) og flere er almindelige præfikser, der går forud for bot-kommandoer.
Men vi har slettet præfikset i vores tilfælde. Så du behøver ikke en, mens du instruerer Discord-botten.
Bruger @bot.command() dekoratør, lad os lave en brugerdefineret kommando, Hej, og giv en svartekst til Discord-botten, når den ser den.
Bemærk, at brugerdefinerede kommandoer er Python-funktioner:
import uenighed
# Importer kommandomodulet:
fra discord.ext import kommandoer
# Initialiser bot-forekomsten:
bot = kommandoer. Bot (command_prefix="")
@bot.command()
async def Hej (ctx):
await ctx.send("Hej, velkommen til vores server")
Nu køre Python-scriptet i din terminal. Gå derefter til Discord og send "Hej" for at se magien udfolde sig.
Ser du nærmere efter, vil du se, at vi har brugt asynkronvente metode til at tjene funktionen. Dette er vigtigt, da det er den eneste måde for modulet at kommunikere med Discord.
Det ctx instans er en kontekst, og den har mange funktioner. Men i dette tilfælde giver det din Discord-bot mulighed for at sende en besked.
Velkommen til nye kanalmedlemmer med din bot
I dette eksempel kan du se, hvordan du bruger begivenheder til at udløse en hilsen, når nogen tilmelder sig din server. Du vil også lære, hvordan du viser brugernavnet på et nyt medlem og den server, de har tilsluttet sig, i hilsenen.
Vi bruger @bot.event her i stedet for. Sådan fungerer det:
@bot.event
async def on_member_join (medlem):
guild = medlem.laug
hvis guild.system_channel ikke er Ingen:
detailMessage = 'Vi byder {0.mention} velkommen til {1.name}!'.format (medlem, guild)
afvent guild.system_channel.send (detailMessage)
Det on_member_join funktion er en type begivenhed. Der er dog mange andre. Det on_ready metode er for eksempel en meget brugt begivenhed til at kontrollere, om en bot er klar eller ej.
Yderligere, den betingelse, der følger hvis erklæring kontrollerer, om den tilsluttede server (laug eller chatrum) eksisterer eller ej. Hvis den gør det, bruger den Python streng formatmetode til at udlæse det nye medlems brugernavn og den server, de har tilsluttet sig.
Bed nu en ven om at tilslutte sig din server for at se, hvad der sker. Du vil måske prøve dette først med en dummy Discord-konto for at sikre, at det virker.
Bed Discord Bot om at deltage eller forlade en lydkanal
Lad os nu udvide koden. Og denne gang vil du bede din bot om at deltage i eller forlade en lydkanal, når den modtager en bestemt kommando.
I eksempelkoden nedenfor slutter Discord-botten dig til en lydkanal, når du skriver "enter":
@bot.command()
async def enter (ctx):
if ctx.author.voice:
afvent ctx.message.author.voice.channel.connect()
Tilstanden inden for hvis statement tjekker, om du allerede har tilsluttet dig en lydkanal. Hvis det er tilfældet vente søgeord forbinder din Discord-bot med det.
Det betyder, at du skal have tilsluttet dig en lydkanal, før kommandoen virker.
Bemærk: Sørg for, at du stopper og genstarter dit Python-script efter hver opdatering. Det lader Python synkronisere dine ændringer.
Når du har genudført dit Python-script, skal du åbne Discord og skrive gå ind— du vil nu se, at din Discord-bot har tilsluttet sig lydkanalen.
At bede din bot om at forlade kanalen er lige så nemt som at tilføje den.
Følgende kode fortæller, at den skal forlade kanalen, når du skriver den relevante kommando. Vi vil bruge ordet "forlade" i dette tilfælde:
@bot.command()
async def leave (ctx):
if ctx.voice_client:
afvent ctx.guild.voice_client.disconnect()
Stop og kør dit script igen. Discord-botten skal nu forlade lydkanalen, når du sender kommandoen "leave".
Fortsæt med at forbedre din Discord Bot
Det er det! Du har lavet dig selv til en funktionel Discord-bot. Sæt eksempelblokkene med kode sammen, og fortsæt med at tilføje funktioner til din Discord-bot. For eksempel kan du bede den om at afspille musik fra din pc eller en streamingplatform, så snart den tilslutter sig en lydkanal.
Discord-bots er sjove at bruge. Hvis du endnu ikke automatiserer opgaver med dem i dine chatrum, går du glip af en vis effektivitet.
Bots kan være et nyttigt værktøj til at administrere din Discord-server. Her er alt at vide om, hvordan du tilføjer dem.
Læs Næste
- Programmering
- Python
- Uenighed
- Programmering
Idowu brænder for alt smart teknologi og produktivitet. I sin fritid leger han med kodning og skifter til skakbrættet, når han keder sig, men han elsker også at bryde ud af rutinen en gang imellem. Hans passion for at vise folk vejen rundt om moderne teknologi motiverer ham til at skrive mere.
Abonner på vores nyhedsbrev
Tilmeld dig vores nyhedsbrev for tekniske tips, anmeldelser, gratis e-bøger og eksklusive tilbud!
Klik her for at abonnere