--- /dev/null
+#!/bin/sh
+# getdhcp.cgi
+# David Rowe 8 March 2011
+#
+# CGI to return DHCP config details
+
+cat <<EOF
+Content-type: text/html
+
+<html>
+<head>
+<meta http-equiv="cache-control" content="no-cache">
+<meta http-equiv="pragma" content="no-cache">
+<meta http-equiv="expires" content="-1">
+</head>
+<body>
+EOF
+
+if [ -f /etc/rc.d/S10network ]; then
+ dhcp=yes
+ ipaddress=`ifconfig eth0 | sed -n 's/.*inet addr:\(.*\) Bcast.*/\1/p'`
+ netmask=`ifconfig eth0 | sed -n 's/.*Mask:\(.*\)\s*/\1/p'`
+ gateway=`route -n | awk '/^0.0.0.0/ {print $2}'`
+ dns=`cat /etc/resolv.conf | awk '/^nameserver/ {print $2}'`
+ echo DHCP=\"yes\"
+ echo IPADDRESS=\"$ipaddress\"
+ echo NETMASK=\"$netmask\"
+ echo GATEWAY=\"$gateway\"
+ echo DNS=\"$dns\"
+else
+ echo DHCP=\"no\"
+fi
+
+cat <<EOF
+</body>
+</html>
+EOF
--- /dev/null
+; extensions.conf
+; David Rowe 4 Jan 2010
+;
+
+; Designed for Mini Asterisk GUI. However you can hand modify as much
+; as you like, as GUI scripts read/and write regular extensions.conf
+; without messing with your custom dialplan
+
+
+[general]
+static = yes
+writeprotect = no
+autofallthrough = yes
+clearglobalvars = no
+priorityjumping = no
+
+[default]
+
+exten => 555,1,Answer
+exten => 555,2,Read(ip||3)
+exten => 555,3,Ping(10.130.1.${ip})
+
+exten => 556,1,Answer
+exten => 556,2,milliwatt
+
+exten => 557,1,Answer
+exten => 557,2,Echo
+
+; Pre-configured analog extensions, depends on IP0X model and what modules
+; are installed. Some of these may map to FXO ports
+
+; mini_ext tag causes GUI to pick these up and display on GUI
+
+exten => 6001,1,Dial(Zap/1) ; mini_ext
+exten => 6002,1,Dial(Zap/2) ; mini_ext
+exten => 6003,1,Dial(Zap/3) ; mini_ext
+exten => 6004,1,Dial(Zap/4) ; mini_ext
+exten => 6005,1,Dial(Zap/5) ; mini_ext
+exten => 6006,1,Dial(Zap/6) ; mini_ext
+exten => 6007,1,Dial(Zap/7) ; mini_ext
+exten => 6008,1,Dial(Zap/8) ; mini_ext
+
+; Pre-configured SIP-phone extensions. Primary use case is multiple SIP
+; extensions and FXO analog Ports
+
+exten => 6011,1,Dial(SIP/6011) ; mini_ext
+exten => 6012,1,Dial(SIP/6012) ; mini_ext
+exten => 6013,1,Dial(SIP/6013) ; mini_ext
+exten => 6014,1,Dial(SIP/6014) ; mini_ext
+exten => 6015,1,Dial(SIP/6015) ; mini_ext
+exten => 6016,1,Dial(SIP/6016) ; mini_ext
+exten => 6017,1,Dial(SIP/6017) ; mini_ext
+exten => 6018,1,Dial(SIP/6018) ; mini_ext
+exten => 6019,1,Dial(SIP/6019) ; mini_ext
+exten => 6020,1,Dial(SIP/6020) ; mini_ext
+exten => 6021,1,Dial(SIP/6021) ; mini_ext
+exten => 6022,1,Dial(SIP/6022) ; mini_ext
+
+;; Pre-configured mini-asterisk outgoing Analog group
+
+exten => _0.,1,Dial(Zap/g1/${EXTEN:1})
+
+;; Pre-configured mini-asterisk outgoing VOIP line
+
+exten => _1.,1,Dial(SIP/user/${EXTEN:1})
+
+;; Pre-configured incoming calls
+
+exten => s,1,Dial(SIP/6011) ;; mini-asterisk - don't remove this comment
<td><div id="menu"></div></td>
<td valign="top">
- <form action="set_network.sh" onsubmit="return validate_form(this)" method="get">
+ <form name="network">
<table align="center" width=600 border=0>
<tr><td colspan="2" align="left" valign="top"><h2>Network</h2></td></tr>
<tr>
<td><input type="radio" id="static" name="dhcp" value="no" onClick="doStatic()">Static</td>
<td><input type="radio" id="dhcp" name="dhcp" value="yes" onClick="doDHCP()">DHCP</td>
</tr>
- <tr><td>IP Address:</td><td><input type="text" name="ipaddress" id="ipaddress" onBlur="isIP(this)"></td></tr>
- <tr><td>Netmask:</td><td><input type="text" name="netmask" id="netmask" onBlur="isIP(this)"></td></tr>
- <tr><td>Gateway:</td><td><input type="text" name="gateway" id="gateway" onBlur="isIP(this)"></td></tr>
- <tr><td>DNS:</td><td><input type="text" name="dns" id="dns" onBlur="isIP(this)"></td></tr>
+ <tr><td>IP Address:</td><td><input type="text" name="ipaddress" onBlur="isIP(this)"></td></tr>
+ <tr><td>Netmask:</td><td><input type="text" name="netmask" onBlur="isIP(this)"></td></tr>
+ <tr><td>Gateway:</td><td><input type="text" name="gateway" onBlur="isIP(this)"></td></tr>
+ <tr><td>DNS:</td><td><input type="text" name="dns" onBlur="isIP(this)"></td></tr>
<tr onMouseOver="popUp(event,'network_backdoor')" onmouseout="popUp(event,'network_backdoor')">
<td>Emergency IP:</td><td><input type="text" name="backdoor" id="backdoor" onBlur="isIP(this)"></td>
</tr>
);
if (dhcp == "no") {
- downloadUrl("/cgi-bin/getdhcpconf.cgi?file=../init.d/network-static", processDhcp);
+ downloadUrl("/cgi-bin/getconf.cgi?file=../init.d/network-static", processStatic);
}
else {
// grey out fields
- initilaisePage();
}
}
}
);
- initialisePage();
}
if (line.indexOf("DHCP=") != -1) {
var s = line.split('"');
- dhcp = "yes";
+ dhcp = s[1];
}
if (line.indexOf("IPADDRESS=") != -1) {
var s = line.split('"');
- var ip = s(2);
- document.getElementById('ip').innerHTML = ip;
+ var ipaddress = s[1];
+ document.network.ipaddress.value = ipaddress;
}
if (line.indexOf("NETMASK=") != -1) {
var s = line.split('"');
- var netmask = s(2);
- document.getElementById('netmask').innerHTML = netmask;
+ var netmask = s[1];
+ document.network.netmask.value = netmask;
}
if (line.indexOf("GATEWAY=") != -1) {
var s = line.split('"');
- var gateway = s(2);
- document.getElementById('gateway').innerHTML = gateway;
+ var gateway = s[1];
+ document.network.gateway.value = gateway;
}
if (line.indexOf("DNS=") != -1) {
var s = line.split('"');
- var dns = s(2);
- document.getElementById('dns').innerHTML = dns;
+ var dns = s[1];
+ document.network.dns.value = dns;
}
}