Node JS ile Discord Mesajı Göndermek

Erdem Köşk
Kodcular
Published in
3 min readAug 30, 2020

Herkese merhabalar,

Kişisel bir projem için discord’a mesaj göndermem gerekti. Bunun için araştırma yapmam sonucunda bir kaynak olması için bu yazıyı yazmaya karar verdim. İyi okumalar

Popüler sesli iletişim platformu olan Discord, son dönemlerin en çok kullanılan oyuncu programlarından biri diyebiliriz.Gerek oyun oynarken gerek kişisel konuşmalarımızda sıkça kullandığımız discord aslında uygulamalarımızı anlık takip edebileceğimiz bir yapıya çevrilebilir.

Diyelim ki bir cron çalıştırdınız ve günde 3 kere çalışıcak ve doğru çalışıp çalışmadığını görmemiz gerekiyor. Cloudwatch gibi paralı teknolojiler yerine basit ve etkili bir log mekanizmasını discord ile yapmamız mümkün.

Bunun için kullanıcağımız kütüphaneyi node js e ekleyerek başlayalım.

npm install webhook-discord

Kurulum bittikten sonra şimdi sıra geldi ekliyeceğimiz bir yapı oluşturmaya…

4 farklı mesaj tiplerimiz mevcut. Bunun için constraint.js dosyası oluşturup tipleri buraya tanımlıyorum.

DISCORD_MESSAGE_TYPES: {SUCCESS: 1,WARN: 2,ERROR: 3,INFO: 4,},

Bunun için plugins klasörü altına discord.js adlı bir dosya oluşturuyorum.

const webhook = require(‘webhook-discord’);const { DISCORD_MESSAGE_TYPES } = require(‘../constraint’);const Hook = new webhook.Webhook('discord webhook url buraya ekliyoruz');async function sendMessageToDiscord({ messageType, message }) {switch (messageType) {case DISCORD_MESSAGE_TYPES.SUCCESS:Hook.success(‘Discord Bot 😎’, message);break;case DISCORD_MESSAGE_TYPES.WARN:Hook.warn(‘Discord Bot 😎’, message);break;case DISCORD_MESSAGE_TYPES.ERROR:Hook.err(‘Discord Bot 😎’, message);break;case DISCORD_MESSAGE_TYPES.INFO:Hook.info(‘Discord Bot 😎’, message);break;default:break;}}module.exports = {sendMessageToDiscord,};

Kodumuzu tanımladık. Yukarıda belirttiğim gibi doldurmanız gereken bir url var. Bunun için discord uygulamamızı açıyoruz.

Bir sunucu ekle seçeceğini seçiyoruz.

Sunucu ekle seçeceğini seçiyoruz

Daha sonra karşımıza şu şekilde bir seçenek gelmeli…

Bir sunucu oluştur seçeceğini seçiyoruz…

Daha sonra ise oluşturduğumuz bu sunucu için ayar kısmına gitmeliyiz.

Kanalı düzenle diyoruz…

Buradan Entegrasyonlardan web-hook eklememiz gerekli.

Sırasıyla;

Yeni bir web-hook diyerek isimlendiriyoruz.

Ve buradaki linki kopyalıyor ve kodumuzun içindeki yere yapıştıyoruz. Daha temiz ve gizli olması için bunu env almanızı tavsiye ederim.

Şimdi gelelim kodumuzu kullanmaya ve test etmeye…

await sendMessageToDiscord({messageType: DISCORD_MESSAGE_TYPES.INFO,message: ‘[C] Cron trigered!!!!!’,});

Ve karşınızda…

Basitçe kodumuzdan discord’a mesaj gönderebildik.

Bu sayede herkesin okumasını istediği hata uyarı ve gerekli bilgileri buradanda gösterebilir ve developer olmayan kişilerinde sistemi takip etmesini sağlayabilirsiniz.

Umuyorum yararlı olmuştur…

Bir sonraki yazıda görüşmek üzere…

--

--