2016-08-17 19 views
8

Web sayfama canlı bir Facebook videosu yerleştiriyorum ve videoda etkinlik işleyicileri yerleştirmem gerekiyor. Örneğin, videonun duraklatılmış olup olmadığını bilmek istiyorum.Facebook canlı video örneği xfbml.ready olmadan nasıl alınır?

Düzenli videolarla (canlı olmayan) videolarda, bunu Facebook belgelerinde açıklanan yöntemi kullanarak etkinliklere abone olarak yapıyorum. https://developers.facebook.com/docs/plugins/embedded-video-player/api ve benim örnek kod: İşte belgeler şunlardır

FB.Event.subscribe('xfbml.ready', function (msg) { 
    if (msg.type === 'video') { 
    fplayer = msg.instance; 
    fplayer.subscribe('paused', facebookPauseEventHandler); 
    } 
}); 

sorundur, bunun yerine bir "on-demand" bir sonu vardır ya önceden kaydedilmiş video, xfbml.ready olayın bir canlı video gömerken asla ateş etmeyin Bu, Facebook olaylarına abone olmak için, "msg" durumunda yanıta ihtiyacınız olduğu için zararlı.

Bunun yerine 'xfmbl.rendered' kullanmayı denedim, ancak olay tetiklendiğinde alınan msg sadece '1'.

Ayrıca, oyuncunun kendisi tarafından msg.instance kullanılarak gerçekleştirilen olaylara olay işleyicileri yerleştirmeyi denedim, ancak bu, çapraz kaynaklı politika sorunları nedeniyle (Facebook oyuncusu bir iFrame içinde) mümkün değil.

Bu gönderi =>Unmute facebook live video da xfbml.ready ateş etmeyle ilgili benzer bir soru soruyor.

Yardımlarınız için teşekkürler.

+0

Ben en azından tahmin Şimdi bu sabittir olması gerektiği gibi çalışır: http://shoepimper.com/fb.html –

cevap

0

FB.Event.subscribe('xfbml.ready'... FB.XFBML.parse üzerine denir, böyle, sadece iliştirilmiş video ebeveyn üzerinde ayrıştırma, senin olaydan önce yeni bir ayrıştırma zorlayabilirsiniz:

FB.XFBML.parse(document.getElementById('my-embed-video-id').parentNode); 
FB.Event.subscribe('xfbml.ready', function(msg) { 
    if(msg.type === 'video'){ 
    //do something 
    } 
}); 
İlgili konular