testing About page revision
authordrowe67 <drowe67@01035d8c-6547-0410-b346-abe4f91aad63>
Wed, 6 Jan 2010 21:16:16 +0000 (21:16 +0000)
committerdrowe67 <drowe67@01035d8c-6547-0410-b346-abe4f91aad63>
Wed, 6 Jan 2010 21:16:16 +0000 (21:16 +0000)
git-svn-id: https://svn.code.sf.net/p/freetel/code@100 01035d8c-6547-0410-b346-abe4f91aad63

14 files changed:
easy-asterisk-gui/Makefile
easy-asterisk-gui/about.sh [new file with mode: 0644]
easy-asterisk-gui/ajamindex.html [deleted file]
easy-asterisk-gui/at-530.html
easy-asterisk-gui/extensions.conf
easy-asterisk-gui/faq.html [new file with mode: 0644]
easy-asterisk-gui/ipphones.sh
easy-asterisk-gui/login.sh
easy-asterisk-gui/menu.html
easy-asterisk-gui/network.sh
easy-asterisk-gui/phones.pl
easy-asterisk-gui/phones.sh
easy-asterisk-gui/sip.conf
easy-asterisk-gui/tooltips.html

index 2543554b01aef06027112593c893929af1574dcc..746b380bab30d052799a584640fb157fa2401bab 100644 (file)
@@ -1,13 +1,12 @@
 # Makefile
 # David Rowe 1 Jan 2010
-# Makefile for easy Asterisk GUI
-
-TESTIP=192.168.1.150
-
-#test:
-#      rcp set_network.sh get_network.sh root@$(TESTIP):/var/lib/asterisk/scripts
-#      rcp index.html root@$(TESTIP):/var/lib/asterisk/static-http/
+# 
+# Makefile for Easy Asterisk GUI
+#
+# usage: make TESTIP=test.machine.ip|hostname test
+#        make TESTIP=192.168.1.150 test
+#        make TESTIP=boris test
 
 test:
-       rcp at-530.html ipphones.pl ipphones.sh ipphones.js voipline.jpg anphone.png phoneline.jpg ipphone.png phones.pl tooltips.html phones.sh phones.js tick.png cross.png banner.html menu.html check_loggedin.sh logout.sh login.sh network.sh network.js set_network.sh tooltip.js tooltip.css root@$(TESTIP):/www/cgi-bin
+       rcp about.sh at-530.html ipphones.pl ipphones.sh ipphones.js voipline.jpg anphone.png phoneline.jpg ipphone.png phones.pl tooltips.html phones.sh phones.js tick.png cross.png banner.html menu.html check_loggedin.sh logout.sh login.sh network.sh network.js set_network.sh tooltip.js tooltip.css root@$(TESTIP):/www/cgi-bin
        rcp sip.conf extensions.conf root@$(TESTIP):/etc/asterisk
diff --git a/easy-asterisk-gui/about.sh b/easy-asterisk-gui/about.sh
new file mode 100644 (file)
index 0000000..36d06c5
--- /dev/null
@@ -0,0 +1,81 @@
+#!/bin/sh -x
+# about.sh
+# David Rowe 7 Jan 2010
+# About screen for Easy Asterisk GUI
+
+# check we are logged in
+
+echo $HTTP_COOKIE | grep "loggedin" > /dev/null
+if [ $? -eq 1 ]; then
+    echo "<html>"
+    echo "<head>"
+    echo '<meta http-equiv="REFRESH" content="0;url=http:login.sh">'
+    echo "</head>"
+    echo "</html>"
+    exit
+fi
+
+# Construct the web page -------------------------------
+
+cat <<EOF
+<script src="prototype.js"></script>
+<link href="astman.css" media="all" rel="Stylesheet" type="text/css" />
+<script type="text/javascript" src="tooltip.js"></script>
+<link rel="stylesheet" href="tooltip.css" type="text/css" />
+EOF
+
+cat << EOF
+<html>
+<title>Easy Asterisk - About</title>
+EOF
+
+cat tooltips.html
+echo '<table align="center" width=800>'
+cat banner.html
+echo "    <tr>"
+cat menu.html    
+cat <<EOF
+
+    <td valign="top">
+
+    <table align="right" width=600>
+      <tr><td align="left" valign="top"><h2>About</h2></td></tr>
+      <tr><td>&nbsp;</td></tr>
+      <tr><td>Easy Asterisk $Revision$</td></tr>
+EOF
+echo "      <tr><td>&nbsp;</td></tr>"
+echo "      <tr><td><h3>cat /proc/version</h3></td></tr>"
+cat /proc/version
+echo "      <tr><td>&nbsp;</td></tr>"
+echo "      <tr><td><h3>ipkg list_installed</h3></td></tr>"
+ipkg list_installed
+echo "      <tr><td>&nbsp;</td></tr>"
+echo "      <tr><td><h3>cat /proc/loadav</h3></td></tr>"
+cat /proc/loadav
+echo "      <tr><td>&nbsp;</td></tr>"
+echo "      <tr><td><h3>uptime</h3></td></tr>"
+uptime
+echo "      <tr><td>&nbsp;</td></tr>"
+echo "      <tr><td><h3>cat /proc/meminfo</h3></td></tr>"
+cat /proc/meminfo
+echo "      <tr><td>&nbsp;</td></tr>"
+echo "      <tr><td><h3>cat /proc/cmdline</h3></td></tr>"
+cat /proc/cmdline
+echo "      <tr><td>&nbsp;</td></tr>"
+echo "      <tr><td><h3>cat /proc/cpuinfo</h3></td></tr>"
+cat /proc/cpuinfo
+echo "      <tr><td>&nbsp;</td></tr>"
+echo "      <tr><td><h3>cat /proc/mtd</h3></td></tr>"
+cat /proc/mtd
+
+    </table>
+
+    </td>
+
+    </tr>
+
+</table>
+</body>
+</html>
+EOF
+
diff --git a/easy-asterisk-gui/ajamindex.html b/easy-asterisk-gui/ajamindex.html
deleted file mode 100644 (file)
index e6e078d..0000000
+++ /dev/null
@@ -1,379 +0,0 @@
-<script src="prototype.js"></script>
-<script src="astman.js"></script>
-<link href="astman.css" media="all" rel="Stylesheet" type="text/css" />
-
-<script>
-       var logins = new Object;
-       var logoffs = new Object;
-       var channels = new Object;
-       var pongs = new Object;
-       var loggedon = -1;
-       var selectedchan = null;
-       var hungupchan = "";
-       var transferedchan = "";
-       var script_path = "/var/lib/asterisk/scripts/";
-
-       var demo = new Object;
-       
-       function loggedOn() {
-               if (loggedon == 1)
-                       return;
-               loggedon = 1;
-               updateButtons();
-               $('statusbar').innerHTML = "<i>Retrieving channel status...</i>";
-               astmanEngine.pollEvents();
-               astmanEngine.sendRequest('action=status', demo.channels);
-       }
-       
-       function clearChannelList() {
-               $('channellist').innerHTML = "<i class='light'>Not connected</i>";
-       }
-
-       function loggedOff() {
-               if (loggedon == 0)
-                       return;
-               loggedon = 0;
-               selectedchan = null;
-               updateButtons();
-               astmanEngine.channelClear();
-               clearChannelList();
-       }
-       
-       function updateButtons()
-       {
-               if ($(selectedchan)) {
-                       $('transfer').disabled = 0;
-                       $('hangup').disabled = 0;
-               } else {
-                       $('transfer').disabled = 1;
-                       $('hangup').disabled = 1;
-                       selectedchan = null;
-               }
-               if (loggedon) {
-                       $('username').disabled = 1;
-                       $('secret').disabled = 1;
-                       $('logoff').disabled = 0;
-                       $('login').disabled = 1;
-                       $('refresh').disabled = 0;
-
-                       $('static').disabled = 0;
-                       $('dhcp').disabled = 0;
-                       $('ipaddress').disabled = 0;
-                       $('netmask').disabled = 0;
-                       $('gateway').disabled = 0;
-                       $('dns').disabled = 0;
-                       $('networkapply').disabled = 0;
-
-               } else {
-                       $('username').disabled = 0;
-                       $('secret').disabled = 0;
-                       $('logoff').disabled = 1;
-                       $('login').disabled = 0;
-                       $('refresh').disabled = 1;
-
-                       $('ipaddress').value = "";
-                       $('netmask').value = "";
-                       $('gateway').value = "";
-                       $('dns').value = "";
-
-                       $('static').disabled = 1;
-                       $('dhcp').disabled = 1;
-                       $('ipaddress').disabled = 1;
-                       $('netmask').disabled = 1;
-                       $('gateway').disabled = 1;
-                       $('dns').disabled = 1;
-                       $('networkapply').disabled = 1;
-               }
-       }
-       
-       demo.channelCallback = function(target) {
-               selectedchan = target;
-               updateButtons();
-       }
-       
-       demo.channels = function(msgs) {
-               resp = msgs[0].headers['response'];
-               if (resp == "Success") {
-                       loggedOn();
-               } else
-                       loggedOff();
-
-               for (i=1;i<msgs.length - 1;i++) 
-                       astmanEngine.channelUpdate(msgs[i]);
-               //$('channellist').innerHTML = astmanEngine.channelTable(demo.channelCallback);
-               $('statusbar').innerHTML = "Ready";
-       }
-
-       demo.logins = function(msgs) {
-               $('statusbar').innerHTML = msgs[0].headers['message'];
-               resp = msgs[0].headers['response'];
-               if (resp == "Success") {
-                       loggedOn();
-                       $('channellist').innerHTML += 'demo.logins<br>';
-                        doGetIP1();
-                       }
-               else
-                       loggedOff();
-       };
-       
-       
-       demo.logoffs = function(msgs) {
-               $('statusbar').innerHTML = msgs[0].headers['message'];
-               loggedOff();
-       };
-
-       demo.system = function(msgs) {
-               $('statusbar').innerHTML = msgs[0].headers['message'];
-       };
-
-       demo.setstaticip = function(msgs) {
-               $('statusbar').innerHTML = msgs[0].headers['message'];
-       };
-
-       demo.getIP2 = function(msgs) {
-               $('channellist').innerHTML += 'demo.getIP2<br>';
-                //var n = msgs[0].names[3];
-               //$('statusbar').innerHTML = msgs[0].headers[n];
-               for (x=0;x<msgs[0].names.length;x++) {
-                 var line = msgs[0].headers[msgs[0].names[x]];
-                 line = line.toLowerCase();
-                 line = line.replace(/\"/g,"");
-                 line = line.replace(" ","");
-                 var split_line = line.split('=');
-                 if (split_line[0]=="dhcp") {
-                   if (split_line[1]=="yes") {
-                       $('dhcp').click();
-                        // grey out static IP fields but still load them
-                        // with values dhcp has set up
-                       $('ipaddress').disabled = 1;
-                       $('netmask').disabled = 1;
-                       $('gateway').disabled = 1;
-                       $('dns').disabled = 1;
-                   }
-                    else
-                       $('static').click();    
-                 }
-                 if (split_line[0]=="ipaddress") {
-                   $('ipaddress').value = split_line[1];
-                 }
-                 if (split_line[0]=="netmask") {
-                   $('netmask').value = split_line[1];
-                 }
-                 if (split_line[0]=="gateway") {
-                   $('gateway').value = split_line[1];
-                 }
-                 if (split_line[0]=="dns") {
-                   $('dns').value = split_line[1];
-                 }
-                 $('statusbar').innerHTML = split_line;
-               }
-
-       }
-       demo.hungup = function(msgs) {
-               $('statusbar').innerHTML = "Hungup " + hungupchan;
-       }
-       
-
-        demo.networkApply = function(msgs) {
-               $('statusbar').innerHTML = msgs[0].headers['message'];
-        }
-
-       demo.transferred = function(msgs) {
-               $('statusbar').innerHTML = "Transferred " + transferredchan;
-       }
-
-       demo.getIP1  = function(msgs) {
-               //astmanEngine.sendRequest('action=getconfig&filename=network.conf',demo.getip);
-               $('channellist').innerHTML += 'demo.getIP1<br>';
-               astmanEngine.sendRequest('action=getconfig&filename=network.conf', demo.getIP2);
-        }
-
-
-       function doHangup() {
-               hungupchan = selectedchan;
-               astmanEngine.sendRequest('action=hangup&channel=' + selectedchan, demo.hungup);
-       }
-
-       function doStatus() {
-               $('statusbar').innerHTML = "<i>Updating channel status...</i>";
-               astmanEngine.channelClear();
-               astmanEngine.sendRequest('action=status', demo.channels);
-       }       
-               
-       function doLogin() {
-               $('statusbar').innerHTML = "<i>Logging in...</i>";
-               astmanEngine.sendRequest('action=login&username=' + $('username').value + "&secret=" + $('secret').value, demo.logins);
-       }
-       
-       function doTransfer() {
-               var channel = 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;
-                               astmanEngine.sendRequest('action=redirect&channel=' + selectedchan + "&priority=1&extrachannel=" + altchan + "&exten=" + exten, demo.transferred);
-                       } else {
-                               transferredchan = selectedchan + " to " + exten;
-                               astmanEngine.sendRequest('action=redirect&channel=' + selectedchan + "&priority=1&exten=" + exten, demo.transferred);
-                       }
-               }
-       }
-       
-       function doLogoff() {
-               $('statusbar').innerHTML = "<i>Logging off...</i>";
-               astmanEngine.sendRequest('action=logoff', demo.logoffs);
-       }
-       
-       function doSystem() {
-               $('statusbar').innerHTML = "<i>System Call...</i>";
-               astmanEngine.sendRequest('action=originate&channel=Local%2Fexecutecommand%40default&Variable=command%3d%2Froot%2Fsys.sh%20myarg&application=noop&60000', demo.system);
-       }
-       
-       function doNetworkApply() {
-               $('statusbar').innerHTML = "<i>Set Network...</i>";
-
-               cmd = script_path + 'set_network.sh ';
-
-               if ($('dhcp').checked)
-                 cmd += 'yes';
-                else
-                  cmd += 'no ' + $('ipaddress').value + ' ' + $('netmask').value  + ' ' 
-                      + $('gateway').value  + ' ' + $('dns').value; 
-
-               url = 'action=originate&channel=' + encodeURIComponent('Local/executecommand@default') + '&' +
-                      'Variable=' + encodeURIComponent('command=' + cmd) + '&application=noop&60000';
-               
-               $('statusbar').innerHTML = cmd;
-               astmanEngine.sendRequest(url, demo.networkApply)
-       }
-
-       function doGetIP2() {
-               $('channellist').innerHTML += 'doGetIP2<br>';
-               astmanEngine.sendRequest('action=getconfig&filename=network.conf',demo.getIP2);
-       }
-
-       function doGetIP1() {
-               $('channellist').innerHTML += 'doGetIP1<br>';
-               cmd = script_path + 'get_network.sh';
-               url = 'action=originate&channel=' + encodeURIComponent('Local/executecommand@default') + '&' +
-                      'Variable=' + encodeURIComponent('command=' + cmd) + '&application=noop&60000';          
-               astmanEngine.sendRequest(url,demo.getIP1);
-       }
-
-       function doStatic() {
-               $('ipaddress').disabled = 0;
-               $('netmask').disabled = 0;
-               $('gateway').disabled = 0;
-               $('dns').disabled = 0;
-        }
-
-       function doDHCP() {
-               $('ipaddress').disabled = 1;
-               $('netmask').disabled = 1;
-               $('gateway').disabled = 1;
-               $('dns').disabled = 1;
-        }
-
-       demo.pongs  = function(msgs) {
-               resp = msgs[0].headers['response'];
-               if (resp == "Pong") {
-                       $('statusbar').innerHTML = "<i>Already connected...</i>";
-                       loggedOn();
-               } else {
-                       $('statusbar').innerHTML = "<i>Please login...</i>";
-                       loggedOff();
-               }
-       }
-       
-       demo.eventcb = function(msgs) {
-               var x;
-               if (loggedon) {
-                       //for (i=1;i<msgs.length - 1;i++) {
-                       //      astmanEngine.channelUpdate(msgs[i]);
-                       //}
-                       //$('channellist').innerHTML = astmanEngine.channelTable(demo.channelCallback);
-                       /*
-                       for (i=0;i<msgs.length;i++) {
-                               for(j=0;j<msgs[i].names.length;j++) {
-                                 nm = msgs[i].names[j];
-                                 $('channellist').innerHTML += nm + '=' + msgs[i].headers[nm] + ', ';
-                                 $('channellist').innerHTML += '<br>';
-                               }
-                               $('channellist').innerHTML += '<br>';
-                       }
-                       */
-                       astmanEngine.pollEvents();
-               }
-               updateButtons();
-       }
-       
-       function localajaminit() {
-               astmanEngine.setURL('../rawman');
-               astmanEngine.setEventCallback(demo.eventcb);
-               //astmanEngine.setDebug($('ditto'));
-               clearChannelList();
-               astmanEngine.sendRequest('action=ping', demo.pongs);
-       }
-</script>
-
-<title>Easy Asterisk&trade; GUI</title>
-<body onload="localajaminit()">
-<table align="center" width=600>
-<tr valign="top"><td>
-<table align="left">
-<tr><td colspan="2"><h2>Easy Asterisk&trade; GUI</h2></td>
-<tr><td>Username:</td><td><input id="username"></td></tr>
-<tr><td>Secret:</td><td><input type="password" id="secret"></td></tr>
-       <tr><td colspan=2 align="center">
-         <div id="statusbar">
-               <span style="margin-left: 4px;font-weight:bold">&nbsp;</span>
-         </div>
-       </td></tr>
-
-       <tr><td><input type="submit" id="login" value="Login" onClick="doLogin()"></td>
-       <td><input type="submit" id="logoff" value="Logoff" disabled=1 onClick="doLogoff()"></td></tr>
-</table>
-</td><td valign='bottom'>
-<table>
-<div style="margin-left:10;margin-right:50;margin-top:10;margin-bottom:20">
-<i></i>
-</div>
-<tr>
-       <td><input type="submit" onClick="doStatus()" id="refresh" value="Refresh"></td>
-       <td><input type="submit" onClick="doTransfer()" id="transfer" value="Transfer..."></td>
-       <td><input type="submit" onClick="doHangup()" id="hangup" value="Hangup"></td>
-       <td><input type="submit" onClick="doSystem()" id="system" value="System"></td>
-       <td><input type="submit" onClick="doGetIP1()" id="getIP1" value="Get IP 1"></td>
-       <td><input type="submit" onClick="doGetIP2()" id="getIP2" value="Get IP 2"></td>
-</tr>
-</table>
-</td></tr>
-
-<tr>
-  <tr>
-     <td><input type="radio" id="static" name="staticdhcp" disabled=1 onClick="doStatic()">Static</td>
-     <td><input type="radio" id="dhcp" name="staticdhcp" disabled=1 onClick="doDHCP()">DHCP</td>
-  </tr>
-  <tr><td>IP Address:</td><td><input id="ipaddress" disabled=1></td></tr>
-  <tr><td>Netmask:</td><td><input id="netmask" disabled=1></td></tr>
-  <tr><td>Gateway:</td><td><input id="gateway" disabled=1 ></td></tr>
-  <tr><td>DNS:</td><td><input id="dns" disabled=1></td></tr>
-  <tr><td><input type="submit" id="networkapply" value="Apply" disabled=1 onClick="doNetworkApply()"></td></tr>
-</tr>
-
-<tr><td colspan=2>
-               <div id="channellist" class="chanlist">
-               </div>
-       </td></tr>
-<tr><td align="center" colspan=2>
-       <font size=-1><i>
-               Copyright (C) 2006 Digium, Inc.  Asterisk and Digium are trademarks of Digium, Inc.
-       </i></font>
-</td></tr>
-</table>
-</body>
index 4ae7e08e6b90d0dff55283e431ffcc62f321483b..686fb7032b9c694c02c3f0f08559d45c7fc901fb 100644 (file)
@@ -9,7 +9,7 @@
 <li>Set <strong>Register Username</strong> to the phone number (e.g. 6011).
 <li>Also set </strong>Register Password</strong> to the phone number (e.g. 6011) and
 the </strong>Phone Number</strong> to the phone number (e.g. 6011).
-<li>Check the *Enable Register* box.
+<li>Check the <strong>Enable Register</strong> box.
 <li>Then click on <strong>Apply</strong>. 
-<li>Refresh this page to see if the phone is connected to your Phone system.
+<li>On your browser refresh this page to see if the phone is connected to your phone system.
 </ol>
index 48c59c1ff932bdde79916a249538b8f112995edf..30aa83d2353f2bc97e94ca9e822b015fa7d3f8ca 100644 (file)
@@ -52,3 +52,10 @@ exten => 6028,1,Dial(SIP/6028)
 exten => 6029,1,Dial(SIP/6029)
 exten => 6030,1,Dial(SIP/6030)
 
+;; Pre-configured outgoing Analog group
+
+exten => _0.,1,Dial(Zap/g1/${EXTEN:1})
+
+;; Pre-configured outgoing VOIP line
+
+exten => _1.,1,Dial(SIP/voip/${EXTEN:1})
diff --git a/easy-asterisk-gui/faq.html b/easy-asterisk-gui/faq.html
new file mode 100644 (file)
index 0000000..7f146b2
--- /dev/null
@@ -0,0 +1,11 @@
+<html>
+<h2>FAQ</h2>
+<ol>
+<li><h1>Transfer a Call</h1>
+</ol>
+
+<h2>Resources and Links</h2>
+A good book on Asterisk is <a
+href="http://astbook.asteriskdocs.org">Asterisk - The Future of
+Telephony</a>
+</html>
index fccfb08a4b137c57acc7e6e99aa5d73804436013..6894b9419e60a2ca9f29013a16df2f8a46c43ff0 100644 (file)
@@ -3,13 +3,23 @@
 # David Rowe 6 Jan 2010
 # Dashboard screen for Easy Asterisk GUI
 
+# check we are logged in
+
+echo $HTTP_COOKIE | grep "loggedin" > /dev/null
+if [ $? -eq 1 ]; then
+    echo "<html>"
+    echo "<head>"
+    echo '<meta http-equiv="REFRESH" content="0;url=http:login.sh">'
+    echo "</head>"
+    echo "</html>"
+    exit
+fi
+
 more=`echo "$QUERY_STRING" | grep -oe "more=[^&?]*" | sed -n "s/more=//p"`
 ipaddress=`ifconfig eth0 | sed -n 's/.*inet addr:\(.*\)  Bcast.*/\1/p'`
 
 # Construct the web page -------------------------------
 
-sh check_loggedin.sh
-
 cat <<EOF
 <script src="prototype.js"></script>
 <link href="astman.css" media="all" rel="Stylesheet" type="text/css" />
index 3213d685ca5041049425d286e6b8e9b1d40d0d60..f1afcd26e141d658344b40f71c6a042d7a2de970 100644 (file)
@@ -27,7 +27,7 @@ EOF
       <tr><td>Password:</td><td><input type="text" name="pass" ></td></tr>
       <tr><td><input type="submit" value="Login"></td></tr>
     </tr>
-    <tr><td></td><td>Default is root/uClinux</td>
+    <tr><td></td><td>Default user/password is root/uClinux</td>
     </table>
     </form>
     </html>
index d56b597dc29bd05a3d4a6125b8824816db21c2cf..ff0bb66a7355ff7566ed7bed5b710e06e56bc802 100644 (file)
@@ -1,24 +1,33 @@
     <div id="admin_tip" class="tip">Change your password, Time & time zone, Reset the defaults, Install new software</div>
     <div id="network_tip" class="tip">Connect the phone system to your network and the Internet</div>
-    <div id="phones_tip" class="tip">Set up your phones, phone lines and phone calls</div>
+    <div id="phones_tip" class="tip">Lists your phones and phone lines</div>
     <div id="ipphones_tip" class="tip">Set up your IP phones</div>
+    <div id="about_tip" class="tip">Boring information like software version numbers</div>
+    <div id="faq_tip" class="tip">Frequently asked questions and links to further information</div>
+    <div id="logout_tip" class="tip">I think you can work this one out....</div>
     <td valign="top" >
        <table align="right" width=200>
        <tr><td><h2>&nbsp;</h2></td></tr>
+       <tr onMouseOver="popUp(event,'about_tip')" onmouseout="popUp(event,'about_tip')">
+         <td><a href="about.sh">About</a></td>
+       </tr>
        <tr onMouseOver="popUp(event,'admin_tip')" onmouseout="popUp(event,'admin_tip')">
          <td><a href="admin.sh">Admin</a></td>
        </tr>
-       <tr onMouseOver="popUp(event,'network_tip')" onmouseout="popUp(event,'network_tip')">
-         <td><a href="network.sh">Network</a></td>
+       <tr onMouseOver="popUp(event,'faq_tip')" onmouseout="popUp(event,'faq_tip')">
+         <td><a href="ipphones.sh">FAQ</a></td>
        </tr>
        <tr onMouseOver="popUp(event,'ipphones_tip')" onmouseout="popUp(event,'ipphones_tip')">
          <td><a href="ipphones.sh">IP Phones</a></td>
        </tr>
+       <tr onMouseOver="popUp(event,'logout_tip')" onmouseout="popUp(event,'logout_tip')">
+         <td><a href="logout.sh">Logout</a></td>
+       </tr>
        <tr onMouseOver="popUp(event,'phones_tip')" onmouseout="popUp(event,'phones_tip')">
          <td><a href="phones.sh">Phones</a></td>
        </tr>
-       <tr>
-         <td><a href="logout.sh">Logout</a></td>
+       <tr onMouseOver="popUp(event,'network_tip')" onmouseout="popUp(event,'network_tip')">
+         <td><a href="network.sh">Network</a></td>
        </tr>
        </table>
     </td>
index d57854cbddad29af1effb5b293dd41fee09dc310..41853ec056a84726eb11e08e10273e7d4afceea7 100644 (file)
@@ -3,6 +3,18 @@
 # David Rowe 4 Jan 2010
 # CGI for Easy Asterisk network GUI
 
+# check we are logged in
+
+echo $HTTP_COOKIE | grep "loggedin" > /dev/null
+if [ $? -eq 1 ]; then
+    echo "<html>"
+    echo "<head>"
+    echo '<meta http-equiv="REFRESH" content="0;url=http:login.sh">'
+    echo "</head>"
+    echo "</html>"
+    exit
+fi
+
 echo `date` " get_network.sh" >> /tmp/easy_gui.log
 
 if [ -f /etc/rc.d/S10network ]; then
@@ -39,8 +51,6 @@ fi
 
 # Construct the web page -------------------------------
 
-sh check_loggedin.sh
-
 cat <<EOF
 <script src="prototype.js"></script>
 <link href="astman.css" media="all" rel="Stylesheet" type="text/css" />
index 3b3262c2ed7e2858cc4752af2cca5d76fc6b6aef..538c7eaf197453557313def10574c7ff69cafec3 100755 (executable)
@@ -85,7 +85,7 @@ $tooltip_port = "onMouseOver=\"popUp(event,'phone_port_phone')\" onmouseout=\"po
 
 foreach $a (sort keys %analog) {
     if ($zap{$a} eq "fxs") {
-       $icon = "<img src=\"anphone.png\" alt=\"Analog Phone\" />";
+       $icon = "<img src=\"tick.png\" alt=\"Analog Phone OK\" />";
        print "<tr><td $tooltip_ext>$analog{$a}</td><td $tooltip_anphone>Analog Phone</td><td $tooltip_port>Port $a</td><td>$icon</td></tr>\n";
     }
 }
@@ -97,7 +97,7 @@ $tooltip_ipphone_ip = "onMouseOver=\"popUp(event,'phone_ipphone_ip')\" onmouseou
 
 foreach $s (sort keys %sip) {
     if ($sip{$s} eq "OK") {
-       $icon = "<img src=\"ipphone.png\" alt=\"IP Phone\" />";
+       $icon = "<img src=\"tick.png\" alt=\"IP Phone OK\" />";
        print "<tr><td $tooltip_ext>$s</td><td $tooltip_ipphone>IP Phone</td<td $tooltip_ipphone_ip>$ipad{$s}</td><td>$icon</td></tr>\n";
     }
 }
@@ -115,11 +115,12 @@ print "<tr $tool_tip><td colspan=\"4\" align=\"left\" valign=\"top\" ><h2>Phone
 
 $tooltip_phoneline = "onMouseOver=\"popUp(event,'phone_phoneline')\" onmouseout=\"popUp(event,'phone_phoneline')\"";
 $tooltip_port = "onMouseOver=\"popUp(event,'phone_port_line')\" onmouseout=\"popUp(event,'phone_port_line')\"";
+$tooltip_line_prefix = "onMouseOver=\"popUp(event,'phone_line_prefix')\" onmouseout=\"popUp(event,'phone_line_prefix')\"";
 
 foreach $a (sort keys %analog) {
     if ($zap{$a} eq "fxo") {
-       $icon = "<img src=\"phoneline.jpg\" alt=\"Phone Line\" />";
-       print "<tr><td>$analog{$a}</td><td $tooltip_phoneline>Analog</td><td $tooltip_port>Port $a</td><td>$icon</td></tr>\n";
+       $icon = "<img src=\"tick.jpg\" alt=\"Phone Line OK\" />";
+       print "<tr><td $tooltip_line_prefix>0</td><td $tooltip_phoneline>Analog Line</td><td $tooltip_port>Port $a</td><td>$icon</td></tr>\n";
     }
 }
 
@@ -127,11 +128,12 @@ foreach $a (sort keys %analog) {
 
 $tooltip_voipline = "onMouseOver=\"popUp(event,'phone_voipline')\" onmouseout=\"popUp(event,'phone_voipline')\"";
 $tooltip_voipline_ip = "onMouseOver=\"popUp(event,'phone_voipline_ip')\" onmouseout=\"popUp(event,'phone_voipline_ip')\"";
+$tooltip_voipline_prefix = "onMouseOver=\"popUp(event,'phone_voipline_prefix')\" onmouseout=\"popUp(event,'phone_voipline_prefix')\"";
 
 foreach $s (sort keys %voip) {
     if ($voip{$s} eq "OK") {
-       $icon = "<img src=\"voipline.jpg\" alt=\"VOIP Line\" />";
-       print "<tr><td>$s</td><td $tooltip_voipline>VOIP</td><td $tooltip_voipline_ip>$ipad{$s}</td><td>$icon</td></tr>\n";
+       $icon = "<img src=\"tick.png\" alt=\"VOIP Line OK\" />";
+       print "<tr><td $tooltip_voipline_prefix>1</td><td $tooltip_voipline>VOIP Line</td><td $tooltip_voipline_ip>$ipad{$s}</td><td>$icon</td></tr>\n";
     }
 }
 
index ea0a8cb7c1f5298fee43ed73bac39f75dd375279..2482c6e7807bfc92bc68b98ebe7ccafa10690bcb 100644 (file)
@@ -3,6 +3,18 @@
 # David Rowe 4 Jan 2010
 # Phones screen for Easy Asterisk GUI
 
+# check we are logged in
+
+echo $HTTP_COOKIE | grep "loggedin" > /dev/null
+if [ $? -eq 1 ]; then
+    echo "<html>"
+    echo "<head>"
+    echo '<meta http-equiv="REFRESH" content="0;url=http:login.sh">'
+    echo "</head>"
+    echo "</html>"
+    exit
+fi
+
 # See if we have Internet connectivity, first check dns as time outs can be very slow
 
 dns=`cat /etc/resolv.conf | awk '/^nameserver/ {print $2}'`
@@ -19,8 +31,6 @@ ipaddress=`ifconfig eth0 | sed -n 's/.*inet addr:\(.*\)  Bcast.*/\1/p'`
 
 # Construct the web page -------------------------------
 
-sh check_loggedin.sh
-
 cat <<EOF
 <script src="prototype.js"></script>
 <link href="astman.css" media="all" rel="Stylesheet" type="text/css" />
index 3cd56ed37512518e297caf401d51b6f2dd1fa7ff..2b39f5604a19f401aeef87cfda6d5816444c6249 100644 (file)
@@ -533,7 +533,7 @@ allow=ulaw,g729
 
 ; Pre-configured SIP trunks
 
-[voip1]
+[voip]
 type=friend
 context=default
 user=user
index 41e067bac0c7c689053927d902eaedc871f6ae7f..523d761f17b14900fca9c507ae3a0a5e1597cfd0 100644 (file)
@@ -44,8 +44,8 @@
                          List of phone lines available.  Phone lines
                          are used to make and receive outside calls.
                          You can use regular Analog phone lines or
-                         VOIP.  VOIP Phone lines require an account
-                         with an Internet Telephone Service provider.
+                         VOIP.  VOIP phone lines require an account
+                         with an Internet Telephone Service Provider.
                          Analog phone lines require hardware to be
                          installed in your Phone System.</div>
 
                         Port on the rear of your Phone System for this
                         phone line.  Plug the phone line into this Port.</div>
 
+<div id="phone_line_prefix" class="tip">
+                        Dial 0 for an Analog outside line.  For example to call 5551234 dial 05551234</div>
+
 <div id="phone_ipphone_ip" class="tip">
                         IP Address of this phone on your network</div>
 
 <div id="phone_voipline_ip" class="tip">
-                        IP Address of the VOIP Internet Service Telephone Provider</div>
+                        IP Address of the VOIP Internet Telephone Service Provider</div>
+
+<div id="phone_voipline_prefix" class="tip">
+                        Dial 1 for a VOIP outside line.  For example to call 5551234 dial 15551234</div>
 
 <div id="phone_addipphone" class="tip">
                         Instructions and help on adding a new IP phone</div>
@@ -72,7 +78,7 @@
 <div id="ipphones_ipphones" class="tip">
                         List of possible IP phones.  For a new phone
                         choose any Available number.  Refresh this
-                        page tp update</div>
+                        page to update</div>
 
 <div id="ipphones_connected" class="tip">
                         The IP phone is connected to your phone system and ready to use</div>