• Forumzar.COM Türkçe içerikli genel forum sitesi ve paylaşım platformu olarak eğlenceli ve interaktif bir forum deneyim sunar.

    Foruma üye olmak için BURAYA TIKLAYINIZ

Discord Node.js İle Bot Yazma

Ashton

Forum Üyesii
Katılım
25 Ara 2022
Mesajlar
105
Puanları
16
Javascript kodunu bir web sayfasının dışında çalıştırmak için Düğüme ihtiyacınız vardır. İndirin, yükleyin ve bir terminalde çalıştığından emin olun (veya tüm Windows sistemlerinde çalışması gerektiği için Komut İstemi). Varsayılan komut “düğüm” dür.

Ayrıca, nodemon aracını yüklemenizi öneririz. Botunuzun kodunu izleyen ve değişikliklerde otomatik olarak yeniden başlayan bir komut satırı uygulamasıdır. Aşağıdaki komutu çalıştırarak kurabilirsiniz:

Kod:
Kod:

npm i -g nodemon
Bir metin düzenleyicisine ihtiyacınız olacak. Sadece not defteri kullanabilirsiniz, ancak Atom veya VSC'yi öneririz.

İşte “Merhaba Dünyamız”:

xbot_3.png.pagespeed.gp+jp+jw+pj+ws+js+rj+rp+rw+ri+cp+md.ic.zGlVQ0ayGs.png


Kod:
Kod:

Kod:
const Discord = require('discord.js');
const client = new Discord.Client();

client.on('ready', () => {
console.log(`Logged in as ${client.user.tag}!`);
});

client.on('message', msg => {
if (msg.content === 'ping') {
msg.reply('pong');
}
});


client.login('token');
Bu kod discord.js örneğinden alınmıştır. Hadi yıkalım.

  • İlk iki satır istemciyi yapılandırmaktır. Birinci satır, modülü “Discord” adlı bir nesneye içe aktarır ve ikinci satır, istemci nesnesini başlatır.
  • client.on('ready') bot başladığında blok patlayacak. Burada, adını terminale kaydetmek için yapılandırılmıştır.
  • client.on('message') herhangi bir kanala her yeni mesaj gönderildiğinde engelleme tetiklenir. Tabii ki, mesaj içeriğini kontrol etmeniz gerekecek ve if blok yapar. Mesajda sadece “ping” yazıyorsa “Pong!” İle cevap verecektir.
  • Son satır, bot portalındaki jetonla oturum açar. Açıkçası, buradaki ekran görüntüsünde jeton sahte. Jetonunuzu hiçbir zaman internette yayınlamayın.
Bu kodu kopyalayın, altına jetonunuzu yapıştırın ve olarak kaydedin index.js özel bir klasörde.

Bot Nasıl Çalışır​

bot_4.png


Terminalinize gidin ve aşağıdaki komutu çalıştırın:

nodemon --inspect index.js
Bu komut dosyasını başlatır ve ayrıca yazarak erişebileceğiniz Chrome hata ayıklayıcısını tetikler chrome://inspect/ Chrome’un Omnibar’ına girin ve ardından “Düğüm için özel aygıtlar” açın.

Şimdi, yalnızca ” , ”Ancak buraya konsola alınan tüm mesaj nesnelerini günlüğe kaydedecek bir satır ekledim:

xbot_5.png.pagespeed.gp+jp+jw+pj+ws+js+rj+rp+rw+ri+cp+md.ic.5FJRj2j__5.png


Peki bu mesaj nesnesini oluşturan nedir? Aslında bir sürü şey:

xbot_6.png.pagespeed.gp+jp+jw+pj+ws+js+rj+rp+rw+ri+cp+md.ic.u6WmbWWQX9.png


En önemlisi, yazar bilgisi ve msg.author ve msg.channel ile erişebileceğiniz kanal bilgisine sahipsiniz. Nesneleri Chrome Düğümü cihazlarına kaydetme ve sadece neyin işe yaradığını görmek için etrafa bakma yöntemini öneririm. İlginç bir şey bulabilirsiniz. Örneğin, bot yanıtlarını konsola kaydeder, böylece botun cevapları tetiklenir client.on('message'). Bir spambot yaptım:

xbot_7.png.pagespeed.gp+jp+jw+pj+ws+js+rj+rp+rw+ri+cp+md.ic.ps2HKyouSf.png


Not: Özyineleme ile gerçekten uğraşmak istemediğiniz için buna dikkat edin.
 

Genel Forum Sitesi

Forum Sitesi - Forumzar.COM

Forumzar.COM olarak, Türkçe forum sitesi denildiğinde akla gelen ilk adres olarak, geniş kapsamlı genel forum platformumuzda buluşuyoruz. Türkiye'nin en büyük Türkçe forum siteleri arasında yer almanın gururunu yaşıyoruz. Çeşitli konu başlıklarında aktif bir şekilde paylaşımların yapıldığı, her konuda interaktif ve bilgilendirici tartışmalara katılmak için bizi takip edin! ve bir dakikanızı ayırarak forum sitemize üye olun!

Forum Siteleri

Bilgi paylaştıkça çoğalır sloganı ile ilerleyen forum sitesi platformumuza, siz de üye olarak forum sitemizde açılan konulara katılabilir ve ilgi alanınıza uygun konular açarak siz de paylaşımda bulunabilirsiniz.