Jak udělat roboty pro hudbu na vyřazení

Anonim

Jak udělat roboty pro hudbu na vyřazení

V tomto článku budeme hovořit o ručním vytváření bota pro přehrávání hudby na discord. Můžete jednoduše zkopírovat celý předložený kód a upravit jej pro sebe, pokud vlastníte JavaScript dovednosti. Bot byl vytvořen u nás, ale v některých fázích může uživatel ještě čelit různým problémům, takže doporučujeme pečlivě číst nejen naše pokyny, ale také se objevit na chybových kódech obrazovky, pokud jsou takové.

Pokud se ukáže, že tento materiál je pro vás příliš komplikovaný nebo není vhodný pro jiné důvody, použijte hotové bezplatné roboty pro přehrávání hudby. Článek na níže uvedeném odkazu najdete podrobné informace o tom a můžete realizovat úkol.

Přečtěte si více:

Přidání hudebního bota na server ve vzdálenosti

Přehrajte hudbu přes bot v nesouhlasu

Krok 1: Vytvoření nové aplikace

Každý bot pro vyřazení musí být registrován na oficiálním portálu pro vývojáře. Takže získáte přístup ke všem nezbytným nastavením spojeným s oprávněními a obecným chováním bota, můžete kopírovat odkaz na jeho autorizaci na osobním serveru a použít jedinečný token, který je potřebný pro další rozvoj příkazů.

Jděte na oficiální stránky Discord Developer Portal

  1. Pomocí výše uvedeného odkazu otevřete hlavní stránku portálu pro vývojáře, přihlaste se k osobnímu účtu Discord a klikněte na "Nová aplikace" pro vytvoření nové aplikace.
  2. Chcete-li vytvořit hudební bot ve vzdálenosti

  3. Zadejte jeho jméno, vzhledem k jedinečnosti, protože pokud existuje mnoho botů se stejným názvem, nebude možné jej vytvořit - oznámení o přejmenování.
  4. Zadejte název při registraci nové aplikace pro vytvoření hudebního bota na nesouhlasu

  5. Po dokončení otevřete nabídku na webu a vyberte kategorii "BOT".
  6. Přejděte na připojení komponenty nové aplikace pro vytvoření hudebního bota ve vzdálenosti

  7. Naproti řetězci "build-a-bot" klikněte na "Přidat bot".
  8. Připojení součástí nová aplikace pro vytvoření hudebního bota na nesouhlasu

  9. Potvrďte přidání bota pro vybranou aplikaci.
  10. Potvrzení komponent do nové aplikace pro vytvoření hudebního bota na nesouhlasu

  11. Přes známé menu, přejděte na «OAuth2».
  12. Přejděte na aplikaci stránky Nastavení a vytvořte hudební bot ve vzdálenosti

  13. Tato část je zodpovědná za obecné parametry BOT a jeho povolení. V bloku "Scopes" označte odstavec "BOT".
  14. Vyberte typ aplikace aplikace, abyste vytvořili hudební bot ve vzdálenosti

  15. V seznamu oprávnění nezapomeňte aktivovat připojení k hlasovým kanálům a schopnost hovořit, protože je nutná pro další vysílání hudby.
  16. Vyhledejte oprávnění hlasové kanály při nastavení aplikace pro vytvoření hudebního bota na discord

  17. Bot by měl být schopen číst a odesílat zprávy, takže nezapomeňte povolit tyto možnosti v sekci s oprávněními textového chatu. Samozřejmě můžete poskytnout všechna oprávnění najednou, ale tento přístup je neuvěřitelný, zejména v případech, kdy se bota pro masový uživatel.
  18. Vyhledejte oprávnění textové kanály při nastavení aplikace pro vytvoření hudebního bota na discord

  19. Jakmile je nastavení oprávnění dokončeno, zkopírujte odkaz na první autorizaci bota na serveru, protože jinak přidejte, dokud se nezobrazí.
  20. Kopírovat referenční autorizaci nástroje pro vytvoření hudebního bota na nesouhlasu

  21. Postupujte podle tohoto odkazu a vyberte zkušební server, kam chcete zkontrolovat bot.
  22. První autorizace po odkazu vytvořit hudební bot v nesouhlasu

  23. Potvrďte zachycení a počkejte na informace o úspěšném povolení.
  24. Úspěšné povolení po odkazu vytvořit hudební bot v neshodě

Nyní máte bot s jedinečným tokenem a bot již byl přidán na server, ale zatímco v režimu offline. Chcete-li to spustit, bude muset provést několik dalších akcí na místním počítači, protože i když nevybereme boting boting pro operaci offline.

Krok 2: Přípravné akce

Přípravné akce zahrnují vytvoření požadovaných adresářů a souborů, instalace nástrojů a závislostí pro ně. V tom není nic složitého, stačí provést každou akci, pečlivě sledovat chyby v libovolné fázi.

  1. Vytvořte složku se jménem BOT. Můžete si vybrat libovolné místo, ale domovská složka uživatele je pro to nejvhodnější.
  2. Přidání vlastní složky vytvořit hudební bot v neshodě

  3. Vytvořte dva soubory v něm: "config.json" a "index.js". V první instalaci celkovou konfiguraci bota - jeho předpon a jedinečný token a ve druhém - celý programový kód s příkazy a běžné úkoly tohoto nástroje.
  4. Přidávání souborů do vlastní složky pro vytvoření hudebního bota ve vzdálenosti

  5. Pro práci bota bude potřebovat node.js. Tento nástroj je určen pro spuštění skriptů v místním počítači. Postupujte podle níže uvedeného odkazu a stáhněte si instalační program pro Windows.

    Stáhnout uzl.js z oficiální stránky

  6. Stahování komponenty k vytvoření hudebního bota na nesouhlasu

  7. Očekávejte, že stáhnete spustitelný soubor spustitelného souboru, spusťte jej a předejte jednoduchou instalaci postupu podle pokynů zobrazených na obrazovce.
  8. Spuštění a instalace komponenty k vytvoření hudebního botu na discord

  9. Poté otevřete "příkazový řádek" pohodlné pro vás například zadávání cmd v nástroji "Spustit" (spustí kombinaci kláves Win + R).
  10. Spuštění příkazového řádku vytvořit hudební bot ve vzdálenosti

  11. Nainstalujte modul pro práci s rozhraním API, která se nazývá "Discord.js". Chcete-li to provést, v okně konzoly, které se otevře, zadejte instalační disk NPM Discord.JS FFMPEG-binární soubory OPSScript Ytdl-Core --Save a stiskněte ENTER - Takže okamžitě přidejte všechny potřebné závislosti.
  12. Další moduly Nastavení příkazu k vytvoření hudebního bota ve vzdálenosti

  13. Počkejte na oznámení na obrazovce na úspěšné instalaci bez zavření aktuálního okna konzoly. Pokud se objeví chyby, naučte se jejich kód a používat vyhledávače najít pracovní rozhodnutí na fórech nebo oficiálních stránkách.
  14. Instalační proces doplňkových modulů pro vytvoření hudebního bota na nesouhlasu

Výsledkem je, že domovská složka uživatele by měla zobrazit soubory spojené s komponentou Node.js a přidán po modulu. Restartujte počítač tak, aby bot nemá potíže se spuštěním a přejděte na další krok.

Krok 3: Úpravy konfiguračního souboru BOT

Už víte, že v konfiguračním souboru vytvořeného botu bude veškerý pár řádků kódu, který je zodpovědný za použitou předponu (symbol před vstupem do příkazu na serveru) a jedinečným tokenem, který definuje aplikaci v API. Pro splnění všech dalších akcí doporučujeme stáhnout program s podporou Syntaxe JS Syntaxe nebo libovolným pokročilým textovým editorem, pokud to nebylo provedeno dříve. Článek na níže uvedeném odkazu se budete moci seznámit s dostupnými vhodnými řešeními.

Přečtěte si více: výběr vývojového prostředí pro programování

Jakmile je nainstalován na počítači a připraven k práci, můžete bezpečně začít upravovat konfigurační soubor, zadání uživatelských dat.

  1. Spusťte soubor config.js prostřednictvím textového editoru nebo vývojového prostředí, vložte níže uvedený kód.

    {

    "Předpona": "!",

    "Token": "your-tocke"

    }

    Změna předpony při úpravách konfiguračního souboru vytvořit hudební bot ve vzdálenosti

    Změňte předponu ve dvojitých uvozovkách na požadovanou nebo ponechte vykřičník. Příklad příkazu pomocí tohoto znaku vypadá takto :! Hrát.

  2. Jděte do bota na vývojovém portálu, najděte tam jedinečný token a zkopírujte jej.
  3. Kopírování jedinečných tokenů vytvořit hudební bot v nesouhlasu

  4. Namísto toho vložte svou inspekci s toke bez vymazání dvojitých nabídek.
  5. Výměna jedinečného tokenu v konfiguračním souboru vytvořit hudební bot ve vzdálenosti

  6. Uložte změny a zavřete tento soubor. Mimochodem, můžete provést stejnou akci prostřednictvím standardního "notebooku".
  7. Pomocí textového editoru při úpravách konfiguračního souboru vytvořte hudební bot ve vzdálenosti

Na těchto akcích s konfiguračním souborem již není třeba předepsat jeden řádek kódu. Zavřete ji, aniž byste zapomněli uložit úpravy, a pokračujte dalším psaní bota pro přehrávání hudby.

Krok 4: Zkušební spuštění bot

Za prvé, musíme se ujistit, že bot je obecně spuštěn na serveru a přejde do režimu online, bude nutné napsat hlavní část kódu k index.js a potom pomocí node.js spustit.

  1. Prostřednictvím vývojového prostředí nebo vybraného textového editoru otevřete uvedený soubor pro editaci.
  2. Otevření souboru pro zadání kódu a vytvořte hudební bot ve vzdálenosti

  3. Vložte blok kódu, který je zodpovědný za instalaci závislosti a označuje použité moduly:

    CONST DISCORDE = Vyžadovat ('discord.js');

    CONST {

    Předpona,

    žeton

    } = Vyžadovat ('./ config.json');

    CONST YTDL = Vyžadovat ('Ytdl-Core');

  4. Závislost Prohlášení kódu pro vytvoření hudebního bota na nesouhlasu

  5. S pomocí dříve specifikovaných tokenů vytvořte klienta a přihlášení, které se provádí zadáním pouze dvou jednoduchých řádků:

    CONST klient = nové discord.Client ();

    Klient.login (token);

  6. Přidání klienta a tokenů vytvořit hudební bot ve vzdálenosti

  7. Zůstane pouze určit poslední základní řádky pro poslechu bota.

    Client.once ('Ready', () => {

    Console.log ('ready!');

    });

    Client.once ('opětovné připojení', () => {

    Console.log ('Znovu připojeno!');

    });

    Klient.once ('odpojení', () => {

    Console.log ('odpojení!');

    });

  8. Příkazy při připojení v kódu vytvořit hudební bot v neshodě

  9. Rozbalte nabídku "Soubor" a uložte provedené změny.
  10. Uložení změn po editaci kódu pro vytvoření hudebního bota ve vzdálenosti

  11. Spusťte konzolu znovu pohodlným způsobem.
  12. Spuštění příkazového řádku zapnout bota vytvořit hudební bot v nesouhlasu

  13. Zadejte příkaz uzel index.js spustit skript bot.
  14. Bot inspekční tým vytvořit hudební bot v neshodě

  15. Pokud jeho soubory nejsou umístěny v domovském adresáři uživatele, po uzlu bude muset určit kompletní, nechat je.
  16. Zadejte další příkaz spínače k ​​vytvoření hudebního bota na discord

  17. Úspěšné spuštění bota je označeno zobrazeným nápisem "Ready!".
  18. Výsledkem úspěšného spuštění k vytvoření hudebního bota na nesouhlasu

  19. Otevřete nesouhlas a ujistěte se, že bot šel do stavu "online".
  20. Zkontrolujte Bot online a vytvořte hudební bot ve vzdálenosti

Krok 5: Psaní hlavního kodéru hudebního bota

Nejkomplexnější proces zůstal - psaní základního kódu hudebního botu. Existuje seznam úkolů, které musí provádět: čtení zpráv a příkazy zpracování, definice názvu písně nebo jeho adresu, připojení k hlasovému kanálu a přehrávání. Oprávnění pro všechny tento bot je, takže si prostě musíte určit akce pomocí funkce JavaScriptu, které se provádí ve stejném souboru "index.js".

Editace kódu pro zajištění normálního provozu hudebního bota na nesouhlasu

Přidat jednoduchou funkci pro čtení zpráv:

Client.on ("Zpráva", Async Message => {

}

Skládá se pouze z dvou řádků, ale umožní botu přijmout vlastní dotaz a správně zpracovávat. Lze říci, že se jedná o jeden z nejdůležitějších týmů pro roboty všech typů. Ujistěte se, že přidáte ignorování zpráv z jiných botů zadáním

Pokud (Message.Author.bot) návrat;

To se vyhýbá konfliktům při současném používání více botů na serveru. Dále bude nutné zkontrolovat předponu tak, aby byl bot přijal tým nebo jej vrátil.

Pokud (!! Message.Content.Startswith (předpona)) návrat;

Kontrola spuštěných příkazů se provádí pomocí jednoduchých, pokud operátorů, a design v našem případě vypadá takto:

CONST ServerQueue = Queue.get (Message.Guild.id);

if (message.Content.startswith (`$ {prefix} play")) {

Execute (zpráva, Serverqueue);

Vrátit se;

} Jinak, pokud (Message.Content.Startswith (`$ {prefix} skip`)) {

Přeskočit (zpráva, Serverqueue);

Vrátit se;

} Jinak, pokud (Message.Content.startith (`$ {prefix} stop`)) {

STOP (zpráva, serverqueue);

Vrátit se;

} Else {

Message.Channel.Send ('Musíte použít existující příkaz!')

}

Vezměte prosím na vědomí, že funkce odesílání ('') odešle zprávu uživateli, pokud náhle vstupuje do nepracovního příkazu. Tato zpráva můžete upravovat, změnit nápis v uvozovkách.

Nyní se bot naučil vzít příkazy, ale dokud s nimi nemůže komunikovat, protože akce nejsou specifikovány. Nejprve přidejte příkaz PLAY, který je zodpovědný za přehrávání. Pro něj je potřeba pole s následující formou:

CONST QUEUE = Nová mapa ();

Posílá všechny příkazy ve frontě a zpřístupní skladby pouze tehdy, když končí předchozí. Dále bude nutné vytvořit funkci, která zkontroluje, zda uživatel připojen k hlasový kanál a zda je BOT odpovídajícími oprávněními.

Async Funkce Execute (zpráva, Serverqueue) {

CONST args = message.Content.Split ('');

CONST VOICCHANNEL = Message.member.voicechannel;

Pokud (! Voicechannel) Return Message.Channel.Send ("Chcete-li poslouchat hudbu, musíte být v hlasovém kanálu!");

Koncová oprávnění = voicechannel.permissionsfor (message.Client.user);

IF (!! Oprávnění ('Connect') ||! Oprávnění ('hovno')) {

Return Message.Channel.Send ('Potřebuji povolení se připojit a mluvit hlasovým kanálem!');

}

}

Další akce - Připojení knihovny YTDL, protože tento bot bude číst název skladby na odkaz z YouTube, po kterém se přehraje na serveru. Bude to trvat, chcete-li vložit malý kus kódové vložky.

CONST SongInfo = čeká ytdl.getInfo (args [1]);

CONST SONG = {

Název: SongInfo.title,

URL: SongInfo.video_Url,

};

Další blok kódu vám umožní pochopit, zda jsou písně ve frontě nebo se můžete okamžitě připojit k hlasovému kanálu a spusťte přehrávání.

Pokud (! ServerQueue) {

} Else {

Serverqueue.songs.Push (Song);

Console.log (serverqueuee.songs);

Return Message.Channel.Send.Send (`$ {Song.title} byl přidán do fronty!`);

}

Dále přichází trochu komplikovaná pro začínající programátoři smlouvy, který přidává píseň do pole a dělá to samé při každém zadání! Play, kontrola fronty a výběru správné akce. Věnujte pozornost komentářům, které vám umožní vypořádat se se všemi subtleties.

// vytvoření smlouvy o frontě

Const queueconstruct = {

Textchannel: Message.Channel,

VoiceChannel: Voicechannel,

Připojení: null,

Písně: [],

Objem: 5,

Hra: TRUE,

};

// Nastavte frontu s naší smlouvou

Queue.set (Message.Guild.id, QueueControl);

// vložte kompozici do naší řady písní

Queueconstruct.cz.Songs.Push (Song);

Snaž se {

// Zde se snažíme vstoupit do hlasového chatu a uložení spojení v objektu

Var Connection = Await Voicechannel.Join ();

Queueconstruct.connection = připojení;

// Volání funkce přehrávání pro spuštění skladby

Play (Message.Guild, QueueConstruction.songs [0]);

} Catch (Err) {

// zobrazí chybová zpráva, pokud se bot nemůže připojit k hlasovému chatu

Console.log (err);

Queue.delete (Message.Guild.id);

Vrátit zprávu.channel.Send (err);

}

S frontou je vše jasné, ale stále nehraje skladby, protože pro funkci přehrávání není žádná přiřazení. Chcete-li to provést v kódu, je nutné přidat strukturu

Funkce přehrávání (Guild, Song) {

CONST ServerQueue = Queue.get (Guild.ID);

Pokud (!! Píseň) {

Serverqueuee.voicechannel.leave ();

Queue.delete (guild.id);

Vrátit se;

}

}

Přehrávání spustí pomocí funkce PlayStream () a zadaného odkazu na stopu.

CONST dispečer = serverqueue.connection.playStream (ytdl (song.url))

.ON ('konec', () => {

Console.log ('Hudba je u konce!');

// odstraní hotovou píseň z fronty

serverqueuee.songs.shift ();

// opět způsobuje funkci přehrávání s následující skladbou

Hrát (Guild, ServerQueuee.songs [0]);

})

.ON ('ERROR', ERROR => {

Console.error (chyba);

});

Dispatcher.SetVolumelogaritmic (Serverqueuee.Volume / 5);

Pokud chcete přidat funkci Song Skip, například, když se rozhodnete přehrát seznam stop, nejprve se postarat o příslušný příkaz a přidejte takový fragment:

Funkce přeskočit (zpráva, serverqueue) {

Pokud (!! Message.member.voicechannel) Return Message.Channel.Send ('Měli byste být v hlasovém kanálu zastavit hudbu!');

Pokud (! ServerQueue) vrátí zprávu.channel.Send ('Neexistuje žádná píseň, kterou jsem mohl přeskočit! ");

Serverqueue.connection.dispatcher.end ();

}

Přibližně stejného schématu také funguje funkce STOP, ale blok s kódem získává mírně odlišný vzhled:

Funkce Stop (zpráva, Serverqueue) {

Pokud (!! Message.member.voicechannel) Return Message.Channel.Send ('

Musíte být v hlasovém kanálu zastavit hudbu! ');

Serverqueuee.songs = [];

Serverqueue.connection.dispatcher.end ();

}

Zvažte, že výše uvedené informace jsou vhodné výhradně pro ty uživatele, kteří jsou již obeznámeni s JavaScriptovým jazykem nebo se zabývají studiem a rozhodl se vytvořit hudební bot. Pokud nemáte vlastní dovednosti obecně a zadané bloky s kódem, kterého vůbec neříkáte, jednoduše vložte celý zdrojový kód do souboru, vyměňte zprávy z bot do rusky (jsou v citacích) a uložte Změny. Všechny zdrojové kód má tento druh:

Exteriér úplného zdrojového kódu pro vytvoření hudebního bota na neshody

CONST DISCORDE = Vyžadovat ('discord.js');

CONST {

Předpona,

žeton

} = Vyžadovat ('./ config.json');

CONST YTDL = Vyžadovat ('Ytdl-Core');

CONST klient = nové discord.Client ();

CONST QUEUE = Nová mapa ();

Client.once ('Ready', () => {

Console.log ('ready!');

});

Client.once ('opětovné připojení', () => {

Console.log ('Znovu připojeno!');

});

Klient.once ('odpojení', () => {

Console.log ('odpojení!');

});

Client.on ("Zpráva", Async Message => {

Pokud (Message.Author.bot) návrat;

Pokud (!! Message.Content.Startswith (předpona)) návrat;

CONST ServerQueue = Queue.get (Message.Guild.id);

if (message.Content.startswith (`$ {prefix} play")) {

Execute (zpráva, Serverqueue);

Vrátit se;

} Jinak, pokud (Message.Content.Startswith (`$ {prefix} skip`)) {

Přeskočit (zpráva, Serverqueue);

Vrátit se;

} Jinak, pokud (Message.Content.startith (`$ {prefix} stop`)) {

STOP (zpráva, serverqueue);

Vrátit se;

} Else {

Message.Channel.Send ('Musíte zadat platný příkaz!')

}

});

Async Funkce Execute (zpráva, Serverqueue) {

CONST args = message.Content.Split ('');

CONST VOICCHANNEL = Message.member.voicechannel;

Pokud (! Voicechannel) Return Message.Channel.Send ('Musíte být v hlasovém kanálu hrát hudbu!');

Koncová oprávnění = voicechannel.permissionsfor (message.Client.user);

IF (!! Oprávnění ('Connect') ||! Oprávnění ('hovno')) {

Return Message.Channel.Send ('Potřebuji oprávnění ke spojení a mluvit ve svém hlasovém kanálu!');

}

CONST SongInfo = čeká ytdl.getInfo (args [1]);

CONST SONG = {

Název: SongInfo.title,

URL: SongInfo.video_Url,

};

Pokud (! ServerQueue) {

Const queueconstruct = {

Textchannel: Message.Channel,

VoiceChannel: Voicechannel,

Připojení: null,

Písně: [],

Objem: 5,

Hra: TRUE,

};

Queue.set (Message.Guild.id, QueueControl);

Queueconstruct.cz.Songs.Push (Song);

Snaž se {

Var Connection = Await Voicechannel.Join ();

Queueconstruct.connection = připojení;

Play (Message.Guild, QueueConstruction.songs [0]);

} Catch (Err) {

Console.log (err);

Queue.delete (Message.Guild.id);

Vrátit zprávu.channel.Send (err);

}

} Else {

Serverqueue.songs.Push (Song);

Console.log (serverqueuee.songs);

Return Message.Channel.Send.Send (`$ {Song.title} byl přidán do fronty!`);

}

}

Funkce přeskočit (zpráva, serverqueue) {

Jestliže (!!

Pokud (! ServerQueue) vrátí zprávu.channel.Send ('Neexistuje žádná píseň, kterou jsem mohl přeskočit! ");

Serverqueue.connection.dispatcher.end ();

}

Funkce Stop (zpráva, Serverqueue) {

Jestliže (!!

Serverqueuee.songs = [];

Serverqueue.connection.dispatcher.end ();

}

Funkce přehrávání (Guild, Song) {

CONST ServerQueue = Queue.get (Guild.ID);

Pokud (!! Píseň) {

Serverqueuee.voicechannel.leave ();

Queue.delete (guild.id);

Vrátit se;

}

CONST dispečer = serverqueue.connection.playStream (ytdl (song.url))

.ON ('konec', () => {

Console.log ("hudba skončila!");

serverqueuee.songs.shift ();

Hrát (Guild, ServerQueuee.songs [0]);

})

.ON ('ERROR', ERROR => {

Console.error (chyba);

});

Dispatcher.SetVolumelogaritmic (Serverqueuee.Volume / 5);

}

Klient.login (token);

Po dokončení je lepší restartovat bot, po kterém můžete jít na server, připojit se k hlasový kanál a zadejte libovolný příkaz interakce, kontrola, jak reagovat na bot.

Zdrojový kód Kontrola týmu pro vytvoření hudebního bota na discord

Pokud výše uvedená varianta bota není vhodná, můžete najít zdrojové kódy na stejné github a zkopírovat je do počítače. Princip registrace a spuštění zůstává stejný, takže v případě potřeby jednoduše upravte hotový kód a poté pokračujte v testování bota.

Vyhledávání hotových řešení pro vytvoření hudebního bota na nesouhlasu

V tomto článku jsme neovlivnili vypouštění bota na hostování, distribuovat ji mimo jiné uživatele, vytváření avataru a používání otevřených stránek, odkud lze autorizovat. To vše je samostatné procesy, které by měly být zapojeny pouze tehdy, když jste získali dovednost vytvořit roboty a jsou připraveni distribuovat projekty v síti.

Přečtěte si více