"use strict"; // ==UserScript== // @name 斗鱼骆歆直播间插件 // @namespace https://github.com/qianjiachun // @icon https://s2.ax1x.com/2020/01/12/loQI3V.png // @version 2020.01.26.01 // @description 弹幕自动变色防检测循环发送 一键续牌 查看真实人数/查看主播数据 已播时长 一键签到(直播间/车队/鱼吧/客户端) 一键领取鱼粮(宝箱/气泡/任务) 一键寻宝 送出指定数量的礼物 屏蔽广告 调节弹幕大小 自动更新 同屏画中画/多直播间小窗观看/可在斗鱼看多个平台直播(b站虎牙) 获取真实直播流地址 // @author 小淳 // @match *://*.douyu.com/0* // @match *://*.douyu.com/1* // @match *://*.douyu.com/2* // @match *://*.douyu.com/3* // @match *://*.douyu.com/4* // @match *://*.douyu.com/5* // @match *://*.douyu.com/6* // @match *://*.douyu.com/7* // @match *://*.douyu.com/8* // @match *://*.douyu.com/9* // @match *://*.douyu.com/topic/* // @match *://msg.douyu.com/* // @require https://cdn.bootcss.com/flv.js/1.5.0/flv.min.js // @grant GM_openInTab // @grant GM_xmlhttpRequest // @grant GM_setClipboard // @downloadURL none // ==/UserScript== function initPkg(){initPkg_ExIcon();initPkg_ExPanel();initPkg_RemoveAD();initPkg_RealAudience();initPkg_Update();initPkg_PopupPlayer();initPkg_ExpandTool();initPkg_BarrageLoop();initPkg_FansContinue();initPkg_FishFood();initPkg_FishPond();initPkg_Sign();} function initPkg_Timer(){initPkg_FishPond_Timer();} function initTimer(){initPkg_Timer();exTimer=setInterval(initPkg_Timer,20000);} function initStyles(){let style=document.createElement("style");style.appendChild(document.createTextNode(` .bloop { background-color: rgba(255,255,255,0.9); width: 100%; height: 200px; position: relative; bottom: 200px; display: none; } .bloop__switch { position: absolute; right: 0; bottom: 0; } .ex-icon { display: inline-block; vertical-align: middle; margin-right: 8px; } .extool { background-color: rgba(255,255,255,0.9); width: 100%; height: 200px; position: relative; bottom: 200px; display: none; } .extool__switch { position: absolute; right: 0; bottom: 0; } .extool__bsize,.extool__sendgift { margin-bottom: 5px; } .ex-panel { width: 500px; height: 50px; position: absolute; bottom: 35px; right: 75px; background-color: rgba(255,255,255,0.9); display: none; border: 2px rgb(234,173,26) solid; } .ex-panel__wrap { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; } .ex-panel__icon { margin: 0 10px; display: block; position: relative; padding: 5px; } .ex-panel__tip { display:none; background:#f00; border-radius:50%; width:8px; height:8px; top:0px; right:0px; position:absolute; } .videoDiv { width: 400px; height: 200px; background-color: rgba(255, 255, 255, 0); position: absolute; z-index: 7777; } .videoPlayer { width: 100%; height: 100%; cursor: move; } .videoScale { width: 10px; height: 10px; overflow: hidden; cursor: se-resize; position: absolute; right: 0; bottom: 0; background-color: rgb(231, 57, 57); } .videoInfo { width: 100%; height: 30px; background-color: gray; position: absolute; top: -30px; line-height: 30px; } .videoClose { width: 30px; float: right; color: white; } .videoQn, .videoCDN { margin-left: 5px; } .videoRID { margin: 0px 5px; font-weight: 800; font-size: medium; } .real-audience { cursor: pointer; } /* Notice.css */ .noticejs-top{top:0;width:100%!important}.noticejs-top .item{border-radius:0!important;margin:0!important}.noticejs-topRight{top:10px;right:10px}.noticejs-topLeft{top:10px;left:10px}.noticejs-topCenter{top:10px;left:50%;transform:translate(-50%)}.noticejs-middleLeft,.noticejs-middleRight{right:10px;top:50%;transform:translateY(-50%)}.noticejs-middleLeft{left:10px}.noticejs-middleCenter{top:50%;left:50%;transform:translate(-50%,-50%)}.noticejs-bottom{bottom:0;width:100%!important}.noticejs-bottom .item{border-radius:0!important;margin:0!important}.noticejs-bottomRight{bottom:10px;right:10px}.noticejs-bottomLeft{bottom:10px;left:10px}.noticejs-bottomCenter{bottom:10px;left:50%;transform:translate(-50%)}.noticejs{font-family:Helvetica Neue,Helvetica,Arial,sans-serif}.noticejs .item{margin:0 0 10px;border-radius:3px;overflow:hidden}.noticejs .item .close{float:right;font-size:18px;font-weight:700;line-height:1;color:#fff;text-shadow:0 1px 0 #fff;opacity:1;margin-right:7px}.noticejs .item .close:hover{opacity:.5;color:#000}.noticejs .item a{color:#fff;border-bottom:1px dashed #fff}.noticejs .item a,.noticejs .item a:hover{text-decoration:none}.noticejs .success{background-color:#64ce83}.noticejs .success .noticejs-heading{background-color:#3da95c;color:#fff;padding:10px}.noticejs .success .noticejs-body{color:#fff;padding:10px}.noticejs .success .noticejs-body:hover{visibility:visible!important}.noticejs .success .noticejs-content{visibility:visible}.noticejs .info{background-color:#3ea2ff}.noticejs .info .noticejs-heading{background-color:#067cea;color:#fff;padding:10px}.noticejs .info .noticejs-body{color:#fff;padding:10px}.noticejs .info .noticejs-body:hover{visibility:visible!important}.noticejs .info .noticejs-content{visibility:visible}.noticejs .warning{background-color:#ff7f48}.noticejs .warning .noticejs-heading{background-color:#f44e06;color:#fff;padding:10px}.noticejs .warning .noticejs-body{color:#fff;padding:10px}.noticejs .warning .noticejs-body:hover{visibility:visible!important}.noticejs .warning .noticejs-content{visibility:visible}.noticejs .error{background-color:#e74c3c}.noticejs .error .noticejs-heading{background-color:#ba2c1d;color:#fff;padding:10px}.noticejs .error .noticejs-body{color:#fff;padding:10px}.noticejs .error .noticejs-body:hover{visibility:visible!important}.noticejs .error .noticejs-content{visibility:visible}.noticejs .progressbar{width:100%}.noticejs .progressbar .bar{width:1%;height:30px;background-color:#4caf50}.noticejs .success .noticejs-progressbar{width:100%;background-color:#64ce83;margin-top:-1px}.noticejs .success .noticejs-progressbar .noticejs-bar{width:100%;height:5px;background:#3da95c}.noticejs .info .noticejs-progressbar{width:100%;background-color:#3ea2ff;margin-top:-1px}.noticejs .info .noticejs-progressbar .noticejs-bar{width:100%;height:5px;background:#067cea}.noticejs .warning .noticejs-progressbar{width:100%;background-color:#ff7f48;margin-top:-1px}.noticejs .warning .noticejs-progressbar .noticejs-bar{width:100%;height:5px;background:#f44e06}.noticejs .error .noticejs-progressbar{width:100%;background-color:#e74c3c;margin-top:-1px}.noticejs .error .noticejs-progressbar .noticejs-bar{width:100%;height:5px;background:#ba2c1d}@keyframes noticejs-fadeOut{0%{opacity:1}to{opacity:0}}.noticejs-fadeOut{animation-name:noticejs-fadeOut}@keyframes noticejs-modal-in{to{opacity:.3}}@keyframes noticejs-modal-out{to{opacity:0}}.noticejs-rtl .noticejs-heading{direction:rtl}.noticejs-rtl .close{float:left!important;margin-left:7px;margin-right:0!important}.noticejs-rtl .noticejs-content{direction:rtl}.noticejs{position:fixed;z-index:10050;width:320px}.noticejs ::-webkit-scrollbar{width:8px}.noticejs ::-webkit-scrollbar-button{width:8px;height:5px}.noticejs ::-webkit-scrollbar-track{border-radius:10px}.noticejs ::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.5);border-radius:10px}.noticejs ::-webkit-scrollbar-thumb:hover{background:#fff}.noticejs-modal{position:fixed;width:100%;height:100%;background-color:#000;z-index:10000;opacity:.3;left:0;top:0}.noticejs-modal-open{opacity:0;animation:noticejs-modal-in .3s ease-out}.noticejs-modal-close{animation:noticejs-modal-out .3s ease-out;animation-fill-mode:forwards} `));document.head.appendChild(style);} (function(){if(window.location.host=="msg.douyu.com"){if(getQueryString("exid")=="chun"){signMotorcade_Sign(getQueryString("mid"),getQueryString("total"));}}else{let intID=setInterval(()=>{if(typeof(document.getElementsByClassName("ChatToolBar")[0])!="undefined"){setTimeout(()=>{initStyles();initPkg();initTimer();},1000) clearInterval(intID);}},1000);}})() var exTimer=0;var url=document.getElementsByTagName('html')[0].innerHTML;var urlLen=("$ROOM.room_id =").length;var ridPos=url.indexOf('$ROOM.room_id =');var rid=url.substring(ridPos+urlLen,url.indexOf(';',ridPos+urlLen));rid=rid.trim();var dyToken=getToken();function showExPanel(){let a=document.getElementsByClassName("ex-panel")[0];if(a.style.display!="block"){a.style.display="block";}else{a.style.display="none";}} function sleep(time){return new Promise((resolve)=>setTimeout(resolve,time));} function formatSeconds(value){let secondTime=parseInt(value);let minuteTime=0;let hourTime=0;if(secondTime>60){minuteTime=parseInt(secondTime/60);secondTime=parseInt(secondTime%60);if(minuteTime>60){hourTime=parseInt(minuteTime/60);minuteTime=parseInt(minuteTime%60);}} var result=""+parseInt(secondTime)+"秒";if(minuteTime>0){result=""+parseInt(minuteTime)+"分"+result;} if(hourTime>0){result=""+parseInt(hourTime)+"小时"+result;} return result;} function getStrMiddle(str,before,after){let m=str.match(new RegExp(before+'(.*?)'+after));return m?m[1]:false;} function getToken(){let cookie=document.cookie;let ret=getStrMiddle(cookie,"acf_uid=",";")+"_"+getStrMiddle(cookie,"acf_biz=",";")+"_"+getStrMiddle(cookie,"acf_stk=",";")+"_"+getStrMiddle(cookie,"acf_ct=",";")+"_"+getStrMiddle(cookie,"acf_ltkid=",";");return ret;} function getDyDid(){let cookie=document.cookie;let ret=getStrMiddle(cookie,"dy_did=",";");return ret;} function showMessage(msg,type){new NoticeJs({text:msg,type:type,position:'bottomRight',}).show();} function openPage(url,b){GM_openInTab(url,{active:b});} function closePage(){if(navigator.userAgent.indexOf("Firefox")!=-1||navigator.userAgent.indexOf("Chrome")!=-1){window.location.href="about:blank";window.close();}else{window.opener=null;window.open("","_self");window.close();}} function getQueryString(name){let reg=new RegExp("(^|&)"+name+"=([^&]*)(&|$)","i");if(window.location.hash.indexOf("?")<0){return null;} let r=window.location.hash.split("?")[1].match(reg);if(r!=null)return decodeURIComponent(r[2]);return null;} function dateFormat(fmt,date){var o={"M+":date.getMonth()+1,"d+":date.getDate(),"h+":date.getHours(),"m+":date.getMinutes(),"s+":date.getSeconds(),"q+":Math.floor((date.getMonth()+3)/3),"S":date.getMilliseconds()};if(/(y+)/.test(fmt)) fmt=fmt.replace(RegExp.$1,(date.getFullYear()+"").substr(4-RegExp.$1.length));for(var k in o) if(new RegExp("("+k+")").test(fmt)) fmt=fmt.replace(RegExp.$1,(RegExp.$1.length==1)?(o[k]):(("00"+o[k]).substr((""+o[k]).length)));return fmt;} function getRandom(min,max){return Math.floor(Math.random()*(max-min)+min);} function isRid(str){if(/^[0-9]+$/.test(str)){return true;}else{return false;}} let barrageColorArr=[];let barrageArr=[];let barrageColorLength=0;let barrageLength=0;let bloopTimer;let barrageOffset=0;let barrageColorOffset=0;let isChangeColor=true;let isMatch=false;let bloopStopTimer;function initPkg_BarrageLoop(){initPkg_BarrageLoop_Dom();initPkg_BarrageLoop_Func();initPkg_BarrageLoop_Set();} function BarrageLoop_insertModal(){let html="";let a=document.createElement("div");a.className="bloop";html+='
';html+='';html+='
~
';html+='
';html+='
';html+='
';a.innerHTML=html;let b=document.getElementsByClassName("layout-Player-chat")[0];b.insertBefore(a,b.childNodes[0]);} function BarrageLoop_insertIcon(){let a=document.createElement("div");a.className="bloop-icon";a.innerHTML='';let b=document.getElementsByClassName("ex-panel__wrap")[0];b.insertBefore(a,b.childNodes[0]);} function getBarrageColorArr(){barrageColorArr.length=0;barrageColorLength=0;let a=document.getElementsByClassName("FansBarrageColor-item");if(a.length==0){isMatch=true;let b=document.getElementsByClassName("MatchSystemFansBarrageSwitcher")[0];if(b!=undefined){b.click();a=document.getElementsByClassName("MatchSystemFansBarrageColor-item");}else{isMatch=false;}}else{isMatch=false;} for(let i=0;ibarrageColorLength){barrageColorOffset=0;}} sendBarrage(barrageArr[barrageOffset]);barrageOffset++;if(barrageOffset>barrageLength){barrageOffset=0;} bloopTimer=setTimeout(doLoopBarrage,getSpeed());} function initPkg_BarrageLoop_Func(){document.getElementsByClassName("bloop-icon")[0].addEventListener("click",function(){let a=document.getElementsByClassName("bloop")[0];if(a.style.display!="block"){a.style.display="block";if(document.getElementsByClassName("extool")[0].style.display=="block"){document.getElementsByClassName("extool")[0].style.display="none";}}else{a.style.display="none";}});document.getElementById("bloop__checkbox_changeColor").addEventListener("click",function(){isChangeColor=document.getElementById("bloop__checkbox_changeColor").checked;});document.getElementById("bloop__checkbox_startSend").addEventListener("click",function(){let ischecked=document.getElementById("bloop__checkbox_startSend").checked;if(ischecked==true){barrageOffset=0;barrageColorOffset=0;getBarrageArr();getBarrageColorArr();saveData_BarrageLoop();bloopTimer=setTimeout(doLoopBarrage,getSpeed());bloopStopTimer=setTimeout(()=>{document.getElementById("bloop__checkbox_startSend").checked=false;clearTimeout(bloopTimer);},getStopTime());}else{clearTimeout(bloopTimer);clearTimeout(bloopStopTimer);}});} function initPkg_BarrageLoop_Dom(){BarrageLoop_insertModal();BarrageLoop_insertIcon();} function initPkg_BarrageLoop_Set(){let ret=localStorage.getItem("ExSave_BarrageLoop");if(ret!=null){let retJson=JSON.parse(ret);if(retJson.speed1==undefined){retJson.speed1=2000;} if(retJson.speed2==undefined){retJson.speed2=3000;} if(retJson.stopTime==undefined){retJson.stopTime=5;} document.getElementById("bloop__textarea").value=retJson.text;document.getElementById("bloop__checkbox_changeColor").checked=retJson.isChangeColor;document.getElementById("bloop__text_speed1").value=retJson.speed1;document.getElementById("bloop__text_speed2").value=retJson.speed2;document.getElementById("bloop__text_stoptime").value=retJson.stopTime;}} function initPkg_ExIcon(){pkg_ExIcon_insertDom();pkg_ExIcon_initFunc();} function pkg_ExIcon_insertDom(){let a=document.createElement("div");a.className="ex-icon";a.innerHTML='';let b=document.getElementsByClassName("PlayerToolbar-Wealth")[0];b.insertBefore(a,b.childNodes[0]);} function pkg_ExIcon_initFunc(){document.getElementsByClassName("ex-icon")[0].addEventListener("click",showExPanel);} function ExIcon_showTip(a){let d=document.getElementById("ex-icon__tip");if(a==true){d.style.display="block";}else{d.style.display="none";}} function initPkg_ExpandTool(){initPkg_ExpandTool_Dom();initPkg_ExpandTool_Func();initPkg_ExpandTool_SendGift();initPkg_ExpandTool_BarrageSize();} function initPkg_ExpandTool_Dom(){ExpandTool_insertModal();ExpandTool_insertIcon();} function ExpandTool_insertModal(){let a=document.createElement("div");a.className="extool";let b=document.getElementsByClassName("layout-Player-chat")[0];b.insertBefore(a,b.childNodes[0]);} function ExpandTool_insertIcon(){let a=document.createElement("div");a.className="extool-icon";a.innerHTML='';let b=document.getElementsByClassName("ex-panel__wrap")[0];b.insertBefore(a,b.childNodes[0]);} function initPkg_ExpandTool_Func(){document.getElementsByClassName("extool-icon")[0].addEventListener("click",function(){let a=document.getElementsByClassName("extool")[0];if(a.style.display!="block"){a.style.display="block";if(document.getElementsByClassName("bloop")[0].style.display=="block"){document.getElementsByClassName("bloop")[0].style.display="none";}}else{a.style.display="none";}});} var sheetIndex=0;function initPkg_ExpandTool_BarrageSize(){sheetIndex=getAvailableSheet();if(sheetIndex!=-1){document.styleSheets[sheetIndex].addRule(".danmuItem-31f924","");} ExpandTool_BarrageSize_insertDom();ExpandTool_BarrageSize_insertFunc();initPkg_ExpandTool_BarrageSize_Set();setBarrageSize(getBarrageSize());} function ExpandTool_BarrageSize_insertDom(){let a=document.createElement("div");a.className="extool__bsize";a.innerHTML='';let b=document.getElementsByClassName("extool")[0];b.insertBefore(a,b.childNodes[0]);} function setBarrageSize(s){let l=document.styleSheets[sheetIndex].rules.length;document.styleSheets[sheetIndex].removeRule(l-1);document.styleSheets[sheetIndex].addRule(".danmuItem-31f924","font-size:"+s+"px !important;");} function getAvailableSheet(){let ret=-1;for(let i=0;i{if(ret.data!=null){showMessage("【送礼】"+ret.msg+" "+ret.data.gid+"送出"+ret.data.num+"个 贡献值"+ret.data.priceType,"success");}else{showMessage("【送礼】"+ret.msg,"error");}}).catch(err=>{console.log("请求失败!",err);})});} function sendGift_any(gid,count,rid){return fetch("https://www.douyu.com/japi/gift/donate/mainsite/v1",{method:'POST',mode:'no-cors',credentials:'include',headers:{'Content-Type':'application/x-www-form-urlencoded'},body:'giftId='+gid+'&giftCount='+count+'&roomId='+rid+'&bizExt=%7B%22yzxq%22%3A%7B%7D%7D'}).then(res=>{return res.json();})} function initPkg_ExPanel(){pkg_ExPanel_insertDom();} function pkg_ExPanel_insertDom(){let a=document.createElement("div");a.className="ex-panel";a.innerHTML='
';let b=document.getElementsByClassName("PlayerToolbar-Wealth")[0];b.insertBefore(a,b.childNodes[0]);} function initPkg_FansContinue(){initPkg_FansContinue_Dom();initPkg_FansContinue_Func();} function initPkg_FansContinue_Dom(){FansContinue_insertIcon();} function FansContinue_insertIcon(){let a=document.createElement("div");a.className="fans-continue";a.innerHTML='';let b=document.getElementsByClassName("ex-panel__wrap")[0];b.insertBefore(a,b.childNodes[0]);} function initPkg_FansContinue_Func(){document.getElementsByClassName("fans-continue")[0].addEventListener("click",function(){fetch('https://www.douyu.com/member/cp/getFansBadgeList',{method:'GET',mode:'no-cors',cache:'default',credentials:'include',}).then(res=>{return res.text();}).then(async(doc)=>{doc=(new DOMParser()).parseFromString(doc,'text/html');let a=doc.getElementsByClassName("fans-badge-list")[0].lastElementChild;let n=a.children.length;for(let i=0;i{sendGift_bag(268,1,rid).then(data=>{if(data.msg=="success"){showMessage("【续牌】"+rid+"赠送一根荧光棒成功","success");}else{showMessage("【续牌】"+rid+"赠送失败 "+data.msg,"error");console.log(rid,data);}}).catch(err=>{showMessage("【续牌】"+rid+"赠送失败","error");console.log(rid,err);})});}}).catch(err=>{console.log("请求失败!",err);})});} function sendGift_bag(gid,count,rid){return fetch("https://www.douyu.com/japi/prop/donate/mainsite/v1",{method:'POST',mode:'no-cors',credentials:'include',headers:{'Content-Type':'application/x-www-form-urlencoded'},body:'propId='+gid+'&propCount='+count+'&roomId='+rid+'&bizExt=%7B%22yzxq%22%3A%7B%7D%7D'}).then(res=>{return res.json();})} function initPkg_FishFood(){initPkg_FishFood_Dom();initPkg_FishFood_Func();} function initPkg_FishFood_Dom(){FishFood_insertIcon();} function FishFood_insertIcon(){let a=document.createElement("div");a.className="fish-food";a.innerHTML='';let b=document.getElementsByClassName("ex-panel__wrap")[0];b.insertBefore(a,b.childNodes[0]);} function initPkg_FishFood_Func(){document.getElementsByClassName("fish-food")[0].addEventListener("click",function(){fetch("https://www.douyu.com/japi/activepointnc/api/getActivePointInfo",{method:'POST',mode:'no-cors',credentials:'include',headers:{'Content-Type':'application/x-www-form-urlencoded'}}).then(res=>{return res.json();}).then(async(ret)=>{let cnt=Number(ret.data.dailyMaxLotteryTimes)-Number(ret.data.usedLotteryCount);if(cnt==0){showMessage("【寻宝】"+"今日寻宝次数已到达上限","warning");return;} for(let i=0;i{fetch("https://www.douyu.com/japi/activepointnc/api/dolottery",{method:'POST',mode:'no-cors',credentials:'include',headers:{'Content-Type':'application/x-www-form-urlencoded'},body:'rid='+rid}).then(res=>{return res.json();}).then(ret=>{if(ret.data!=null){if(Object.keys(ret.data).length!=0){showMessage("【寻宝】"+ret.data.msg,"success");}}else{showMessage("【寻宝】"+ret.msg,"warning");}}).catch(err=>{console.log("请求失败!",err);})})}})})} function initPkg_FishPond(){initPkg_FishPond_Dom();initPkg_FishPond_Func();} function initPkg_FishPond_Timer(){initPkg_FishPond_Bubble_Timer();initPkg_FishPond_Box_Timer();initPkg_FishPond_Task_Timer();} function initPkg_FishPond_Func(){document.getElementsByClassName("fish-pond")[0].addEventListener("click",function(){initPkg_FishPond_Bubble();initPkg_FishPond_Box();initPkg_FishPond_Task();})} function initPkg_FishPond_Dom(){FishPond_insertIcon();} function FishPond_insertIcon(){let a=document.createElement("div");a.className="fish-pond";a.innerHTML='';let b=document.getElementsByClassName("ex-panel__wrap")[0];b.insertBefore(a,b.childNodes[0]);} function FishPond_showTip(a){let d=document.getElementById("fish-pond__tip");if(a==true){if(d.style.display!="block"){showMessage("【鱼粮】有鱼粮可以领取啦!","info");d.style.display="block";}}else{d.style.display="none";}} var boxList=[];function initPkg_FishPond_Box(){getFishPond_Box();} function initPkg_FishPond_Box_Timer(){getFishPond_BoxList();} function getFishPond_Box(){if(boxList.length==0){showMessage("【鱼塘宝箱】暂无可领取的鱼粮","info");return;} let arr=boxList.concat();for(let i=0;i{return res.json();}).then(ret=>{bubbleList.length=0;for(let i=0;i{console.log("请求失败!",err);})} var taskList=[];function initPkg_FishPond_Task(){getFishPond_Task();} function initPkg_FishPond_Task_Timer(){getFishPond_TaskList();} function getFishPond_Task(){if(taskList.length==0){showMessage("【鱼塘任务】暂无可领取的鱼粮","info");return;} let arr=taskList.concat();for(let i=0;i{return res.json();}).then(ret=>{for(let i=0;i{console.log("请求失败!",err);})} function getFishPond_TaskList_Week(){fetch('https://www.douyu.com/japi/tasksys/ytxb/userStatusV2?cycleType=2&roomId='+rid,{method:'GET',mode:'no-cors',credentials:'include'}).then(res=>{return res.json();}).then(ret=>{for(let i=0;i{console.log("请求失败!",err);})} function getFishPond_TaskList_Ytzb(){fetch('https://www.douyu.com/japi/tasksys/ytxb/userStatusV2?cycleType=25&roomId='+rid,{method:'GET',mode:'no-cors',credentials:'include'}).then(res=>{return res.json();}).then(ret=>{for(let i=0;i{console.log("请求失败!",err);})} let videoPlayerArr=[];function initPkg_PopupPlayer(){initPkg_PopupPlayer_Dom();initPkg_PopupPlayer_Func();} function initPkg_PopupPlayer_Dom(){PopupPlayer_insertIcon();} function PopupPlayer_insertIcon(){let a=document.createElement("div");a.className="popup-player";a.innerHTML='';let b=document.getElementsByClassName("ex-panel__wrap")[0];b.insertBefore(a,b.childNodes[0]);} function initPkg_PopupPlayer_Func(){document.getElementsByClassName("popup-player")[0].addEventListener("click",function(){let roomUrl=prompt("请输入直播间地址","https://www.douyu.com/5189167");if(roomUrl==null){return;} if(roomUrl!=""){if(roomUrl.indexOf("douyu.com")!=-1){getRealRid_Douyu(roomUrl,(rid)=>{createNewVideo(videoPlayerArr.length,rid,"Douyu");});}else if(roomUrl.indexOf("bilibili.com")!=-1){getRealRid_Bilibili(roomUrl,(rid)=>{createNewVideo(videoPlayerArr.length,rid,"Bilibili");});}else if(roomUrl.indexOf("huya.com")!=-1){createNewVideo(videoPlayerArr.length,roomUrl,"Huya");}}else{showMessage("请输入地址","error");}});} function createNewVideo(id,rid,platform){switch(platform){case"Douyu":createNewVideo_Douyu(id,rid);break;case"Bilibili":createNewVideo_Bilibili(id,rid);break;case"Huya":let a=String(rid).split("/");createNewVideo_Huya(id,rid,a[a.length-1]);break;default:createNewVideo_Douyu(id,rid);break;}} function setElementVideo(id,l){if(flvjs.isSupported()){var videoElement=document.getElementById("videoPlayer"+String(id));var flvPlayer=flvjs.createPlayer({type:'flv',url:l},{fixAudioTimestampGap:false});if(id>videoPlayerArr.length-1){videoPlayerArr.push(flvPlayer);}else{videoPlayerArr[id]=flvPlayer;} flvPlayer.attachMediaElement(videoElement);flvPlayer.load();flvPlayer.play();}} function setElementResize(id){let box=document.getElementById("videoDiv"+String(id));let scale=document.getElementById("videoScale"+String(id));scale.onmousedown=function(e){e.stopPropagation();e.preventDefault();let pos={'w':box.offsetWidth,'h':box.offsetHeight,'x':e.clientX,'y':e.clientY};let w;let h;document.onmousemove=function(ev){ev.stopPropagation();ev.preventDefault();w=Math.max(300,ev.clientX-pos.x+pos.w) h=Math.max(150,ev.clientY-pos.y+pos.h) w=w>=document.offsetWidth-box.offsetLeft?document.offsetWidth-box.offsetLeft:w h=h>=document.offsetHeight-box.offsetTop?document.offsetHeight-box.offsetTop:h} document.onmouseup=function(e){e.stopPropagation();e.preventDefault();box.style.width=w+'px';box.style.height=h+'px';document.onmousemove=null;document.onmouseup=null;}}} function setElementDrag(id){let box=document.getElementById("videoDiv"+String(id));box.onmousedown=function(event){event.stopPropagation();let xx=event.clientX-box.offsetLeft;let yy=event.clientY-box.offsetTop;let mouseX;let mouseY;document.onmousemove=function(event){event.stopPropagation();mouseX=event.clientX-xx;mouseY=event.clientY-yy;} document.onmouseup=function(event){event.stopPropagation();box.style.left=mouseX+"px";box.style.top=mouseY+"px";document.onmousemove=null;document.onmouseup=null;}}} function createNewVideo_Douyu(id,rid){getRealLive_Douyu(rid,true,"1","1",(lurl)=>{if(lurl!=""||lurl!=null){let a=document.createElement("div");let html="";a.id="videoDiv"+String(id);a.rid=rid;a.className="videoDiv";html+="
"+"斗鱼 - "+rid+"";html+="";html+="";html+="
X
" html+="
";html+="
";a.innerHTML=html;let b=document.getElementsByClassName("layout-Main")[0];b.insertBefore(a,b.childNodes[0]);setElementDrag(id);setElementResize(id);setElementFunc_Douyu(id,rid);setElementVideo(id,lurl);}});} function setElementFunc_Douyu(id,rid){let box=document.getElementById("videoDiv"+String(id));let videoPlayer=document.getElementById("videoPlayer"+String(id));let info=document.getElementById("videoInfo"+String(id));let scale=document.getElementById("videoScale"+String(id));videoPlayer.onclick=function(e){e.stopPropagation();e.preventDefault();if(scale.style.display!="block"){scale.style.display="block";info.style.display="block";}else{scale.style.display="none";info.style.display="none";} for(let i=0;i{videoPlayerArr[id].destroy();setElementVideo(id,lurl);})} videoCDN.onchange=function(){getRealLive_Douyu(rid,true,videoQn.value,videoCDN.value,(lurl)=>{videoPlayerArr[id].destroy();setElementVideo(id,lurl);})} videoClose.onclick=function(){box.remove();} let videoRID=document.getElementById("videoRID"+String(id));videoRID.onclick=function(){getRealLive_Douyu(rid,false,videoQn.value,videoCDN.value,(lurl)=>{GM_setClipboard(lurl);showMessage("复制成功","success");})}} function createNewVideo_Bilibili(id,rid){getRealLive_Bilibili(rid,"1","1",(lurl)=>{if(lurl!=""||lurl!=null){let a=document.createElement("div");let html="";a.id="videoDiv"+String(id);a.rid=rid;a.className="videoDiv";html+="
"+"Bilibili - "+rid+"";html+="";html+="";html+="
X
" html+="
";html+="
";a.innerHTML=html;let b=document.getElementsByClassName("layout-Main")[0];b.insertBefore(a,b.childNodes[0]);setElementDrag(id);setElementResize(id);setElementFunc_Bilibili(id,rid);setElementVideo(id,lurl);}});} function setElementFunc_Bilibili(id,rid){let box=document.getElementById("videoDiv"+String(id));let videoPlayer=document.getElementById("videoPlayer"+String(id));let info=document.getElementById("videoInfo"+String(id));let scale=document.getElementById("videoScale"+String(id));videoPlayer.onclick=function(e){e.stopPropagation();e.preventDefault();if(scale.style.display!="block"){scale.style.display="block";info.style.display="block";}else{scale.style.display="none";info.style.display="none";} for(let i=0;i{videoPlayerArr[id].destroy();setElementVideo(id,lurl);})} videoCDN.onchange=function(){getRealLive_Bilibili(rid,videoQn.value,videoCDN.value,(lurl)=>{videoPlayerArr[id].destroy();setElementVideo(id,lurl);})} videoClose.onclick=function(){box.remove();} let videoRID=document.getElementById("videoRID"+String(id));videoRID.onclick=function(){getRealLive_Bilibili(rid,videoQn.value,videoCDN.value,(lurl)=>{GM_setClipboard(lurl);showMessage("复制成功","success");})}} function createNewVideo_Huya(id,rid,rname){getRealLive_Huya(rid,"1","1",(lurl,msg)=>{if(lurl!=""||lurl!=null){if(msg!=""){showMessage(msg,"error");return;} let a=document.createElement("div");let html="";a.id="videoDiv"+String(id);a.rid=rid;a.className="videoDiv";html+="
"+"Huya - "+rname+"";html+="";html+="";html+="
X
" html+="
";html+="
";a.innerHTML=html;let b=document.getElementsByClassName("layout-Main")[0];b.insertBefore(a,b.childNodes[0]);setElementDrag(id);setElementResize(id);setElementFunc_Huya(id,rid);setElementVideo(id,lurl);}});} function setElementFunc_Huya(id,rid){let box=document.getElementById("videoDiv"+String(id));let videoPlayer=document.getElementById("videoPlayer"+String(id));let info=document.getElementById("videoInfo"+String(id));let scale=document.getElementById("videoScale"+String(id));videoPlayer.onclick=function(e){e.stopPropagation();e.preventDefault();if(scale.style.display!="block"){scale.style.display="block";info.style.display="block";}else{scale.style.display="none";info.style.display="none";} for(let i=0;i{if(msg!=""){showMessage(msg,"error");return;} videoPlayerArr[id].destroy();setElementVideo(id,lurl);})} videoCDN.onchange=function(){getRealLive_Huya(rid,videoQn.value,videoCDN.value,(lurl,msg)=>{if(msg!=""){showMessage(msg,"error");return;} videoPlayerArr[id].destroy();setElementVideo(id,lurl);})} videoClose.onclick=function(){box.remove();} let videoRID=document.getElementById("videoRID"+String(id));videoRID.onclick=function(){getRealLive_Huya(rid,videoQn.value,videoCDN.value,(lurl,msg)=>{if(msg!=""){showMessage(msg,"error");return;} GM_setClipboard(lurl);showMessage("复制成功","success");})}} let real_viewIcon='' let real_danmuIcon='' let real_money_yc='' let real_info={view:"",showtime:777,danmu_person_count:"",gift_person_count:"",isShow:2,money_yc:0,money_bag:0,money_total:0,} function initPkg_RealAudience(){initPkg_RealAudience_Dom();initPkg_RealAudience_Func();fetch("https://www.douyu.com/swf_api/h5room/"+rid,{method:'GET',mode:'no-cors',credentials:'include'}).then(res=>{return res.json();}).then(retData=>{real_info.showtime=retData.data.show_time;real_info.isShow=retData.data.show_status;getRealViewer();setInterval(getRealViewer,30000);}).catch(err=>{console.log("请求失败!",err);})} function initPkg_RealAudience_Dom(){document.querySelector(".AnchorAnnounce > h3").style.display="none";let html="";let a=document.createElement("div");a.className="real-audience";html+="
"+real_viewIcon+'****
';html+="
"+real_danmuIcon+'****
';html+="
"+real_money_yc+'****
';html+=''+"已播:"+"****"+"";a.innerHTML=html;let b=document.getElementsByClassName("AnchorAnnounce")[0];b.insertBefore(a,b.childNodes[0]);} function initPkg_RealAudience_Func(){document.getElementsByClassName("AnchorAnnounce")[0].addEventListener("mouseover",function(){document.querySelector(".AnchorAnnounce > h3").style.display="block"});document.getElementsByClassName("AnchorAnnounce")[0].addEventListener("mouseout",function(){document.querySelector(".AnchorAnnounce > h3").style.display="none"});document.getElementsByClassName("real-audience")[0].addEventListener("click",function(){openPage("https://www.xiaohulu.com/liveParticularsIndex/2/"+rid,true);})} function getRealViewer(){if(document.querySelector(".MatchSystemChatRoomEntry")!=null){document.querySelector(".MatchSystemChatRoomEntry").style.display="none";} fetch("https://bojianger.com/data/api/common/search.do?keyword="+rid,{method:'GET',}).then(res=>{return res.json();}).then(retData=>{let showedTime=0;if(real_info.isShow==2){showedTime=0;}else{if(real_info.showtime==777){showedTime=0;}else{showedTime=Math.floor(Date.now()/1000)-Number(real_info.showtime);}} real_info.view=retData.data.anchorVo.audience_count;real_info.danmu_person_count=retData.data.anchorVo.danmu_person_count;real_info.gift_person_count=retData.data.anchorVo.gift_person_count;real_info.money_yc=retData.data.anchorVo.gift_new_yc;if(real_info.money_yc=="undefined"||real_info.money_yc==undefined){real_info.money_yc=0;real_info.money_bag=0;real_info.money_total=0;}else{real_info.money_bag=retData.data.anchorVo.gift_new_bag;real_info.money_total=retData.data.anchorVo.yc_gift_value;} document.getElementById("real-audience__total").innerText=real_info.view;document.getElementById("real-audience__t").title="总人数:"+real_info.view+" 弹幕人数:"+real_info.danmu_person_count+" 送礼人数:"+real_info.gift_person_count;document.getElementById("real-audience__barrage").innerText=real_info.danmu_person_count;document.getElementById("real-audience__money_yc").innerText=real_info.money_yc;document.getElementById("real-audience__money").title="总礼物价值:"+real_info.money_total+" 鱼翅礼物:"+real_info.money_yc+" 背包礼物:"+real_info.money_bag;document.getElementById("real-audience__time").innerText="已播:"+formatSeconds(showedTime);}).catch(err=>{console.log("请求失败!",err);})} function initPkg_RemoveAD(){let t=setInterval(()=>{let a=document.getElementsByClassName("PlayerToolbar-wealthNum")[0];if(a!=undefined){removeAD();clearInterval(t);}},1000);removeAD();} function removeAD(){let a;a=document.getElementsByClassName("recommendAD-54569e")[0];if(a!=undefined){a.remove();} a=document.getElementsByClassName("recommendApp-0e23eb")[0];if(a!=undefined){a.remove();} a=document.getElementsByClassName("Title-ad")[0];if(a!=undefined){a.remove();} a=document.getElementsByClassName("Bottom-ad")[0];if(a!=undefined){a.style.display="none";} a=document.getElementsByClassName("SignBarrage")[0];if(a!=undefined){a.remove();} a=document.getElementsByClassName("corner-ad-495ade")[0];if(a!=undefined){a.remove();} a=document.getElementsByClassName("SignBaseComponent-sign-ad");if(a!=undefined){for(let i=0;i';let b=document.getElementsByClassName("ex-panel__wrap")[0];b.insertBefore(a,b.childNodes[0]);} function initPkg_Sign_Client(){signClient();} function signClient(){GM_xmlhttpRequest({method:"POST",url:"https://apiv2.douyucdn.cn/h5nc/sign/sendSign",data:'token='+dyToken,responseType:"json",headers:{'Content-Type':'application/x-www-form-urlencoded'},onload:function(response){let ret=response.response;if(ret.data.length==0){showMessage("【客户端】今日已签到","warning");}else{if(ret.data.sign_pl.length!=0){let recv="";for(let i=0;i{console.log("请求失败!",err) closePage();})} function initPkg_Sign_Room(){signAllRoom();} function signAllRoom(){let pageCount=0;fetch('https://www.douyu.com/wgapi/livenc/liveweb/follow/list?page=777',{method:'GET',mode:'no-cors',cache:'default',credentials:'include',}).then(res=>{return res.json();}).then(ret=>{pageCount=Number(ret.data.pageCount);for(let nowPage=1;nowPage<=pageCount;nowPage++){fetch('https://www.douyu.com/wgapi/livenc/liveweb/follow/list?page='+String(nowPage),{method:'GET',mode:'no-cors',cache:'default',credentials:'include',}).then(res=>{return res.json();}).then(ret=>{let roomCount=Number(ret.data.list.length);for(let i=0;i{console.log("请求失败!",err);})} showMessage("【房间签到】"+ret.data.total+"个房间正在签到中...","info");}).catch(err=>{console.log("请求失败!",err);})} function signRoom(r){GM_xmlhttpRequest({method:"POST",url:"https://apiv2.douyucdn.cn/japi/roomuserlevel/apinc/checkIn",data:'rid='+r,responseType:"json",headers:{'Content-Type':'application/x-www-form-urlencoded','token':dyToken,},onload:function(response){}});} function initPkg_Sign_Yuba(){signYubaList();} function signYuba(group_id,t){GM_xmlhttpRequest({method:"POST",url:"https://yuba.douyu.com/ybapi/topic/sign",data:'group_id='+group_id,responseType:"json",headers:{"Content-Type":"application/x-www-form-urlencoded","referer":"https://yuba.douyu.com/group/"+group_id,"dy-client":"pc","dy-token":t},onload:function(response){if(response.response.message==""){showMessage("【鱼吧】"+group_id+"签到成功! 连续"+response.response.data.count+"天 获得经验"+response.response.data.exp,"success");}else{showMessage("【鱼吧】"+group_id+response.response.message,"warning");}}});} function signYubaList(){GM_xmlhttpRequest({method:"GET",url:"https://yuba.douyu.com/wbapi/web/group/myFollow?page=1&limit=999",responseType:"json",headers:{"Content-Type":"application/x-www-form-urlencoded","dy-client":"pc","dy-token":dyToken},onload:function(response){for(let i=0;i';let b=document.getElementsByClassName("ex-panel__wrap")[0];b.insertBefore(a,b.childNodes[0]);} function initPkg_Update_Func(){document.getElementsByClassName("ex-update")[0].addEventListener("click",Update_openUpdatePage);} function Update_checkVersion(){fetch('https://greasyfork.org/zh-CN/scripts/394497',{method:'GET',mode:'cors',cache:'no-store',credentials:'omit',}).then(res=>{return res.text();}).then(txt=>{txt=(new DOMParser()).parseFromString(txt,'text/html');let v=txt.getElementsByClassName("script-show-version")[1];if(v!=undefined){if(v.innerText!=curVersion){Update_showTip(true);}}}).catch(err=>{console.error('请求失败',err);})} function Update_openUpdatePage(){openPage("https://greasyfork.org/zh-CN/scripts/394497",true);} function Update_showTip(a){let d=document.getElementById("ex-update__tip");if(a==true){if(d.style.display!="block"){showMessage("【版本更新】插件有新版本,请及时更新~","error");d.style.display="block";}}else{d.style.display="none";}} var hexcase=0;var b64pad="";var chrsz=8;function hex_md5(s){return binl2hex(core_md5(str2binl(s),s.length*chrsz))}function b64_md5(s){return binl2b64(core_md5(str2binl(s),s.length*chrsz))}function str_md5(s){return binl2str(core_md5(str2binl(s),s.length*chrsz))}function hex_hmac_md5(key,data){return binl2hex(core_hmac_md5(key,data))}function b64_hmac_md5(key,data){return binl2b64(core_hmac_md5(key,data))}function str_hmac_md5(key,data){return binl2str(core_hmac_md5(key,data))}function md5_vm_test(){return hex_md5("abc")=="900150983cd24fb0d6963f7d28e17f72"}function core_md5(x,len){x[len>>5]|=0x80<<((len)%32);x[(((len+64)>>>9)<<4)+14]=len;var a=1732584193;var b=-271733879;var c=-1732584194;var d=271733878;for(var i=0;i16)bkey=core_md5(bkey,key.length*chrsz);var ipad=Array(16),opad=Array(16);for(var i=0;i<16;i++){ipad[i]=bkey[i]^0x36363636;opad[i]=bkey[i]^0x5C5C5C5C}var hash=core_md5(ipad.concat(str2binl(data)),512+data.length*chrsz);return core_md5(opad.concat(hash),512+128)}function safe_add(x,y){var lsw=(x&0xFFFF)+(y&0xFFFF);var msw=(x>>16)+(y>>16)+(lsw>>16);return(msw<<16)|(lsw&0xFFFF)}function bit_rol(num,cnt){return(num<>>(32-cnt))}function str2binl(str){var bin=Array();var mask=(1<>5]|=(str.charCodeAt(i/chrsz)&mask)<<(i%32);return bin}function binl2str(bin){var str="";var mask=(1<>5]>>>(i%32))&mask);return str}function binl2hex(binarray){var hex_tab=hexcase?"0123456789ABCDEF":"0123456789abcdef";var str="";for(var i=0;i>2]>>((i%4)*8+4))&0xF)+hex_tab.charAt((binarray[i>>2]>>((i%4)*8))&0xF)}return str}function binl2b64(binarray){var tab="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";var str="";for(var i=0;i>2]>>8*(i%4))&0xFF)<<16)|(((binarray[i+1>>2]>>8*((i+1)%4))&0xFF)<<8)|((binarray[i+2>>2]>>8*((i+2)%4))&0xFF);for(var j=0;j<4;j++){if(i*8+j*6>binarray.length*32)str+=b64pad;else str+=tab.charAt((triplet>>6*(3-j))&0x3F)}}return str} (function webpackUniversalModuleDefinition(root,factory){if(typeof exports==='object'&&typeof module==='object')module.exports=factory();else if(typeof define==='function'&&define.amd)define("NoticeJs",[],factory);else if(typeof exports==='object')exports["NoticeJs"]=factory();else root["NoticeJs"]=factory()})(typeof self!=='undefined'?self:this,function(){return(function(modules){var installedModules={};function __webpack_require__(moduleId){if(installedModules[moduleId]){return installedModules[moduleId].exports}var module=installedModules[moduleId]={i:moduleId,l:false,exports:{}};modules[moduleId].call(module.exports,module,module.exports,__webpack_require__);module.l=true;return module.exports}__webpack_require__.m=modules;__webpack_require__.c=installedModules;__webpack_require__.d=function(exports,name,getter){if(!__webpack_require__.o(exports,name)){Object.defineProperty(exports,name,{configurable:false,enumerable:true,get:getter})}};__webpack_require__.n=function(module){var getter=module&&module.__esModule?function getDefault(){return module['default']}:function getModuleExports(){return module};__webpack_require__.d(getter,'a',getter);return getter};__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)};__webpack_require__.p="dist/";return __webpack_require__(__webpack_require__.s=2)})([(function(module,exports,__webpack_require__){"use strict";Object.defineProperty(exports,"__esModule",{value:true});var noticeJsModalClassName=exports.noticeJsModalClassName='noticejs-modal';var closeAnimation=exports.closeAnimation='noticejs-fadeOut';var Defaults=exports.Defaults={title:'',text:'',type:'success',position:'topRight',timeout:30,progressBar:true,closeWith:['button'],animation:null,modal:false,scroll:{maxHeight:300,showOnHover:true},rtl:false,callbacks:{beforeShow:[],onShow:[],afterShow:[],onClose:[],afterClose:[],onClick:[],onHover:[],onTemplate:[]}}}),(function(module,exports,__webpack_require__){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.appendNoticeJs=exports.addListener=exports.CloseItem=exports.AddModal=undefined;exports.getCallback=getCallback;var _api=__webpack_require__(0);var API=_interopRequireWildcard(_api);function _interopRequireWildcard(obj){if(obj&&obj.__esModule){return obj}else{var newObj={};if(obj!=null){for(var key in obj){if(Object.prototype.hasOwnProperty.call(obj,key))newObj[key]=obj[key]}}newObj.default=obj;return newObj}}var options=API.Defaults;function getCallback(ref,eventName){if(ref.callbacks.hasOwnProperty(eventName)){ref.callbacks[eventName].forEach(function(cb){if(typeof cb==='function'){cb.apply(ref)}})}}var AddModal=exports.AddModal=function AddModal(){if(document.getElementsByClassName(API.noticeJsModalClassName).length<=0){var element=document.createElement('div');element.classList.add(API.noticeJsModalClassName);element.classList.add('noticejs-modal-open');document.body.appendChild(element);setTimeout(function(){element.className=API.noticeJsModalClassName},200)}};var CloseItem=exports.CloseItem=function CloseItem(item){getCallback(options,'onClose');if(options.animation!==null&&options.animation.close!==null){item.className+=' '+options.animation.close}setTimeout(function(){item.remove()},200);if(options.modal===true&&document.querySelectorAll("[noticejs-modal='true']").length>=1){document.querySelector('.noticejs-modal').className+=' noticejs-modal-close';setTimeout(function(){document.querySelector('.noticejs-modal').remove()},500)}var position='.'+item.closest('.noticejs').className.replace('noticejs','').trim();setTimeout(function(){if(document.querySelectorAll(position+' .item').length<=0){let p=document.querySelector(position);if(p!=null){p.remove()}}},500)};var addListener=exports.addListener=function addListener(item){if(options.closeWith.includes('button')){item.querySelector('.close').addEventListener('click',function(){CloseItem(item)})}if(options.closeWith.includes('click')){item.style.cursor='pointer';item.addEventListener('click',function(e){if(e.target.className!=='close'){getCallback(options,'onClick');CloseItem(item)}})}else{item.addEventListener('click',function(e){if(e.target.className!=='close'){getCallback(options,'onClick')}})}item.addEventListener('mouseover',function(){getCallback(options,'onHover')})};var appendNoticeJs=exports.appendNoticeJs=function appendNoticeJs(noticeJsHeader,noticeJsBody,noticeJsProgressBar){var target_class='.noticejs-'+options.position;var noticeJsItem=document.createElement('div');noticeJsItem.classList.add('item');noticeJsItem.classList.add(options.type);if(options.rtl===true){noticeJsItem.classList.add('noticejs-rtl')}if(noticeJsHeader&¬iceJsHeader!==''){noticeJsItem.appendChild(noticeJsHeader)}noticeJsItem.appendChild(noticeJsBody);if(noticeJsProgressBar&¬iceJsProgressBar!==''){noticeJsItem.appendChild(noticeJsProgressBar)}if(['top','bottom'].includes(options.position)){document.querySelector(target_class).innerHTML=''}if(options.animation!==null&&options.animation.open!==null){noticeJsItem.className+=' '+options.animation.open}if(options.modal===true){noticeJsItem.setAttribute('noticejs-modal','true');AddModal()}addListener(noticeJsItem,options.closeWith);getCallback(options,'beforeShow');getCallback(options,'onShow');document.querySelector(target_class).appendChild(noticeJsItem);getCallback(options,'afterShow');return noticeJsItem}}),(function(module,exports,__webpack_require__){"use strict";Object.defineProperty(exports,"__esModule",{value:true});var _createClass=function(){function defineProperties(target,props){for(var i=0;i0&&arguments[0]!==undefined?arguments[0]:{};_classCallCheck(this,NoticeJs);this.options=Object.assign(API.Defaults,options);this.component=new _components.Components();this.on('beforeShow',this.options.callbacks.beforeShow);this.on('onShow',this.options.callbacks.onShow);this.on('afterShow',this.options.callbacks.afterShow);this.on('onClose',this.options.callbacks.onClose);this.on('afterClose',this.options.callbacks.afterClose);this.on('onClick',this.options.callbacks.onClick);this.on('onHover',this.options.callbacks.onHover);return this}_createClass(NoticeJs,[{key:'show',value:function show(){var container=this.component.createContainer();if(document.querySelector('.noticejs-'+this.options.position)===null){document.body.appendChild(container)}var noticeJsHeader=void 0;var noticeJsBody=void 0;var noticeJsProgressBar=void 0;noticeJsHeader=this.component.createHeader(this.options.title,this.options.closeWith);noticeJsBody=this.component.createBody(this.options.text);if(this.options.progressBar===true){noticeJsProgressBar=this.component.createProgressBar()}var noticeJs=helper.appendNoticeJs(noticeJsHeader,noticeJsBody,noticeJsProgressBar);return noticeJs}},{key:'on',value:function on(eventName){var cb=arguments.length>1&&arguments[1]!==undefined?arguments[1]:function(){};if(typeof cb==='function'&&this.options.callbacks.hasOwnProperty(eventName)){this.options.callbacks[eventName].push(cb)}return this}}]);return NoticeJs}();exports.default=NoticeJs;module.exports=exports['default']}),(function(module,exports){}),(function(module,exports,__webpack_require__){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.Components=undefined;var _createClass=function(){function defineProperties(target,props){for(var i=0;i{return res.json();}).then(ret=>{if(ret.data!=""){reallive_callback(ret.data.rtmp_url+"/"+ret.data.rtmp_live);}else{showMessage(ret.msg,"error");console.log(ret.msg);}})}} function RealLive_get_sign(r,post_v,tt,ub9){let ub9_ex=String(ub9).replace("ub98484234","ub98484234_ex");eval1(ub9_ex,"exScript1");let res2=ub98484234_ex();let str3=String(res2).replace(/\(function[\s\S]*toString\(\)/,"\'");let md5rb=hex_md5(r+'10000000000000000000000000001501'+tt+'2501'+post_v);let str4='function get_sign(){var rb=\''+md5rb+str3;let str5=String(str4).replace(/return rt;}[\s\S]*/,'return re;};');let str6=String(str5).replace(/"v=.*&sign="\+/,'');str6=String(str6).replace("get_sign","get_sign_ex") eval1(str6,"exScript2");let sign=get_sign_ex(r+"10000000000000000000000000001501",tt);document.getElementById("exScript1").remove();document.getElementById("exScript2").remove();return sign;} function eval1(str,iid){var sc=document.createElement("script");sc.id=iid sc.setAttribute("type","text\/javascript");sc.appendChild(document.createTextNode(str));document.body.appendChild(sc);} function getRealRid_Douyu(url,realrid_callback){fetch(url,{method:'GET',mode:'no-cors',cache:'default',credentials:'include',}).then(res=>{return res.text();}).then(doc=>{doc=(new DOMParser()).parseFromString(doc,'text/html');let url=doc.getElementsByTagName('html')[0].innerHTML;let urlLen=("$ROOM.room_id =").length;let ridPos=url.indexOf('$ROOM.room_id =');let rid=url.substring(ridPos+urlLen,url.indexOf(';',ridPos+urlLen));rid=rid.trim();if(isRid(rid)==true){realrid_callback(rid);}else{showMessage("获取直播间失败,请检查直播间地址是否正确!","error")}}).catch(err=>{console.log("请求失败!",err);})} function getRealLive_Huya(url,qn,cdn,reallive_callback){let qn_data="500";switch(qn){case"1":qn_data="500";break;case"2":qn_data="2500";break;case"3":qn_data="4500";break;case"4":qn_data="0";break;default:qn_data="500";break;} let cdn_data=Number(cdn)-1;GM_xmlhttpRequest({method:"GET",url:url,responseType:"text",onload:function(response){let html=String(response.response);let lurl="";let msg="";let lurl_sFlvUrl="";let lurl_sStreamName="";let lurl_sFlvUrlSuffix="";let lurl_sFlvAntiCode="";if(getStrMiddle(html,'"state":"','",')=="ON"){let tlen=("hyPlayerConfig = ").length;let tpos=html.indexOf("hyPlayerConfig = ");let json=JSON.parse(html.substring(tpos+tlen,html.indexOf('};',tpos+tlen))+'}');if(json.stream!=null){if(json.stream.data[0].gameStreamInfoList.length>=cdn_data){lurl_sFlvUrl=json.stream.data[0].gameStreamInfoList[cdn_data].sFlvUrl;lurl_sFlvUrl=String(lurl_sFlvUrl).replace("http","https");lurl_sStreamName=json.stream.data[0].gameStreamInfoList[cdn_data].sStreamName;lurl_sFlvUrlSuffix=json.stream.data[0].gameStreamInfoList[cdn_data].sFlvUrlSuffix;lurl_sFlvAntiCode=json.stream.data[0].gameStreamInfoList[cdn_data].sFlvAntiCode;lurl=lurl_sFlvUrl+"/"+lurl_sStreamName+"."+lurl_sFlvUrlSuffix+"?"+lurl_sFlvAntiCode;lurl=lurl.replace(/amp;/g,"");if(qn_data!="0"){lurl=lurl+"&ratio="+qn_data;}}else{msg="暂无该线路";}}}else{msg="该房间未开播";} reallive_callback(lurl,msg);}});}