Come rendere i robot per la musica in scarto

Anonim

Come rendere i robot per la musica in scarto

In questo articolo, parleremo di creare manualmente un bot per giocare a musica in discordia. Puoi semplicemente copiare l'intero codice inviato e modificarlo per te se possiedi le abilità JavaScript. Il bot è stato creato da noi, ma ad alcune fasi l'utente può ancora affrontare problemi diversi, quindi ti consigliamo di leggere attentamente non solo le nostre istruzioni, ma anche apparire sui codici di errore dello schermo se ci sono tali.

Se si scopre che questo materiale è troppo complicato per te o non è adatto per altri motivi, utilizzare i robot gratuiti pronti per riprodurre musica. L'articolo sul link sottostante troverai informazioni dettagliate su questo e puoi implementare l'attività.

Leggi di più:

Aggiunta di un bot musicale al server in discordia

Riproduci musica attraverso il bot in discordia

Passaggio 1: creazione di una nuova applicazione

Ogni bot per il gestore deve essere registrato sul portale ufficiale per gli sviluppatori. Quindi accedi a tutte le impostazioni necessarie associate alle autorizzazioni e al comportamento generale del BOT, è possibile copiare il collegamento alla sua autorizzazione nel server personale e utilizzare il token unico, necessario per ulteriori sviluppi dei comandi.

Vai al sito ufficiale del portale dello Sviluppatore Discord

  1. Utilizzare il link sopra per aprire la pagina principale del portale per gli sviluppatori, accedere alla discordia Account personale e fare clic sulla "Nuova applicazione" per creare una nuova applicazione.
  2. Vai a registrare una nuova applicazione per creare un bot musicale in discordia

  3. Inserisci il suo nome, data l'unicità, perché se ci sono molti robot con lo stesso nome, non sarà possibile crearlo - un avviso di ridenominazione è notificato.
  4. Inserire il nome quando si registra una nuova applicazione per creare un bot musicale in discordia

  5. Al termine, apri il menu sul sito e selezionare Categoria "Bot".
  6. Vai a collegare i componenti di una nuova applicazione per creare un bot musicale in discordia

  7. Di fronte alla stringa "Build-A-Bot" clicca sul "Aggiungi Bot".
  8. Componenti del pulsante di connessione di una nuova applicazione per creare un bot musicale in discordia

  9. Confermare l'aggiunta del bot per l'applicazione selezionata.
  10. Conferma dei componenti a una nuova applicazione per creare un bot musicale in discordia

  11. Attraverso un menu familiare, vai a «OAUTH2».
  12. Vai all'applicazione della pagina Impostazioni per creare un bot musicale in discordia

  13. Questa sezione è responsabile dei parametri generali del BOT e della sua autorizzazione. Nel blocco "Scopes", segna il paragrafo "Bot".
  14. Seleziona il tipo di applicazione dell'applicazione per creare un bot musicale in discordia

  15. Nell'elenco delle autorizzazioni, assicurarsi di attivare la connessione ai canali vocali e la capacità di parlare, in quanto è necessario per ulteriori la musica di trasmissione.
  16. Cerca le autorizzazioni del canale vocale quando si imposta un'applicazione per creare un bot musicale in discordia

  17. Il bot dovrebbe essere in grado di leggere e inviare messaggi, quindi non dimenticare di abilitare queste opzioni nella sezione con le autorizzazioni della chat di testo. Naturalmente, è possibile fornire tutte le autorizzazioni contemporaneamente, ma questo approccio è incredibile, specialmente nei casi in cui si crea un bot per un utente di massa.
  18. Cerca le autorizzazioni del canale di testo quando si imposta un'applicazione per creare un bot musicale in discordia

  19. Non appena l'impostazione dell'autorizzazione è completata, copia il collegamento per la prima autorizzazione del bot sul server, perché altrimenti aggiungilo finché non si scopre.
  20. Copia l'autorizzazione dello strumento di riferimento per creare un bot musicale in discordia

  21. Segui questo link e seleziona il server di test in cui si desidera controllare il bot.
  22. Prima autorizzazione dopo il link per creare un bot musicale in discordia

  23. Confermare l'acquisizione e attendere informazioni sull'autorizzazione di successo.
  24. Autorizzazione di successo dopo un link per creare un bot musicale in discordia

Ora hai un bot con un token unico e il bot è già stato aggiunto al server, ma durante la modalità offline. Per avviarlo, dovrà eseguire alcune altre azioni sul computer locale, poiché mentre non scarichiamo il boting che botaling per il funzionamento offline.

Passaggio 2: Azioni preparatorie

Le azioni preparatorie includono la creazione delle directory e dei file richiesti, l'installazione di strumenti e dipendenze per loro. Non c'è niente di complicato in questo, devi solo fare ogni azione a sua volta, seguendo attentamente gli errori in qualsiasi fase.

  1. Crea una cartella con il nome del bot. Puoi scegliere qualsiasi posto, ma la cartella iniziale dell'utente è più adatta per questo.
  2. Aggiunta di una cartella personalizzata per creare un bot musicale in discordia

  3. Crea due file in esso: "config.json" e "index.js". Nel primo installare la configurazione generale del bot - il suo prefisso e il token unico e nel secondo - l'intero codice del programma con comandi e compiti comuni di questo strumento.
  4. Aggiunta di file a una cartella personalizzata per creare un bot musicale in discordia

  5. Perché il lavoro del bot avrà bisogno di node.js. Questo strumento è progettato per avviare script sul computer locale. Segui il link sottostante e scarica il suo installatore per Windows.

    Scarica Node.js dal sito ufficiale

  6. Download di un componente per creare un bot musicale in discordia

  7. Aspettatevi di scaricare il file eseguibile eseguibile eseguibile, eseguirlo e passare la semplice procedura di installazione, seguendo le istruzioni visualizzate sullo schermo.
  8. Esecuzione e installazione di un componente per creare un bot musicale in discordia

  9. Dopodiché, aprire la "riga di comando" conveniente per te, ad esempio, inserendo CMD nell'utilità "Esegui" (avvia la combinazione di tasti Win + R).
  10. Esecuzione della riga di comando per creare un bot musicale in discordia

  11. Installare il modulo per funzionare con l'API della discordia, che si chiama "Discord.js". Per fare ciò, nella finestra della console che si apre, immettere la NPM install discordia.js ffmpeg-binarie opsscript ytdl-core --Save e premi INVIO - quindi aggiungi immediatamente tutte le dipendenze necessarie.
  12. Comando di impostazione dei moduli aggiuntivi per creare un bot musicale in discordia

  13. Attendere le notifiche sullo schermo su un'installazione riuscita, senza chiudere la finestra della console corrente. Se vengono visualizzati errori, impara il loro codice e utilizzano il motore di ricerca per trovare una decisione di lavoro sui forum o sul sito ufficiale.
  14. Processo di installazione di moduli aggiuntivi per creare un bot musicale in discordia

Di conseguenza, la cartella principale dell'utente dovrebbe apparire i file associati al componente Node.js e aggiunto dopo il modulo. Riavvia il computer in modo che il BOT non abbia difficoltà di avvio, quindi vai al passaggio successivo.

Passaggio 3: Modifica del file di configurazione Bot

Sai già che nel file di configurazione BOT creato ci sarà una coppia di righe del codice responsabile del prefisso utilizzato (simbolo prima di inserire il comando sul server) e un token unico che definisce l'applicazione nell'API. Per soddisfare tutte le ulteriori azioni, si consiglia di scaricare un programma con il supporto JS Syntax o qualsiasi editor di testo avanzato se non è stato effettuato in precedenza. L'articolo sul link sottostante sarete in grado di familiarizzare con le soluzioni disponibili disponibili.

Per saperne di più: Selezione dell'ambiente di sviluppo per la programmazione

Non appena è installato sul computer e pronto a funzionare, è possibile iniziare in sicurezza per modificare il file di configurazione, inserendo i dati utente lì.

  1. Eseguire il file Config.js tramite un editor di testo o un ambiente di sviluppo, inserisci il codice qui sotto.

    {

    "Prefisso": "!",

    "Token": "Your-Toke"

    }

    Modifica del prefisso quando si modifica un file di configurazione per creare un bot musicale in discordia

    Cambia il prefisso in virgolette doppie sul desiderato o lasciare un punto esclamativo. Un esempio di un comando usando questo segno è simile a questo :! Gioca.

  2. Vai al tuo bot sul portale di sviluppo, trova un token unico lì e copialo.
  3. Copia dei token unici per creare un bot musicale in discordia

  4. Inserire invece ispezione del tuo-toke senza eliminare le virgolette doppie.
  5. Sostituzione di un token unico in un file di configurazione per creare un bot musicale in discordia

  6. Salva le modifiche e chiudi questo file. A proposito, puoi eseguire la stessa azione attraverso un "notebook" standard.
  7. Utilizzo di un editor di testo quando si modifica un file di configurazione per creare un bot musicale in discordia

Su queste azioni con il file di configurazione sono completate, non è più necessario prescrivere una singola riga di codice. Chiudilo, senza dimenticare di salvare le modifiche effettuate e procedere per scrivere ulteriormente il bot per la riproduzione della musica.

Passaggio 4: BOT AVVIAMENTO DI PROVA

Innanzitutto, dobbiamo assicurarci che il bot sia generalmente in esecuzione sul server e va alla modalità online, sarà necessario scrivere la parte principale del codice su Index.js, quindi utilizzare Node.js per iniziare.

  1. Attraverso l'ambiente di sviluppo o l'editor di testo selezionato, aprire il file menzionato per la modifica.
  2. Apertura del file di ingresso del codice per creare un bot musicale in discordia

  3. Inserire il blocco del codice responsabile per l'installazione di dipendenza e indica i moduli utilizzati:

    Const Discord = Richiesto ('discord.js');

    const {

    Prefisso,

    gettone

    } = Richiedere ('./ config.json');

    Cost YTDL = Richiedere ('YTDL-Core');

  4. Codice dichiarazione di dipendenza per la creazione di un bot musicale in discordia

  5. Con l'aiuto dei token specificati in precedenza, creare un client e un login, che viene eseguito inserendo solo due semplici linee:

    Const Client = New Discord.Client ();

    Client.login (token);

  6. Aggiunta di un cliente e un token per creare un bot musicale in discordia

  7. Rimane solo per specificare le ultime linee di base per l'ascolto del bot.

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

    Console.log ('pronto!');

    });

    Client.Unce ('Riconnessione', () => {

    Console.log ('ricollegamento!');

    });

    Client.Unce ('disconnect', () => {

    Console.log ('disconnetti!');

    });

  8. Comandi quando si collega il codice per creare un bot musicale in discordia

  9. Espandi il menu "File" e salvare le modifiche apportate.
  10. Salvare le modifiche dopo il codice di editing per creare un bot musicale in discordia

  11. Esegui nuovamente la console in un modo conveniente.
  12. Esecuzione della riga di comando per accendere il bot per creare un bot musicale in discordia

  13. Immettere il comando NODE INDEX.JS per avviare lo script BOT.
  14. Team di ispezione Bot per creare un bot musicale in discordia

  15. Se i suoi file non si trovano nella directory home dell'utente, dopo che il nodo dovrà specificare un completo consente loro.
  16. Inserisci un altro comando Switch Bot per creare un bot musicale in discordia

  17. Il lancio di successo del bot è indicato dalla scritta apparsa "pronta!".
  18. Il risultato di un lancio di successo per creare un bot musicale in discordia

  19. Apri discordia e assicurati che il bot sia andato allo stato di "online".
  20. Controlla bot online per creare un bot musicale in discordia

Passaggio 5: scrivendo il principale codificatore del bot musicale

Il processo più complesso è rimasto - scrivendo il codice di base per il bot musicale. Esiste un elenco di compiti che devono eseguire: leggere messaggi e comandi di elaborazione, definizione di un nome di brano o del suo indirizzo, che si collega al canale vocale e sulla riproduzione. Autorizzazioni su tutto questo bot è, quindi è solo necessario specificare le azioni utilizzando le funzioni JavaScript, che viene eseguita nello stesso file "index.js".

Modifica del codice per garantire il normale funzionamento del bot musicale in discordia

Aggiungi una semplice funzionalità per leggere i messaggi:

Client.on ('Message', Async Message => {

}

Consiste solo di due righe, ma consentirà al bot di prendere una query personalizzata e elaborato correttamente. Si può dire che questa è una delle squadre più importanti per i robot di qualsiasi tipo. Assicurati di aggiungere ignorare i messaggi da altri robot inserendo

se (message.author.bot) ritorno;

Questo evita i conflitti durante l'utilizzo di più bot sul server contemporaneamente. Successivamente, sarà necessario verificare il prefisso in modo che il Bot abbia accettato la squadra o restituirlo.

IF (! Message.content.startswith (prefisso)) rendimento;

Il controllo dei comandi lanciati viene effettuato utilizzando semplici se gli operatori e il design del nostro caso è simile a questo:

Cost ServerQueue = Queue.get (messaggio.guild.id);

Se (message.content.startswith (`$ {prefisso} play play`)) {

Esegui (messaggio, serverqueue);

Ritorno;

} Else se (message.content.startswith (`$ {prefisso} skip`)) {

Salta (messaggio, serverqueue);

Ritorno;

} Else se (message.content.startswith (`$ {prefisso} stop`)) {

Stop (messaggio, serverqueue);

Ritorno;

} ALTRO {

Message.channel.send ('Devi usare il comando esistente!')

}

Si noti che la funzione Invia ('') invia il messaggio all'utente se improvvisamente entra nel comando non funzionante. Questo messaggio è possibile modificare, modificando l'iscrizione nelle citazioni.

Ora il bot ha imparato a prendere comandi, ma finché non può interagire con loro, poiché le azioni non sono specificate. Per prima cosa aggiungi il comando PLAY, che è responsabile della riproduzione. Per questo è necessario un array con il seguente modulo:

Const Queue = Nuova mappa ();

Invia tutti i comandi in coda e rende le canzoni da giocare solo quando finisce il precedente. Successivamente, sarà necessario creare una funzione che controllerà se l'utente collegato al canale vocale e se il BOT è le autorizzazioni corrispondenti.

Funzione Async Execute (messaggio, serverqueue) {

const args = messaggio.content.split ('');

Const VoiceChannel = Message.member.voiceChannel;

Se (! VoiceChannel) ritorno messaggi.Channel.Send ('Per ascoltare la musica, devi essere in canale vocale!');

Const Amissions = VoiceChannel.permissionsFa (Message.Client.User);

IF (! Autorizzazioni.Ha ('Connect') ||! Permissions.has ('Speak')) {

Ritorno message.channel.send ('Ho bisogno di permessi di unirsi e parlare del tuo canale vocale!');

}

}

Azione successiva - Collegamento della libreria YTDL, poiché questo bot leggerà il nome del brano sul collegamento da YouTube, dopo il quale viene riprodotto sul server. Ci vorrà per inserire un piccolo pezzo di inserimento del codice.

Cost songinfo = attendi ytdl.getinfo (args [1]);

SONG SONG = {

Titolo: songinfo.title,

URL: songinfo.video_url,

};

Il prossimo blocco del codice ti consentirà di capire se ci sono brani in coda o è possibile connettersi immediatamente al canale vocale e avviare la riproduzione.

Se (! ServerQueue) {

} ALTRO {

Serverqueue.songs.push (canzone);

Console.log (serverqueue.songs);

Return Message.Channel.Send (`$ {song.title} è stato aggiunto alla coda!`);

}

Il prossimo arriva un po 'complicato per i programmatori dei principianti uno schema di contratto che aggiunge una canzone in un array e fa lo stesso ogni volta che entri! Gioca, controllando la coda e scegliendo l'azione giusta. Presta attenzione ai commenti presentati, che ti permettono di affrontare tutte le sottigliezze.

// creando un contratto per la coda

Const QueueContruct = {

Textchannel: Message.Channel,

VoiceChannel: VoiceChannel,

Connessione: NULL,

Canzoni: [],

Volume: 5,

Giocare: vero,

};

// imposta la coda con il nostro contratto

Queue.set (messaggio.guild.id, queuecontropl);

// inserisci la composizione nella nostra matrice di canzoni

queuecontrect.songs.push (canzone);

Tentativo {

// Qui stiamo cercando di unirsi alla chat vocale e salvare la connessione nell'oggetto

Var Connection = Await VoiceChannel.join ();

QueueContruct.connection = connessione;

// chiamando la funzione di riproduzione per avviare la canzone

Giocare (messaggio.galizza, queuecontrusione.songs [0]);

} Catch (ERR) {

// Visualizza un messaggio di errore se il bot non può aderire alla chat vocale

Console.log (err);

Queue.Delete (messaggio.guild.id);

Ritorno messaggi.channel.send (err);

}

Con la coda, tutto è chiaro, ma ancora non riproduce canzoni, perché non c'è alcuna assegnazione per la funzione di gioco. Per fare questo nel codice è necessario aggiungere la struttura

Funzione Play (Guild, Song) {

Cost ServerQueue = Queue.get (Guild.id);

Se (! Song) {

Serverqueue.voicechannel.leave ();

Queue.Delete (Guild.id);

Ritorno;

}

}

La riproduzione inizia a utilizzare la funzione Playstream () e il collegamento specificato alla traccia.

Cost Dispatcher = serverqueue.connection.playstream (ytdl (song.url))

.on ('End', () => {

Console.log ('la musica è finita!');

// rimuove la canzone finita dalla coda

serverqueue.songs.shift ();

// fa nuovamente provoca la funzione di riproduzione con la seguente canzone

Gioca (Gilda, ServerQueue.Songs [0]);

})

.on ('errore', errore => {

Console.error (errore);

});

Dispatcher.setVolumelogarithmic (serverqueue.volume / 5);

Se si desidera aggiungere una funzione di skip di song, ad esempio, quando si decide di riprodurre una playlist, prenditi prima cura del comando appropriato, quindi aggiungi un tale frammento:

Funzione Skip (Message, ServerQueue) {

Se (! Message.member.voiceChannel) ritorno messaggi.Channel.send ('Dovresti essere in un canale vocale per fermare la musica! ");

Se (! ServerQueue) ritorno messaggi.Channel.Senda ('Non c'è canzone che potrei saltare!');

Serverqueue.connection.dispatcher.end ();

}

Approssimativamente lo stesso schema funziona anche la funzione di arresto, ma il blocco con il codice acquisisce un aspetto leggermente diverso:

Funzione Stop (messaggio, serverqueue) {

IF (! Message.Member.VoCheChannel) ritorno messaggi.Channel.send ('

Devi essere nel canale vocale per fermare la musica! ');

Serverqueue.songs = [];

Serverqueue.connection.dispatcher.end ();

}

Si consideri che le informazioni presentate sopra è adatto esclusivamente per quegli utenti che hanno già familiarità con il linguaggio JavaScript o è impegnato solo in studio e ha deciso di creare un bot musicale. Se non si proprie competenze, in generale, e dei blocchi specificati con il codice che non si dice nulla, è sufficiente inserire l'intero codice sorgente nel file, sostituire i messaggi dal bot in russo (sono tra virgolette) e salvare il i cambiamenti. Tutto il codice sorgente ha questo tipo:

L'esterno del codice sorgente completo per la creazione di un bot musicale in discordia

Const Discord = Richiesto ('discord.js');

const {

Prefisso,

gettone

} = Richiede ( './ config.json');

const YTDL = require ( 'YTDL-CORE');

Const client = new discord.client ();

Const coda = Nuova mappa ();

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

Console.log ( 'Ready!');

});

Client.Once ( 'riconnessione', () => {

Console.log ( 'ricollegare!');

});

Client.ONCE ( 'Disconnetti', () => {

Console.log ( 'Disconnect!');

});

Client.on ( 'Messaggio', Async Messaggio => {

if (message.author.bot) ritorno;

if (Message.content.startSwith (prefisso)!) di ritorno;

Const ServerQueue = Queue.Get (Message.Guild.ID);

if (Message.Content.startSwith ( `$ {prefix} gioco`)) {

EXECUTE (Message, ServerQueue);

Ritorno;

} Else if (message.content.startswith ( `$ {prefix} Skip`)) {

SKIP (Message, ServerQueue);

Ritorno;

} Else if (message.content.startSwith ( `$ {prefix} stop`)) {

Stop (Messaggio, Serverqueue);

Ritorno;

} ALTRO {

Message.Channel.send ( 'È necessario inserire un comando valido!')

}

});

ASYNC funzione Eseguono (MESSAGGIO, SERVERQUEUE) {

const args = message.content.split ( '');

Const VoiceChannel = Message.Member.VoiceChannel;

Se il ritorno Message.Channel.send ( 'Hai bisogno di essere in un canale vocale per giocare musica!') (VoiceChannel!);

const autorizzazioni = VoiceChannel.permissionSFOR (Message.Client.user);

Se (! Permissions.has ( 'Connect') ||! Permissions.has ( 'parlare')) {

Return Message.Channel.send ( 'Ho bisogno di autorizzazioni per l'aggiunta e parlare in tuo canale Voice!');

}

Const Songinfo = await ytdl.getinfo (args [1]);

Const canzone = {

Titolo: Songinfo.title,

URL: Songinfo.Video_URL,

};

Se (! Serverqueue) {

Const QueueContruct = {

TextChannel: Message.Channel,

VoiceChannel: VoiceChannel,

Collegamento: NULL,

Canzoni: [],

VOLUME: 5,

Giocare: È vero,

};

queue.set (Message.Guild.ID, QueueContruct);

queuecontruct.songs.push (SONG);

Tentativo {

collegamento var = voicechannel.join await ();

queuecontruct.connection = Connection;

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

} Catch (err) {

Console.log (ERR);

queue.delete (Message.Guild.ID);

Return Message.Channel.send (ERR);

}

} ALTRO {

ServerQueue.Songs.push (Song);

Console.log (Serverqueue.songs);

Return Message.Channel.send ( `$ {} Song.title è stato aggiunto alla coda`!);

}

}

Funzione Skip (Messaggio, Serverqueue) {

if (message.member.voiceChannel!) Ritorno Message.Channel.send ( 'Bisogna essere in un canale vocale per fermare la musica!');

if (ServerQueue!) Ritorno Message.Channel.send ( 'non c'è nessun brano che ho potuto Vai!');

ServerQueue.connection.dispatcher.end ();

}

Funzione di arresto (Messaggio, Serverqueue) {

if (message.member.voiceChannel!) Ritorno Message.Channel.send ( 'Bisogna essere in un canale vocale per fermare la musica!');

ServerQueue.Songs = [];

ServerQueue.connection.dispatcher.end ();

}

Funzione di riproduzione (GUILD, SONG) {

Const ServerQueue = queue.get (guild.id);

Se (! Song) {

ServerQueue.VoiceChannel.Leave ();

queue.delete (guild.id);

Ritorno;

}

Const Dispatcher = ServerQueue.Connection.PlayStream (YTDL (Song.url))

.on ( 'End', () => {

Console.log ( 'musica finì!');

serverqueue.songs.shift ();

Giocare (Gilda, Serverqueue.songs [0]);

})

.on ( 'errore', errore => {

Console.Error (errore);

});

dispatcher.setvolumelogarithmic (serverqueue.volume / 5);

}

Client.login (Token);

Al termine, è meglio riavviare il bot, dopo di che si può andare al server, la connessione al canale vocale e digitare qualsiasi comando dell'interazione, controllando come reagire al bot.

Source Code Controllare squadra per creare un bot musicale in discordia

Se la variante sopra descritta del bot non è adatta per te, è possibile trovare i codici di origine sullo stesso GitHub e copiarli sul tuo computer. Il principio di registrazione e lancio rimane lo stesso, quindi se necessario, modifica è sufficiente modificare il codice finito, quindi procedere a testare il bot.

Cerca soluzioni pronte per la creazione di un bot musicale in discordia

In questo articolo, non abbiamo influenzato lo scarico di un bot sull'hosting, distribuirlo tra gli altri utenti, creando un avatar e l'uso di siti aperti, da dove può essere autorizzato. Tutto questo è processi separati che dovrebbero essere coinvolti solo quando hai legato la tua abilità per creare bot e sono pronti a distribuire progetti sulla rete.

Leggi di più