Ana içeriğe geç

Webhook'lar

Giriş​

Webhook'lar, http/https geri çağırmalarını kullanarak önceden yapılandırılmış bir alıcıyı çalışma alanındaki olaylardan haberdar etmeyi sağlar. Kullanıcı, çalışma alanındaki olayların harici hizmetlerde işlemleri tetiklemesi için webhook'ları yapılandırabilir. Bu yaklaşım, belirli olayları eşitlemek ve izlemek için yararlı olabilir.

ONLYOFFICE Apps'teki çeşitli olaylara dayalı olarak kullandığınız herhangi bir uygulama veya web sitesi tarafında özel işlemler gerçekleştirmek için webhook'ları kullanın.

Tüm webhook'larınızı oluşturabilir ve yönetebilir, yapılandırabilir ve performanslarını denetlemek için her webhook'un geçmişine göz atabilirsiniz.

Yeni webhook oluşturma​

Öncelikle harici hizmetinizde webhook'lar için bir uç nokta ayarlamanız gerekir. Bu uç nokta, çalışma alanı webhook'larını dinlemek ve olay bildirimlerini almak için kullanılır.

Uç noktanızı oluşturup yapılandırdıktan sonra çalışma alanında webhook'lar oluşturabilirsiniz. Yeni bir webhook oluşturmak için:

  1. Herhangi bir bölümde (Dosyalar, Odalar, Formlar) sol panelde bulunan Geliştirici Araçları bağlantısına tıklayarak Geliştirici Araçları bölümünü açın.

    not

    Varsayılan olarak Geliştirici Araçları bölümüne erişim konuklar dışındaki tüm kullanıcılar için etkindir; böylece her kullanıcı bu sayfaya erişebilir ve dolayısıyla kendi webhook'larını oluşturabilir. Yöneticiler oluşturulan tüm webhook'ları görebilir, kullanıcılar ise yalnızca kendi webhook'larını görebilir.

    Yöneticiler soldaki Geliştirici Araçları bağlantısını kullanabilir veya sol alt köşedeki Seçenekler simgesi menüsünü kullanıp Ayarlar -> Geliştirici Araçları seçeneğini seçerek çalışma alanı Ayarlar bölümünden bu bölüme geçebilir.

  2. Geliştirici Araçları içinde Webhook'lar bölümüne gidin.

  3. Webhook oluştur düğmesine tıklayın.

  4. Gerekli parametreleri ayarlayın:

    Apps'te webhook'ları kullanma

    • Webhook adı – webhook ile çalışma alanında kolayca çalışmak için bir tanımlayıcı ad.

    • Payload URL'si – webhook'un gönderileceği uç noktanın adresi.

    • Gizli anahtar – payload URL'sine gönderilen istekleri doğrulamanızı sağlayan bir webhook sırrı belirleyin. Kendi anahtarınızı girin veya Oluştur'a tıklayın. Lütfen unutmayın: gizli anahtarınızı kaydettikten sonra tekrar alamazsınız. Bu gizli anahtarı kaybettiyseniz veya unuttuysanız, webhook ayarlarını açın ve yeni bir anahtar oluşturmak için Resetleme anahtarı bağlantısına tıklayın. Önceki sırrı kullanan tüm entegrasyonların güncellenmesi gerekir.

      Webhook ayarları

    • SSL doğrulaması – varsayılan olarak, payload'lar teslim edilirken SSL sertifikalarını doğrulamak için bu seçenek etkindir. Bu parametrenin devre dışı bırakılması önerilmez.

    • Bu webhook'u tetikleyecek olay – Her şeyi gönder seçeneğini kullanın veya Bireysel etkinlikler seçenek düğmesini işaretleyip yalnızca belirli tetikleyicileri seçin; yani Kullanıcılar, Gruplar, Dosyalar, Klasörler, Odalar, Formlar ve AI ajanları gibi çalışma alanı öğelerindeki değişikliklere ilişkin olayları. Örneğin kullanıcı oluşturuldu, davet edildi, güncellendi, silindi vb.

    • Hedef kimlik – tek bir nesnedeki değişiklikleri izlemenizi sağlayan, bir kullanıcının, grubun, dosyanın veya klasörün tanımlayıcısı.

    Apps'te webhook'ları kullanma

  5. Payload URL'si, HEAD yöntemiyle yapılan bir http isteğine 200 durumuyla yanıt vermelidir.

  6. Oluştur düğmesine tıklayın.

Ayarlara bağlı olarak, oluşturulan webhook tüm çalışma alanı olaylarına veya yalnızca seçilen tetikleyiciye/tetikleyicilere atanır. Harici hizmetinizde çalışma alanı olaylarıyla ilgili otomatik bildirimler alırsınız. Belirli bir webhook için oluşturma sırasında seçilen tetikleyiciler, yalnızca webhook sahibinin değiştirilen çalışma alanı öğesi üzerinde erişim hakları varsa tetiklenir.

Webhook'ları yönetme​

Oluşturulan webhook'lar adı, yazarı, payload URL'si ve durumuyla birlikte listelenir. Durum sütunundaki anahtarı kullanarak bir webhook'u devre dışı bırakabilir veya yeniden etkinleştirebilirsiniz. Aşağıdaki seçeneklerin bulunduğu bağlam menüsünü açmak için sağdaki Seçenekler simgesi simgesini kullanın:

Apps'te webhook'ları kullanma

  • Ayarlar – oluşturma sırasında belirtilen webhook ayarlarını değiştirir.
  • Webhook geçmişi – webhook teslimat geçmişini görüntüler.
  • Webhook'u sil – webhook'u siler.

Webhook geçmişini görüntülemek için webhook'a tıklayın.

Apps'te webhook'ları kullanma

Geçmişi görüntülerken webhook'ları teslimat tarihine veya durumuna (Gönderilmedi, 2XX, 3XX, 4XX, 5XX) göre filtreleyebilirsiniz. Filtre simgesi filtre düğmesine tıklayın, gerekli parametreleri seçin ve Uygula'ya tıklayın.

Apps'te webhook'ları kullanma

Listede bir veya daha fazla webhook seçip seçilen webhook'ları yeniden teslim etmek için üstte görünen Yeniden dene simgesi Yeniden dene seçeneğini kullanabilirsiniz. Ya da belirli bir webhook'un yanındaki Seçenekler simgesi simgesine tıklayın ve bağlam menüsünden Yeniden dene simgesi Yeniden dene seçeneğini seçin.

Apps'te webhook'ları kullanma

Belirli bir webhook'un yanındaki Seçenekler simgesi simgesine tıklayın ve bağlam menüsünden Bilgi simgesi Webhook ayrıntıları seçeneğini seçin.

Apps'te webhook'ları kullanma

Aşağıdaki ayrıntılar kullanılabilir:

  • Durum – yanıt durumu.
  • Etkinlik Kimliği – olayın kimliği.
  • Etkinlik türü – webhook'un etkinleşmesine neden olan olay.
  • Etkinlik zamanı – olayın gerçekleştiği tarih.
  • Teslimat süresi – uç noktadan yanıtın alındığı tarih.

İstek/Yanıt bölümlerinde ayrıca POST istek başlığını, POST istek gövdesini, POST yanıt başlığını ve POST yanıt gövdesini görüntüleyebilirsiniz. İstek veya yanıt başlığını/gövdesini panoya kopyalamak için Kopyala simgesi simgesini kullanın.

Webhook'u yeniden teslim etmek için Webhook ayrıntıları başlığının yanındaki Yeniden dene simgesi simgesini kullanın.

Teknik ayrıntılar​

Çalışma için aşağıdaki iki hizmet kullanılır:

  1. ASC.Web.Studio, webhook gönderme yöntemlerini sağlar ve WorkerService'i başlatır.

    WorkerService – gönderilmeyi bekleyen yeni webhook'lar hakkındaki bilgileri depolayan bir aracıdan (örneğin varsayılan olarak RabbitMQ kullanılır) mesaj almak için abone olur. Aracıdan alınan mesajlar bir kuyruğa yerleştirilir, ardından kuyruk sürekli sorgulanır ve webhook'ları göndermek için ASC.Webhoks.Service ile eşzamansız olarak iletişim kurulur.

  2. ASC.Webhooks.Core, webhook'ları veritabanına ve mesaj aracısına yayımlama yöntemlerinin yanı sıra veritabanıyla çalışma yöntemlerini sağlar.

ONLYOFFICE Apps API'si hakkında daha fazla bilgi için lütfen api.onlyoffice.com adresine bakın.