Voice Plugin 🎙️

discordjs-nextgen-voice, Discord botunuza ses çalma, duraklatma, geçme ve ses seviyesi kontrolü gibi gelişmiş ses özelliklerini kolayca eklemenizi sağlayan resmi bir eklentidir.

📦 Kurulum

Botunuza ses desteği eklemek için aşağıdaki komutu kullanarak eklentiyi yükleyin:

1npm i discordjs-nextgen-voice

🛠️ Hızlı Kullanım

Eklentiyi framework'e dahil etmek oldukça basittir. app.use() metodunu kullanarak eklentiyi kaydedin:

1import { App, Intents } from 'discordjs-nextgen';
2import { VoicePlugin } from 'discordjs-nextgen-voice';
3
4const app = new App({ intents: Intents.ALL });
5
6app.use(new VoicePlugin({
7 autoLeave: true, // Kanal boşaldığında otomatik ayrıl
8 defaultVolume: 0.5, // Varsayılan ses seviyesi
9 dave: {
10 enabled: true, // DAVE (Discord Audio Visual Encryption) desteği
11 maxProtocolVersion: 1,
12 },
13}));

🚀 Komut Örnekleri

Sese Katılma

1// Context üzerinden sese katılma
2const joinCommand = {
3 name: 'join',
4 run: async (ctx, args) => {
5 const channelId = args[0];
6 if (!channelId) return ctx.reply('Lütfen bir kanal ID belirtin.');
7
8 await ctx.voice.join({ channelId });
9 await ctx.reply('Ses kanalına başarıyla bağlandım!');
10 },
11};

Müzik Çalma

1const playCommand = {
2 name: 'play',
3 run: async (ctx, args) => {
4 const url = args[0];
5 if (!url) return ctx.reply('Lütfen bir URL belirtin.');
6
7 await ctx.voice.play(url, {
8 title: 'İstenen Parça',
9 requestedBy: ctx.user.tag,
10 });
11
12 await ctx.reply('Oynatılıyor...');
13 },
14};

Kontrol Komutları

1// Duraklatma
2ctx.voice.pause();
3
4// Devam ettirme
5ctx.voice.resume();
6
7// Parçayı geçme
8ctx.voice.skip();
9
10// Kanaldan ayrılma
11ctx.voice.leave();

💡 Önemli Notlar

  • Remote URL veya stream kaynakları için sisteme ffmpeg yüklü olmalıdır.
  • Botun sese katılabilmesi için Connect ve Speak izinlerine sahip olması gerekir.
  • Context üzerinden ses metodlarını kullanmak için guild context'i içerisinde olmanız şarttır.