📄 misdn.html.svn-base
字号:
if(!addedcards[e]){ addedcards[e] = true; uri+= build_action('append', c, d , 'card', e ); c++; } if(PORTS[k]['portType']){ pmode_ports[PORTS[k]['portType']].push(k); } }} for( var k in PORTS ){ if( PORTS.hasOwnProperty(k) ){ if( PORTS[k]['option'] ){ uri+= build_action('append', c, d , 'option', k + ',' + PORTS[k]['option'] ); c++; } }} for( var k in pmode_ports ){ if( pmode_ports.hasOwnProperty(k) && pmode_ports[k].length ){ uri += build_action('append' , c , d , k , pmode_ports[k].join(',') ) ; c++ ; }} uri += build_action('append' , c , d , "poll" , "128") ; c++ ; uri += build_action('append' , c , d , "dsp_options" , "0") ; c++ ; uri += build_action('append' , c , d , "debug" , "0") ; c++ ; makerequest('u', "applymisdn.conf", uri, function(t) { // call the script that would generate /etc/misdn-init.conf from /etc/asterisk/applymisdn.conf parent.astmanEngine.run_tool("sh /var/lib/asterisk/scripts/editmisdn.sh applysettings", function(t) { alert("You need to restart your machine for these settings to take effect"); window.location.href= "misdn.html"; return true; }); });}var showMisdnTrunksinTable = function(){ var tbl = _$('misdntrunkstable') ; var add_fRow = function(){ var newRow = tbl.insertRow(-1); newRow.className = "frow"; var newCell0 = newRow.insertCell(0); newCell0.innerHTML = "Trunk Name"; var newCell1 = newRow.insertCell(1); newCell1.innerHTML = "Ports"; var newCell2 = newRow.insertCell(2); newCell2.innerHTML = ""; }; var addrow_totable = function(trunk){ var sno = tbl.rows.length + 1; var newRow = tbl.insertRow(-1); //newRow.id = 'misdntable_r'+port_no; //newRow["port_no"] = port_no; //if( PORTS[port_no]['edited'] ){ newRow.style.background = "#C9AAAA"; } var newCell0 = newRow.insertCell(0); newCell0.innerHTML = mISDNTRUNKS[trunk]['trunkname'] ; newCell0.align = "center"; var newCell1 = newRow.insertCell(1); newCell1.innerHTML = mISDNTRUNKS[trunk]['ports'] ; newCell1.align = "center"; var newCell2 = newRow.insertCell(2);// newCell2.innerHTML = "<input type=button value=Edit onclick=\"edit_trunk('" + trunk + "')\"> " +// "<input type=button value='Delete' onclick=\"delete_trunk('" + trunk + "')\">" ; newCell2.innerHTML = "<input type=button value='Delete' onclick=\"delete_trunk('" + trunk + "')\">" ; newCell2.align = "center"; }; ASTGUI.domActions.clear_table(tbl); add_fRow(); for( var k in mISDNTRUNKS ){ if( mISDNTRUNKS.hasOwnProperty(k) ){ addrow_totable(k); }} if(tbl.rows.length == 1){ tbl.style.display = 'none'; _$('div_noTrunks').innerHTML = '<BR><BR>You donot have any mISDN trunks defined'; }else{ tbl.style.display = ''; _$('div_noTrunks').innerHTML = '<BR>List of mISDN Service providers (trunks)'; }}function load_mISDNtrunks(){ var parseUsersConf = function(n){ if( n == "ERROR: CONFIG FILE NOT FOUND"){// misdn.conf not found return false; } for( var l in n ){ if( n.hasOwnProperty(l) && l.beginsWith('trunk_m') && n[l]['hasmisdn'] =='yes' ){ if(!mISDNTRUNKS[l]) { mISDNTRUNKS[l] = {};} mISDNTRUNKS[l]['trunkname'] = n[l]['trunkname']; mISDNTRUNKS[l]['context'] = n[l]['context']; mISDNTRUNKS[l]['ports'] = n[l]['ports']; } }; showMisdnTrunksinTable(); }; config2json("misdn.conf", 1, parseUsersConf);}var new_misdntrunk = function(){ isnewTrunk = true; _$('edit_MTrunk_ports').value = ''; _$('edit_MTrunk_trunkName').value = ''; _$('edit_trunk').style.display = "";};var canelTrunkInfo = function(){ _$('edit_trunk').style.display = "none";}var edit_trunk = function(k){ isnewTrunk = false; _$('edit_trunk').style.display = ""; _$('edit_trunk')['trunk_being_Edited'] = k;};var delete_trunk = function(k){ if(!confirm("Are you sure you want to delete this BRI Trunk ?")){ return true; } //delete in misdn.conf // delete in globals in extensions.conf // delete the DID context in extensions.conf var c = 0; var uri = build_action('delcat', c, k, "", ""); c++; makerequest('u', "misdn.conf", uri, function(t) { var c1 = 0; var uri1 = build_action('delcat', c1, "DID_" + k , "", ""); c1++; uri1 += build_action('delete', c1, "globals", k, '', "mISDN/g:" + k ); c1++; makerequest('u', "extensions.conf", uri1, function(t) { delete mISDNTRUNKS[k]; showMisdnTrunksinTable(); }); });};var updateTrunkInfo = function(){ if(isnewTrunk){ // create new trunk // get the available trunk number var getnextavailabletrunk_number = function(){ var ts = []; for(var t in mISDNTRUNKS){ if( mISDNTRUNKS.hasOwnProperty(t) ){ var i = t.split('trunk_m'); ts.push( Number(t.split('trunk_m')[1] ) ); }} if(!ts.length){ return "1"; } var c = 1 ; var sortNumbers =function(a,b){return a - b}; ts.sort(sortNumbers); for(var u =0 ; u < ts.length ; u++ ){ if( c < ts[u] ){ return c;} c++ ; } return c; }; var y = getnextavailabletrunk_number(); var newtrunkname = "trunk_m" + y; /////////////////uri += build_action('append' , c , d , "poll" , "128") ; c++ ; ///////////////// uri += build_action('newcat', c, d , "", ""); c++; ////////////////uri += build_action('update', c, 'general', '#include "../misdn-init.conf" ; = ', ''); c++; var c = 0, uri =''; uri += build_action('newcat', c, newtrunkname , "", ""); c++; uri += build_action('append' , c , newtrunkname , "trunkname", _$('edit_MTrunk_trunkName').value ) ; c++ ; uri += build_action('append' , c , newtrunkname , "context", "DID_" + newtrunkname) ; c++ ; uri += build_action('append' , c , newtrunkname , "ports", _$('edit_MTrunk_ports').value ) ; c++ ; uri += build_action('append' , c , newtrunkname , "hasmisdn", 'yes') ; c++ ; uri += build_action('append' , c , newtrunkname , "msns", '*') ; c++ ; makerequest('u', "misdn.conf", uri, function(t) { var c1 = 0, uri2 =''; uri2 += build_action('newcat', c1, "DID_"+newtrunkname, "", ""); c1++; uri2 += build_action('append' , c1, "DID_"+newtrunkname, 'include', 'default') ; c1++ ; uri2 += build_action('update', c1, 'globals', newtrunkname, 'mISDN/g:' + newtrunkname ); c++; makerequest('u', "extensions.conf", uri2, function(t) { try{ if(mISDNTRUNKS[newtrunkname]) { delete mISDNTRUNKS[newtrunkname];} mISDNTRUNKS[newtrunkname] = {}; mISDNTRUNKS[newtrunkname]['trunkname'] = _$('edit_MTrunk_trunkName').value ; mISDNTRUNKS[newtrunkname]['context'] = "DID_" + newtrunkname; mISDNTRUNKS[newtrunkname]['ports'] = _$('edit_MTrunk_ports').value; showMisdnTrunksinTable(); }catch(err){ }finally{ _$('edit_trunk').style.display = "none"; } }); }); }else{ // update existing trunk var k = _$('edit_trunk')['trunk_being_Edited']; var c = 0; var uri = build_action('update', c, k, 'ports', _$('edit_MTrunk_ports').value ); c++; uri += build_action('update', c, k, 'trunkname', _$('edit_MTrunk_trunkName').value ); c++; makerequest('u', "misdn.conf", uri, function(t) { try{ mISDNTRUNKS[k]['trunkname'] = _$('edit_MTrunk_trunkName').value ; mISDNTRUNKS[k]['ports'] = _$('edit_MTrunk_ports').value ; showMisdnTrunksinTable(); }catch(err){ }finally{ _$('edit_trunk').style.display = "none"; } }); }}</script><body onload="localajaxinit()" onunload="resetmainscreen()" bgcolor="#EFEFEF"><div style="font-size : 12px; padding : 4px 6px 4px 6px; border-style : solid none solid none; border-top-color : #BDC7E7; border-bottom-color : #182052; border-width : 1px 0px 1px 0px; background-color : #ef8700; color : #ffffff;"> <span style="margin-left: 4px;font-weight:bold;">Digital Card Configuration Wizard</span> <span style="cursor: pointer; cursor: hand;" onclick="window.location.href=window.location.href;" > <img src="images/refresh.png" title=" Refresh " border=0 > </span></div><div style="overflow:auto;left:40" id="div_misdncardstable"> <h2 align="center"><div id="b410p_cards"></div></h2> <table class="taglist" id="misdntable" cellpadding=5 cellspacing=1 border=0 align=center></table> <center> <input type="button" id="save_a" value="Update" onclick="generate_applyMisdn();"> <input type="button" id="cancel_a" value="Cancel" onclick="reloadpage();"> </center></div><div style="overflow:auto;left:40" id="div_misdnTrunkstable"> <h2 align="center"><div id='div_noTrunks'>List of mISDN Service providers (trunks)</div></h2> <table class="taglist" id="misdntrunkstable" cellpadding=5 cellspacing=1 border=0 align=center></table> <center> <input type="button" value="Add" onclick="new_misdntrunk();"> </center></div><div id="edit_trunk" STYLE="display:none; position: absolute; left: 30; top: 40; width:500; height:180; background-color:#F4EFE5; border-width: 1px; border-color: #7E5538; border-style: solid; z-index:5"> <TABLE width="100%" cellpadding=0 cellspacing=0 onmousedown="ASTGUI.startDrag(event , 'edit_trunk');"> <TR bgcolor="#7E5538" style="background-image:url('images/title_gradient.gif');"> <TD Height="20" align="right" style="cursor: move"> <A href="#" onclick="$('cancel_a').click();"><font style="color:#FFFFFF; font-size: 12px; font-weight:bold;">X</font></A> </TD> <TD width=4></TD> </TR> </TABLE> <TABLE align=center cellpadding=3 cellspacing=2 border=0> <TR> <TD align="right">TrunkName :</TD> <TD> <input type=text size=15 id="edit_MTrunk_trunkName" class="input8"></TD> </TR> <TR> <TD align="right" valign=top>Port(s):</TD> <TD> <input type=text size=15 id="edit_MTrunk_ports" class="input8"><BR> Ex: 1 or 1,2,3 </TD> </TR> <TR> <TD colspan=2 align=center height=50 valign=middle> <input type="button" id="save_a" value="Update" onclick="updateTrunkInfo();"> <input type="button" id="cancel_a" value="Cancel" onclick="canelTrunkInfo();"> </TD> </TR> </TABLE></div><div id="errmsg" style="display:none"></div><div id="bg_transparent" STYLE="display:none; position: absolute; left: 0; top: 0; width:100%; height:100%; background-color:#FFFFFF; filter:alpha(opacity=50); -moz-opacity:.50;opacity:.50; border-width: 0px; z-index:4"></div><div id="edit_port" STYLE="display:none; position: absolute; left: 30; top: 40; width:500; height:180; background-color:#F4EFE5; border-width: 1px; border-color: #7E5538; border-style: solid; z-index:5"> <TABLE width="100%" cellpadding=0 cellspacing=0 onmousedown="ASTGUI.startDrag(event , 'edit_port');"> <TR bgcolor="#7E5538" style="background-image:url('images/title_gradient.gif');"> <TD Height="20" align="right" style="cursor: move"> <A href="#" onclick="$('cancel_a').click();"><font style="color:#FFFFFF; font-size: 12px; font-weight:bold;">X</font></A> </TD> <TD width=4></TD> </TR> </TABLE> <TABLE align=center cellpadding=2 cellspacing=2 border=0> <TR> <TD align="right">Card/Port:</TD> <TD> <span id="editport_label"></span> </TD> </TR> <TR> <TD align="right">Port Settings:</TD> <TD> <select id="editport_type"> <option value="te_ptp">TE-Mode, PTP</option> <option value="te_ptmp">TE-Mode, PTMP</option> <option value="te_capi_ptp">TE-Mode(Capi), PTP</option> <option value="te_capi_ptmp">TE-Mode(Capi), PTMP</option> <option value="nt_ptp">NT-Mode, PTP</option> <option value="nt_ptmp">NT-Mode, PMTP</option> </select> </TD> </TR> <TR> <TD align="right">Port Options (Optional):</TD> <TD> <select id="editport_option"> <option value="master_clock">Master Clock</option> <option value="ais,nocrc4">ais, nocrc4</option> <option value="optical,los,ais,slip">optical, los, ais, slip</option> <option value=''> None </option> </select> </TD> </TR> <TR> <TD colspan=2 align=center height=50 valign=middle> <input type="button" id="save_a" value="Update" onclick="updatePortInfo();"> <input type="button" id="cancel_a" value="Cancel" onclick="canelPortInfo();"> </TD> </TR> </TABLE></div></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -