Skip to content

Instantly share code, notes, and snippets.

@FurkanGozukara
Last active June 17, 2024 21:53
Show Gist options
  • Save FurkanGozukara/24f77668600ecb52501e922a95809b8b to your computer and use it in GitHub Desktop.
Save FurkanGozukara/24f77668600ecb52501e922a95809b8b to your computer and use it in GitHub Desktop.
B535-232 unlock band and hidden options javascript codes
javascript:spreadName(); monitor=[1,3,5,8,20,28,38,40,41]; mainband=null;_2ndrun=null; suspend=0; function currentBand() {if (suspend==1) return; console.log("Get Signal"); $("#dhcp_mask").show();$("#dhcp_dns").show(); $.ajax({type:"GET",async:true,url:'/api/device/signal', error: function(request,status,error){alert("Signal Error:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error); }, success: function(data){vars=['rssi','rsrp','rsrq','sinr','dlbandwidth','ulbandwidth','band','cell_id','pci','nei_cellid','plmn', 'tac','ulfrequency','dlfrequency',]; for (i=0;i<vars.length;i++) {window[vars[i]]=extractXML(vars[i],data); $('#'+vars[i]).html(window[vars[i]]);} hex = Number(cell_id).toString(16); hex2= hex.substring(0,hex.length-2); enbid = parseInt(hex2, 16).toString(); $('#enbid').html(enbid); hex = Number(cell_id).toString(16); hex2= hex.substring(5,hex.length-0); enbidS = parseInt(hex2, 16).toString(); $('#enbidS').html(enbidS); plmnMC=(plmn.slice(0, 3)); plmnMN=(plmn.slice(-2)); setgraph('rsrp',rsrp,-130,-51); setgraphRsrq('rsrq',rsrq,-20,-2); setgraphSinr('sinr',sinr,-4,30); }}); console.log("Get Net Mode"); $.ajax({type:"GET",async:true,url:'/api/net/net-mode', error: function(request,status,error){alert("Signal Error:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);}, success: function(data){lteband=extractXML('LTEBand',data);$('#allowed').html(_4GType(lteband)); }}); $.ajax({type:"GET",async:true,url:'/api/net/current-plmn',error: function(request,status,error){alert("Signal Error:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error); }, success: function(data){vars=['ShortName','FullName','Rat',]; for (i=0;i<vars.length;i++) {window[vars[i]]=extractXML(vars[i],data); $('#'+vars[i]).html(window[vars[i]]); }} }); $.ajax({type:"GET",async:true,url:'/api/device/information',error: function(request,status,error){alert("Signal Error:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error); }, success: function(data){vars=['DeviceName','ProductFamily','Classify','spreadname_en',]; for (i=0;i<vars.length;i++) {window[vars[i]]=extractXML(vars[i],data); $('#'+vars[i]).html(window[vars[i]]); }} }); $.ajax({type:"GET",async:true,url:'/api/monitoring/status',error: function(request,status,error){alert("Signal Error:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error); }, success: function(data){vars=['ConnectionStatus','WanIPAddress','CurrentNetworkType','CurrentNetworkTypeEx','SignalIcon',]; for (i=0;i<vars.length;i++) {window[vars[i]]=extractXML(vars[i],data); $('#'+vars[i]).html(window[vars[i]]); } setgraphSignal('SignalIcon',SignalIcon,0,5); if (CurrentNetworkTypeEx == '1011'){netTypeEx= 'LTE CA(4G+)';} else if (CurrentNetworkTypeEx == '101'){netTypeEx= 'LTE(4G)';} document.getElementById('netTypeEx').innerHTML = netTypeEx; }})} function extractXML(tag, data) {try {return data.split("</"+tag+">")[0].split("<"+tag+">")[1];} catch(err) {return err.message;} } function setgraph(p,val,min,max) {val=parseInt(val.replace(/\dBm/g, "")); x=(val-min)/(max-min)*100; xs=String(x)+"%"; e="#"+p+"b"; $(e).width(xs); $(e).html("📶 "+p+" : "+window[p]); if (x<10){$(e).css("background-color","rgba(255,0,0,0.8)").css("color",'white')} else if (x>10 && x<50) {$(e).css("background-color","rgba(255,50,0,0.8)").css("color",'white')} else if (x>50 && x<65) {$(e).css("background-color","rgba(50,50,0,0.8)").css("color",'white')} else if (x>65 && x<75) {$(e).css("background-color","rgba(50,100,0,0.8)").css("color",'white')} else if (x>75 && x<83) {$(e).css("background-color","rgba(0,200,0,0.8)").css("color",'black')} else{$(e).css("background-color","rgba(0,255,0,0.8)").css("color",'black')} } function setgraphRsrq(p,val,min,max) {val=parseInt(val.replace(/\dB/g, "")); x=(val-min)/(max-min)*100; xs=String(x)+"%"; e="#"+p+"b"; $(e).width(xs); $(e).html("📶 "+p+" : "+window[p]); if (x<6){$(e).css("background-color","rgba(255,0,0,0.8)").css("color",'white')} else if (x>6 && x<28) {$(e).css("background-color","rgba(255,50,0,0.8)").css("color",'white')} else if (x>28 && x<55) {$(e).css("background-color","rgba(50,50,0,0.8)").css("color",'white')} else if (x>55 && x<70) {$(e).css("background-color","rgba(50,100,0,0.8)").css("color",'white')} else if (x>70 && x<83) {$(e).css("background-color","rgba(0,200,0,0.8)").css("color",'black')} else{$(e).css("background-color","rgba(0,255,0,0.8)").css("color",'black')} } function setgraphSinr(p,val,min,max) {val=parseInt(val.replace(/\[>=]30/g, "30").replace(/\dB/g, "")); x=(val-min)/(max-min)*100; xs=String(x)+"%"; e="#"+p+"b"; $(e).width(xs); $(e).html("📶 "+p+" : "+window[p]); if (x<11){$(e).css("background-color","rgba(255,0,0,0.8)").css("color",'white')} else if (x>11 && x<40) {$(e).css("background-color","rgba(255,50,0,0.8)").css("color",'white')} else if (x>40 && x<55) {$(e).css("background-color","rgba(50,50,0,0.8)").css("color",'white')} else if (x>55 && x<70) {$(e).css("background-color","rgba(50,100,0,0.8)").css("color",'white')} else if (x>70 && x<82) {$(e).css("background-color","rgba(0,200,0,0.8)").css("color",'black')} else{$(e).css("background-color","rgba(0,255,0,0.8)").css("color",'black')} } function setgraphSignal(p,Sig,min,max) { x=(Sig-min)/(max-min)*100; xs=String(x)+"%"; e="#"+p+"b"; $(e).width(xs); $(e).html("📶 "+p+" : "+window[p]); if (x<1){$(e).css("background-color","rgba(255,50,0,0.8)").css("color",'white')} else if (x>1 && x<2) {$(e).css("background-color","rgba(50,50,0,0.8)").css("color",'white')} else if (x>2 && x<3) {$(e).css("background-color","rgba(50,100,0,0.8)").css("color",'white')} else if (x>3 && x<4) {$(e).css("background-color","rgba(0,200,0,0.8)").css("color",'black')} else{$(e) .css("background-color","rgba(0,255,0,0.8)").css("color",'black')} } function _4GType(data) {{if (data=='20800800C5') {return "AUTO";} data_out=""; for(x=0;x<monitor.length;x++) {tb=Math.pow(2,monitor[x]-1); var t; if (tb < 0x100000000) {t = parseInt(data,16)&(tb);} else {t = parseInt(data,16) / 0x100000000 & (tb / 0x100000000);} if (t != 0) {data_out+="B"+String(monitor[x])+"+";} } data_out=data_out.replace(/\++$/, ""); return data_out; }} function ltebandselection(bs) {console.log("CALLED"+bs); if (mainband) mainband=null; if(arguments.length==0) {var band = prompt("Please input the desired LTE band number. If you want to use multiple LTE bands, enter multiple range numbers (example 1+3 or 3+28 or 28+41). If you want to use all supported bands, Enter'AUTO'.","AUTO"); if (band) band=band.toLowerCase(); if(band==null||band===""){return;} } else var band = arguments[0]; var bs = band.split("+"); var ltesum = 0; if(band.toUpperCase()==="AUTO"){ltesum = "7FFFFFFFFFFFFFFF";} else {for (var i=0;i<bs.length;i++){if (bs[i].toLowerCase().indexOf('m')!=-1) {bs[i]=bs[i].replace('m',''); mainband=bs[i]; } if (bs[i].toUpperCase()==="AUTO") {ltesum="7FFFFFFFFFFFFFFF";break;} else ltesum=ltesum+Math.pow(2,parseInt(bs[i])-1); } ltesum = ltesum.toString(16); } if (mainband) {console.log("Set Main"); _2ndrun=bs; ltebandselection(String(mainband)); return; } suspend=1; $.ajax({type:"GET", async:true, url:'/html/home.html', error: function(request,status,error){alert("Token Error:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);}, success: function(data){var datas = data.split('name="csrf_token" content="'); var token = datas[datas.length-1].split('"')[0]; setTimeout(function(){$.ajax({type:"POST", async: true, url:'/api/net/net-mode', headers:{'__RequestVerificationToken':token}, contentType: 'application/xml', data:'<request><NetworkMode>03</NetworkMode><NetworkBand>3FFFFFFF</NetworkBand><LTEBand>'+ltesum+'</LTEBand></request>', success: function(nd){console.log("success netmode"); $("#band").html("<span style=\"color:indigo;\">- OK -</span>"); if (_2ndrun) {console.log("Wait 2s"); window.setTimeout(function(){console.log("Launch Netmode"); ltebandselection(_2ndrun.join("+")); _2ndrun=false; },2000); } else {suspend=0;} }, error: function(request,status,error){alert("Net Mode Error:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);} }); },2000); }}); } window.setInterval(currentBand, 2500); function spreadName() {$("html").prepend("<style> </style> <style> .vall{font-size:1.2em;color:#04a;} .valll{font-size:1.2em;font-weight:bold;color:blue;}</style> <div style=\"width:1300px;padding:4px 1px;margin:0 auto;\"> <span <div style=\"font-size:1.2em;font-weight:600;color: #9d9dff;\" id=\"netType\"></span>&nbsp; <div style=\"display:inline;\"><span class=\"valll\" id=\"FullName\"> </span>&nbsp; <div style=\"display:inline;margin-left:300px;font-size:1em;font-weight:600;color: #c2172d;\"><span class=\"vall\" id=\"spreadname_en\"> </span>&nbsp;&nbsp;&nbsp; Model: <span class=\"vall\" id=\"ProductFamily\"> </span> &nbsp;<span class=\"vall\" id=\"DeviceName\"> </span>&nbsp; </div> </div> "); {{$("body").prepend("<style> .val{color:red;} </style> <div style=\"width:1300px;padding:4px;margin:0 auto;left:30;\"> <div style=\"display:inline;margin-left:60px;\"> UL:<span class=\"val\" id=\"ulfrequency\">0</span>&nbsp;&nbsp; DL:<span class=\"val\" id=\"dlfrequency\">0</span>&nbsp;&nbsp; <div style=\"display:inline;margin-left:400px;\"> RSRP:<span class=\"val\" id=\"rsrp\">0</span>&nbsp;&nbsp; RSSI:<span class=\"val\" id=\"rssi\">0</span>&nbsp;&nbsp; RSRQ:<span class=\"val\" id=\"rsrq\">0</span>&nbsp;&nbsp; SINR:<span class=\"val\" id=\"sinr\">0</span>&nbsp;&nbsp; </div> </div> "); } {$("body").prepend("<style> </style> <div style=\"width:1300px;padding:4px;margin:0 auto;left:30;\"> <div style=\"display:inline;margin-left:60px;\"> <span id=\"netTypeEx\"></span> B<span class=\"val\" id=\"band\">0</span>(<span class=\"val\" id=\"dlbandwidth\">0</span>/<span class=\"val\" id=\"ulbandwidth\">0</span>)&nbsp; SET:<span class=\"val\" id=\"allowed\">0</span>&nbsp;&nbsp; <div style=\"display:inline;margin-left:50px;\"> PLMN:<span class=\"val\" id=\"plmn\"> </span>&nbsp;&nbsp; TAC:<span class=\"val\" id=\"tac\"> </span>&nbsp;&nbsp; CELL ID:<span class=\"val\" id=\"cell_id\">0</span> &nbsp;&nbsp; ENB ID:<span class=\"val\" id=\"enbid\">0</span></a>&nbsp;&nbsp; Sec ID:<span class=\"val\" id=\"enbidS\">0</span> &nbsp;&nbsp; PCI:<span class=\"val\" id=\"pci\">0</span></a>&nbsp;&nbsp;&nbsp; NearbyPCI:<span class=\"val\" id=\"nei_cellid\">0</span></a>&nbsp;&nbsp;&nbsp; </div> </div> "); } var input=document.createElement("input"); input.type="button"; input.value="BAND FREQUENCY"; input.onclick = showBANDS; input.setAttribute("style", "font-size:100%;font-weight:bold;margin-right:30px;color:#04a;text-decoration:underline;position:absolute;top:32px;left:3px;"); document.body.appendChild(input); function showBANDS() {ltebandselection()} function addGraph() {$(".headcontainer").slideUp(); $("body").prepend("<div style=\"width:1300px;position:absolute;top:156px;padding-left:10px;\"><style> .p{border:10px;width:auto;padding-top:3px;height:30px;} .ps{border:1px;padding-top:2px;width:auto;height:13px;} .v{border-radius: 5px 25px 25px 5px;font-size:150%;height:30px;}.vs{border-radius: 5px 25px 25px 5px;font-size:75%;height:13px;} </style> <div class=\"ps\"><div class=\"vs\" id=\"SignalIconb\"></div></div> <div class=\"p\"><div class=\"v\" id=\"rsrpb\"></div></div> <div class=\"p\"> <div class=\"v\" id=\"rsrqb\"></div></div> <div class=\"p\"><div class=\"v\" id=\"sinrb\"></div></div>"); var input=document.createElement("input"); input.type="button"; input.value="⫷RELOAD PAGE⫸"; input.onclick = showReload; input.setAttribute("style", "font-size:100%;font-weight:bold;color:#04a;text-decoration:underline;position:absolute;top:55px;left:3px;"); document.body.appendChild(input); function showReload() {window.location.reload();} } var input=document.createElement("input"); input.type="button"; input.value="GRAPHSLIDE"; input.onclick = showAlert; input.setAttribute("style", "font-size:100%;font-weight:bold;color:#04a;text-decoration:underline;position:absolute;top:55px;left:3px;"); document.body.appendChild(input); function showAlert() {addGraph();} }} var input=document.createElement("input"); input.type="button"; input.value="CELLMAPPER"; input.onclick =showCellM; input.setAttribute("style", "font-size:100%;font-weight:bold;color:#04a;text-decoration:underline;position:absolute;top:32px;right:4px;"); document.body.appendChild(input); function showCellM(){window.open("https://www.cellmapper.net/map?MCC="+plmnMC+"&MNC="+plmnMN+"&="+cell_id+"&zoom=15");} var input=document.createElement("input"); input.type="button"; input.value="SPEEDTEST"; input.onclick =showSpeedTest; input.setAttribute("style", "font-size:100%;font-weight:bold;color:#04a;text-decoration:underline;position:absolute;top:55px;right:4px;"); document.body.appendChild(input); function showSpeedTest(){window.open("https://www.speedtest.net/");}
javascript:ftb();function currentBand(){1!=suspend&&($("#dhcp_mask").show(),$("#dhcp_dns").show(),$.ajax({dataType:"text",type:"GET",async:!0,url:"/api/device/signal",error:err,success:function(n){for(signal=n,vars=["nrrsrq","nrrsrp","nrsinr","rssi","rsrp","rsrq","sinr","dlbandwidth","ulbandwidth","band","cell_id","plmn"],i=0;i<vars.length;i++)window[vars[i]]=extractXML(vars[i],n),$("#"+vars[i]).html(window[vars[i]]);nrdefined="undefined"!=typeof nrrsrp,$(".e5").toggle(nrdefined),nrdefined&&(setgraph("nrrsrp",nrrsrp,-130,-70),setgraph("nrrsrq",nrrsrq,-16,-3)),setgraph("rsrp",rsrp,-130,-70),setgraph("rsrq",rsrq,-16,-3),mp=cell_id.indexOf("-"),enbid=0<mp?Number(cell_id.substr(0,mp)):(hex=Number(cell_id).toString(16),hex2=hex.substring(0,hex.length-2),parseInt(hex2,16).toString()),$("#enbid").html(enbid),"22201"==plmn&&(plmn="2221"),"22299"==plmn&&(plmn="22288"),"22250"==plmn&&6==enbid.length&&(plmn="22288"),link_lte="https://lteitaly.it/internal/map.php#bts="+plmn+"."+enbid,$("#lteitaly").attr("href",link_lte)}}),getNetmode(),getStatus(),getAntenna())}function getAntenna(){$.ajax({dataType:"text",type:"GET",async:!0,url:"/api/device/antenna_type",error:err,success:function(n){antenna1type=extractXML("antenna1type",n),antenna2type=extractXML("antenna2type",n),"1"==antenna1type?$("#a1").html("EXT"):$("#a1").html("INT"),"1"==antenna2type?$("#a2").html("EXT"):$("#a2").html("INT")}})}function getNetmode(){$.ajax({type:"GET",dataType:"text",async:!0,url:"/api/net/net-mode",error:err,success:function(n){netmode=n,lteband=extractXML("LTEBand",n),$("#allowed").html(_4GType(lteband))}})}function getStatus(){$.ajax({type:"GET",dataType:"text",async:!0,url:"/api/monitoring/status",error:err,success:function(n){status=n,is4gp=1011==extractXML("CurrentNetworkTypeEx",n)?1:0,is4gp?$("#mode").html("4G+").css("color","red"):$("#mode").html("-").css("color","#aaa")}})}function err(n,e,r){alert("Communication Error"),console.log(n),console.log(e),console.log(r)}function extractXML(n,e){try{return e.split("</"+n+">")[0].split("<"+n+">")[1]}catch(n){return n.message}}function setgraph(n,r,t,a){r=parseInt(r.replace("dBm","").replace("dB")),x=(r-t)/(a-t)*100,xs=String(x)+String.fromCharCode(37),e="#"+n+"b",$(e).animate({width:xs}),$(e).html(n.replace("nr","5G - ")+" : "+window[n]),x<50?$(e).css("background-color","yellow").css("color","black"):(85<x?$(e).css("background-color","orange"):$(e).css("background-color","green")).css("color","white")}function _4GType(n){for(data_out="",x=0;x<90;x++)tb=Math.pow(2,x),color=BigInt("0x"+n)&BigInt(tb)?(data_out+="B"+String(x+1)+"+","#686"):"transparent",$("#cb"+String(x+1)).css("background-color",color);return data_out=data_out.replace(/\++$/,""),data_out}function ltebandselection(n){if(mainband=mainband&&null,0==arguments.length){if(null==(e=(e=prompt("Please input LTE bands number, separated by + char (example 1+3+20).If you want to use every supported bands, write 'AUTO'.","AUTO"))&&e.toLowerCase())||""===e)return}else var e=arguments[0];var n=e.split("+"),t=0;if("AUTO"===e.toUpperCase())t="7FFFFFFFFFFFFFFF";else{for(var r=0;r<n.length;r++){if(-1!=n[r].toLowerCase().indexOf("m")&&(n[r]=n[r].replace("m",""),mainband=n[r]),"AUTO"===n[r].toUpperCase()){t="7FFFFFFFFFFFFFFF";break}t+=Math.pow(2,parseInt(n[r])-1)}t=t.toString(16)}if(mainband)return _2ndrun=n,void ltebandselection(String(mainband));suspend=1,$("#t").html("! PLEASE WAIT !").show(),$.ajax({type:"GET",dataType:"text",async:!0,url:"/html/home.html",error:err,success:function(n){var n=n.split('name="csrf_token" content="'),e=n[n.length-1].split('"')[0],r="00";$("#force4g").is(":checked")&&(r="03"),setTimeout(function(){$.ajax({type:"POST",async:!0,url:"/api/net/net-mode",headers:{__RequestVerificationToken:e},contentType:"application/xml",data:"<request><NetworkMode>"+r+"</NetworkMode><NetworkBand>3FFFFFFF</NetworkBand><LTEBand>"+t+"</LTEBand></request>",success:function(n){$("#band").html('<span style="color:green;">OK</span>'),_2ndrun?window.setTimeout(function(){ltebandselection(_2ndrun.join("+")),_2ndrun=!1},2e3):(suspend=0,$("#t").hide(""))},error:err})},2e3)}})}function ftb(){$(".color_background_blue").css("background-color","#456"),$(".headcontainer").hide(),$("body").prepend('<style> #rsrq,#nrrsrq, #rsrp,#nrrsrp, #rssi, #enbid, #sinr,#nrsinr, #cell_id, #band, #allowed, #a1, #a2 {color: #b00; font-weight: strong; } .f {float: left; border: 1px solid #bbb; border-radius: 5px; padding: 10px; line-height: 2em; margin: 5px; } .f ul {margin: 0; padding: 0; } .f ul li {display: inline; margin-right: 10px; } #mode {margin-right: 0 !important; } #enbid {font-weight: bold; text-decoration: underline; } .p {border-bottom: 1px solid #ccc; width: auto; height: 20px; } .v {height: 20px; border-right: 1px solid #ccc; } .sb {padding: 10px; border-radius: 10px; display: inline-block; margin: 10px 0 10px 10px; } #t {color: white; background-color: #888; margin: 10px; padding: 25px; border-radius: 10px; display: none; text-align: center; font-weight: bolder; } .v {padding-left: 20px; } </style> <div class="p e5"> <div class="v" id="nrrsrpb"></div> </div> <div class="p e5"> <div class="v" id="nrrsrqb"></div> </div> <div class="p"> <div class="v" id="rsrpb"></div> </div> <div class="p"> <div class="v" id="rsrqb"></div> </div> <div style="display:block;overflow: auto;"> <div id="t"></div> <div class="f"> <ul> <li><a style="font-weight:bolder;background-color: #448;color:white;padding: 10px;border-radius:10px;" onclick="ltebandselection()">SET</a></li> <li><label>Force 4G</label><input id="force4g" type="checkbox"></li> </ul> </div> <div class="f"> <ul> <li>RSRP:<span id="rsrp"></span></li> <li>RSRQ:<span id="rsrq"></span></li> <li>RSSI:<span id="rssi"></span></li> <li>SINR:<span id="sinr"></span></li> <li>Ant:<span id="a1"></span>/<span id="a2"></span></li> </ul> </div> <div class="f e5"> <ul> <li>5-RSRP:<span id="nrrsrp"></span></li> <li>5-RSRQ:<span id="nrrsrq"></span></li> <li>5-SINR:<span id="nrsinr"></span></li> </ul> </div> <div class="f"> <ul> <li id="mode">Che la banda sia con te! Miononno &#9829;</li> </ul> </div> <div class="f"> <ul> <li>ENB ID:<a id="lteitaly" target="lteitaly" href="#"><span id="enbid">#</span></a></li> <li>CELL ID:<span id="cell_id">#</span></li> <li>MAIN:<span id="band"></span>(<span id="dlbandwidth"></span>/<span id="ulbandwidth"></span>)</li> <li>ALLOWED:<span id="allowed"></span></li> </ul> </div>')}mainband=null,_2ndrun=null,suspend=0,status="",netmode="",signal="",version="4.0b",console.log("Code by Miononno - v"+version),console.log("type: netmode , signal , status"),window.setInterval(currentBand,2500);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment