Bir Discord Botu Oluşturma ve Dağıtma Adımları

Bu makalede, Node.js, resmi discord.js kütüphanesi ve Back4app konteynerlerini kullanarak bir Discord botu oluşturacak ve dağıtacaksınız.

Discord botları, Discord üzerinde otomatik görevler gerçekleştiren programlardır. Bu botlar kullanıcılarla etkileşime girebilir, topluluk davranışlarını yönetebilir ve Discord’da varsayılan olarak bulunmayan müzik çalma, içerik denetleme, anket düzenleme ve harici hizmetler veya API’lerle entegre olma gibi ekstra işlevler sağlayabilir.

Geliştirme Ortamınızı Kurma

Bu makalede, kullanıcılara bir Discord sunucusunda tercih ettikleri zorluk seviyesine ve soru türüne göre cevaplamaları için önemsiz sorular veren bir Discord botu yer alacaktır.

Bu öğreticiyi takip etmek için aşağıdakilere sahip olmanız gerekir:

Aşağıdaki komutu çalıştırarak proje dizininizi kurun:

mkdir discord-bot && cd discord-bot && npm init -y

Yukarıdaki komut bir discord-bot dizini oluşturur ve içinde npm’yi başlatır.

Ardından, package.json dosyanıza gidin ve aşağıdaki başlangıç betiğini ekleyin:

"start": "node server.js"

Ardından, aşağıdaki komutu çalıştırarak projeniz için gerekli bağımlılıkları yükleyin:

npm install discord.js axios dotenv 

Yukarıda yüklediğiniz bağımlılıklar aşağıdakileri içerir:

  • discord.js: Bu kütüphane, Node.js uygulamanızdan Discord API ile etkileşime girmenizi sağlayacaktır.
  • dotenv: Bu paket botunuzun token’ı gibi hassas verileri yönetmenize yardımcı olacaktır.
  • axios: Bu paket Trivia API’sini talep etmenizi sağlayacaktır.

Şimdi, geliştirme ortamınızı kurdunuz ve gerekli bağımlılıkları yüklediniz. Ardından, bir Discord bot hesabı oluşturacaksınız.

Discord Bot Hesabı Oluşturma

Discord Bot hesabı, bir bot çalıştırmak için oluşturulmuş bir Discord hesabıdır. İnsan kullanıcıların kontrol ettiği normal kullanıcı hesaplarının aksine, bot hesaplarını yazılım kontrol eder.

Bu hesap, botunuza sunucu kaynaklarına erişmesi, olaylara yanıt vermesi ve Discord topluluğunuz içinde eylemler gerçekleştirmesi için gerekli izinleri veren bir ağ geçidi görevi görecektir.

Bir Discord bot hesabı oluşturmak için öncelikle bir Discord uygulaması oluşturmalısınız. Bir uygulama oluşturmak için Discord’un geliştirici portalına gidin ve aşağıdaki resimde gösterildiği gibi “Uygulama Oluştur” düğmesine tıklayın.

Discord Bot Uygulaması Oluşturun

Düğmeye tıkladığınızda Discord hesabınıza giriş yapmanız istenecektir. Giriş yaptıktan sonra, uygulamanıza bir isim verin ve aşağıdaki resimde gösterildiği gibi “Oluştur” düğmesine tıklayın.

İsim Discord Uygulaması

Ardından, botunuzu sunuculara yalnızca sizin ekleyebilmenizi sağlamak için genel bot anahtarını kapatın.

Ardından, üye varlığı gibi sunucu etkinliği hakkında gerçek zamanlı güncellemelere erişebilmesini sağlamak için tüm “Ayrıcalıklı Ağ Geçidi Amaçları “nı değiştirerek botun izinlerini yapılandırın.

Ağ Geçidi Amaçlarını Yapılandırma

Ardından, sol kenar çubuğunuzdaki “OAuth2” sekmesine gidin. “SCOPES” bölümü altında, aşağıdaki resimde gösterildiği gibi bot ve application.commands onay kutularını işaretleyin.

Bot Kapsamları

Bot kapsamının seçilmesi Discord’un uygulamanızı bir bot olarak tanımasını sağlarken, application.commands kapsamı botunuzun dinleyeceği slash komutları oluşturmanıza olanak tanır.

Bot onay kutusunu işaretlediğinizde bir “BOT İZİNLERİ” bölümü açılacaktır. “BOT İZİNLERİ” bölümünde, aşağıdaki resimde gösterildiği gibi Yönetici onay kutusunu işaretleyin.

Bot izinleri

Bu onay kutusunu işaretlemek, bot’a sunucu içindeki tüm olası izinleri verir. Bu izinler, mesajları ve kanalları yönetme yeteneğini içerir.

“BOT İZİNLERİ” bölümünün altında, Discord bu botu bir sunucuya eklemeniz için bir URL oluşturacaktır. URL’yi web tarayıcınıza yapıştırın ve botunuzu hangi sunucuya ekleyeceğinizi seçin.

Discord Bot Tarafından Oluşturulan URL

Ardından, aşağıdaki resimde gösterildiği gibi “Reset Token” düğmesine tıklayarak “bot” sekmesinden bot token’ınızı alın.

Düğmeye ilk kez tıkladığınızda botunuzun varsayılan belirteci sıfırlanacak ve size yeni bir belirteç verilecektir. Belirteci kopyalayın ve güvenli bir şekilde saklayın. Belirteci kaybederseniz, yalnızca bir kez gösterildiği için yeniden sıfırlamanız gerekir.

Bot token’ınız gibi ortam değişkenlerinizi, botu eklediğiniz lonca kimliği ve botunuzun istemci kimliği gibi diğer verilerle birlikte eklemek için bir .env dosyası oluşturun:

TOKEN = "<BOT TOKEN>"
GUILD_ID = "<GUILD ID>"
CLIENT_ID = "<BOT'S CLIENT ID>"

Şimdi Discord Bot hesabınızı kurdunuz. Daha sonra, Discord botunuzu oluşturacaksınız.

Discord Bot Projenizi Node.js ile Oluşturma

Bu bölüm, Discord sınav botunuzu oluşturma ve bot slash komutlarını Discord’a kaydetmek ve botunuzun bir lonca üyesiyle etkileşimini yönetmek için yüklediğiniz paketleri entegre etme konusunda size yol gösterecektir.

Bu öğreticiyi takip etmek için projenizin dizinini aşağıdakine benzer şekilde yapılandırın.

quiz-bot/
│
├── src/
│   ├── register-commands.js   # Script to register slash commands with Discord
│   └── quiz-bot.js                # Script for message handling and fetching questions
│
├── server.js                  # Entry point for your bot and script for running a server
├── node_modules/              # Node.js modules
│
├── .env                       
├── .gitignore                   
├── package.json                         
└── package-lock.json

Bot Komutlarını Kaydetme

Botlar kullanıcıların bir komut girmesini gerektirir. Discord botları ile, botunuzun dinlemesini istediğiniz komutları eğik çizgi (/) önekiyle tanımlarsınız.

Botunuzun /quiz komutunu Discord sunucunuza kaydetmek için öncelikle discord.js dosyasından aşağıdaki importları register-commands . js dosyanıza ekleyin:

// register-commands.js
const { REST, Routes, ApplicationCommandOptionType } = require('discord.js');

Yukarıda içe aktardığınız sınıflar aşağıdakileri içerir:

  • REST: Bu sınıf Discord API’sine REST API çağrıları yapmanızı sağlar.
  • Rotalar: Bu sınıf Discord API uç noktaları oluşturan yardımcı fonksiyonlar sağlar.
  • ApplicationCommandOptionType: Bu sınıf, komutun kabul edeceği seçenekler için veri türlerini tanımlamanızı sağlar.

Ardından, botunuzun tüm komutlarını içeren bir dizi komut nesnesi tanımlamanız gerekir. Bir komut nesnesi bir ad, açıklama ve bir dizi seçenek içerir.

Bu seçenekler kullanıcıların botun komutunu özelleştirmesine olanak tanır. Bu durumda, seçenekler dizisi kullanıcıların test botunun sorması gereken sorunun zorluğunu ve türünü belirlemelerine olanak tanıyacaktır.

Komutlar dizinizi oluşturmak için aşağıdaki kod bloğunu register-commands.js dosyanıza ekleyin:

// register-commands.js
const commands = [
  {
    name: 'quiz',
    description:
      'Select difficulty and question type to tailor the quiz experience.',
    options: [
      {
        type: ApplicationCommandOptionType.String,
        name: 'difficulty',
        description: "Options include 'easy', 'medium', or 'hard'.",
        required: true,
      },
      {
        type: ApplicationCommandOptionType.String,
        name: 'type',
        description:
          " Choose 'multiple' for multiple choice or 'boolean' for true/false",
        required: true,
      },
    ],
  },
];

Yukarıdaki kod bloğu commands dizisinde quiz komutunu tanımlar. Quiz nesnesi, botun soracağı soru için zorluk seviyesi ve soru türü gibi kullanıcının /quiz komutuyla birlikte girmesi gereken iki seçeneği içerir.

Ardından, /quiz komutunuzu botunuz aracılığıyla erişilebilir hale getirmek için kaydetmeniz gerekir. Komutu kaydetmek için öncelikle discord bot token’ınız ve tercih ettiğiniz REST sürümü ile REST sınıfının bir örneğini oluşturmanız gerekir.

quiz komutunuzu kaydetmek ve botunuz aracılığıyla erişilebilir hale getirmek için; Discord bot token’ınızı kullanarak REST sınıfının bir örneğini oluşturarak ve tercih ettiğiniz REST sürümünü belirterek başlayın.

Bu şekilde:

// register-commands.js
const rest = new REST({ version: '10' }).setToken(process.env.TOKEN);

Discord, API’sini düzenli olarak güncelleyerek uç noktalarda, yanıt yapısında ve davranışta değişikliklere yol açar.

Discord projeniz için belirli bir REST sürümü tanımlamak, projeniz için mevcut özellikleri etkili bir şekilde yönetmenizi sağlar. Yukarıdaki kod bloğu Discord API’sinin v10 sürümünü kullanmaktadır.

Ardından, Routes sınıfındaki applicationGuildCommands yöntemini kullanarak bot komutlarını lonca sunucusuna kaydetmek için zaman uyumsuz bir işlev tanımlamanız gerekir.

Bu şekilde:

// register-commands.js
(async () => {
  try {
    console.log('Started refreshing SLASH (/) commands.');
    await rest.put(
      Routes.applicationGuildCommands(
        process.env.CLIENT_ID,
        process.env.GUILD_ID
      ),
      { body: commands }
    );
    console.log('Successfully reloaded SLASH (/) commands.');
  } catch (error) {
    console.error(error);
  }
})();

Yukarıdaki kod bloğu, istek gövdesi olarak komutlar dizisi ile Discord API uç noktasına bir PUT isteği gerçekleştirir.

Botun istemci kimliğini ve hedef lonca kimliğini alarak applicationGuildCommands yöntemini kullanarak API uç noktasını oluşturur.

Komutları kaydettikten sonra, botunuz ile bir lonca üyesi arasındaki etkileşim akışını yönetmeniz gerekecektir.

Discord Botu ile Kullanıcı Etkileşimini Yönetme

Botunuz ve bir lonca üyesi arasındaki etkileşim akışını yönetmek için öncelikle quiz-bot.js dosyanıza aşağıdaki içe aktarmaları ekleyin:

// quiz-bot.js
const { Client, IntentsBitField } = require('discord.js');
const axios = require('axios');

Yeni bir Discord bot örneği oluşturmak için Client sınıfını kullanmanız gerekirken, botunuzun Discord API’sinden alacağı niyetleri (olayları) belirtmek için IntentsBitField sınıfını kullanacaksınız.

Ardından, botunuz için yeni bir istemci örneği oluşturmak ve bot uygulamanız için belirli amaçları belirtmek üzere quiz-bot.js dosyanıza aşağıdaki kod bloğunu ekleyin:

// quiz-bot.js
const client = new Client({
  intents: [
    IntentsBitField.Flags.Guilds,
    IntentsBitField.Flags.GuildMembers,
    IntentsBitField.Flags.GuildMessages,
    IntentsBitField.Flags.MessageContent,
  ],
});

Yukarıdaki kod bloğu, botun çalışması için ihtiyaç duyduğu belirli amaçları tanımlar:

  • IntentsBitField.Flags.Guilds: Bu amaç, botun üyesi olduğu loncalar (sunucular) hakkında adları, simgeleri ve rolleri dahil olmak üzere bilgi almasını sağlar.
  • IntentsBitField.Flags.GuildMembers: Bu amaç, botun lonca üyeleri hakkında kullanıcı adları, durumları ve rolleri gibi bilgileri almasını sağlar.
  • IntentsBitField.Flags.GuildMessages: Bu amaç, botun içinde bulunduğu loncalarda gönderilen mesajlara erişmesini sağlayarak mesajlar tarafından tetiklenen komutlara veya olaylara yanıt vermesine olanak tanır.
  • IntentsBitField.Flags.MessageContent: Bu amaç, botunuzun loncalarda gönderilen mesajların gerçek içeriğine erişmesini sağlar. Bu niyet olmadan, mesaj içeriği boş olacaktır.

Ready olayı için bir olay dinleyicisi oluşturacaksınız. Bu olay, Discord botunuz Discord sunucularına başarıyla bağlandığında ve çalışmaya hazır olduğunda tetiklenir.

Hazır olay dinleyicinizi oluşturmak için aşağıdaki kod bloğunu quiz-bot.js dosyanıza ekleyin:

// quiz-bot.js
client.on('ready', () => {
  console.log(`✅ Bot is online and ready`);
});

Ardından, interactionCreate olayı için bir olay dinleyicisi oluşturmanız gerekir. Bu olay, bir kullanıcı slash komutu kullanmak gibi botunuzun işleyebileceği bir etkileşim gerçekleştirdiğinde meydana gelir.

Yayımlandığında, olay dinleyiciniz bir etkileşim nesnesiyle birlikte interactionCreate olayını alacaktır.

Bu nesne, etkileşim türü ve kullanıcı tarafından sağlanan veriler gibi etkileşimle ilgili tüm ayrıntıları içerir.

interactionCreate olay dinleyicinizi oluşturmak için aşağıdaki kod bloğunu quiz-bot.js dosyanıza ekleyin:

// quiz-bot.js
client.on('interactionCreate', async (interaction) => {
 if (!interaction.isChatInputCommand()) return;
 
 if (interaction.commandName === 'quiz') {
  // Rest of the code goes here...
 }
});

Yukarıdaki kod bloğu bir interactionCreate olay dinleyicisi ayarlar.

Olay dinleyicisi, bir kullanıcı ile bot arasındaki etkileşimin bir sohbet giriş komutu (eğik çizgi komutu) olup olmadığını kontrol eder ve diğer etkileşim türlerini filtreler.

Daha sonra commandName ‘in quiz olup olmadığını kontrol eder ve bot ile kullanıcı arasındaki quiz oturumunu işlemeye devam eder.

CommandName quiz ise, soruyu ve cevaplarını (doğru ve yanlış) almak için Axios ile Trivia API’sinin URL’sine bir GET isteği yapın.

Seçenekleri rastgele hale getirmek için yanıtları karıştırın, ardından bunları kullanıcıya sunun.

Bu şekilde:

// quiz-bot.js

await interaction.deferReply();

const difficulty = interaction.options.getString("difficulty");
const type = interaction.options.getString("type");

try {
  const url = `https://opentdb.com/api.php?amount=1&difficulty=${difficulty}&type=${type}`;
  const response = await axios.get(url);
  const data = response.data.results[0];
  const question = data.question;
  const correctAnswer = data.correct_answer;
  const options = [...data.incorrect_answers, correctAnswer];

  // Shuffle the options
  for (let i = options.length - 1; i > 0; i--) {
    const j = Math.floor(Math.random() * (i + 1));
    [options[i], options[j]] = [options[j], options[i]];
  }

  await interaction.editReply({
    content: `Question: ${question}\\nOptions: ${options.join(", ")}`,
  });
} catch (error) {
  console.error(error);
  // Notify the user in case of an error after deferring
  await interaction.followUp("Failed to fetch the question. Please try again.");
}

Yukarıdaki kod bloğu ilk olarak botun yanıtını deferReply yöntemiyle erteleyerek botun GET isteğini yerine getirmesi için biraz zaman aralığı tanır.

Kod bloğu daha sonra interaction.options.getString() işlevini kullanarak etkileşim nesnesinden kullanıcının seçtiği zorluk derecesini ve soru türünü alır.

Daha sonra bot, getirilen verilerden soruyu, doğru cevabı ve yanlış cevapları çıkarır.

Seçim sırasını rastgele hale getirmek için doğru ve yanlış yanıtları karıştırdıktan sonra, sınav sorusu ve seçenekleriyle birlikte ilk ertelenmiş yanıtı düzenler.

Daha sonra, kullanıcının soruya verdiği yanıtı doğru yanıtla karşılaştırarak ve doğru ya da yanlış olduğunu kullanıcıya bildirerek işlemeniz gerekir.

Kullanıcı Yanıtlarının Toplanması

Kullanıcının soruya verdiği yanıtı toplamak için etkileşimin kanalında(interaction.channel) createMessageCollector yöntemini kullanacaksınız.

Bu yöntem, /quiz komutunu başlatan kullanıcı tarafından gönderilmeyen mesajları filtrelemenize, kullanıcının yanıtı için bir zaman sınırı belirlemenize ve toplanacak maksimum mesaj sayısını belirlemenize olanak tanır.

Kullanıcı bir yanıt gönderdiğinde, createMessageCollector yöntemi bir collect olayını tetikler.

Bu olaya bir dinleyici eklemeniz gerekir; dinleyici, kullanıcının yanıtını sorunun doğru yanıtıyla karşılaştıracak ve uygun bir mesaj gönderecektir.

Öte yandan, kullanıcı belirtilen süre içinde uygun bir yanıt göndermezse, createMessageCollector yöntemi bir bitiş olayını tetikleyecektir.

Kullanıcıya zamanının dolduğunu bildirmek için bu olaya yanıt veren bir dinleyici eklemeniz gerekir.

Bu şekilde:

// quiz-bot.js
const filter = (m) => m.author.id === interaction.user.id;

const collector = interaction.channel.createMessageCollector({
  filter,
  time: 15000,
  max: 1,
});

collector.on("collect", async (m) => {
  if (m.content.toLowerCase() === correctAnswer.toLowerCase()) {
    await m.reply("Correct answer! 🎉");
  } else {
    await m.reply(`Wrong answer! The correct answer was: ${correctAnswer}`);
  }
});

collector.on("end", (collected) => {
  if (collected.size === 0) {
    interaction.followUp("Time is up! No answer was provided.");
  }
});

Yukarıdaki kod bloğu, etkileşimin gerçekleştiği kanal için bir mesaj toplayıcı oluşturur(toplayıcı). toplayıcı, mesajları yazarın kimliğine göre filtreleyerek yalnızca testi başlatan kullanıcının 15 saniyelik bir zaman sınırı içinde bir yanıt verebilmesini sağlar.

Kod bloğu daha sonra collector için iki olay dinleyicisi oluşturur. İlk olay dinleyicisi olan collect, kullanıcının cevabını kontrol etmek ve buna göre kullanıcıya yanıt vermek için bir geri arama tetikleyecektir.

İkinci olay dinleyicisi olan end, kullanıcıya zaman sınırı içinde bir yanıt vermediğini bildirmek için bir geri arama tetikleyecektir.

Ardından, quiz-bot.js dosyanızın sonuna kod satırını ekleyerek botunuz ile Discord arasında bir bağlantı kurun:

// quiz-bot.js
client.login(process.env.TOKEN);

Giriş Dosyası Oluşturma

Tüm bot uygulamanızı başlatacak tek bir dosya olan bir giriş dosyası oluşturacaksınız. İki işleve hizmet edecektir:

  • Bot Mantığını İçe Aktarma: Giriş dosyası, bot komutunuzu Discord sunucusuna kaydetmeyi ve kullanıcı mesajlarına yanıt vermeyi işleyen JavaScript dosyalarını gerektirerek botun mantığını çalıştıracaktır.
  • Sunucuyu Başlatmak: Giriş dosyası, botunuzun bir Back4app konteyneri üzerinde çalışmasını sağlayacak bir sunucu kuracaktır. Back4app konteynerleri, uygulamanızın dağıtımının başarılı olması için açık portlara ihtiyaç duyar.

Bir sunucu oluşturmak için aşağıdaki kod bloğunu server.js dosyasına ekleyin:

// server.js
require('dotenv').config();
const http = require('http');
require('./src/register-commands.js');
require('./src/quiz-bot.js');

http
  .createServer((req, res) => {
    res.writeHead(200, { 'Content-Type': 'text/plain' });
    res.end('Bot is running!');
  })
  .listen(3000, () => {
    console.log('Server is ready.');
  });

Yukarıdaki kod bloğu, basit bir HTTP sunucusu oluşturarak Discord botunuzu çalışacak şekilde ayarlar. Bu sunucu, botun konteyner ortamında çalışmasına izin veren bir giriş noktası görevi görür.

Yukarıdaki kod bloğu botunuzun çekirdek mantığını içe aktarır ve botunuzun bir Back4app konteynerine dağıtılmasına izin vermek için bir Back4app portu belirtir.

Giriş dosyasını oluşturduktan sonra, Discord botunuzu bir Back4app konteynerine dağıtmadan önce yerel olarak test edebilirsiniz.

Discord Botunuzu Test Etme

Aşağıdaki kod bloğunu uygulamanızın terminalinde çalıştırarak Discord botunuzu başlatın:

node server.js

Komut, botunuzu başarıyla kaydettiğinizi ve botunuzun hazır ve çevrimiçi olduğunu gösteren mesajları günlüğe kaydedecektir.

Botu Yerelden Başlatın

Botunuzu eklediğiniz sunucuya gidin. Artık çevrimiçi olduğunu fark etmelisiniz.

Test Sınavı Uygulaması

Botunuzla etkileşime geçmek için /quiz komutunu gönderin. Bot, sınav sorunuzun nasıl görünmesini istediğinizi detaylandıran seçeneklerle yanıt vermelidir.

Soru Zorluğunu ve Türünü Seçin

İstediğiniz seçenekleri belirleyin (örneğin, bir test kategorisi veya zorluk seviyesi seçmek) ve Enter tuşuna basın. Bot bir soruyla yanıt verecek ve yanıtınız için 15 saniyelik bir süre sınırı belirleyecektir.

Cevabınızı zaman sınırı içinde gönderirseniz, bot cevabınızı doğru cevapla karşılaştıracak ve cevabınızın doğru veya yanlış olduğunu size bildirmek için yanıt verecektir.

Discord'da Bot Yanıtı

Botunuzun tasarladığınız tüm özellikleri kullanabildiğini belirlediniz; şimdi Discord botunuzu bir Back4app konteynerine yerleştirin.

Discord Botunu AI Agent ile Back4app Konteynerlerine Dağıtma

Bu bölümde, Discord botunuzu Back4app AI aracısı ile Back4app konteynerlerine dağıtacaksınız.

Bir uygulamayı Back4app konteynerlerine dağıtmak için aşağıdakilere ihtiyacınız vardır:

  • Projenizdeki bir Docker dosyası
  • GitHub Deposu: Projeniz bir GitHub deposuna yüklenmelidir.
  • Back4app GitHub Uygulaması: Deponuz için Back4app GitHub uygulamasını yükleyin ve gerekli izinleri verin

İlk olarak, projenizin kök dizininde bir Dockerfile oluşturun ve aşağıdaki kod bloğunu buna ekleyin:

# Dockerfile
FROM node:18-alpine

WORKDIR /app

COPY package*.json ./

RUN npm install

COPY . .

EXPOSE 3000

CMD ["npm", "start"]

Ardından, kodunuzu dağıtım için erişilebilir hale getirmek üzere bir GitHub deposuna yüklemeniz gerekir.

Bir sonraki adımı izlemeden önce, GitHub hesabınızda Back4App Containers GitHub Uygulamasının yüklü olduğundan ve dağıtmak istediğiniz uygulamaya erişmek için gerekli izinlere sahip olduğundan emin olun.

Back4app ana sayfasına gidin ve ekranınızın sağ üst köşesindeki “Yeni Uygulama” düğmesine tıklayın.

Bu sizi, oluşturmak istediğiniz uygulama türünü seçmeniz gereken bir başlatma ekranına götürecektir.

Aşağıdaki resimde gösterildiği gibi Back4app Agent seçeneğini seçin.

Back4app Agent seçeneğini seçtiğinizde, Back4app AI agent sayfasına yönlendirileceksiniz.

Uygulamanızı dağıtması için AI aracısına aşağıdaki komut istemini verin:

Deploy my "YOUR_REPOSITORY_URL" repository on GitHub to a Back4App Container.
Here are the required environmental variables:
TOKEN = "YOUR_DISCORD_BOT_TOKEN"
GUILD_ID = "YOUR_GUILD_ID"
CLIENT_ID = "YOUR_CLIENT_ID"

Yukarıdaki istemdeki yer tutucuları gerçek değerleriyle değiştirin.

Aşağıdakine benzer bir yanıt almanız gerekir:

Yapay zeka ajanı yanıtı

Yukarıdaki yanıt, dağıtım sürecinin devam ettiğini ve uygulamanızın çevrimiçi olacağını ve sağlanan URL’de kullanılabilir olacağını göstermektedir.

Dağıtım sürecini Back4app konteynerleri panonuzdan izleyebilir veya mevcut dağıtım durumunu onaylamak için AI aracısına bir süre sonra aşağıdaki istemi verebilirsiniz.

What is the current deployment status of my web app?

Aşağıdakine benzer bir yanıt almanız gerekir:

Yapay zeka ajanı yanıtı

Alternatif olarak, uygulamanızı Back4App ‘e manuel olarak dağıtmayı da seçebilirsiniz.

Sonuç

Bu makalede, Node.js ile bir Discord botunun nasıl oluşturulacağını öğrendiniz. Bir Discord bot hesabının nasıl oluşturulacağını, bot komutlarının nasıl kaydedileceğini ve kullanıcı yanıtlarının nasıl işleneceğini keşfettiniz.

Ek olarak, Discord botunuzu test ettiniz ve AI aracısının yardımıyla bir Back4app konteynerine konuşlandırdınız.

Discord botları görevleri otomatikleştirmede, eğlence sağlamada vb. çok yararlı olabilir ve kullanım durumunuza bağlı olarak, botu ihtiyaçlarınızı karşılayan belirli işlevleri yerine getirecek şekilde ayarlayabilirsiniz.

Bu eğitimde kullanılan kodun tamamı bu GitHub deposunda mevcuttur.


Leave a reply

Your email address will not be published.