Webhooklar
Giriş
Perculus, belirli olaylar hakkında dış sistemleri bilgilendirmek için web kancalarını (webhook) kullanır. Bu işlevselliği kullanmak için, webhook uç noktası URL'si (dinleyici URL'si olarak da bilinir) ve olay türü dahil olmak üzere bilgileri depolamak için bir webhook kaydedilmelidir. Bir webhook ile ilişkili bir olay gerçekleştiğinde, ilgili URL'ye bir HTTP POST yükü gönderilir. Bu özelliği kullanmak ve webhook URL'nizi kaydetmek istiyorsanız lütfen destek ekibiyle iletişime geçin.
Olaylar ve Mesajlar
Aşağıda, Perculus olaylarının ve ilgili webhook'ları bilgilendirmek için kullanılan mesajların listesi bulunmaktadır.
SessionReportEvent
Bu olay, bir oturum paketlendikten ve rapor verileri kullanılabilir olduktan sonra gönderilir. Durum hazır veya başarısız olabilir. Raporun hazırlanması sırasında bir hata oluştuysa, mesaja bir hata metni de dahil edilir.
SessionReportEvent Mesajı (Başarılı İşlem)
SessionReportEvent Mesaji (Başarısız İşlem)
SingleVideoEvent
Bu olay, video dosyası indirilmeye hazır olduğunda gönderilir. Eğer durum başarısız ise, mesaja bir hata metni de dahil edilir.
SingleVideoEvent Mesajı (Başarılı İşlem)
SingleVideoEvent Mesajı (Başarısız İşlem)
SessionStatusEvent
Bu olay, bir oturum başlatıldığında veya bittiğinde gönderilir. Olay verileri bir JSON yükü olarak kapsüllenir ve webhook uç noktası URL'sine bir HTTP POST isteğinde bulunulur.
SessionStatusEvent Mesajı
Message Fields
request_id
Bu benzersiz tanımlayıcı mesajı tanımlar. Mesajları takip etmek ve sorunları gidermek için kullanılabilir.
Hepsi
type
Mesaj tipi
Hepsi
session_id
Oturum IDsi
Hepsi
token
Hepsi
status
SessionReportEvent ve SingleVideoEvent mesajları için bu alan hazır ve başarısız olmak üzere iki değer alabilir. SessionReportEvent yükündeki status alanı, oturumun doğru şekilde paketlenip paketlenmediğini gösterir. Benzer şekilde, SingleVideoEvent yükündeki status alanı, oturum videosunun başarıyla oluşturulup oluşturulmadığını gösterir. Eğer durum başarısız ise, hata öğesi içinde bir hata mesajı iletilir. SessionStatusEvent için başladı veya bitti değerlerini alabilir.
Hepsi
video_url
Bu öğe, video içeriğinin bulunduğu URL'yi belirtir. Bu URL, video içeriğine erişmek için kullanılabilir ve 24 saat sonra süresi dolar.
SingleVideoEvent
date
Bu öğe, durum alanının değerine bağlı olarak oturumun ne zaman başladığını veya bittiğini belirtir.
SessionStatusEvent
error
Bu öğe, herhangi bir hata durumunda olayın hata metnini içerir. Hata olmadığında atlanabilen isteğe bağlı bir öğedir.
SessionReportEvent & SingleVideoEvent
Token oluşturma ve doğrulama
Alıcı sistem, mesajlar içinde gönderilen kimlik doğrulama belirtecini doğrulayarak Perculus sistemini doğrulayabilir. Yukarıdaki bölümlerde gösterildiği gibi, Perculus her webhook URL isteği yükünde bir belirteç öğesi içerir. Aşağıdaki formattadır: token = <timestamp>|<hmac>
hmac, karma tabanlı bir mesaj kimlik doğrulama kodudur. Bir gizli anahtar ve zaman damgası kullanılarak oluşturulur.
timestamp, belirteç oluşturma zamanından 1/1/1970 UTC'ye kadar geçen saniye sayısıdır. Unix zamanı olarak da bilinir.
secret, yalnızca Perculus ve alıcı taraf tarafından bilinen özel bir bilgi parçasıdır.
Örnek oluşturma kodu:
Gizli anahtar alıcı taraf tarafından da bilindiğinden, alıcı yukarıdaki algoritmayı kullanarak belirteç içine gömülü zaman damgasını ve gizli anahtarı kullanarak hmac'i yeniden oluşturabilir. Böylece alıcı şunları doğrulayabilir:
Zaman damgasının en fazla N dakika eski olması durumunda belirtecin süresinin dolup dolmadığını kontrol ederek isteğin geçerliliğini. Burada, N parametresinin belirlenmesi alıcı tarafa bağlıdır.
İsteğin özgünlüğünü (hmac'lerin eşit olup olmadığını kontrol ederek). Aşağıdaki C# kod parçası, belgede yukarıda açıklandığı gibi bir gizli anahtar ve zaman damgası kullanarak bir kimlik doğrulama belirteci oluşturan bir yöntemdir.
C# İçin Örnek Token Oluşturma
Last updated
Was this helpful?