Ant Media Server sunucuda gerçekleşen temel olaylardan uygulama sunucunuz haberdar olsun diye webhook özelliğini desteklemektedir. Bu sayede, Ant Media Server’a kendi webhook URL adresinizi kayıt edebilir ve Ant Media Server’in bu URL adresini yeni bir yayın oluştuğunda, bittiğinde veya kayıt hazır olduğunda çağırmasını sağlayabilirsiniz.  Öncelikle, Ant Media Server’a kendi webhook URL adresinizi nasıl kayıt edeceğinizi tanımlayalım. Sonrasında webhooklar hakkında referans bilgi verelim.

webhook ant media server

Webhook URL Belirleme

Ant Media Server üzerinde çalışan uygulamanız için hem varsayılan bir webhook adresi hem de  rest servisi ile oluşturduğunuz yayınlar için özelleşmiş bir webhook adresi girebilirsiniz. .

Varsayılan Webhook URL

Varsayılan adres girmek için lütfen aşağıdaki adımları takip ediniz.

  • red5-web.properties dosyasını açınız ve içerisine  settings.listenerHookURL adından bir değişken tanımlayınız. red5-web.properties dosyası  webapps/<app_name>/WEB-INF  klasörü altında olmaktadır.
    ...
    
    settings.listenerHookURL=http://www.example.com/webhook/
    
    ...
  • red5-web.xml dosyasını açın ve app.settings nesnesine settings.listenerHookURL değişkenini ekleyiniz.
    ...
    <bean id="app.settings" class="io.antmedia.AppSettings" >
    ...
       <property name="listenerHookURL" value="${settings.listenerHookURL}" />
    ...
    </bean>
    ...
  • Sunucuyu tekrar başlatınız.
    sudo service antmedia restart

Artık uygulamanız için varsayılan webhook adresi tanımlanmıştır.

Yayınlar için özelleşmiş Webhook URL

Ant Media Server rest servisleri ile yayınların oluşmasını sağlamaktadır. Bu sayede, eğer herhangi bir yayın için özel bir Webhook URL adresi girmek isterseniz, bunu rest service deki createBroadcast method ile yapabilirsiniz.  createBroadcast methodunun Broadcast nesnesine tipinde parametresi bulunmaktadır.  Broadcast nesnesninde  listenerHookURL adından bir alanı vardır. Yani sonuç olarak , yayın oluştururken listenerHookURL adresini belirleyebilirsiniz.

Aşağıdaki Postman ile createBroadcast methodunun çağrılabileceği örnek bir JSON bulunmaktadır

Webhooks Listesi

Şimdi Ant Media Server’in hangi durumda webhookları hangi parametreler ile çağırdığını öğrenmeye geldi. Bunun için aşağıdaki kısa bir liste bulunmaktadır.

  • liveStreamStarted: Ant Media server yeni bir yayın oluştuğunda bu webhook’u çağırır.  Webhook adresine POST (application/x-www-form-urlencoded) methodu ile aşağıdaki değişkenler gönderilir.
    • id:  Yayın id’si
    • action: “liveStreamStarted”
    • streamName: Yayın adı
    • category:  Yayın kategorisi
  • liveStreamEnded: Ant Media Server bir yayın bittiğinde bu webhook’u çağırır. Webhook adresine POST (application/x-www-form-urlencoded) methodu ile aşağıdaki değişkenler gönderilir.
    • id: Yayın id’si
    • action: “liveStreamEnded”
    • streamName: Yayın adı
    • category: Yayın kategorisi
  • vodReady: Ant Media Server canlı yayının kayıt işlemi sonlandığında bu webhook’u çağırır. Webhook adresine POST (application/x-www-form-urlencoded) methodu ile aşağıdaki değişkenler gönderilir.
    • id: Yayın id’si
    • action: “vodReady”
    • vodName:  kayıt edilen dosyanın adı

Hepsi bu kadar. Sonuç olarak,  Webhook adresinizde yukarıdaki değişkenlerin değerlerini okuyarak projenize göre belirli aksiyonlar alabilirsiniz.

Ümit ederiz ki bu yazı projenizin otomasyonu için size kolaylık sağlayacaktır.  Herhangi bir sorunuz olursa, lütfen iletişime geçiniz. Size elimizden geldiğince yardımcı olmaktan mutluluk duyarız.

Kategoriler: Makale