[PATCH v3] fff-web: Show WiFi channels

Adrian Schmutzler freifunk at adrianschmutzler.de
Di Okt 24 23:44:37 CEST 2017


Channels displayed are based on json!

This is combined with a reorganization of the columns.

Signed-off-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
Tested-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>

Changes in v2:
 - Rebased onto fff-hoods: Fix case of missing keyxchangev2data

Changes in v3:
 - Display client AP ssid
 - Display both value demanded by json and value actually set
---
 .../fff/fff-web/files/www/ssl/cgi-bin/home.html    | 58 +++++++++++++++-------
 1 file changed, 40 insertions(+), 18 deletions(-)

diff --git a/src/packages/fff/fff-web/files/www/ssl/cgi-bin/home.html b/src/packages/fff/fff-web/files/www/ssl/cgi-bin/home.html
index cbce768..9b1a0cf 100755
--- a/src/packages/fff/fff-web/files/www/ssl/cgi-bin/home.html
+++ b/src/packages/fff/fff-web/files/www/ssl/cgi-bin/home.html
@@ -1,11 +1,13 @@
 #!/usr/bin/haserl
 
 <%
+. /lib/functions/fff/keyxchange
+
 # prepare
 if [ "$REQUEST_METHOD" == "POST" ] ; then
 	if [ "$POST_resethood" != "" ] ; then
 		# reset hood
-		rm /www/public/keyxchangev2data 2> /dev/null
+		rm "$hoodfilecopy" 2> /dev/null
 		MSG='<span class="green">Hood-Daten werden innerhalb von 5 Minuten neu prozessiert.</span>'
 	fi
 fi
@@ -55,15 +57,36 @@ if [ -n "$jsonfile" ] ; then
 	json_select hood
 	json_get_var mesh_type2 mesh_type2
 	json_get_var mesh_type5 mesh_type5
+	json_get_var chan2ghz channel2
+	json_get_var chan5ghz channel5
+	json_get_var essid essid
 else
 	mesh_type2="-"
 	mesh_type5="-"
+	chan2ghz="-"
+	chan5ghz="-"
+	essid="-"
+fi
+
+real_chan2ghz="--"
+real_essid="-"
+real_chan5ghz="--"
+real_essid="-"
+if uci -q get wireless.w2ap ; then
+	radio2="$(uci -q get wireless.w2ap.device)"
+	real_chan2ghz="$(uci -q get "wireless.${radio2}.channel")"
+	real_essid="$(uci -q get wireless.w2ap.ssid)"
+fi
+if uci -q get wireless.w5ap ; then
+	radio5="$(uci -q get wireless.w5ap.device)"
+	real_chan5ghz="$(uci -q get "wireless.${radio5}.channel")"
+	real_essid="$(uci -q get wireless.w5ap.ssid)"
 fi
 
 %>
 <table style="width: 100%;">
 <tr><td>
-<fieldset style="min-height: 15.05em;">
+<fieldset style="padding-bottom:12px">
 	<legend>System</legend>
 	<table>
 		<tr><th>Name:</th><td><%= ${HOSTNAME} %></td></tr>
@@ -78,8 +101,18 @@ fi
 		<tr><th>Uhrzeit:</th><td><% date %></td></tr>
 	</table>
 </fieldset>
+<fieldset style="padding-bottom:12px">
+	<legend>Netz: Freifunk</legend>
+	<table>
+		<tr><th>Nutzer:</th><td><% cat /sys/kernel/debug/batman_adv/bat0/transtable_local 2> /dev/null | grep -c 'W' %></td></tr>
+		<tr><th>Empfangen:</th><td><% cat /sys/class/net/br-mesh/statistics/rx_bytes 2> /dev/null | human_bytes %></td></tr>
+		<tr><th>Gesendet:</th><td><% cat /sys/class/net/br-mesh/statistics/tx_bytes 2> /dev/null | human_bytes %></td></tr>
+		<tr><th>IPv4 Adressen:</th><td><% addr 4 br-mesh %></td></tr>
+		<tr><th>IPv6 Adressen:</th><td><% addr 6 br-mesh %></td></tr>
+	</table>
+</fieldset>
 </td><td>
-<fieldset style="min-height: 10em;">
+<fieldset style="padding-bottom:12px">
 	<legend>Software</legend>
 	<table>
 		<tr><th>Firmware Version:</th><td><%= ${FIRMWARE_VERSION} %></td></tr>
@@ -90,31 +123,20 @@ fi
 	</table>
 </fieldset>
 <form method="post">
-<fieldset style="min-height: 5em;">
+<fieldset style="padding-bottom:12px">
 	<legend>Hood</legend>
 	<table>
 		<tr><th style="width:200px">Hood:</th><td><% echo "$hood" %></td></tr>
 		<tr><th style="width:200px">Mesh-Type (2.4/5 GHz):</th><td><% echo "${mesh_type2} / ${mesh_type5}" %></td></tr>
+		<tr><th style="width:200px">Channel (2.4/5 GHz):</th><td>Gerät: <% echo "${real_chan2ghz} / ${real_chan5ghz}" %> | Hood:  <% echo "${chan2ghz} / ${chan5ghz}" %></td></tr>
+		<tr><th style="width:200px">SSID (Client-AP):</th><td>Gerät: <% echo "${real_essid}" %> | Hood:  <% echo "${essid}" %></td></tr>
 		<tr><td colspan="2"> </td></tr>
 		<tr><td colspan="2">Beim Klicken werden die Hood-Daten innerhalb von 5 Minuten neu abgerufen und angewandt:</td></tr>
 		<tr><td colspan="2"><input type="submit" name="resethood" value="Reset hood data" /></td></tr>
 	</table>
 </fieldset>
 </form>
-</td></tr>
-<tr><td>
-<fieldset style="min-height: 12.65em;">
-	<legend>Netz: Freifunk</legend>
-	<table>
-		<tr><th>Nutzer:</th><td><% cat /sys/kernel/debug/batman_adv/bat0/transtable_local 2> /dev/null | grep -c 'W' %></td></tr>
-		<tr><th>Empfangen:</th><td><% cat /sys/class/net/br-mesh/statistics/rx_bytes 2> /dev/null | human_bytes %></td></tr>
-		<tr><th>Gesendet:</th><td><% cat /sys/class/net/br-mesh/statistics/tx_bytes 2> /dev/null | human_bytes %></td></tr>
-		<tr><th>IPv4 Adressen:</th><td><% addr 4 br-mesh %></td></tr>
-		<tr><th>IPv6 Adressen:</th><td><% addr 6 br-mesh %></td></tr>
-	</table>
-</fieldset>
-</td><td>
-<fieldset style="min-height: 12.65em;">
+<fieldset style="padding-bottom:12px">
 	<legend>Netz: WAN</legend>
 	<table>
 		<tr><th>Internet vorhanden:</th><td><%= ${internet_active} %></td></tr>
-- 
2.7.4



Mehr Informationen über die Mailingliste franken-dev