İçeriğe geç

Discord Bot

Discord entegrasyonu üç iş yapar: oyuncu sitede Discord ile Bağlan der, bot onu Discord sunucunuza ekler, ve oyuncu mağazadan aldığı ürüne (örneğin bir VIP) göre otomatik rol kazanır. Aynı sayfada sipariş ve kredi bildirimleri için webhook adresleri de bulunur (bkz. Discord webhook).

Ayarlar → Discord. Sayfanın başlığı “Discord Bot & Rol Senkronizasyonu”dur.

Alan Açıklama
Discord Bot Token Discord Developer Portal’da Bot sekmesinden “Reset Token” ile alınır. Gizlidir.
Discord Sunucu (Guild) ID Discord’da sunucu simgesine sağ tıklayıp “Sunucu Kimliğini Kopyala” ile alınır.
Application Client ID (OAuth2) General Information sekmesindeki “Application ID”.
Client Secret (OAuth2) OAuth2 sekmesindeki “Client Secret”. Gizlidir.
OAuth2 Redirect URL Sayfa bu adresi sitenizin adresine göre kendisi doldurur; Discord portalına eklemeniz gerekir.
Kayıtlı Oyuncu Rolü Discord hesabını bağlayan herkese verilen temel rol. Boş bırakılabilir.
Mağaza Ürünleri ve VIP Rol Eşlemeleri Her ürün için, satın alındığında verilecek Discord rol kimliği. Boş bırakılan ürün rol vermez.

Webhook alanları ve mesaj şablonları aynı sayfanın alt bölümlerindedir.

  1. Discord uygulamasını oluşturun

    Discord Developer Portal’a gidin, New Application ile uygulamanızı açın ve Bot sekmesinden botu oluşturun. Bot token’ı alın.

  2. Botu sunucuya ekleyin ve izin verin

    Botu sunucunuza davet edin. Sunucu ayarlarında botun rolünü, vereceği rollerin (örneğin VIP) üstüne taşıyın ve bot rolüne Manage Roles (Rolleri Yönet) yetkisini verin. Bot rolü verilecek rollerin altında kalırsa rol atanamaz.

  3. Redirect adresini ekleyin

    Ayarlar → Discord sayfasındaki OAuth2 Redirect URL adresini kopyalayın. Discord portalında OAuth2 sekmesindeki Redirects bölümüne yapıştırıp kaydedin.

  4. Bilgileri girin

    Bot token, sunucu ID, client ID ve client secret alanlarını doldurun. Botu ve Rolleri Test Et’e basın; bağlantı başarılıysa sunucu adı ve algılanan rol sayısı görünür.

  5. Rolleri eşleyin ve kaydedin

    Kayıtlı oyuncu rolünü ve ürün rollerini seçin ya da rol kimliklerini girin, ardından Tümünü Kaydet’e basın.

Oyuncu hesap sayfasında Discord ile Bağlan’a basar ve Discord’da izin verir. Bağlantı kurulunca site oyuncuyu Discord sunucunuza ekler (Discord’daki “sunucuya katıl” izniyle) ve rollerini eşitler. Sonraki mağaza alışverişleri ve kredi yüklemelerinde roller yeniden eşitlenir. Oyuncu bağlantıyı Discord Bağlantısını Kaldır ile kesebilir; bu durumda sunucudaki otomatik rolleri kaldırılabilir. Ayrıntılar için Hesap bağlama sayfasına bakın.

Kendi Discord botunuz bir oyuncunun site hesabını Discord kimliğinden bulabilir: API anahtarı ile (kapsam users.read) GET /api/v1/users?discord=<discord_kullanici_kimligi> çağrılır. Kimlik yalnız rakamlardan oluşan 5 ile 25 haneli Discord kullanıcı kimliğidir (kullanıcı adı değil). Yanıtta kullanıcının temel bilgileri ile rolleri gelir; süreli rollerde bitiş tarihi expiresAt alanında UTC olarak yer alır, süresizse null olur. Discord hesabı bağlı bir site kullanıcısı yoksa 404 NOT_FOUND döner. Yanıtta e-posta, parola, IP ve oturum bilgisi hiçbir koşulda yoktur.

Rol verilmiyor

Botun rolünün verilecek rolün üstünde olduğunu ve Manage Roles yetkisi bulunduğunu kontrol edin. Rol kimliğinin doğru yazıldığından ve oyuncunun Discord hesabını bağladığından emin olun. Rol işlemi geçici bir hatayla başarısız olursa kaybolmaz; Ayarlar → Dış Etki Kuyruğu sayfasında görünür ve otomatik yeniden denenir.

'Bot bağlantısı başarısız' hatası

Bot token’ı veya sunucu ID’si yanlış olabilir. Token’ı portalda yeniden üretip girin. Botun sunucuda bulunduğundan emin olun.

Oyuncu 'Discord entegrasyonu yapılandırılmamış' görüyor

Bot token ve sunucu ID alanları boştur ya da kaydedilmemiştir.