Gelişmiş destek sistemi (discord.js)

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Game Developer
Seçkin Üye
Katılım
23 Şub 2017
Mesajlar
430
Çözümler
2
Tepki puanı
70
Ödüller
8
9 HİZMET YILI
JavaScript:
const Discord = require('discord.js')


exports.run = async(client, message, args) => {
 
 
const emoji1 = message.client.emojis.get('');
const emoji2 = message.client.emojis.get('');
const emoji3 = message.client.emojis.get('');
const emoji4 = message.client.emojis.get('');
const emoji5 = message.client.emojis.get('');
const emoji6 = message.client.emojis.get('');
const emoji7 = message.client.emojis.get('');
      let isEnabled;
      message.reply("Canlı Destek Komutunu Kullandığınız İçin Teşekkürler. Birazdan Yetkili Ekibimiz sizinle ilgilenicektir.");
      let mesaj = args.slice(0).join(' ');
      let chan = message.channel;
      let destekKanal = "   ";  // MESAJLARIN GELECEĞİ DESTEK KANALININ IDSI BURAYA
      const embed = new Discord.RichEmbed()
        .addField('Uyarı', ` Canlı Destek Çağrısı`)
        .setAuthor(`${message.author.tag} (${message.author.id})`, `${message.author.avatarURL}`)
        .setColor("RANDOM")
        .addField(`Bilgiler`, `**Sunucu**: ${message.guild.name} (${message.guild.id}) \n**Kanal**: ${message.channel.name} (${message.channel.id}) \n**Destek İsteyen**: ${message.author.tag} (${message.author.id}) \n**Destek Mesajı**: ${mesaj}`)
        .setFooter("Canlı Destek")
        .setTimestamp()
      client.channels.get(destekKanal).send({
        embed: embed
      });
    const collector = client.channels.get(destekKanal).createCollector(message => message.content.startsWith(''), {
      time: 0
    })
    client.channels.get(destekKanal).send(' Destek çagrısı bağlanmak için `katıl` yazınız. İptal Etmek İçin `kapat` yazınız.')
    collector.on('message', (message) => {
      if (message.content === 'kapat') collector.stop('aborted')
      if (message.content === 'katıl') collector.stop('success')
    })
    collector.on('end', (collected, reason) => {
      if (reason === 'time') return message.reply(' Çagrı zaman aşımına uğradı.')
      if (reason === 'aborted') {
        message.reply('Çağrı reddedildi.')
        client.channels.get(destekKanal).send(' Başarıyla çağrı reddedildi.')
      }
      if (reason === 'success') {
        client.channels.get(destekKanal).send(' Destek çagrısı alındı!')
        client.channels.get(destekKanal).send(' Destek çağrısını kapatmak için `kapat` yazınız.')
        chan.send(`${message.author}`)
        chan.send('Çağrınız bir destek yetkili tarafından alındı!')
        chan.send('En Yakın Zamanda Size Yardımcı Olacagız.')
        chan.send('Destek çagrısı kapatmak için `kapat` yazınız.')
        isEnabled = true
        client.on('message', message => {
          function contact() {
            if (isEnabled === false) return
            if (message.author.id === client.user.id) return
            if (message.content.startsWith('kapat')) {
              message.channel.send(' Çağrı Kapatıldı.')
              if (message.channel.id === chan.id) client.channels.get(destekKanal).send(' Çağrı karşı taraftan kapatıldı.')
              if (message.channel.id === destekKanal) chan.send(' Çağrı karşı taraftan kapatıldı.')

              return isEnabled = false
            }
            if (message.channel.id === chan.id) client.channels.get(destekKanal).send(` **${message.author.tag}**: ${message.content}`)
            if (message.channel.id === destekKanal) chan.send(` **${message.author.tag}**: ${message.content}`)
          }
          contact(client)
        })
      }
    })
}

  exports.conf = {
  enabled: true,
  guildOnly: false,
  aliases: [],
  permLevel: 0
};

exports.help = {
  name: 'canlıdestek',
  description: 'Canlı Destek Tablebi Oluşturur.',
  usage: 'canlıdestek'
};
Eğer ki nasıl kanalın id'sini alacağım diyorsanız anlayayım :
1- Dicord'a giriş yapın.
2- Sol altta olmak üzere adınız yanındaki ayarlar simgesine tıklayıp kullanıcı ayarlarını açın.
3- Kullanıcı ayarlarından, görünüme gelin.
4- Görünüm bölümünden aşağıya inip geliştirici modunu aktif edin.
5- Alıcağınız kanal,mesaj veya id ne olursa olsun üstüne sağ tıklayıp id'yi kopyaya diyebilirsiniz.

---------------------------------------------------------------------------------------------------------------------------------------

kullanım için karşı tarafın (prefix + canlıdestek) komutlarını bota yazması gerekir olurda yazdı ki kendinizde yazarbilirsiniz fark etmez
test için yapabilirsiniz gayet normal eğer ki yazar ise karşı taraf sizin ayarladığınız odaya canlı destek talebi var (kabul et , reddet) diye seçenekler gelir kabul ederseniz karşılıklı konuşmalar geçer ve biter sonlardırmak istediğinizde çıkış yazıp çıkabiliyorsunuz.

iyi kullanımlar bro .)
 
ÖLÜM ÖLÜM DEDİĞİN NEDİR Kİ GÜLÜM
Efsane Üye
Katılım
26 Şub 2016
Mesajlar
11,174
Çözümler
139
Tepki puanı
3,968
Ödüller
19
Yaş
27
10 HİZMET YILI
Discord için yararlı bir sistem teşekkürler
 
ϟ playing pubg ϟ
Süper Üye
Katılım
12 Eki 2019
Mesajlar
603
Çözümler
1
Tepki puanı
22
Yaş
41
6 HİZMET YILI
çok teşekkürler.
 
Elbet Bir Gün
Süper Üye
Katılım
8 Mar 2018
Mesajlar
702
Çözümler
4
Tepki puanı
40
Ödüller
8
Yaş
28
8 HİZMET YILI
teşekkürler kenara koyayım yararlı
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Üst