Kā padarīt savu diskdziņu bot

Satura rādītājs:

Kā padarīt savu diskdziņu bot
Kā padarīt savu diskdziņu bot

Video: Kā padarīt savu diskdziņu bot

Video: Kā padarīt savu diskdziņu bot
Video: Add fingerprint gesture to any phone with out ROOT (Tap to lock, Swipe actions) - YouTube 2024, Novembris
Anonim
Discord ir lieliska API, lai rakstītu pielāgotus robotus un ļoti aktīvo bot kopienu. Šodien mēs apskatīsim, kā sākt veidot savu.
Discord ir lieliska API, lai rakstītu pielāgotus robotus un ļoti aktīvo bot kopienu. Šodien mēs apskatīsim, kā sākt veidot savu.

Lai kodētu bot, jums būs vajadzīgas nedaudz programmēšanas zināšanas, tādēļ tas nav visiem, bet, par laimi, ir daži populāri valodu moduļi, kas padara to ļoti viegli izdarīt. Mēs izmantosim populārāko, discord.js.

Darba sākšana

Pārejiet pie Discord portāla un izveidojiet jaunu lietojumprogrammu.

Jūs vēlaties atzīmēt klienta ID un noslēpumu (kas, protams, jums būtu jāsaglabā noslēpums). Tomēr tas nav bot, tikai "Pieteikums". Jums būs jāpievieno bot zem "Bot" cilnes.
Jūs vēlaties atzīmēt klienta ID un noslēpumu (kas, protams, jums būtu jāsaglabā noslēpums). Tomēr tas nav bot, tikai "Pieteikums". Jums būs jāpievieno bot zem "Bot" cilnes.
Uzrakstiet arī šo marķieri un saglabājiet to noslēpumā. Nekādā gadījumā nedrīkst izdarīt šo atslēgu Github. Jūsu robots tiks uzlauzts gandrīz nekavējoties.
Uzrakstiet arī šo marķieri un saglabājiet to noslēpumā. Nekādā gadījumā nedrīkst izdarīt šo atslēgu Github. Jūsu robots tiks uzlauzts gandrīz nekavējoties.

Instalējiet Node.js un iegūstiet kodēšanu

Lai palaistu Javascript kodu ārpus tīmekļa lapas, jums nepieciešams Node. Lejupielādējiet to, instalējiet to un pārliecinieties, ka tas darbojas terminālā (vai komandrindas tekstā, jo tas viss darbosies ar Windows sistēmām). Noklusējuma komanda ir "mezgls".

Mēs iesakām arī instalēt nodemon rīku. Tā ir komandrindas lietotne, kas pārrauga jūsu bot kodu un automātiski restartējas pēc izmaiņām. Jūs varat to instalēt, izpildot šādu komandu:

npm i -g nodemon

Jums būs nepieciešams teksta redaktors. Jūs varētu vienkārši izmantot notepad, bet mēs iesakām vai nu Atom, vai VSC.

Lūk, mūsu "Hello World":

Image
Image

const Discord = require('discord.js'); const client = new Discord.Client(); client.on('ready', () => { console.log(`Logged in as ${client.user.tag}!`); }); client.on('message', msg => { if (msg.content === 'ping') { msg.reply('pong'); } }); client.login('token');

Šis kods ir ņemts no disord.js piemēra. Let's sadalīt to uz leju.

  • Pirmās divas rindas ir konfigurēt klientu. Viena līnija importē moduli objektā ar nosaukumu "Diskord", un otra līnija inicializē klienta objektu.
  • The

    client.on('ready')

    bloks tiks aktivizēts, kad bot startēs. Šeit tas ir tikai konfigurēts, lai pieteiktos tā nosaukumam uz termināli.

  • The

    client.on('message')

    bloks tiks aizvērts katru reizi, kad jebkuram kanālam ir publicēta jauna ziņa. Protams, jums būs jāpārbauda ziņu saturs, un tas ir tas, ko

    if

    bloķē. Ja ziņojums tikai saka "ping", tad tas atbildēs ar "Pong!"

  • Pēdējā rinda piesakās ar bot portāla pilnvaru. Acīmredzot, simbols ekrānuzņēmumā šeit ir viltota. Nekad neiesniedziet savu pilnvaru internetā.

Nokopējiet šo kodu, ielīmējiet to pilnvarā apakšā un saglabājiet to kā

index.js

mapē.

Kā palaist bot

Pārejiet pie sava termināļa un palaidiet šādu komandu:
Pārejiet pie sava termināļa un palaidiet šādu komandu:

nodemon --inspect index.js

Tas palaiž skriptu, kā arī aktivizē Chrome atkļūdotāju, kuru varat piekļūt, ierakstot

chrome://inspect/

Chrome versijā Omnibar un pēc tam atverot "devtooles par nodalījumu".

Tagad tam vajadzētu vienkārši teikt: "Pieteikties kā , "Bet šeit esmu pievienojis rindu, kurā būs jāreģistrē visi konsolei saņemtie ziņu objekti:

Tātad, kas veido šo ziņu objektu? Daudz stuff, faktiski:
Tātad, kas veido šo ziņu objektu? Daudz stuff, faktiski:
Jo īpaši, jums ir informācija par autoru un kanāla informācija, kurai var piekļūt ar msg.author un msg.channel. Es iesaku šo metodi reģistrēt objektus Chrome Node devtools, un vienkārši apskati, lai redzētu, kas padara to darbu. Jūs varat atrast kaut ko interesantu. Piemēram, šeit, piemēram, bot reģistrē savas atbildes uz konsoli, tādēļ bot atbildes tiek aktivizētas
Jo īpaši, jums ir informācija par autoru un kanāla informācija, kurai var piekļūt ar msg.author un msg.channel. Es iesaku šo metodi reģistrēt objektus Chrome Node devtools, un vienkārši apskati, lai redzētu, kas padara to darbu. Jūs varat atrast kaut ko interesantu. Piemēram, šeit, piemēram, bot reģistrē savas atbildes uz konsoli, tādēļ bot atbildes tiek aktivizētas

client.on('message')

. Tātad es izveidoju spambots:

Image
Image

Piezīme: Esi uzmanīgs ar to, jo jūs patiešām nevēlaties risināt jautājumu par recursion.

Kā pievienot bot jūsu serverim

Šī daļa ir grūtāka nekā tā būtu. Jums ir jāņem šis URL:
Šī daļa ir grūtāka nekā tā būtu. Jums ir jāņem šis URL:

https://discordapp.com/oauth2/authorize?client_id=CLIENTID&scope=bot

Un aizvietojiet CLIENTID ar savu bot klienta ID, kas atrodams pieteikuma lapas cilnē Vispārīga informācija. Kad tas ir paveikts, tomēr jūs varat dot saiti saviem draugiem, lai viņi pievienotu bot saviem serveriem.

Labi, tātad, ko vēl es varu darīt?

Papildus pamata iestatījumiem kaut kas cits ir atkarīgs no jums. Bet tas nebūtu daudz apmācības, ja mēs apstājosies sveiki pasaulē, tāpēc apskatiet kādu dokumentāciju, lai jūs labāk izprastu, kas ir iespējams. Es iesaku jums izlasīt tik daudz, cik vien iespējams, jo tas ir ļoti labi dokumentēts.
Papildus pamata iestatījumiem kaut kas cits ir atkarīgs no jums. Bet tas nebūtu daudz apmācības, ja mēs apstājosies sveiki pasaulē, tāpēc apskatiet kādu dokumentāciju, lai jūs labāk izprastu, kas ir iespējams. Es iesaku jums izlasīt tik daudz, cik vien iespējams, jo tas ir ļoti labi dokumentēts.

Es ieteiktu pievienot

console.log(client)

uz sava koda sākumu un konsole apskatot klienta objektu:

No šejienes jūs varat daudz iemācīties. Tā kā jūs varat pievienot bot vairākiem serveriem uzreiz, serveri ir daļa no
No šejienes jūs varat daudz iemācīties. Tā kā jūs varat pievienot bot vairākiem serveriem uzreiz, serveri ir daļa no

Guilds

kartes objekts. Šajā objektā ir atsevišķas ģildes (kas ir API nosaukums "serverim"), un šiem ģildes objektiem ir kanālu saraksti, kuros ir visa informācija un ziņu saraksti. API ir ļoti dziļa, un, lai uzzinātu, tas var aizņemt laiku, bet vismaz to ir viegli iestatīt un sākt mācīties.

Ieteicams: