IFTTT ile Discord sunucusunda Webhook kurulumu

IFTTT ile Discord sunucusunda Webhook kurulumu

Özet

Bu yazımda topluluklara hitap eden, genelde oyuncuların tercih ettiği sosyal yazışma ve görüşme programı Discord üzerinde IFTTT ile webhook entegrasyonunun kurulumundan bahsediyorum.

IFTTT nedir?

IFTTT, sanal platformlar arasında kullanıcı kontrolünün dışında belirlenen amaca uygun otomatik girdi sağlayan kapsamlı bir sistemdir. Örneğin bir sosyal paylaşımın diğer tüm sosyal ağlarda otomatik olarak kendiliğinden paylaşılması gibi temel adımların sağlanmasına olanak tanır. Kabaca bahsettiğim bu sistem ve kontrolü web sitesi üzerinden gerçekleştirilir. Yani sitede hesabınızın olması yeterliyken ücretsiz ve süre kısıtlaması olmaması da mükemmel bir avantaj.

www.ifttt.com

Peki ya webhook? / Webhook’lar belirli bir platform üzerinde hareketleri takip ederek aktif bir hareket halinde belirlenen hareket doğrultusunda etkileşim gösterirler. Örneğin bir Facebook sayfasından yapılan paylaşımın webhook uyarıcısı üzerinde ilgili yere aktarılması gibi. Bizim bu yazıda ele aldığımız uyarılan ilgili yer Discord sunucumuz.

Genel amacımıza değindiğimize göre lafı çok uzatmadan anlatımımıza geçelim.

IFTTT ile Discord sunucusunda webhook kurulumu

  • www.ifttt.com adresine gidip sağ üstte bulunan “Sign In” butonundan hesabımıza giriş yapalım. Hesabımız yoksa ilgili sayfada “Sign Up” seçeneği ile hesap oluşturup e-postamızı doğrulayalım.
  • Hesabımıza giriş yaptığımızda gelen ekranda profil resmimizin sağındaki “Explore” seçeneğine basarak mantığımızı oluşturacağımız sayfaya geçelim.
  • Açılan sayfa IFTTT ya da kullanıcıları tarafından yaygın kullanılan bir kaç “Applet” listeliyor. Kendi mantığımızı kurmak için “Make your own Applets from scratch” yazısına tıklayalım. Site arayüzü güncellenir ve bulamazsanız bağlantı adresi şu: https://ifttt.com/create
  • Mantığımızı oluşturduğumuz sayfada önümüze çıkan ekran şu:
  • Mevcut sayfanın anlamı şu:
    If [seçenek1] then [seçenek2].
    Yani “seçenek1”deki hareket tespit edildiğinde “seçenek2”deki işlevi gerçekleştir.
  • “If” kelimesinden sonraki artı butonuna basalım ve gelen ekranda listelenen platformlardan Facebook Pages’i seçelim. Bulmakta sorun yaşarsanız aynı sayfanın arama çubuğunu kullanabilirsiniz. (Bu örnekte bir Facebook sayfasında yayımlanan paylaşımı otomatik olarak Discord sunucumuza aktarmayı işliyoruz. Bir Facebook sayfanız yoksa farklı örnekler için anlatımın sonuna bakabilirsiniz. Benzer mantıkla Instagram, Twitter, Twitch ve Youtube gibi bağlantılar kurmak da mümkün.)
  • IFTTT hesabımıza daha öncesinde tanımlı bir Facebook bağlantısı olmadığında gelen ekran bizi Facebook hesabımızı eklememiz gerektiği konusunda yönlendiriyor. Facebook onayı vererek giriş sağladığımızda önümüze gelen ekran şöyle olmalı:
  • Listelenen karelerde Facebook Pages’in sunduğu özellikler listeleniyor. Bizim bu örneğimizde kullanacağımız ilk seçenek.

New status message on page

This Trigger fires every time you create a new status message on your Facebook Page.

  • Yukarıdaki seçeneği tıklayalım ve ikinci adımda “+That” kısmının kurulumuna geçelim. Gelen ekranın arama yerini kullanarak “Webhooks” sonucunu seçelim.
  • Webhook’lar bir web talebi oluşturmayla yükümlüdür. Dolayısıyla çıkan özellik listesinde sadece tek bir sonuç görüntüleniyor.

Make a web request

This action will make a web request to a publicly accessible URL. NOTE: Requests may be rate limited.

Form ayarları

  • Facebook Pages ve Webhooks seçimini sağladıktan sonra 5’nci adımda lislenen formdaki bilgileri sağlayalım. Discord sunucumuzu hedef aldığımız için bu formdaki alanları şu şekilde dolduruyoruz:
    • URL: Discord sunumuzdaki webhook botunun bağlantısı. Bu bağlantıyı almak için şu adımları izliyoruz:
      – Yetkilisi olduğumuz Discord sunucumuzda sunucu ayarlarına girelim ve “Webhook’lar” sekmesine geçelim.
      – “Webhook Oluştur” butonuna basalım.
      – Webhook botu için sunumuzda görünecek “isim” ve botun paylaşımlarını yapacağı “metin kanalını” belirtelim. Bu ekranda botunuza bir profil resmi de ekleyebilirsiniz.
      – Botunuzu oluşturduktan sonra pencerenin en altında botun Webhook erişim bağlantısı otomatik olarak oluşturulur. Bu bağlantı IFTTT ekranında URL kısmına yerleştireceğimiz bağlantıdır. Kopyalayıp yapıştıralım. Bu bağlantı şu şekilde gözükür:
https://discordapp.com/api/webhooks/439555745627773956/64dO1W2txDXPK9aBeCcnEjTuRKtzVOevzcRpuZvSybqEifoxtcY-ggk1KnhYjFN7qiGD
    • Method: Bu alan Facebook Pages kaynağından gelen girdilerimizi Discord sunucumuzda aktaracağımız yöntemi temsil ediyor. Bu ayarı “POST” olarak düzeltiyoruz.
    • Content Type: Bunu “application/json” olarak seçiyoruz.
    • Body: Bu kısım sunucuda botumuzun paylaşımlarını yaptığı arayüzü temsil ediyor. Kod bilginiz yoksa bunu elle kodlamanız zor olabilir. Bu kısmın detaylı anlatımına yazının sonunda yer verdim.
  • Formu doldurduktan sonra gelen ekranı “Finish” butonuna basarak tamamlayalım. Dilediğiniz zaman IFTTT hesabınızın “My Applets” kısmında mantığını oluşturduğunuz applet’lerin ayalarına ulaşabilir, güncellemeler yapabilir ve istatistiklerine ulaşabilirsiniz.

Webhook botu için arayüz oluşturma

  • Ekranın altında sıralanan “Enable webhook mode” butonuna basalım ve gelen uyarı ekranını “Yes” diyerek onaylayalım.
  • Sol panel düzenleme, sağ panel ise önizleme ekranımız. Kodlamınızı oluşturabilir ya da aşağıdaki kod örneğimi kullanabilirsiniz:
{
  "embeds": [
    {
      "title": "{{UpdatedAt}}",
      "description": "{{Message}} \n\n Facebook sayfamızı ziyaret edin: [@gamecik]({{PageUrl}})",
      "url": "https://discordapp.com",
      "color": 21199,
      "footer": {
        "icon_url": "https://img.utdstc.com/icons/facebook-plus-android.png",
        "text": "{{PageUrl}}"
      },
      "thumbnail": {
        "url": "https://img.utdstc.com/icons/facebook-plus-android.png"
      },
      "author": {
        "name": "{{PageName}}",
        "url": "https://discordapp.com",
        "icon_url": "https://img.utdstc.com/icons/facebook-plus-android.png"
      }
    }
  ]
}

Bu kodu IFTTT applet’inizin ayarlar kısmında kısmında “Body” alanına yapıştırdığınızdan emin olun. Kodun görünümü sunucunuzda şu şekildedir:

Yazar
Serdar Esentürk
Tartışmaya katıl

Takip et @serdaresenturk

Invalid OAuth access token.

Serdar Esentürk

Hobileri fazla bir karakter. Kocaeli Üniversitesi Podoloji programının 2015 yılı mezunu. Podoloji Türkiye'de kurucu. Canı sıkıldığında amatör bir çizer. Bazen komik, bazen uykucu.

Instagram

Invalid OAuth access token.

Arşivler