İçeriğe geç
17 çevrimiçi·104 üyeİlan Pazarı
fivemci.net
Discord'a katıl
Bu alana reklam ver
970×90 · Üst Leaderboard

FiveM Discord Bot Entegrasyonu: Whitelist, Log, Rol ve Durum Botları

3 görüntülenme · 0 cevap
F
fivemci.netYönetici26.10.2026 06:51

Bir FiveM sunucusunun Discord ile bağlantılı çalışması bugün neredeyse standart hale geldi. Oyuncuların Discord rolüne göre sunucuya girmesi, oyun içi olayların Discord kanallarına loglanması, sunucu durumunun canlı gösterilmesi ve yetkili işlemlerinin kayıt altına alınması gibi sistemler hem yönetimi kolaylaştırır hem de topluluğu güçlendirir. Bu rehberde FiveM ile Discord'u güvenli ve doğru şekilde nasıl bağlayacağını anlatıyoruz.

Discord entegrasyonuyla neler yapılabilir?

  • Discord whitelist: Yalnızca belirli bir role sahip üyelerin sunucuya girmesi.
  • Rol tabanlı yetki: Discord'daki yetkili rolüne göre oyunda admin yetkisi verilmesi.
  • Loglama: Giriş-çıkış, ölüm, para transferi, envanter ve yetkili komutlarının Discord kanallarına aktarılması.
  • Durum paneli: Sunucunun açık olup olmadığını, oyuncu sayısını ve restart saatlerini gösteren canlı mesaj.
  • Rich Presence: Oyuncunun Discord profilinde sunucunun adının ve logosunun görünmesi.

Adım 1: Discord uygulaması ve bot oluşturma

  • Discord Developer Portal'da (discord.com/developers) "New Application" ile bir uygulama oluştur.
  • "Bot" bölümünden bot kullanıcısını aç.
  • Rol ve üye bilgisi okuyacaksan "Server Members Intent" iznini etkinleştir.
  • "OAuth2 → URL Generator" bölümünde bot ve applications.commands kapsamlarını seç, yalnızca ihtiyacın olan izinleri işaretle ve oluşan bağlantıyla botu sunucuna davet et.

Bota "Administrator" izni vermek kolay görünür ama tehlikelidir. Token sızarsa saldırgan bütün Discord sunucunu silebilir. Yalnızca gereken izinleri ver.

Adım 2: Bot token'ını güvenli sakla

Bot token'ı, botunun şifresidir. Şunlara dikkat et:

  • Token'ı script dosyalarının içine düz yazmak yerine server.cfg içinde bir set değişkeninde ya da ayrı, paylaşılmayan bir ayar dosyasında tut. Örneğin set discord_bot_token "..." yazıp script içinde GetConvar("discord_bot_token", "") ile oku.
  • server.cfg dosyanı kimseyle paylaşma, GitHub gibi herkese açık depolara yükleme.
  • Token'ın sızdığından şüphelenirsen Developer Portal'dan hemen "Reset Token" yap.

Adım 3: Discord whitelist ve rol kontrolü

Oyuncu bağlanırken (playerConnecting olayı) oyuncunun Discord kimliği alınır ve Discord API'sinden oyuncunun rolleri sorgulanır. İstenen rol yoksa bağlantı reddedilir. Bu işi yapan hazır ve açık kaynak kaynaklar mevcuttur; kendi sisteminde dikkat etmen gerekenler:

  • Discord API'sine her bağlantıda istek atmak yerine sonuçları kısa süre önbellekte tut; Discord hız limiti uygular.
  • Oyuncunun Discord'u FiveM'e bağlı değilse anlaşılır bir mesaj göster.
  • Discord API'si yanıt vermezse herkesi reddetmek yerine kontrollü bir yedek davranış belirle.

Adım 4: Webhook ile loglama

Loglama için bot yerine webhook kullanmak daha basittir. Kanal ayarlarından "Entegrasyonlar → Webhook" ile bir adres oluşturur ve sunucu scriptinden bu adrese mesaj gönderirsin.

local function logGonder(kanal, baslik, aciklama)
  PerformHttpRequest(kanal, function() end, 'POST', json.encode({
    username = 'Sunucu Log',
    embeds = {{ title = baslik, description = aciklama, color = 16737281 }}
  }), { ['Content-Type'] = 'application/json' })
end

İyi bir log düzeni için:

  • Her log türü için ayrı kanal kullan (giriş-çıkış, ekonomi, yetkili, ölüm).
  • Log kanallarını yalnızca yetkililerin görebileceği şekilde ayarla.
  • Webhook adreslerini istemci (client) tarafı scriptlere asla koyma; istemci dosyaları oyuncuların bilgisayarına indirilir ve okunabilir.
  • Her saniye mesaj gönderen loglar Discord hız limitine takılır; olayları biriktirip toplu gönder.

Adım 5: Sunucu durum mesajı

txAdmin'in yerleşik Discord botu, sunucu durumunu bir kanalda sürekli güncellenen bir mesajla gösterebilir. Daha gelişmiş paneller için sunucunun players.json ve info.json uç noktalarından veri okuyan bir bot kullanabilirsin. txAdmin ayrıntıları için txAdmin rehberine bak.

Adım 6: Rich Presence

İstemci tarafında SetDiscordAppId, SetDiscordRichPresenceAsset ve SetRichPresence fonksiyonlarıyla oyuncunun Discord profilinde sunucu adı, logo ve "Discord'a katıl" gibi butonlar gösterebilirsin. Bu, oyuncuların arkadaşlarına sunucunu ücretsiz tanıtmasının en kolay yoludur.

Güvenlik kontrol listesi

  • Bot yalnızca gereken izinlere sahip mi?
  • Token ve webhook adresleri sadece sunucu tarafında mı?
  • Log kanalları herkese kapalı mı?
  • Ayrılan yetkililerin Discord rolleri ve panel erişimleri kaldırıldı mı?
  • Discord sunucusunda iki adımlı doğrulama (2FA) zorunluluğu açık mı?

Discord sunucu düzeni için Discord sunucusu kurma rehberine, hazır botlar ve paneller için Web Panel & Discord Bot bölümüne göz atabilirsin.

Sıkça Sorulan Sorular

Discord whitelist için oyuncunun Discord'u bağlaması gerekir mi?

Evet. Oyuncunun FiveM istemcisinde Discord'un açık olması ve hesabının bağlı olması gerekir; aksi halde Discord kimliği sunucuya iletilmez.

Webhook ile bot arasındaki fark nedir?

Webhook yalnızca mesaj gönderir ve kurulumu çok basittir. Bot ise rol okuma, komut çalıştırma ve üye yönetimi gibi işler yapabilir.

Bot token'ım çalındı, ne yapmalıyım?

Developer Portal'dan hemen token'ı sıfırla, botun izinlerini gözden geçir ve sunucu denetim kaydından (audit log) yapılan işlemleri kontrol et.

Logları neden istemci tarafında göndermemeliyim?

İstemci dosyaları oyuncuların bilgisayarına indirilir. Webhook adresi orada olursa herkes kanalına sahte mesaj gönderebilir.

Discord rolü değişince oyundaki yetki de değişir mi?

Kullandığın sisteme bağlıdır. Rolleri yalnızca girişte kontrol eden sistemlerde değişiklik, oyuncu tekrar bağlandığında uygulanır.

Bu alana reklam ver
728×90 · Konu İçi Banner
?
Cevap yazmak için giriş yap ya da ücretsiz kayıt ol.

İlgili konular

Tüm FiveM rehberleri →

Esc
↑ ↓ gezinEnter aç? kısayollar

Klavye kısayolları

Komut paleti
CtrlK
Aramaya odaklan
/
Ana sayfa
GH
İlanlar
GP
Yeni ilan
GN
Sunucular
GS
Forum
GF
Cüzdan
GC
Favoriler
GV
Bu pencere
?