⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 status.html

📁 asterisk 的图形管理界面
💻 HTML
字号:
<!--
 * Asterisk-GUI	-	an Asterisk configuration interface
 *
 * Displays calls in progress - options to transfer, hangup a call
 *
 * Copyright (C) 2006-2007, Digium, Inc.
 *
 * Mark Spencer <markster@digium.com>
 * Pari Nannapaneni <pari@digium.com>
 *
 * See http://www.asterisk.org for more information about
 * the Asterisk project. Please do not directly contact
 * any of the maintainers of this project for assistance;
 * the project provides a web site, mailing lists and IRC
 * channels for your use.
 *
 * This program is free software, distributed under the terms of
 * the GNU General Public License Version 2. See the LICENSE file
 * at the top of the source tree.
 *
-->
<script src="scripts/prototype.js"></script>
<script src="scripts/rico.js"></script>
<script src="scripts/astman.js"></script>
<script src="scripts/tooltip.js"></script>
<link href="stylesheets/rico.css" media="all" rel="Stylesheet" type="text/css" />
<link href="stylesheets/schwing.css" media="all" rel="Stylesheet" type="text/css" />
<script>
var selectedchan = null;
var transferedchan = "";
var hungupchan = "";


function doHangup() {
	hungupchan = selectedchan;
	parent.astmanEngine.sendRequest('action=hangup&channel=' + selectedchan, afterHangup);
}

function afterHangup(){
	refreshChannelsList();
	gui_feedback("Hungup " + hungupchan,'default');
}


function doTransfer() {
	var channel = parent.astmanEngine.channelInfo(selectedchan);
	var exten = prompt("Enter new extension for " + selectedchan);
	var altchan;
	if (exten) {
		if (channel.link) {
			if (confirm("Transfer " + channel.link + " too?"))
				altchan = channel.link;
		}
		if (altchan) {
			transferredchan = selectedchan + " and " + altchan + " to " + exten;
			parent.astmanEngine.sendRequest('action=redirect&channel=' + selectedchan + "&priority=1&extrachannel=" + altchan + "&exten=" + exten, afterTransfer);
		} else {
			transferredchan = selectedchan + " to " + exten;
			parent.astmanEngine.sendRequest('action=redirect&channel=' + selectedchan + "&priority=1&exten=" + exten, afterTransfer);
		}
	}
}

function afterTransfer(){
	refreshChannelsList();
	gui_feedback("Transferred " + transferredchan,'default');
}

function refreshChannelsList() {
	selectedchan = null;
	_$('transfer').disabled = 1;
	_$('hangup').disabled = 1;
	gui_feedback('Updating channel status...','green',1500);
	parent.astmanEngine.channelClear();
	parent.astmanEngine.sendRequest('action=status', onStatusCheck);
	updateButtons();
}	

onStatusCheck = function(msgs) {
	if (msgs[0].headers['response'] != "Success") {
		//something went wrong - may be the user is logged out or 500 or 404  or what ever
	}

	for (i=1;i<msgs.length - 1;i++) 
		parent.astmanEngine.channelUpdate(msgs[i]);
	_$('channellist').innerHTML = parent.astmanEngine.channelTable(channelsCallback);
	gui_feedback('Ready','blue',4000);
}


function updateButtons(){
	if ($(selectedchan)) {
		_$('transfer').disabled = 0;
		_$('hangup').disabled = 0;
	} else {
		_$('transfer').disabled = 1;
		_$('hangup').disabled = 1;
		selectedchan = null;
	}
	_$('refresh').disabled = 0;
}

channelsCallback = function(target) {
	selectedchan = target;
	updateButtons();
}

parent.eventeater.eventcd = function (msgs) {
	for (i=1;i<msgs.length - 1;i++) 
		parent.astmanEngine.channelUpdate(msgs[i]);
	_$('channellist').innerHTML = parent.astmanEngine.channelTable(channelsCallback);
	parent.astmanEngine.pollEvents();
}


function localajaxinit(){
	setWindowTitle("Active Channels");
	refreshChannelsList() ;
	parent.astmanEngine.setEventCallback(parent.eventeater.eventcd );
	parent.loadscreen(this);
}

function localajaxend(){
	parent.astmanEngine.setEventCallback(parent.eventeater.eventcb );
	if( navigator.userAgent.indexOf("MSIE") != -1 ){ 
		try{ purge( document.body ); } catch(e){ }	
	}
}

</script>
<body id="foo" onload="localajaxinit()"  bgcolor="EFEFEF" onunload="localajaxend()">
<div class="mainscreenTitleBar">
	<span style="margin-left: 4px;font-weight:bold">Active Channels</span>
</div>
<div class="mainscreenContentBox" id="userscontent">
<table class="mainscreenTable" align="center">
	<tr height=32 valign="middle">
		<td align="center">
		<input type="submit" onClick="refreshChannelsList()" id="refresh" value="Refresh"  onmouseover="show_tooltip('en', 'status', 1);"  class="buttonbold">
		<input type="submit" onClick="doTransfer()" id="transfer" value="Transfer..."  onmouseover="show_tooltip('en', 'status', 2);"  class="buttonbold">
		<input type="submit" onClick="doHangup()" id="hangup" value="Hangup"  onmouseover="show_tooltip('en', 'status', 3);"  class="buttonbold">
		</td>
	</tr>
	<tr>	<td colspan=3 valign="top">
		<div id="channellist" class="chanlist" onmouseover="show_tooltip('en', 'status', 0);"></div>
		</td>
	</tr>
</table>
</div>
</body>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -