User Tools

Site Tools


zh-cn:doc:howto:wifitoggle

Wifi Toggle

:!: 软件包'wifitoggle'可以实现和这些代码相同的功能

利用下面的脚本,可以用SES按钮来开关WIFI。首先,增加一个热插拔事件的句柄,用以反映按钮按下事件。其次,增加一段开关脚本,根据当前状态来开启或是关闭WIFI。

注意: 如果你使用加密的无线网络,nas和radius守护进程在开关时并不真正关闭,而是继续占用cpu和内存资源。但这并不消耗太多的资源,因为根本没有客户端接入。

开关脚本

在目录/sbin下创建一个名为woggle的文件,把下面的代码粘贴进去:

#!/bin/sh case “$(uci get wireless.@wifi-device[0].disabled)” in 1) uci set wireless.@wifi-device[0].disabled=0 wifi echo 1 > /proc/diag/led/ses_white ;; *) uci set wireless.@wifi-device[0].disabled=1 wifi echo 0 > /proc/diag/led/ses_white echo 2 > /proc/diag/led/wlan ;; esac

使用命令chmod +x /sbin/woggle来赋予它可执行属性。

热插拔事件句柄

为了跟踪热插拔事件,需要在/etc/hotplug.d位置创建一个目录,名为button,然后在/etc/hotplug.d/button下创建名为01-radio-toggle的文件。 以下是文件内容:

#!/bin/sh if [ “$BUTTON” = “ses” ] && [ “$ACTION” = “pressed” ] ; then ( sleep 1; /sbin/woggle ) & fi

现在,每次你想开关WIFI时就可以通过按按路由器上的按钮来实现了!当然,你也可以通过在OpenWrt shell中调用一个名为woggle的命令来实现。

This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies
zh-cn/doc/howto/wifitoggle.txt · Last modified: 2012/11/21 01:50 (external edit)