magcore-plugin-settings-network-traceroute
Version:
Network diagnostic (traceroute) plugin for magsdk applications.
2 lines • 6.92 kB
JavaScript
module.exports=function(t){var e={};function n(o){if(e[o])return e[o].exports;var i=e[o]={i:o,l:!1,exports:{}};return t[o].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=t,n.c=e,n.d=function(t,e,o){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:o})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var i in t)n.d(o,i,function(e){return t[e]}.bind(null,i));return o},n.n=function(t){var e=t&&t.__esModule?function(){return t["default"]}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=1)}([function(t,e,n){"use strict";function o(){this.events={}}o.prototype={addListener:function(t,e){this.events[t]=this.events[t]||[],this.events[t].push(e)},once:function(t,e){var n=this;this.events[t]=this.events[t]||[],this.events[t].push(function o(){n.removeListener(t,o),e.apply(n,arguments)})},addListeners:function(t){var e;for(e in t)t.hasOwnProperty(e)&&this.addListener(e,t[e])},removeListener:function(t,e){this.events[t]&&(this.events[t]=this.events[t].filter(function(t){return t!==e}),0===this.events[t].length&&(this.events[t]=void 0))},emit:function(t){var e,n=this.events[t];if(n)for(e=0;e<n.length;e++)n[e].apply(this,Array.prototype.slice.call(arguments,1))}},o.prototype.constructor=o,t.exports=o},function(t,e,n){"use strict";var o,i,r=n(2),a=n(0),s={ids:{base:"network",test:"traceroute"},addZero:function(t){return t<10?"0"+t:t}};function u(){a.call(this),this.destroy=function(){this.events={}}}function d(t){return o=new u,{id:"networkDiagnostics",name:i("Network diagnostics"),parent:s.ids.base,type:"option",description:i("Get info about network state"),icon:"theme-icon-settings",title:"network diagnostics",config:{focusable:!1},warningText:i("Attention")+": "+i("Estimated time to complete the test - 10 minutes."),events:{click:function(){var e=this;e.$node.classList.add("padded"),o.events["render"]=void 0,o.addListener("render",function(t){e.init({data:t,size:t.length>5?5:t.length})}),o.start(t)}},prepareForRender:function(t,e){e([{items:[i("Perform diagnostics")]}])},render:t.api.renders.popupLayoutList,data:{}}}u.prototype=Object.create(a.prototype),u.prototype.constructor=u,u.prototype.start=function(t){var e,n,o=[],r=t&&t.options&&t.options.time?t.options.time:120,a=new Date,u=new Date,d=JSON.parse(stbDownloadManager.GetQueueInfo()),c=this;for(n=t&&t.options&&t.options.domains?t.options.domains:["echo-01.infomir.com","echo-03.infomir.com"],window.MODE_STALKER&&(n=window.core.backend.settings.mtr_hostnames||[],r=window.core.backend.settings.mtr_report_cycles||60),u.setSeconds(a.getSeconds()+r*n.length+60),e=0;e<d.length;e++)1!==d[e].state&&2!==d[e].state||(o.push(d[e]),stbDownloadManager.StopJob(d[e].id));this.emit("render",[{items:[i("Perform diagnostics")+"..."]},{items:[i("Start")+": "+a.getHours()+":"+s.addZero(a.getMinutes())+":"+s.addZero(a.getSeconds())]},{items:[i("Estimated time of completion")+": "+u.getHours()+":"+s.addZero(u.getMinutes())+":"+s.addZero(u.getSeconds())]}]),setTimeout(function(){var t,e,a=n.length,s=[{items:[i("IP Address"),i("Loss"),i("Ping")]}],u="",d="";for(t=0;t<a;t++)d=gSTB.RDir("mtr --report --no-dns --report-cycles "+r+" "+n[t]),u+="Traceroute to domain: "+n[t]+"\n"+d+"\n";for((d=d.split("\n")).shift(),d.shift(),d.pop(),d.forEach(function(t){e=t.trim().replace(/\s{2,}/g," ").split(" "),s.push({items:[e[1],e[2],""+Math.round(e[5])]})}),c.emit("render",s),t=0;t<o.length;t++)stbDownloadManager.StartJob(o[t].id);!function(t){var e;if(window.core.backend){if(e=gSTB.GetEnv(JSON.stringify({varList:["language","igmp_conf","upnp_conf","mc_proxy_enabled","mc_proxy_url","input_buffer_size","timezone_conf","audio_initial_volume","audio_dyn_range_comp","audio_operational_mode","audio_stereo_out_mode","audio_spdif_mode","audio_hdmi_audio_mode","lan_noip","ipaddr_conf","dnsip","pppoe_enabled","pppoe_login","pppoe_dns1","wifi_ssid","wifi_int_ip","portal1","portal2","portal_dhcp","use_portal_dhcp","bootstrap_url","update_url","update_channel_url","ntpurl","mcip_img_conf","mcport_img_conf","netmask","tvsystem","graphicres","auto_framerate","force_dvi","gatewayip","pppoe_pwd","wifi_int_dns","wifi_auth","wifi_enc","wifi_psk","wifi_wep_key1","wifi_int_mask","wifi_int_gw","wifi_wep_def_key","wifi_wep_key2","wifi_wep_key3","wifi_wep_key4","ethinit","partition","kernel","Ver_Forced","componentout","bootupgrade","do_factory_reset","serial#","Boot_Version","timezone_conf_int","showlogo","logo_x","logo_y","bg_color","fg_color","video_clock","front_panel","ts_endType","Image_Date","Image_Version","Image_Desc","ts_on","lang_audiotracks","autoupdate_cond","settMaster","stdin","stdout","stderr","bootcmd","ethaddr","betaupdate_cond","lang_subtitles","subtitles_on","ssaverDelay","autoupdateURL"]})),t)try{(e=JSON.parse(e)).result.traceroute=t,e=JSON.stringify(e)}catch(n){e=JSON.stringify({errCode:0,errMsg:"",result:t})}window.core.backend.request("/network-diagnostic",{headers:{"Content-Type":"application/x-www-form-urlencoded"},method:"PUT",onload:function(t,e){},body:"body="+e})}}(u)},0)},t.exports={onInit:function(t,e){e()},onAppInit:function(t,e){e(null,{})},onSettingsInit:function(t,e){r.load({name:window.core.environment.language,path:t.path+"lang"},function(){i=r.gettext,e(null,{content:[d(t)]})})}}},function(t,e,n){"use strict";var o=n(0),i=n(3),r=new o;function a(t){var e=new i(t);r._=r.gettext=e.gettext,r.pgettext=e.pgettext,r.ngettext=e.ngettext}r.defaultLanguage="en",r.load=function(t,e){var n;e=e||null,t.ext=t.ext||"json",t.path=t.path||"lang",t.name===r.defaultLanguage?(a(),null!==e&&e(null)):((n=new XMLHttpRequest).onload=function(){var t,o;try{o=JSON.parse(n.responseText)}catch(e){t=e}t?n.onerror(t):(a(o),null!==e&&e(null),r.events["load"]&&r.emit("load"))},n.ontimeout=n.onerror=function(t){a(),null!==e&&e(null),r.events["error"]&&r.emit("error",t)},n.open("GET",t.path+"/"+t.name+"."+t.ext,!0),n.send(null))},t.exports=r},function(module,exports,__webpack_require__){"use strict";function Gettext(config){var data,meta;config=config||{},data=config.data||{},data[""]=data[""]||{},meta=config.meta,this.gettext=function(t){return data[""][t]||t},this.pgettext=function(t,e){return data[t]&&data[t][e]||e},this.ngettext=function(msgId,plural,value){var n,evalResult;return data&&meta&&data[""][msgId]?(evalResult=eval("n = "+value+"; "+meta.plural),"boolean"==typeof evalResult&&(evalResult=+evalResult),data[""][msgId][evalResult]):1===value?msgId:plural}}Gettext.prototype.constructor=Gettext,module.exports=Gettext}]);
//# sourceMappingURL=main.js.map