Mājas lapa » » Kā padarīt savu nesaskaņu Bot

    Kā padarīt savu nesaskaņu Bot

    Nesaskaņām ir lieliska API, lai rakstītu pielāgotus robotus, un ļoti aktīva bot kopiena. Šodien mēs apskatīsim, kā sākt sākt savu darbu.

    Lai kodētu botu, jums būs nepieciešamas mazliet programmēšanas zināšanas, tāpēc tas nav visiem, bet par laimi ir daži moduļi tautas valodām, kas padara to ļoti viegli. Mēs izmantosim vispopulārāko, discord.js.

    Darba sākšana

    Virzieties uz Discord bot portālu un izveidojiet jaunu pieteikumu.

    Jūs vēlaties atzīmēt Klienta ID un noslēpumu (kas, protams, jāglabā noslēpumā). Tomēr tas nav bots, tikai “Lietojumprogramma”. Bot būs jāpievieno zem cilnes “Bot”.

    Atzīmējiet arī šo zīmi un glabājiet to noslēpumā. Nekādā gadījumā neuzņemiet šo atslēgu uz Githubu. Jūsu bots tiks hacked gandrīz nekavējoties.

    Instalējiet Node.js un Get Coding

    Lai palaistu Javascript kodu ārpus tīmekļa lapas, jums ir nepieciešams mezgls. Lejupielādējiet to, instalējiet to un pārliecinieties, vai tas darbojas terminālā (vai komandu uzvednē, jo tas viss darbojas Windows sistēmās). Noklusējuma komanda ir “mezgls”.

    Mēs arī iesakām instalēt nodemon rīku. Tā ir komandrindas lietotne, kas uzrauga jūsu bota kodu un automātiski palaiž izmaiņas. To var 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”:

    const Discord = pieprasīt ('discord.js'); const klients = jauns nesaskaņas. client.on ('gatavs', () => console.log ('pieteicies kā $ client.user.tag!');); client.on ('ziņa', msg => if (msg.content === 'ping') msg.reply ('pong');); client.login ('token');

    Šis kods ir ņemts no discord.js parauga. Sadalīsim to.

    • Pirmās divas rindas ir klienta konfigurēšana. Viena līnija importē moduli objektā ar nosaukumu “Atšķirība”, un otrā rinda inicializē klienta objektu.
    • The client.on (“gatavs”) bloks aizdegsies, kad tiks palaista bot. Šeit tā ir tikai konfigurēta, lai pieteiktu savu nosaukumu terminālim.
    • The client.on ('ziņa') bloks aizdegsies ikreiz, kad jebkurš kanāls tiks ievietots jaunā ziņojumā. Protams, jums būs jāpārbauda ziņojuma saturs, un tieši tas ir ja bloķē. Ja ziņojums vienkārši saka “ping”, tad tas atbildēs ar “Pong!”
    • Pēdējā rinda tiek reģistrēta ar zīmi no bot portāla. Acīmredzot, attēlā redzamais marķieris ir viltots. Nekad nepublicējiet savu marķieri internetā.

    Kopējiet šo kodu, ielīmējiet savu marķieri apakšā un saglabājiet to kā index.js īpašā mapē.

    Kā palaist Bot

    Virzieties uz savu terminālu un palaidiet šādu komandu:

    nodemon --inspect index.js

    Tas sāk skriptu, kā arī aizdedzina Chrome atkļūdotāju, kuru varat piekļūt, ierakstot hroms: // pārbaudīt /  pārlūkprogrammas Chrome Omnibar un pēc tam atverot “īpašas devtools mezglam”.

    Tagad tam vajadzētu tikai pateikt “Piesakoties kā”, bet šeit es esmu pievienojis rindu, kurā tiks reģistrēti visi konsolē saņemtie ziņu objekti:

    Tātad, kas veido šo ziņu objektu? Daudzas lietas, patiesībā:

    Jo īpaši, jums ir autora informācija un kanāla informācija, kuru var piekļūt ar msg.author un msg.channel. Es ieteiktu šo metodi, lai reģistrētu objektus pārlūkprogrammā Chrome mezgls devtools, un tikai skatoties apkārt, lai redzētu, kas padara to darbu. Jūs varat atrast kaut ko interesantu. Šeit, piemēram, bots reģistrē savas atbildes uz konsoli, tāpēc bot atbildēs client.on ('ziņa'). Tātad, es veicu spambotu:

    Piezīme: Esiet uzmanīgi, jo jūs tiešām nevēlaties nodarboties ar rekursiju.

    Kā pievienot Bot savam serverim

    Šī daļa ir grūtāk, nekā vajadzētu. Jums ir jāveic šis URL:

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

    Un nomainiet CLIENTID ar bota klienta ID, kas atrodams lietojumprogrammas lapas vispārējā informācijā. Tomēr, ja tas ir paveikts, jūs varat dot saiti saviem draugiem, lai tie varētu pievienot botu saviem serveriem.

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

    Papildus pamata iestatījumiem viss ir atkarīgs tikai no jums. Bet tas nebūtu daudz apmācības, ja mēs apstājāmies sveicinātajā pasaulē, tāpēc dodieties pār kādu dokumentāciju, tāpēc jums ir labāka priekšstata par to, kas ir iespējams. Es iesaku jums izlasīt, cik vien iespējams, jo tas ir ļoti labi dokumentēts.

    Es ieteiktu pievienot console.log (klients) lai sāktu kodu un apskatītu klienta objektu konsolē:

    No šejienes jūs varat daudz iemācīties. Tā kā jūs varat pievienot botu vairākiem serveriem vienlaicīgi, serveri ir daļa no Ģildes kartes objekts. Šajā objektā ir atsevišķas ģildes (kas ir API nosaukums “serverim”), un šiem ģildes objektiem ir kanālu saraksti, kas satur visu informāciju un ziņojumu sarakstus. API ir ļoti dziļa, un mācīšanās var aizņemt kādu laiku, bet vismaz ir viegli izveidot un sākt mācīties.