Mu kiganiro, tuzavuga uburyo gusaba Bot byaremwe, uburenganzira bwa mbere kuri seriveri bikorwa kuri seriveri hamwe na code rusange yanditseho akazi gasanzwe. Kugira "ikadiri", urashobora kongera amategeko yumukoresha hanyuma uhite ugenzura uko bakora.
Gukora ibyifuzo no gukemurwa
Noneho tuzaganira ku buryo bubiri butandukanye bwo gukora bot - hamwe na javascript na python. Buri kimwe muribi gifite ibintu byacyo, ariko uburyo bwo gukora porogaramu nuburenganzira bwa bot kuri seriveri bikomeza kuba kimwe, kuko biterwa nururimi rwatoranijwe. Nyuma yibyo urashobora gukomeza guhitamo isomero no gukorana na kode.
Jya kuri Dival Text Port
- Kurikiza umurongo hejuru kugirango winjire kurupapuro nyamukuru rwa portal kubateza imbere muburyo bwumvikana. Koresha amakuru yemewe kugirango winjire kuri konte.
- Kora porogaramu nshya ukanze buto nshya.
- Injira izina rya porogaramu no kwemeza ibyo yaremye.
- Kwagura Ibikubiyemo ukanze buto ifite imirongo itatu itambitse.
- Kuva kurutonde rugaragara, hitamo "bot".
- Tangira kongeramo bot nshya kuriyi porogaramu.
- Emeza kumenyesha kwerekanwe ukanze "Yego, kora".
- Iyo urubuga rurangira, urubuga ruzavugururwa kandi urupapuro rwa bot ruzafungura, aho ushobora guhindura izina, kopire ikimenyetso cyangwa kongeramo igishushanyo cyerekanwa muguterwa.
- Ariko, ubu Bot itaramenyekana, kandi uruhushya ntirushyirwaho, kuburyo unyuze kuri menu imwe, jya mu gice cya Oauth2.
- Mu rutonde rwa Scopes, andika agasanduku "Bot", byerekana ubwoko bwa porogaramu yaremye.
- Shakisha ibikurikira - "Uruhushya rwa Bot" hanyuma ushyireho amatiku ahanini yuruhushya uko wifuza gutanga bot.
- Kora kimwe hamwe nuburyo busigaye bwuruhushya, bihuye nibiboneka muburyo butagaragara ku nshingano.
- Noneho bot iriteguye uruhushya. Kurupapuro rumwe, shakisha umurongo hamwe na link hanyuma wandukure.
- Shyiramo muri aderesi hanyuma uyirinze. Muburyo bugaragara, hitamo seriveri kugirango uburenganzira. Niba udafite seriveri iyo ari yo, kora, hanyuma usubire mubikorwa bya bot.
Soma Ibikurikira: Gukora seriveri muburyo bworoshye
- Reba urutonde rwibisubizo byose hanyuma ukande kuri "Yemerewe".
- Biracyayemeza gusa CAPTCHA yagaragaye kuri ecran.
- Fungura seriveri ikwiye muri reverd kandi urebe neza ko bot iri kurutonde rwabitabiriye. Kugeza ubu, biracyari kumurongo, kandi itangizwa rizaboneka nyuma yo kwandika "umubiri" wa Bot hamwe na python cyangwa js kuruta uko dukora.
Guhitamo Ibidukikije
Mbere yuko utangira gukorana na kode mu ndimi za porogaramu, tuzagaragaza ko uzakenera gushiraho umwanditsi cyangwa ibidukikije bidasanzwe byiterambere byiterambere cyangwa javascript syntax cyangwa Javascript (ukurikije abatoranijwe). Nibyo, urashobora gukoresha gusa "ikayeya", ahubwo noroherwa ni hasi kuri gahunda zihariye. Reba urutonde rwabo mugusubiramo kumurongo ukurikira hanyuma uhitemo software wenyine.
Soma Byinshi:
Guhitamo Ibidukikije Byiterambere Kuri Porogaramu
Abanditsi banditse kuri Windows
IHitamo 1: Python isomero
Niba utarahuye nizimi zabo cyangwa umenyereye nabo gusa, kurema bot kuri eython kuri python nuguhitamo neza. Ibi yap biroroshye kwiga, guhuza kandi bifite syntax yumvikana, nibyiza cyane kubatangiye. Byongeye kandi, umuyoboro ufite umubare munini wamakipe atandukanye hamwe namakipe atandukanye cyangwa ibisebe byiteguye bibuza ikintu cyose gukoporora no gukoresha kubwintego zabo. Mu ntambwe zikurikira, uziga uburyo bwo gukora "umurambo" wa bot kuri python ukayikorera kugirango urebe akazi.Intambwe ya 1: Shyiramo Python n'amasomero
Mburabuzi, Windows ntabwo yubatse-mubintu hamwe nibikoresho byagenewe gukorana na python, bityo bigomba gushyirwaho muburyo bwo gucogora hamwe n'ubwumvikane.
Jya kurubuga rwemewe Python
- Koresha umurongo hejuru kugirango ujye kurubuga rwa Python hanyuma ukande buto kugirango ukuremo verisiyo yanyuma.
- Ku rupapuro rushya, shakisha iposita kuri Windows hanyuma utangire gupakira.
- Tegereza gukuramo no kwiruka.
- Urashobora gutangira kwishyiriraho udahindutse, ariko wizere ko ugenzura "Ongeramo Python X.x munzira" Imvugo zose zibangamira mu buryo bwikora kandi ntakibazo cyavutse niba winjiye mumabwiriza.
- Tegereza kurangiza kurangiza kandi mugihe utangiye mudasobwa kugirango impinduka zose zitangire gukurikizwa.
- Fungura "itegeko umurongo" byoroshye kuri wewe, kurugero, usanga menu ya "intangiriro".
- Andika PIP kwishyiriraho uburenganzira bwo kubyemeza kandi ubyemeze hamwe nurufunguzo rwa Enter.
- Gutwara dosiye bizatangira kandi imirongo "izakora" muri konsole. Ntugafunge idirishya kugeza igihe cyo gukuramo kirangiye.
- Amakuru akimara "gushyirwaho neza" bigaragara, funga "itegeko umurongo" hanyuma ujye kure.
Niba python yashizwemo, ariko itegeko ryo kongeramo isomero rihujwe ntabwo rikora, rikora ibice bya PIP, nkuko byasobanuwe muyindi ngingo kurubuga rwacu. Muri ubwo buryo, uzasangamo amabwiriza kandi uhindura ibidukikije bihinduka niba ibi bitabaye mugihe cyo kwishyiriraho.
Soma Ibikurikira: Guvugurura Python
Intambwe ya 2: Gukora bot
Muri iyi ndwara, tuzakoresha inkoranyamagambo ya bot, ni ukuvuga dosiye iboneza yabitswe mumazina atandukanye yibimenyetso, prefix na bot. Ibi byoroshya cyane inzira yose yo kwandika kode kandi ntabwo ikora igihe cyose wibuka amakuru yo gusaba kugirango yinjire kumurongo umwe.
- Tangira guhera ubusa ushakisha porogaramu yongeyeho binyuze muri menu "gutangira". Niba ukuramo indi yiterambere, ufungure kandi ukore umushinga mushya ukurikije python.
- Nyuma yo gufungura idirishya rishya, hamagara menu "dosiye" hanyuma uhitemo "Idosiye Nshya". Ibi birashobora gukorwa hakoreshejwe Ctrl + n urufunguzo.
- Mu idirishya rishya, rigenewe kwandika kode, shyiramo guhagarika
igenamiterere = {
'Token': 'tocken yawe',
'Bot': 'izina rya bot',
'Id': ID y'abakiriya Bot, nta magambo,
'Prefix': 'Prefix BoTA'
}
- Noneho ugomba kubona amakuru yo kuyisimbuza inkoranyamagambo. Banza ushake indangamuntu yabakiriya kurubuga rwiterambere. Gukoporora no gusimbuza umurongo ukwiye.
- Hamagara menu hanyuma ujye mu gice cya "bot".
- Gukoporora ikimenyetso cyihariye cyo gukanda kuri buto byatanzwe kubwiki.
- Shyiramo ikimenyetso aho kwandika, kora kimwe nizina rya bot na prefix ikoreshwa (ibibanza birakenewe kugirango uhamagare amategeko kandi uhore! Gukina, kandi urashobora gusimbuza itangaza akamenyetso ku yandi mabwiriza yose).
- Amakuru yose amaze gusimburwa, hamagara menu "dosiye" yongeye hanyuma uhitemo "Kubika nka".
- Kora ububiko butandukanye kuri dosiye ya bot, izina ibi nkibisobanuro hanyuma wemeze kuzigama.
Intambwe ya 3: Umubiri wo kurema umubiri
Kugirango ukore imikorere yibanze ya bot, ikeneye gukora "umubiri" - code nkuru yo gukora no gukora kuri seriveri. Bizatwara dosiye itandukanye ushobora guhamagara nkuko ubishaka, ariko wizere ko uzabikiza ahantu hamwe aho Inkoranyamagambo ya mbere ari.
- Mubidukikije byiterambere, fungura menu "dosiye" no gukora dosiye nshya.
- Shyiramo amategeko atatu ahari, bigamije gutumiza amasomero na dosiye zakozwe mbere:
Gutumiza.
uhereye kubwumvikane.
Kuva muri confiction itumiza
- Ongeraho umurongo bot = gutegeka. Amategeko_prefix = Igenamiterere ['prefix']] Twebwe ku mwanya wurufunguzo rwabanjiririye.
- Kode nkuru ni izi zikurikira:
@ Bot.commyand () # ntukanyure nyuma yimpaka, nkuko byari bikenewe muri verisiyo zishaje.
Async def muraho (CTX): # Kora imikorere hanyuma uhereze impaka CTX.
Umwanditsi = CTX.Massage.uhusthor # turatangaza umwanditsi impinduka hanyuma wandike amakuru kubyerekeye umwanditsi.
Terait CTX.Send (F'hello, {Umwanditsi. ') Erekana ubutumwa hamwe nuwanditse kuvuga umwanditsi, bivuga umwanditsi impinduka.
- Witondere ibitekerezo biruka nyuma y '"#" - bazasenya intego ya buri murongo.
- Itegeko ryo gutangiza risa nkiyi: bot.run (Igenamiterere ['Token']) # Kujuririra inkoranyamagambo nurufunguzo rwa TKEN, kugirango ubone ikimenyetso.
- Iyo urangije, fungura menu zimaze kumenyera hanyuma ujye kuzigama dosiye.
- Shyiraho izina iryo ari ryo ryose hamwe nububiko bwububiko.
Ibikurikira, urabona code yuzuye yaganiriweho hejuru, nibiba ngombwa, urashobora kuyandukura gusa.
Gutumiza.
uhereye kubwumvikane.
Kuva muri confiction itumiza
Bot = gutegeka kubagabo. Amategeko_prefix = igenamiterere ['prefix'])
@ Bot.commyand () # ntukanyure nyuma yimpaka, nkuko byari bikenewe muri verisiyo zishaje.
Async def muraho (CTX): # Kora imikorere hanyuma uhereze impaka CTX.
Umwanditsi = CTX.Massage.uhusthor # turatangaza umwanditsi impinduka hanyuma wandike amakuru kubyerekeye umwanditsi.
Terait CTX.Send (F'hello, {Umwanditsi. ') Erekana ubutumwa hamwe nuwanditse kuvuga umwanditsi, bivuga umwanditsi impinduka.
Bot.run (Igenamiterere ['Gufatwa'] Bikurikijwe kuri inkoranyamagambo hamwe nurufunguzo rwa TKEN, kugirango ubone ikimenyetso
Byongeye kandi, turasobanura ko ushobora gukoresha ubundi buryo, ukureho dosiye hamwe ninkoranyamagambo hanyuma ubone "umubiri" muto kuri bot. Hitamo niba iyi code ikwiranye nawe. Imirongo yerekanaga hamwe nikimenyetso izakenera guhindura.
Gutumiza.
uhereye kubwumvikane.
Token = 'Ikimenyetso cyawe'
Bot = gutegeka. Konte-preprefix = '!')
@ Bot.commyand (Pass_ConText = UKURI) # Reka mfate impaka
Async Def Ikizamini (CTX, ARG): # Kora imikorere ya Asynchronous Icupa
Gutegereza CTX.Send (ARG) # Kohereza Inyuma Impaka
Bot.run (ikimenyetso)
Intambwe ya 4: Koresha bot
Noneho urashobora gutangira bot kugirango ugenzure, uzakenera dosiye 3 nyamukuru yaremye ku ntambwe. Uhuze neza binyuze mu iterambere cyangwa guhamagara "itegeko" hanyuma winjireyo Python Bot.Py aho, aho bot.py izina rya dosiye yashizeho. Niba dosiye yananiwe kubona, igaragaza inzira yuzuye, kurugero python c: \ abakoresha \ ukoresha_izina \ bon.
Jya kubwumvikane hanyuma urebe uko bot iriho. Igomba kwerekanwa kurutonde rwabitabiriye igice cya "kumurongo" hamwe nicyatsi kibisi.
Koresha amasoko afunguye cyangwa ubumenyi bwite kugirango wandike amategeko ya bot cyangwa gushyira mubikorwa indi mirimo igomba gukora. Kugirango ukore ibi, hindura dosiye nkuru cyangwa kurema abandi uhambira byose mumushinga umwe.
IHitamo 2: JavaScript kandi ubwumvikane.js
Ibikurikira byo kurema Bot yo kutumvikana ni ugukoresha JS hamwe nisomero ryumvikana rya JS hamwe nibitabo bihujwe.js, byongera ibice byose bikenewe gukorana na bots. Ihame ryibikorwa biratandukanye na verisiyo yabanjirije ibikoresho hamwe nibikoresho gusa muri syntaxs yindimi za porogaramu, ariko biracyari hafi kimwe.Intambwe ya 1: Kwishyiriraho node.js kandi ubwumvikane.js
Kwagura imikorere ya JS hanyuma ubishyire mu rurimi rusange rwo gutangiza gahunda bizafasha indanga.js, bisabwe gukora ku mwanya wa mbere. Kugirango ukore ibi, kurikiza algorithm yibikorwa:
Jya kurubuga rwemewe node.js
- Fungura urupapuro rwa node.js kuri enterineti hanyuma uhitemo verisiyo igezweho yo gukuramo.
- Tegereza kugeza dosiye ikorwa yakiriwe kandi irayikore.
- Kurikiza amabwiriza kuri ecran, urangize kwishyiriraho hanyuma utangire mudasobwa.
- Kwagura "Tangira" no gushakisha kugirango ubone porogaramu ya kera "umurongo".
- Andika itegeko npm ishami muri ryo hanyuma ubikoreshe ukanze enter.
- Kora pake isanzwe hamwe namakuru yumukoresha ukanze entere kugirango winjire kuri buri kintu, cyangwa usige byose muburyo busanzwe.
- Iyo ibipimo byose bya paki byashyizweho, uzakira umuburo ugomba kwemeza ukanze Enter.
- Injira NPM Shyira itegeko ryo gushiraho ibice bibuze.
- Tegereza kugeza gukuramo no kugaragara kumurongo winjiza biragaragara.
- Andika NPM ishyiraho ubwumvikane.js.
- Iri tegeko rimaze kurangira, fungura ububiko bwumukoresha wawe kandi urebe neza ko dosiye ya dosiye ya json yaremye.
Intambwe ya 2: Gukora hamwe na dosiye ya bot
Ibikorwa byose bijyanye na dosiye ya bot na kode ya gahunda bizareba murwego rumwe, kubera ko atari byiza gusangira. Uzakenera dosiye eshatu zingenzi, aho imikorere yose ikenewe ibereye: Umwe ashinzwe iboneza rya bot, icya kabiri ni iy '"umubiri", naho iya gatatu yububiko bwa gatatu urutonde rwamategeko yongeyeho.
- Ubwa mbere, kora "bot.js" na "confin.json" dosiye mububiko bumwe.
- Fungura unyuze mumyandikire cyangwa ibidukikije byiterambere "confin.json" hanyuma wongere imirongo nkiyi:
{
"Ikimenyetso": "Umukunzi wawe_ "Tegen",
"Prefix": "yawe_
}
Kubwibyo, imvugo mumagambo abiri asimburwa na bon yihariye kandi yahisemo prefix.
- Fungura guhindura dosiye "bot.js" (by the way, izina ryayo rirashobora kuba). Shyiramo iyi kode ya blok.
Kubyemera = bisaba ('ubwumvikane.js'); // guhuza isomero ryumvikana.js
Robot robot = urujijo rushya.client (); // Turatangaza ko robot - bot
OnMet komit = isaba ("./ Mems.js"); // guhuza dosiye hamwe namategeko kuri bot
Kubumisha FS = bisaba ('FS'); // guhuza node.js kavukire kavukire module
Reka connect = bisaba ('./ config.json'); // guhuza dosiye hamwe nibipimo namakuru
Reka toket = config.Token; // "gukuramo" kuri token
Reka prefix = config.prefix; // "gukuramo" uhereye kuri prefix
robot.on ("biteguye", imikorere () {
/ * Iyo utangira neza, ubutumwa "[IZINA RYAT]" rizagaragara muri konsole! " * /
Console.log (robot.user.username + "yatangiye!");
});
robot.on ('ubutumwa', (msg) => {// gusubiza ubutumwa
Niba (msg.uauthor.username! = robot.user.username && msg.umubare.umurongo.umurongo.Umurongo.dinscrianator) {
var vomit = msg.Conentit.Tmuri () + "" ";
var om_name = Kom.slice (0, om.indexof ("));
var Messarr = Kom.SPlit ("" ");
Kuri (hitamo muri Combs Amsms) {
var kom2 = prefix + proms.com [punts_ubucuruzi] .izina;
Niba (Kom2 == Komm_name) {
orbs.com [Koms_Ubukorikori] .uhin (robot, msg, messarr);
}
}
}
});
robot.login (Token); // Uruhushya rwa Bota
Soma ibisobanuro ku mashanyarazi agenda nyuma yo gukubita ("//") kwigenga ku ntego ya buri.
- Kora dosiye ya gatatu - "Imms.js", aho amategeko akenewe yose azabikwa mugihe kizaza.
- Shyiramo igice kinini muricyo, kizaguka mugihe kizaza:
conty confiy = bisaba ('./ config.json'); // guhuza dosiye hamwe nibipimo namakuru
Kubyemera = bisaba ('ubwumvikane.js'); // guhuza isomero ryumvikana.js
Kubunzaneza (Config. // "gukuramo" prefix
// amakipe //
Ikizamini cyimikorere (robot, akajagari, args) {
Mess.channel.send ('ikizamini!')
}
// Urutonde rwamategeko //
var onm_list = [{
Izina: "Ikizamini",
Hanze: ikizamini,
Ibyerekeye: "Ikipe y'Ikizamini"
}];
// izina - izina ryikipe bot izatwara
// hanze - izina ryibikorwa hamwe nitsinda
// hafi - Ibisobanuro by'itsinda
Module.exports.comms = Koms_list;
Ukeneye amahirwe hamwe namategeko, bizaba bihagije gutangaza imikorere yabo no kuzuza urutonde rwa kode ya kode ihuye. Kurugero, dosiye yarangije "Oms.js" isa nkibi:
conty confiy = bisaba ('./ config.json');
Kubyemera = bisaba ('ubwumvikane.js');
Kubunzaneza (Config.
Kubeshya = Kugena.
// amakipe //
Ikizamini cyimikorere (robot, akajagari, args) {
Mess.channel.send ("Ikizamini!")
}
Imikorere Mwaramutse (robot, akajagari, args) {
Akajagari. Kuramo ("Muraho!")
}
// Urutonde rwamategeko //
var onm_list = [{
Izina: "Ikizamini",
Hanze: ikizamini,
Ibyerekeye: "Ikipe y'Ikizamini"
},
{
Izina: "Uraho",
Hanze: muraho,
Ibyerekeye: "Itsinda ryo Kuramutsa!"
}
}
Module.exports.comms = Koms_list;
Intambwe ya 3: Koresha Bot
Ibikorwa byambere hamwe na bot kuri javascript birangiye, bivuze ko ushobora kuyikoresha ukagenzura akazi. Kugirango ukore ibi, uzakenera gukora ibi bikurikira:
- Fungura menu yo gutangira ukoresheje gushakisha kugirango ubone "umuyobozi wumurongo" hanyuma ukore.
- Injira Node Bot.js, aho bot.js nizina rya dosiye nkuru hamwe na code kuri bot. Niba atari mububiko bwurugo, vuga inzira yuzuye kuri dosiye cyangwa ubanza ujye ahabereye ukoresheje CD itegeko.
Ingero zamakipe yingirakamaro
Iyo iyi nzira irangiye, vuga muri make amategeko abiri yingirakamaro ashobora kuba ingirakamaro mugihe ushyiraho bot. Birashobora gukoreshwa nkikizamini mugihe akazi kumushinga ugikirijwe. Itegeko ryambere -! Sobanura - Gusiba umubare wagenwe wubutumwa muri chat. Kode yayo niyi ikurikira:
Kubunza kwa ARGGS = Ubutumwa .COLITY.SPLOT ('') .slice (1); // Impaka zose zizina ryitsinda hamwe nibibanza
Umubare w'abamenyo = ARGGS.Join (''); // umubare wubutumwa bugomba kuvaho
Niba (! Umubare) subiza mess.Cannel.send ('Ntabwo wagaragaje umubare runaka ubutumwa bugomba kuvaho!'); // cheque, niba nimero ya parameter yashyizweho
Niba (Isnan (amafaranga)) Subiza Mess.CANND ('uyu ntabwo ari umubare!'); // cheque, numubare wabakoresha winjiza
niba (umubare> 100) subiza mess.Cannel.Send ('Ntushobora gusiba ubutumwa 100 icyarimwe'); // cheque, niba umukoresha winjiza arenga 100
Niba (umubare {
Akajagari.Channel.bulkdelete (ubutumwa)
Akajagari.Channel.send (`kure $ {amafaranga} Inyandiko!`)
})
};
gusiba_Mesages (); // guhamagara imikorere idahwitse
Itegeko rya kabiri ryagenewe guta igiceri kandi ritangira kwinjira! Umutwe_OR_ABi muri ikiganiro. Hano code ntabwo igoye cyane, kubera ko hari ibikorwa bike kandi bori igomba gusubiza gusa icyifuzo kimwe kidafite umubare munini wibihinduka.
Akajagari.Channel.send ('igiceri kiragenda ...')
var random = imibare mikuru (imibare. Amadini () * 4) + 1; // itangazo ryimpinduka zuzuye - zibara umubare usanzwe kuva 1 kugeza 3
Niba (bidasanzwe === 1) {// niba umubare wa 1 wabarwa, kagoma igwa.
Akajagari.Channel.send (': Yuzuye_moon: kagoma!')
} Ikindi niba (random === 2) {// niba umubare wa 2 ubarwa, noneho kwihuta bitonyanga.
Akajagari.Channel.send (': New_Moon: Rush!')
} Ikindi niba (bidasanzwe === 3) {// niba umubare wa 3 ubarwa, noneho igiceri kigwa ku nkombe.
Mess.Channel
}
Kuri enterineti urashobora kubona andi mategeko yingirakamaro ushaka gushyira muri bot yawe, ariko, uzakenera ubumenyi buhanitse hamwe na JavaScript cyangwa Python gukorana nabo gukora amakosa yo gukosora cyangwa guhindura kode wenyine.