function tv_direct_go_visio(LOGIN,sid,actusite,idRoom,actuwdname,actudir,is_first_time) { if (!is_first_time) first_time=false; else first_time=true; if (!LOGIN) LOGIN=""; if (!sid) sid=""; if ((LOGIN=="") || (sid=="")) { alert("Veuillez vous faire reconnaitre ou vous inscrire pour accéder à la visio SVP"); return false; } else {// OK GO if (!document.getElementById("visioconnect_form")) { if (document.getElementById('menu_bas')) { // site if (document.location.href.replace('taosrv','')==document.location.href) document.getElementById('menu_bas').innerHTML=document.getElementById('menu_bas').innerHTML+''; else { // ligne suivante pour dev uniquement document.getElementById('menu_bas').innerHTML=document.getElementById('menu_bas').innerHTML+''; } } } if (document.getElementById("visioconnect_form")) { form=document.getElementById("visioconnect_form"); if (LOGIN) form.LOGIN.value=LOGIN; if (sid) form.sid.value=sid; if (actusite) form.actusite.value=actusite; if (idRoom) form.idRoom.value=idRoom; if (actuwdname) form.actuwdname.value=actuwdname; if (actudir) form.actudir.value=actudir; //-------- // form.action="../visio_chat/camfrg_nw.php"; // dev uniquement ! //-------- form.target="visioactive"; nw_fen=window.open("","visioactive","location=no,status=no,directories=no,toolbar=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=no,width=400,height=300"); if (!nw_fen) { alert("Votre anti-popup est activé. \nVeuillez le désactiver pour ouvrir la fenetre VISIO SVP"); } else { parent.blur(); // nw_fen.focus(); } form.submit(); } else alert("ERROR calling visio !"); } // fin test connect } function tv_get_realdir() { realdir=document.location.href; realdir=realdir.substring(0,realdir.lastIndexOf('/')); realdir=(document.location.href.replace('mserveur','')!=document.location.href) ? 'http://taosrv.dyndns.org/mserveur/webconcert/webtv/' : realdir+'/' ; return realdir; } function tv_ajax_data_eval(data,ptarget,test_exec) { if (!test_exec) var test_exec=false; if ((!data)||(data=="")||(!ptarget)||(ptarget=="")) return false; if (window.XMLHttpRequest) {// Firefox var xhr_object = new XMLHttpRequest(); } else if (window.ActiveXObject) {// OLD Internet Explorer try { xhr_object = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { xhr_object = new ActiveXObject("Microsoft.XMLHTTP"); } } else { // XMLHttpRequest non supporté par le navigateur var xhr_object = null; alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); return; } //---------------------------------------------------- xhr_object.onreadystatechange = function() { if(xhr_object.readyState == 4) { /* alert("AJAX response :\n"+xhr_object.responseText); */ if (xhr_object.responseText+""!="") eval(xhr_object.responseText); // evecute le code javascript contenu dans la réponse delete(xhr_object); xhr_object=null; } } //---------------------------------------------------- try { xhr_object.open("POST", ptarget, true); xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); // Only for POST xhr_object.send(data); //alert("sent :"+data); } catch(err) {return false;} return test_exec; } function tv_ajax_data_just_post(data,ptarget) { if ((!data)||(data=="")||(!ptarget)||(ptarget=="")) return false; if (window.XMLHttpRequest) {// Firefox var xhr_object = new XMLHttpRequest(); } else if (window.ActiveXObject) {// OLD Internet Explorer try { xhr_object = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { xhr_object = new ActiveXObject("Microsoft.XMLHTTP"); } } else { // XMLHttpRequest non supporté par le navigateur var xhr_object = null; alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); return; } xhr_object.onreadystatechange = function() { if(xhr_object.readyState == 4) { // nothing to do - just to exec a file /* alert("AJAX response :\n"+xhr_object.responseText); eval(xhr_object.responseText); // evecute le code javascript contenu dans la réponse */ delete(xhr_object); xhr_object=null; } } xhr_object.open("POST", ptarget, true); xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); // Only for POST xhr_object.send(data); } //--------------------------------------------- // initial values rendus par common //--------------------------------------------- WEBTV_id=216; site_NAME="Réseau DjVisio"; site_URL="www.djvisio.com"; WEBTV_banner="../webtv_banners/DjVisioTV.jpg"; WEBTV_small_logo=""; WEBTV_Nom="* T6 DjVisio TV"; WEBTV_URL_Streamers="http://djvisio-provider.video-worldvisio.com/flvprovider.php"; WEBTV_FluxDirect="rtmp_djcsl.flv"; WEBTV_Server_FluxDirect="rtmp://94.23.16.185/oflaDemo/"; WEBTV_fond_player="../webtv_banners/logodjvisio.jpg"; WEBTV_incruste_player=""; WEBTV_publogo=""; WEBTV_fond_prochainement="../webtv/images/encart_previewGVP.gif"; WEBTV_fond_actuellement="../webtv/images/bobine.gif"; WEBTV_fond_dernierement="../webtv/images/cinema2.jpg"; //--------------------------------------------- player_in_use=tv_get_realdir()+'webtv/'; div_affichage=''; playlist_programme=tv_get_realdir()+'webtv/playlist_programme.php?wtv='+WEBTV_id+'&link=1'; //--------------------------------------------- //--------------------------------------------- var loop_inop_tick_count=0; var flux_inop_tick_count=0; var ekst_tktmr=null; var stream_tktmr=null; function echo_state() { loop_inop_tick_count++; clearTimeout(ekst_tktmr); ekst_tktmr=null; streamer=GetDataToFlashMovie("streamer")+"-"; insert_comment((fluxHasStarted ? "--»FLUX HAS STARTED" : "--» FLUX STILL INOP ")); // faudrait tester si buffer >0 ici pour voir si le flux est réeelement stopped ! // au cas ou le listener n'aurait pas marché if ((!fluxHasStarted)&&(streamer.replace("rtmp://","")!=streamer)) { if (flux_inop_tick_count>3) { flux_inop_tick_count=0; // if (document.getElementById("testdiv")) {document.getElementById("testdiv").innerHTML="";} insert_comment('ERROR : TOO MANY TRIES ON RTMP - tick='+loop_inop_tick_count); if (errorencountered==true) { document.getElementById('error_div').innerHTML='






La connexion au serveur a échoué.

         Veuillez cliquez ici pour faire une nouvelle tentative
'; //check if pubs // if not : basculer sur pubs avec timer à 5 minutes filename=GetDataToFlashMovie("file"); if (filename.replace("playlist_progrondedp",'')==filename) { insert_comment('ERROR STOP => SWITCHING TO RondeDePubs'); ronde_de_pub_proc(); } else insert_comment('ERROR STOP ALL (file='+filename+') line 843'); } else { if (loop_inop_tick_count<12) { // restart insert_comment('reloading file only : '+loaded_file+' TICK INOP line 853'); enable_stopstart_detection=false; jwplayer.sendEvent('STOP'); jwplayer.sendEvent('LOAD', loaded_file); // reload file setTimeout("jwplayer.sendEvent('PLAY');enable_stopstart_detection=true;",300); } else { document.getElementById('error_div').innerHTML='






La connexion automatique au serveur n\'a pas abouti

         Veuillez actualiser cette page SVP...
'; // window.location.reload(true); insert_comment('STOP ALL line 2249'); } } } else { if (document.getElementById('error_div')) { document.getElementById('error_div').innerHTML='






Connexion au serveur

         Veuillez patienter SVP...
'; document.getElementById('error_div').style.display=""; document.getElementById(div_affichage).style.visibility="hidden"; } nt=5000+(loop_inop_tick_count*500); insert_comment('--------------- check state in '+nt+"s"); ekst_tktmr=setTimeout('echo_state()',nt); // try nt seconds later } } // else clearTimeout(ekst_tktmr); flux_inop_tick_count++; } function main_video_playliste_flash(zone,playliste,file,logo,mwidth,mheight,volume,autostart) { fluxHasStarted = false; var ver = deconcept.SWFObjectUtil.getPlayerVersion(); if (ver.major < 9) { comment=' '; document.getElementById(zone).innerHTML=comment; return false; }//http://get.adobe.com/fr/flashplayer/ if (!logo) logo=''; if (!playliste) playliste=''; if (!file) file=''; if (!autostart) autostart='false'; realdir=tv_get_realdir(); if (file=='') file=playliste; if (!volume) volume="80"; if (!mwidth) mwidth=680; if (!mheight) mheight=384; if (document.getElementById(zone)) { //---------- OKI : zone exists -------------- document.getElementById(zone).innerHTML=" 
 "; document.getElementById(zone).align="center"; document.getElementById(zone).style.paddingTop="20px"; var s1 = new SWFObject(realdir+"player/player.swf",actual_myplayer_id,mwidth,mheight,"9"); s1.addParam("allowfullscreen","true"); s1.addParam("allowscriptaccess","always"); s1.addParam("wmode","transparent"); s1.addVariable("file",file); loaded_file=file; if (logo!='') s1.addVariable("image",logo); s1.addVariable("width",mwidth); s1.addVariable("height",mheight); s1.addVariable('autostart',autostart); s1.addVariable('volume',volume); s1.addVariable('bufferlength','0.5'); if (playliste!='') { s1.addVariable("playlist","right"); s1.addVariable("playlistsize","210"); } s1.addVariable("skin",realdir+"player/skins/swift/swift.swf"); s1.write(zone); } //-------- fin OKI ---------- } function video_read_flash(zone,filename,mwidth,mheight,ystyle) { if (!ystyle) ystyle="swift"; if (!filename) filename="rtmp_djcsl.flv"; if (!mwidth) mwidth=660; if (!mheight) mheight=530; fluxHasStarted = false; document.getElementById(zone).innerHTML=" 
 "; document.getElementById(zone).align="center"; document.getElementById(zone).style.paddingTop="20px"; realdir=tv_get_realdir(); var s1 = new SWFObject(realdir+"player/player.swf",actual_myplayer_id,mwidth,mheight,"9"); s1.addParam("allowfullscreen","true"); s1.addParam("allowscriptaccess","always"); s1.addParam("wmode","transparent"); // s1.addVariable("streamer","rtmp://94.23.16.194/oflaDemo/"); s1.addVariable("file",filename); loaded_file=filename; s1.addVariable("width",mwidth); s1.addVariable("height",mheight); s1.addVariable('volume','80'); s1.addVariable('autostart','true'); s1.addVariable('bufferlength','0.5'); s1.addVariable('respectduration','false'); s1.addVariable('image','../webtv_banners/logodjvisio.jpg'); s1.addVariable("skin",realdir+"player/skins/"+ystyle+"/"+ystyle+".swf"); s1.write(zone); } //----------------------------------------------------- var last_flashcommand=""; var return_flashcommand=""; var playercount=0; var actual_myplayer_id="webtvjwplayer"+playercount+""; var player_zone=""; var test_txt=""; var currentItem = -1; var real_height=0; var real_width=0; var change_file_id = "-1"; var jwplayer = null; var fluxHasStarted = false; var enable_stopstart_detection = true; var iniplayerTMR = null; var errorencountered = false; var reload_playlist_tmr= null; var tmr_playlist = null; var tmr_addlisteners = null; var loaded_file = null; var tktmr = null; var permanent_error = false; var currentVolume = 80; var buffering_timeout=null; function webtv_stream_flash(zone,filename,mwidth,mheight,ystyle,disallowfullscreen,streamer,playliste,yeitem) { if (reload_playlist_tmr!=null) {clearTimeout(reload_playlist_tmr);reload_playlist_tmr=null;}; if (iniplayerTMR!=null) {clearTimeout(iniplayerTMR);iniplayerTMR=null;} if (permanent_error==true) window.location.reload(true); else remove_listeners(); // try to remove listeners // increment player //playercount++; //actual_myplayer_id="webtvjwplayer"+playercount+""; errorencountered=false; currentItem = -1;// reset playlist item number // destroy the actual player try {delete(jwplayer);jwplayer=null;} catch(err) {} document.getElementById(div_affichage).innerHTML=""; // clear all if (document.getElementById('error_div')) { document.getElementById('error_div').style.display="none"; document.getElementById(div_affichage).style.visibility="visible"; } var ver = deconcept.SWFObjectUtil.getPlayerVersion(); if (ver.major < 9) { document.getElementById(zone).style.align="center"; comment=' '; document.getElementById(zone).innerHTML=comment; return false; }//http://get.adobe.com/fr/flashplayer/ if (filename.replace('rtmp_','')!=filename) { tv_ajax_data_just_post('ctl=MTdkYzhmYTgzNDk0NjM0OWYzMTY1NDM5Yzc2ZGVhNDd8cnRtcDovLzk0LjIzLjE2LjE4NS9vZmxhRGVtby8=|'+filename,'scripts/log_rtmp_request.php'); } test_txt=""; player_zone=zone; if (!playliste) playliste=""; if (!yeitem) yeitem=0; last_flashcommand="webtv_stream_flash('"+zone+"','"+filename+"','"+mwidth+"','"+mheight+"','"+ystyle+"',"+(!disallowfullscreen ? "false" : "true")+",'streamer','"+playliste+"',item);"; //playliste=""; if ((!streamer)||(streamer=='streamer')) streamer=WEBTV_Server_FluxDirect; else streamer=WEBTV_URL_Streamers; //streamer="rtmp://94.23.16.185/oflaDemo/"; //else streamer="http://djvisio-provider.video-worldvisio.com/flvprovider.php"; if (!disallowfullscreen) {disallowfullscreen=false;allowfullscreen="true";} else {disallowfullscreen=true;allowfullscreen="false";} if (!ystyle) ystyle="swift"; if (!filename) filename="rtmp_djcsl.flv"; if (!mwidth) mwidth=660; if (!mheight) mheight=540; if (filename.indexOf('flvprovider.php?file=')>0) { streamer=filename.substring(0,filename.indexOf('?file=')); filename=filename.substring(filename.indexOf('?file='),filename.length); filename=filename.replace('?file=',''); if (streamer=="_flvprovider.php") streamer="http://djvisio-provider.video-worldvisio.com/flvprovider.php"; } //last_flashcommand="webtv_stream_flash('"+zone+"','"+filename+"','"+mwidth+"','"+mheight+"','"+ystyle+"',"+(disallowfullscreen ? "true" : "false")+",'"+streamer+"','"+(playliste ? playliste : '')+"',item);"; //last_flashcommand="webtv_stream_flash('"+zone+"','"+filename+"','"+mwidth+"','"+mheight+"','"+ystyle+"',"+(disallowfullscreen ? "true" : "false")+",'streamer','"+(playliste ? playliste : '')+"',item);"; test_txt=test_txt+"last flash command = "+last_flashcommand+" on line 1056
"; tflnm="-"+filename; if (tflnm.indexOf('rtmp://')>0) { streamer=filename.substring(0,filename.lastIndexOf('/')); filename=filename.substring(filename.indexOf('/'),filename.length); filename=filename.replace('/',''); if (filename=="flux_direct") filename="rtmp_djcsl.flv"; } realdir=tv_get_realdir(); if (playliste!='') { pl_width=270; mwidth=mwidth+pl_width; filename=realdir+filename; } document.getElementById(zone).innerHTML=" 
 "; document.getElementById(zone).align="center"; document.getElementById(zone).style.paddingTop="20px"; myplayer=realdir+"player/player4-4.swf"; var s1 = new SWFObject(myplayer,actual_myplayer_id,mwidth,mheight,"9"); //type="application/x-shockwave-flash" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" test_txt=test_txt+'s1 = new SWFObject('+myplayer+','+actual_myplayer_id+','+mwidth+','+mheight+',"9");'+"
"; // test spécial full screen if (mheight<345) allowfullscreen="false"; else allowfullscreen="true"; s1.addParam("allowfullscreen",allowfullscreen); test_txt=test_txt+"allowfullscreen ="+allowfullscreen+"
"; s1.addParam("allowscriptaccess","always"); test_txt=test_txt+"allowscriptaccess =always
"; //swliveconnect="true" s1.addParam("wmode","transparent"); test_txt=test_txt+"wmode =transparent
"; if ((filename.replace('@','')!=filename)&&(streamer.replace("rtmp://","")!=streamer)) { // akamai filename=filename.replace('.flv',''); s1.addParam("subscribe","true"); test_txt=test_txt+"param subscribe =true
"; s1.addVariable("type","fcsubscribe"); test_txt=test_txt+"type = fcsubscribe on line 474
"; s1.addVariable("subscribe","true"); test_txt=test_txt+"subscribe = true on line 475
"; } s1.addVariable("file",filename); test_txt=test_txt+"file ="+filename+" on line 478
"; loaded_file=filename; // useful for LINUX s1.addVariable("id",actual_myplayer_id); test_txt=test_txt+"id ="+actual_myplayer_id+"
"; s1.addVariable("width",mwidth); test_txt=test_txt+"width ="+mwidth+"
"; s1.addVariable("height",mheight); test_txt=test_txt+"height ="+mheight+"
"; real_height=mheight; real_width=mwidth; s1.addVariable('volume','80'); test_txt=test_txt+"volume =80
"; s1.addVariable('autostart','true'); test_txt=test_txt+"autostart =true
"; if ((streamer.replace("rtmp://","")!=streamer)) { s1.addVariable('bufferlength','0.5'); test_txt=test_txt+"bufferlength =0.5
"; } else { s1.addVariable('bufferlength','2'); test_txt=test_txt+"bufferlength =2
"; } s1.addVariable('image','../webtv_banners/logodjvisio.jpg'); test_txt=test_txt+'image=../webtv_banners/logodjvisio.jpg'+"
"; if (playliste!='') { s1.addVariable("playlist","right"); test_txt=test_txt+"playlist=right"+"
"; s1.addVariable("playlistsize",pl_width); test_txt=test_txt+"playlistsize="+pl_width+"
"; // s1.addVariable("overstretch","fit"); test_txt=test_txt+"overstretch=fit
"; // s1.addVariable("thumbsinplaylist","true"); test_txt=test_txt+"playlistsize=true
"; } if (yeitem!=0) { s1.addVariable('item',yeitem); test_txt=test_txt+'start item='+yeitem+"
"; } currentItem=yeitem; s1.addVariable("streamer",streamer); test_txt=test_txt+"streamer="+streamer+"
"; if ((filename.replace("playlist_prog",'')!=filename)||(streamer.replace("rtmp://","")!=streamer)) { // stream actual playlist stream //---------- playliste --------------- if (filename.replace("playlist_prog",'')!=filename) { if ( (filename.replace("playlist_progevts",'')!=filename) || // special pour evènements (filename.replace("playlist_progpubs",'')!=filename) || // special pour pubs (filename.replace("playlist_progrondedp",'')!=filename) // special pour pubs ) { s1.addVariable('repeat','always'); test_txt=test_txt+'repeat=always'+"
"; } else { s1.addVariable('repeat','list'); test_txt=test_txt+'repeat=list'+"
"; } } //------------------ fin play liste -------------------- s1.addVariable('controlbar','none'); test_txt=test_txt+'controlbar=none'+"
"; if ((filename.replace("link=1",'')!=filename)|| //link=1 ((streamer.replace("rtmp://","")!=streamer)&&(mheight<345)) ) { if ((streamer.replace("rtmp://","")!=streamer)&&(mheight<345)) {s1.addVariable('link','plain.php?wtv=216'); test_txt=test_txt+'link=plain.php?wtv=216'+"
";} s1.addVariable('displayclick','link'); test_txt=test_txt+'displayclick=link'+"
"; s1.addVariable('linktarget','_self'); test_txt=test_txt+'linktarget=_self'+"
"; } else { s1.addVariable('displayclick','fullscreen'); test_txt=test_txt+'displayclick=fullscreen'+"
";// fullscreen or link } } // s1.addVariable('plugins', 'plugins=hd-1'); // s1.addVariable('hd.file', filename); // *.mov if (WEBTV_incruste_player!="") {// logo to show s1.addVariable('logo',WEBTV_incruste_player); test_txt=test_txt+"logo ="+WEBTV_incruste_player+"
"; } //else s1.addVariable("image","http://www.entreprisepartners.com/userfiles/images/festivaldecannes/gifcannes01.gif"); s1.addVariable("skin",realdir+"player/skins/"+ystyle+"/"+ystyle+".swf"); test_txt=test_txt+"skin="+realdir+"player/skins/"+ystyle+"/"+ystyle+".swf"+"
"; s1.write(zone); delete(s1); // fo voir // rajout log si rtmp_ // not _flvprovider if ((streamer.replace("rtmp://","")!=streamer) && (filename.replace('_flvprovider','')==filename)) { // log internal en direct tv_ajax_data_eval('streamer='+streamer+'&vfile='+filename,'../tv/scripts/ajax_send_stat.php'); } ini_set_jwplayer(); //------------------ // test pour tick synchro program if (filename) { if (filename.replace("playlist_progrondedp",'')!=filename) { if (reload_playlist_tmr!=null) { clearTimeout(reload_playlist_tmr); test_txt=test_txt+'-------------------------clear reload_playlist_tmr'; } } } //------------------ } function main_tmr_control(tick_seconds) {// used in ajax_tick_day_prog.php if (tktmr!=null) {clearTimeout(tktmr);tktmr=null;} filename=GetDataToFlashMovie("file"); if (filename.replace("playlist_v",'')!=filename) return true; // pas de timer si vod ! insert_comment('--- TMR CONTROL --------------'); tick_seconds=tick_seconds*1000; if (tktmr!=null) {clearTimeout(tktmr);tktmr=null;} try { if (filename.replace("playlist_progrondedp",'')==filename) { if (reload_playlist_tmr!=null) clearTimeout(reload_playlist_tmr); reload_playlist_tmr=setTimeout("change_playlist_file('playlist_programme.php?wtv="+WEBTV_id+"&link=1')",tick_seconds); insert_comment('-------------------------ajaxtick reload_playlist_tmr=|'+reload_playlist_tmr+'|'); } else tktmr=setTimeout('tick_refresh_onair_titres()',tick_seconds); } catch(err) {tktmr=setTimeout('tick_refresh_onair_titres()',tick_seconds);} insert_comment('--- TMR CONTROL ----------------------ajaxtick tktmr=|'+tktmr+'|'); } function tick_refresh_onair_titres() { filename=GetDataToFlashMovie("file"); if ( (filename.replace("playlist_progrondedp",'')==filename) && (filename.replace("playlist_v",'')==filename) ) { // pas ronde de pubs insert_comment("--- Changing titres line 1674 (ronde de pub = no)"); tv_ajax_data_eval("wtv=216","scripts/ajax_tick_day_prog.php"); } } function refresh_titres_summary(title,ntitle,summary) { if(!title) title=false; if(!ntitle) ntitle=false; if(!summary) summary=false; insert_comment('-------------------------- REFRESHING TITLES ON LINE 608'); filename=GetDataToFlashMovie("file"); // ne rien afficher si ronde de pub ! if (filename.replace("playlist_progrondedp",'')!=filename) { if (document.getElementById("on_play_titre")) document.getElementById("on_play_titre").innerHTML="Interlude";//"Pubs & Sponsors"; if (document.getElementById("on_air_titre")) document.getElementById("on_air_titre").innerHTML="Interlude";//"Pubs & Sponsors"; return false; } if (title) { if (document.getElementById("on_play_titre")) { insert_comment('----------line 1682 - string titre = '+title); document.getElementById("on_play_titre").innerHTML=title; } if (document.getElementById("on_air_titre")) { insert_comment('----------line 1687 - string titre = '+title); document.getElementById("on_air_titre").innerHTML=title; } } if (ntitle) { if (document.getElementById("nxton_air_titre")) { if (ntitle) document.getElementById("nxton_air_titre").innerHTML=ntitle; } } if (document.getElementById("on_play_resume")) { if (summary) document.getElementById("on_play_resume").innerHTML=summary; } } //------------------------------------------- //--- flash API //------------------------------------------- var trynbr = 0; var playlist_array=new Array(); //var currentItem = -1; // voir au dessus function getFlashMovieObject(movieName) { if (window.document[movieName]) { return window.document[movieName]; } if (navigator.appName.indexOf("Microsoft Internet")==-1) { if (document.embeds && document.embeds[movieName]) return document.embeds[movieName]; } else // if (navigator.appName.indexOf("Microsoft Internet")!=-1) { return document.getElementById(movieName); } } function StopFlashMovie() { var flashMovie=getFlashMovieObject(actual_myplayer_id); flashMovie.StopPlay(); } function PlayFlashMovie() { var flashMovie=getFlashMovieObject(actual_myplayer_id); flashMovie.Play(); } function SendDataToFlashMovie(feild,value) { var flashMovie=getFlashMovieObject(actual_myplayer_id); flashMovie.SetVariable(feild,value); } function GetDataToFlashMovie(feild) { var flashMovie=getFlashMovieObject(actual_myplayer_id); if (feild=="file") return loaded_file; else { try {return flashMovie.GetVariable(feild);} catch(err) {} } } //----------------------- function get_flash_filename() { return jwplayer.getConfig().file; } //----------------------- var has_to_change_to_rtmp_file = ""; listener_retries=0; playlist_retries=0; listener_number=0; function restart_playlist(playlist) { filename=GetDataToFlashMovie("streamer"); if (filename.replace('rtmp://','')!=filename) return true; filename=GetDataToFlashMovie("file"); if (filename!=playlist) { insert_comment(' -!- NOT READY / PLAYLIST FILE = '+filename+' != '+playlist+''); setTimeout("restart_playlist('"+playlist+"')",300); } else { if (playlist.replace("playlist_prog",'')!=playlist) { if ( (playlist.replace("playlist_progevts",'')!=playlist) || // special pour evènements (playlist.replace("playlist_progpubs",'')!=playlist) || // special pour pubs (playlist.replace("playlist_progrondedp",'')!=playlist) // special pour pubs ) { jwplayer.sendEvent('repeat','always'); SendDataToFlashMovie('repeat','always'); } else { jwplayer.sendEvent('repeat','list'); SendDataToFlashMovie('repeat','list'); } } else { jwplayer.sendEvent('repeat','none'); SendDataToFlashMovie('repeat','none'); } currentItem = -1; // reload playlist playlist_retries=0; getPlaylistData(); // s'assurer des titres !! // refresh_titres_summary(playlist_array[currentItem]['title'],playlist_array[currentItem+1]['title'],playlist_array[currentItem]['summary']); jwplayer.sendEvent('PLAY'); // flashMovie.Play(); // enable error handler enable_stopstart_detection=true; jwplayer.sendEvent('VOLUME', currentVolume); insert_comment(' -!- PLAYLIST FILE = '+GetDataToFlashMovie("file")+''); } } function change_playlist_file(playlist) { if (tmr_playlist!=null) clearTimeout(tmr_playlist); insert_comment('-!- JUST RELOADING PLAYLIST= '+playlist+''); // disable error handler enable_stopstart_detection=false; jwplayer.sendEvent('STOP'); fluxHasStarted = false; jwplayer.sendEvent('LOAD', playlist); loaded_file=playlist; setTimeout("restart_playlist('"+playlist+"')",300); } function ini_set_jwplayer() { nbr=0;yes=false; if (jwplayer != null) delete(jwplayer); if (iniplayerTMR!=null) clearTimeout(iniplayerTMR); if (buffering_timeout!=null) {clearTimeout(buffering_timeout);buffering_timeout=null;} // deadman timer : buffering timeout //alert(document.embeds.length); for (i=0;i<((document.embeds.length) && (!yes));i++) if ((document.embeds[i])&&(document.embeds[i].id==actual_myplayer_id)) { jwplayer = document.embeds[i]; nbr=i; yes=(yes || true); } if ((!yes)&&(document.getElementById(actual_myplayer_id))) { jwplayer = document.getElementById(actual_myplayer_id); yes=true; } okyee=yes; try {jwplayer.addModelListener("ERROR", "errorListener");} catch(err) {okyee=false;if (trynbr>200) insert_comment('ERROR init addModelListener on player '+actual_myplayer_id);} try {jwplayer.addModelListener("STATE", "stateListener");} catch(err) {okyee=false;if (trynbr>200) insert_comment('ERROR init stateListener on player '+actual_myplayer_id);} if (okyee) { // try to detect start insert_comment('------------------------------------------------------------------------
'+ test_txt+ '------------------------------------------------------------------------'); laconfig=jwplayer.getConfig(); for (var nm in laconfig ) insert_comment(nm+" : "+laconfig[nm]); insert_comment('------------------------------------------------------------------------

'); //------------------------------------------------------------------------ playlist_retries=0; getPlaylistData(); if (has_to_change_to_rtmp_file!="") change_to_rtmp_streamer(has_to_change_to_rtmp_file); else { insert_comment('---------- VERSION 17-3'); listener_retries=0; listener_number=0; addListeners(); insert_comment('player initialized OK line 1321'); tick_refresh_onair_titres(); // mets le titre insert_comment('ini ticking line 1295'); //---------------- streamer=GetDataToFlashMovie("streamer")+""; insert_comment("streamer="+streamer+" line 1326"); insert_comment("controll bar="+GetDataToFlashMovie("controlbar")+" line 1327"); insert_comment("file="+GetDataToFlashMovie("file")+" line 1440"); //---------------- fluxHasStarted = false; if (streamer.replace("rtmp://","")!=streamer) { insert_comment("-----------------------------------check start in 12 seconds"); ekst_tktmr=null; ekst_tktmr=setTimeout('echo_state()',12000); // check state } } //------------------------------------------------------------------------ } else { trynbr++; if (trynbr<200) iniplayerTMR=setTimeout("ini_set_jwplayer()",100); else { insert_comment('-PLAYER ERROR-----------------------------------------------------------------------
'+ test_txt+ '------------------------------------------------------------------------'); try { laconfig=jwplayer.getConfig(); for (var nm in laconfig ) insert_comment(nm+" : "+laconfig[nm]); insert_comment('------------------------------------------------------------------------

'); } catch(err) {insert_comment('------------------------------------------------------------------------
');} if (yes) insert_comment('player detected but not ready'); else insert_comment('player not detected'); permanent_error=true; // force reload page on next action ! trynbr=0; // if (yes) getPlaylistData(); } } } function insert_comment(txt) { if (document.getElementById("testdiv")) { s=document.getElementById("testdiv"); if (s.style.display=="none") s.innerHTML=" "; s.innerHTML=s.innerHTML+txt+'
'; } } function stop_player() { if (jwplayer) { enable_stopstart_detection=false; try {jwplayer.sendEvent('STOP');} catch(err) {} } } function ronde_de_pub_proc() { // envoyer des pub pendant 5 minutes et réessayer insert_comment('-!- play liste vide : envoyer des pubs et réessayer dans 6 minutes si pas déja timer'); if (buffering_timeout!=null) {clearTimeout(buffering_timeout);buffering_timeout=null;} // deadman timer : buffering timeout laconfig=jwplayer.getConfig(); testfile=laconfig.file; test_streamer=laconfig.streamer; if (test_streamer.replace("rtmp://",'')!=test_streamer) { // reload player - it will get back to stream 30s later enable_stopstart_detection=false; jwplayer.sendEvent('STOP'); insert_comment("RELOADING PLAYER WITH PUBS : "+last_flashcommand); webtv_stream_flash(div_affichage,'playlist_progrondedp.php?wtv='+WEBTV_id+'',laconfig.width,laconfig.height,'stylish',false,true,''); //playercount++; //actual_myplayer_id="webtvjwplayer"+playercount+""; //eval(last_flashcommand); } else { // just change playlist change_playlist_file('playlist_progrondedp.php?wtv='+WEBTV_id+''); } if (reload_playlist_tmr==null) { reload_tpcom='playlist_programme.php?wtv='+WEBTV_id+"&"+"link=1"; if (reload_playlist_tmr!=null) reload_playlist_tmr=null; reload_playlist_tmr=setTimeout("change_playlist_file('"+reload_tpcom+"')",300000); // 5 minutes retry } } function errorListener(obj) { if (obj.message!="") { //ERROR : No valid filetypes found in this playlist //ERROR : Video not found insert_comment('ERROR : '+obj.message+''); } else insert_comment('ERROR : UNKNOWN'); fluxHasStarted=false; errorencountered = true; if (streamer.replace("rtmp://","")!=streamer) { echo_state(); // go to retries handler } else if ( (obj.message.replace('No valid filetypes found','')!=obj.message)&& (last_flashcommand.replace('playlist_programme','')!=last_flashcommand) ) { // playlist vide ronde_de_pub_proc(); } } function loadedListener(obj) { insert_comment("loadedListener > loaded:"+obj.loaded+" total:"+obj.total+" offset:"+obj.offset+""); } function stateListener(obj) { //IDLE, BUFFERING, PLAYING, PAUSED, COMPLETED currentState = obj.newstate; previousState = obj.oldstate; insert_comment("current state: " + currentState + " - previous state: " + previousState); if (buffering_timeout!=null) {clearTimeout(buffering_timeout);buffering_timeout=null;} // deadman timer : buffering timeout if ((currentState == "BUFFERING") && (loaded_file.replace('rtmp_','')!=loaded_file)) { buffering_timeout=setTimeout("ronde_de_pub_proc()",12000); } if ( (currentState == "PLAYING")//&&(previousState == "BUFFERING") ) { fluxHasStarted = true; if (ekst_tktmr!=null) clearTimeout(ekst_tktmr); if (document.getElementById('error_div')) { document.getElementById('error_div').style.display="none"; document.getElementById(div_affichage).style.visibility="visible"; } } if ((currentState == "IDLE")&&(previousState == "BUFFERING")) { // check if flux direct or not insert_comment('STATE : have to check filename : '+playlist_array[currentItem]['file']); } if ((currentState == "PAUSED")&&(previousState == "BUFFERING")) { // check if flux direct or not insert_comment('SEND COMMAND PLAY'); jwplayer.sendEvent('PLAY'); } if ((currentState == "COMPLETED")&&(previousState == "PLAYING")) { tick_refresh_onair_titres(); insert_comment('stateListener - tickink'); insert_comment('playlist_array='+(playlist_array ? "yes" : "no")+" currentitem="+currentItem+" pl_length="+playlist_array.length+""); if (playlist_array) { if ((playlist_array.length-1==currentItem) || (currentItem==-1)) { filename=GetDataToFlashMovie("file"); if ( (filename.replace("playlist_programme",'')!=filename) || (filename.replace("playlist_progpubs",'')!=filename) || ((filename.replace("playlist_progrondedp.php",'')!=filename)&&(currentItem==-1)) ) { // reload playlist to have next file // clear all timers last_flashcommand=last_flashcommand.replace('item',0); insert_comment('END OF PLAYLIST => change_playlist_file : playlist_programme.php?wtv='+WEBTV_id+'&link=1 at line 1448'); insert_comment('reload_playlist_tmr = |'+reload_playlist_tmr+'| line 1531'); change_playlist_file('playlist_programme.php?wtv='+WEBTV_id+'&link=1'); } if ((filename.replace("playlist_progrondedp.php",'')!=filename) && (currentItem!=-1)) { insert_comment('END OF PLAYLIST => reload : playlist_progrondedp.php?wtv='+WEBTV_id+' at line 1448'); insert_comment('reload_playlist_tmr = |'+reload_playlist_tmr+'| line 1531'); change_playlist_file('playlist_progrondedp.php?wtv='+WEBTV_id+''); //enable_stopstart_detection=false; jwplayer.sendEvent('ITEM',0); //jwplayer.sendEvent('PLAY'); //enable_stopstart_detection=true; } } } else insert_comment('ERROR : NO PLAYLIST !'); } } function itemMonitor(obj) { if(currentItem != obj.index) { old_item=currentItem; currentItem = obj.index; tick_refresh_onair_titres(); insert_comment('itemMonitor - tickink item='+currentItem); // check if change_item_command exists // si oui, execute try {eval(change_item_command);} catch(err) {} if (!playlist_array[currentItem]) {insert_comment('playlist not ready');} else { insert_comment('----------------------
titre='+playlist_array[currentItem]['title']+'
file='+playlist_array[currentItem]['file']+' on line 1593
'); // reset resumé if (document.getElementById("on_play_resume")) document.getElementById("on_play_resume").innerHTML=" "; ye_streamer=GetDataToFlashMovie("streamer"); is_rtmp_streamer=(ye_streamer.replace('rtmp://','')!=ye_streamer) ? true : false; ye_file=playlist_array[currentItem]['file']; is_rtmp_file=(ye_file.replace('rtmp_','')!=ye_file) ? true : false; if ((!is_rtmp_streamer)&&(is_rtmp_file)) { change_to_rtmp_streamer(ye_file); } //---------- ca n'arrivera jamais : en streaming, pas de playliste !! mixées http/rtmp ----------- if ((is_rtmp_streamer)&&(!is_rtmp_file)) { insert_comment('!!!! swicthing streamer to http'); insert_comment(last_flashcommand); //last_flashcommand=last_flashcommand.replace('rtmp://94.23.16.194/oflaDemo','http://94.23.16.194/flvprovider.php'); last_flashcommand=last_flashcommand.replace('streamer','true'); last_flashcommand=last_flashcommand.replace('item',currentItem); insert_comment(last_flashcommand); playercount++; actual_myplayer_id="webtvjwplayer"+playercount+""; document.getElementById(player_zone).innerHTML=" 
 "; eval(last_flashcommand); //ini_set_jwplayer(); } //------------------------------------------------------------------- // check if has to change // rtmp is there ? insert_comment('-------------------REFRESHIN TITLES---'); refresh_titres_summary(playlist_array[currentItem]['title'],playlist_array[currentItem+1]['title'],playlist_array[currentItem]['summary']); // envoyer ajax pour récupérer "résumé" titre et next anyway !! passeque sakapamaché autrement ! tmp=playlist_array[currentItem]['author']; //Récup '- vid'N° (id_videoTV) if (tmp.indexOf('- vId')>0) { change_file_id=tmp.substr(tmp.indexOf('- vId'),tmp.length); change_file_id=change_file_id.replace('- vId',''); tv_ajax_data_eval("id_videoTV="+change_file_id,"../webtv/scripts/ajax_get_playresume.php"); } } } }; function viewcheck(obj) { if (enable_stopstart_detection==true) { insert_comment('FORBIDDEN NEXT, PREV, SEEK, PLAY ou STOP detected !!'); // reload page ou reload reader last_flashcommand=last_flashcommand.replace('item',0); insert_comment('reloading player : '+last_flashcommand+' VIEWCHECK line 2811'); eval(last_flashcommand); } else insert_comment('ALLOWED NEXT, PREV, SEEK, PLAY ou STOP detected !!'); } var muteState=false; function volumeListener(obj) { currentVolume = obj.percentage; try {if (currentVolume*1!=currentVolume) currentVolume=0;} catch(err) {currentVolume=0;} if (currentVolume==0) muteState=true; else muteState=false; show_volume(Math.floor(currentVolume/10)); } function muteListener(obj) { if (muteState==false) {muteState=true;currentVolume=0;} else muteState=false; // change_volume(Math.floor(currentVolume/10)); show_volume(Math.floor(currentVolume/10)); } function addListeners() { if (tmr_addlisteners!=null) clearTimeout(tmr_addlisteners); listener_number=2; // already done try {jwplayer.addControllerListener("ERROR", "errorListener");listener_number++;} catch(err) {} try {jwplayer.addControllerListener('ITEM', 'itemMonitor');listener_number++;} catch(err) {} try { jwplayer.addControllerListener("VOLUME", "volumeListener");listener_number++;} catch(err) {} try { jwplayer.addControllerListener("MUTE","muteListener");listener_number++;} catch(err) {} try { if (GetDataToFlashMovie("controlbar")=="none") { jwplayer.addViewListener('NEXT','viewcheck'); jwplayer.addViewListener('PREV','viewcheck'); jwplayer.addViewListener('SEEK','viewcheck'); jwplayer.addViewListener('PLAY','viewcheck'); // jwplayer.addViewListener('STOP','viewcheck'); } listener_number=listener_number+4; } catch(err) {} if ((listener_number<10)&&(listener_retries++<30)) { insert_comment('!!! JWPLAYER addModelListener NOT OK : retry adding listeners ('+listener_number+') retrynbr='+listener_retries+''); tmr_addlisteners=setTimeout("addListeners()",100+(listener_retries*20)); } else { if (listener_number==10) jwplayer.sendEvent('VOLUME', 80); } } function remove_listeners() { try { delete(jwplayer); } catch(err) {} } function change_to_rtmp_streamer(ye_file) { if (reload_playlist_tmr!=null) clearTimeout(reload_playlist_tmr); insert_comment('!!!! swicthing streamer to rtmp'); insert_comment("actual player is "+actual_myplayer_id); insert_comment('last_command='+last_flashcommand); return_flashcommand=last_flashcommand.replace("item","0"); // toujours laisser à 0 !! because remis à jour lors de construction playliste insert_comment('return_command='+return_flashcommand); playercount=(playercount*1)+1; // pas obligatoire, ca marche quand meme si pas actual_myplayer_id="webtvjwplayer"+playercount+""; insert_comment("next player is "+actual_myplayer_id+""); // clear zone //document.getElementById(player_zone).innerHTML=" 
 "; tmp=playlist_array[currentItem]['author']; // N° de programmation contenue dans author : '- gId'+N° if (tmp.indexOf('- gId')>0) { change_file_id=tmp.substr(tmp.indexOf('- gId'),tmp.length); change_file_id=change_file_id.replace('- gId',''); insert_comment("N° prog is "+change_file_id+""); // envoyer ajax pour récupérer un timer pour la fin et le prog à suivre !! + le titre à mettre // settimeout(return_flashcommand,time???) // = rebasculer sur la play liste normale tv_ajax_data_eval("gId="+change_file_id+"&progcount="+playlist_array.length+"","../webtv/scripts/gimme_vprogduration.php"); } has_to_change_to_rtmp_file=""; // reset has to change webtv_stream_flash(div_affichage,ye_file,real_width,real_height,'stylish',true); insert_comment("command executed = webtv_stream_flash('"+div_affichage+"','"+ye_file+"',"+real_width+","+real_height+",'stylish',true); at line 1776"); } function getPlaylistData() { var plst = null; var spt_file = null; var nxttitre=-1; if (tmr_playlist!=null) clearTimeout(tmr_playlist); //if (currentItem<0) currentItem=0; tval=true; ye_streamer=""; try { plst = jwplayer.getPlaylist(); ye_streamer=GetDataToFlashMovie("streamer"); is_rtmp_streamer=(ye_streamer.replace('rtmp://','')!=ye_streamer) ? true : false; spt_file=GetDataToFlashMovie("file"); } catch(err) {} if ((plst!=null)&&(spt_file!=null)) { if (playlist_array.length>0) for(var n in playlist_array) delete(playlist_array[n]); for(var itm in plst) { playlist_array[itm]=new Array(); playlist_array[itm]['title']=plst[itm].title; playlist_array[itm]['author']=plst[itm].author; playlist_array[itm]['file']=plst[itm].file; playlist_array[itm]['summary']=plst[itm].summary; playlist_array[itm]['number']=itm; if (itm==currentItem) { refresh_titres_summary((playlist_array[itm]['title'] ? playlist_array[itm]['title'] : false),false,(playlist_array[itm]['summary'] ? playlist_array[itm]['summary'] : false)); insert_comment('actual file is : '+playlist_array[itm]['file']+' item='+currentItem+' on line 2102'); // check if have to change ye_file=playlist_array[currentItem]['file']; is_rtmp_file=(ye_file.replace('rtmp_','')!=ye_file) ? true : false; if ((!is_rtmp_streamer)&&(is_rtmp_file)) { insert_comment('IMMEDIATE change to live-stream REASON : streamer='+ye_streamer+' AND file='+ye_file+''); has_to_change_to_rtmp_file=ye_file; // do it immediate !! change_to_rtmp_streamer(ye_file); } else insert_comment('dont have to change to live-stream'); } if (itm==currentItem+1) { nxttitre=itm; if (spt_file.replace('playlist_prog','')==spt_file) { if ( document.getElementById("nxton_air_titre") && (playlist_array[nxttitre]) && (playlist_array[nxttitre]['title']) ) { insert_comment("--- Changing NEXT TITRE line 1904 : "+playlist_array[nxttitre]['title']); document.getElementById("nxton_air_titre").innerHTML=playlist_array[nxttitre]['title']; } else if (document.getElementById("nxton_air_titre")) document.getElementById("nxton_air_titre").innerHTML=" "; } } } if (playlist_array.length==0) { // go to ronde de pub ronde_de_pub_proc(); } } else { insert_comment("---retrying getPlaylistData"); playlist_retries++; if (playlist_retries<60) tmr_playlist=setTimeout("getPlaylistData()",300); else { // have to reload page window.location.reload(); } } } function show_volume(n) { try {if (n*1!=n) n=0;} catch(err) {n=0;} if (jwplayer) { try { i=n; if (n==0) {document.getElementById('imgsound0').src='images/hp_off.gif';} else { document.getElementById('imgsound0').src='images/hp_on.gif'; for (i=1;i<=n;i++) document.getElementById('imgsound'+i).style.backgroundColor='#CCCCCC'; } while (i<10) {document.getElementById('imgsound'+i).style.backgroundColor='#333333';i++;} } catch(err) {} } } function change_volume(n) { if (jwplayer) { try { jwplayer.sendEvent('VOLUME', n*10); } catch(err) {} } } //------------------- fin flash API ------------------------