Currently translated at 100.0% (13 of 13 strings) Translation: OpenWrt/LuCI/applications/hd-idle Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationshd-idle/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (50 of 50 strings) Translation: OpenWrt/LuCI/applications/acme Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsacme/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (29 of 29 strings) Translation: OpenWrt/LuCI/applications/acl Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsacl/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (63 of 63 strings) Translation: OpenWrt/LuCI/applications/frps Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsfrps/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (75 of 75 strings) Translation: OpenWrt/LuCI/applications/frpc Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsfrpc/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (96 of 96 strings) Translation: OpenWrt/LuCI/applications/vpn-policy-routing Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsvpn-policy-routing/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (66 of 66 strings) Translation: OpenWrt/LuCI/applications/yggdrasil Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsyggdrasil/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (62 of 62 strings) Translation: OpenWrt/LuCI/applications/ocserv Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsocserv/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (26 of 26 strings) Translation: OpenWrt/LuCI/applications/dcwapd Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsdcwapd/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (49 of 49 strings) Translation: OpenWrt/LuCI/applications/bmx7 Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsbmx7/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (164 of 164 strings) Translation: OpenWrt/LuCI/applications/adblock Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsadblock/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (37 of 37 strings) Translation: OpenWrt/LuCI/applications/advanced-reboot Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsadvanced-reboot/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (182 of 182 strings) Translation: OpenWrt/LuCI/applications/unbound Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsunbound/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (57 of 57 strings) Translation: OpenWrt/LuCI/applications/nft-qos Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsnft-qos/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (123 of 123 strings) Translation: OpenWrt/LuCI/applications/nlbwmon Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsnlbwmon/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (107 of 107 strings) Translation: OpenWrt/LuCI/applications/simple-adblock Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationssimple-adblock/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (48 of 48 strings) Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (49 of 49 strings) Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (195 of 195 strings) Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (12 of 12 strings) Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (33 of 33 strings) Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (1579 of 1579 strings) Translation: OpenWrt/LuCI/modules/luci-base Translate-URL: https://hosted.weblate.org/projects/openwrt/luci/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (17 of 17 strings) Translation: OpenWrt/LuCI/applications/omcproxy Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsomcproxy/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (37 of 37 strings) Translation: OpenWrt/LuCI/applications/advanced-reboot Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsadvanced-reboot/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (48 of 48 strings) Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (33 of 33 strings) Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (1579 of 1579 strings) Translation: OpenWrt/LuCI/modules/luci-base Translate-URL: https://hosted.weblate.org/projects/openwrt/luci/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (96 of 96 strings) Translation: OpenWrt/LuCI/applications/vpn-policy-routing Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsvpn-policy-routing/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (37 of 37 strings) Translation: OpenWrt/LuCI/applications/advanced-reboot Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsadvanced-reboot/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (107 of 107 strings) Translation: OpenWrt/LuCI/applications/simple-adblock Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationssimple-adblock/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (191 of 191 strings) Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (210 of 210 strings) Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (1579 of 1579 strings) Translation: OpenWrt/LuCI/modules/luci-base Translate-URL: https://hosted.weblate.org/projects/openwrt/luci/zh_Hant/ Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (44 of 44 strings) Translation: OpenWrt/LuCI/applications/ser2net Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsser2net/zh_Hans/ Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (28 of 28 strings) Translation: OpenWrt/LuCI/applications/vnstat2 Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsvnstat2/zh_Hans/ Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (17 of 17 strings) Translation: OpenWrt/LuCI/applications/udpxy Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsudpxy/zh_Hans/ Translated using Weblate (Italian) Currently translated at 10.3% (12 of 116 strings) Translation: OpenWrt/LuCI/applications/radicale Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsradicale/it/ Translated using Weblate (Italian) Currently translated at 3.2% (4 of 125 strings) Translation: OpenWrt/LuCI/applications/privoxy Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsprivoxy/it/ Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (62 of 62 strings) Translation: OpenWrt/LuCI/applications/ocserv Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsocserv/zh_Hans/ Translated using Weblate (Italian) Currently translated at 17.7% (11 of 62 strings) Translation: OpenWrt/LuCI/applications/ocserv Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsocserv/it/ Translated using Weblate (Italian) Currently translated at 16.2% (26 of 160 strings) Translation: OpenWrt/LuCI/applications/mwan3 Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsmwan3/it/ Translated using Weblate (Italian) Currently translated at 8.3% (4 of 48 strings) Translation: OpenWrt/LuCI/applications/mjpg-streamer Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsmjpg-streamer/it/ Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (20 of 20 strings) Translation: OpenWrt/LuCI/applications/ltqtapi Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsltqtapi/zh_Hans/ Translated using Weblate (Italian) Currently translated at 30.0% (6 of 20 strings) Translation: OpenWrt/LuCI/applications/ltqtapi Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsltqtapi/it/ Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (25 of 25 strings) Translation: OpenWrt/LuCI/applications/cshark Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationscshark/zh_Hans/ Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (48 of 48 strings) Translation: OpenWrt/LuCI/applications/mjpg-streamer Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsmjpg-streamer/zh_Hans/ Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (13 of 13 strings) Translation: OpenWrt/LuCI/applications/pagekitec Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationspagekitec/zh_Hans/ Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (13 of 13 strings) Translation: OpenWrt/LuCI/applications/shairplay Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsshairplay/zh_Hans/ Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (173 of 173 strings) Translation: OpenWrt/LuCI/applications/aria2 Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsaria2/zh_Hans/ Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (182 of 182 strings) Translation: OpenWrt/LuCI/applications/unbound Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsunbound/zh_Hans/ Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (31 of 31 strings) Translation: OpenWrt/LuCI/applications/dynapoint Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsdynapoint/zh_Hans/ Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (116 of 116 strings) Translation: OpenWrt/LuCI/applications/radicale Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsradicale/zh_Hans/ Translated using Weblate (Italian) Currently translated at 88.2% (172 of 195 strings) Translation: OpenWrt/LuCI/applications/ddns Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsddns/it/ Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (107 of 107 strings) Translation: OpenWrt/LuCI/applications/simple-adblock Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationssimple-adblock/zh_Hans/ Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (113 of 113 strings) Translated using Weblate (Italian) Currently translated at 7.9% (9 of 113 strings) Translated using Weblate (Italian) Currently translated at 4.5% (6 of 133 strings) Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (102 of 102 strings) Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (43 of 43 strings) Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (195 of 195 strings) Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (74 of 74 strings) Translated using Weblate (Italian) Currently translated at 20.2% (15 of 74 strings) Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (16 of 16 strings) Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (337 of 337 strings) Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (82 of 82 strings) Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (25 of 25 strings) Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (133 of 133 strings) Translated using Weblate (Italian) Currently translated at 42.3% (669 of 1579 strings) Translation: OpenWrt/LuCI/modules/luci-base Translate-URL: https://hosted.weblate.org/projects/openwrt/luci/it/ Translated using Weblate (Italian) Currently translated at 2.1% (4 of 186 strings) Translation: OpenWrt/LuCI/applications/dockerman Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsdockerman/it/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (50 of 50 strings) Translation: OpenWrt/LuCI/applications/acme Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsacme/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (29 of 29 strings) Translation: OpenWrt/LuCI/applications/acl Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsacl/zh_Hant/ Translated using Weblate (Italian) Currently translated at 26.9% (17 of 63 strings) Translation: OpenWrt/LuCI/applications/frps Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsfrps/it/ Translated using Weblate (Italian) Currently translated at 9.3% (7 of 75 strings) Translation: OpenWrt/LuCI/applications/frpc Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsfrpc/it/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (7 of 7 strings) Translation: OpenWrt/LuCI/applications/squid Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationssquid/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (105 of 105 strings) Translation: OpenWrt/LuCI/applications/banip Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsbanip/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (164 of 164 strings) Translation: OpenWrt/LuCI/applications/adblock Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsadblock/zh_Hant/ Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (164 of 164 strings) Translation: OpenWrt/LuCI/applications/adblock Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsadblock/zh_Hans/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (37 of 37 strings) Translation: OpenWrt/LuCI/applications/advanced-reboot Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsadvanced-reboot/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (40 of 40 strings) Translation: OpenWrt/LuCI/applications/clamav Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsclamav/zh_Hant/ Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (173 of 173 strings) Translation: OpenWrt/LuCI/applications/aria2 Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsaria2/zh_Hans/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (125 of 125 strings) Translation: OpenWrt/LuCI/applications/privoxy Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsprivoxy/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (31 of 31 strings) Translation: OpenWrt/LuCI/applications/dynapoint Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsdynapoint/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (169 of 169 strings) Translation: OpenWrt/LuCI/applications/travelmate Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationstravelmate/zh_Hant/ Translated using Weblate (Italian) Currently translated at 93.0% (40 of 43 strings) Translated using Weblate (Italian) Currently translated at 18.9% (14 of 74 strings) Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (337 of 337 strings) Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (337 of 337 strings) Translated using Weblate (Russian) Currently translated at 100.0% (337 of 337 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (337 of 337 strings) Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (82 of 82 strings) Translated using Weblate (Spanish) Currently translated at 100.0% (337 of 337 strings) Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (1579 of 1579 strings) Translation: OpenWrt/LuCI/modules/luci-base Translate-URL: https://hosted.weblate.org/projects/openwrt/luci/zh_Hant/ Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (1579 of 1579 strings) Translation: OpenWrt/LuCI/modules/luci-base Translate-URL: https://hosted.weblate.org/projects/openwrt/luci/zh_Hans/ Translated using Weblate (Russian) Currently translated at 100.0% (1579 of 1579 strings) Translation: OpenWrt/LuCI/modules/luci-base Translate-URL: https://hosted.weblate.org/projects/openwrt/luci/ru/ Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (1579 of 1579 strings) Translation: OpenWrt/LuCI/modules/luci-base Translate-URL: https://hosted.weblate.org/projects/openwrt/luci/pt_BR/ Translated using Weblate (Italian) Currently translated at 42.3% (669 of 1579 strings) Translation: OpenWrt/LuCI/modules/luci-base Translate-URL: https://hosted.weblate.org/projects/openwrt/luci/it/ Translated using Weblate (Spanish) Currently translated at 100.0% (1579 of 1579 strings) Translation: OpenWrt/LuCI/modules/luci-base Translate-URL: https://hosted.weblate.org/projects/openwrt/luci/es/ Added translation using Weblate (Yue) Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (50 of 50 strings) Translation: OpenWrt/LuCI/applications/acme Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsacme/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (164 of 164 strings) Translation: OpenWrt/LuCI/applications/adblock Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsadblock/zh_Hant/ Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (169 of 169 strings) Translation: OpenWrt/LuCI/applications/travelmate Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationstravelmate/zh_Hant/ Co-authored-by: Anton Kikin <a.a.kikin@gmail.com> Co-authored-by: Francesco Grosso <tregemmelli@gmail.com> Co-authored-by: Franco Castillo <castillofrancodamian@gmail.com> Co-authored-by: Hosted Weblate <hosted@weblate.org> Co-authored-by: Wellington Terumi Uemura <wellingtonuemura@gmail.com> Co-authored-by: akibou <jinwenxin1997@icloud.com> Co-authored-by: xiazhang <xz@xia.plus> Co-authored-by: 孤爺仔 <7312140@qq.com> Signed-off-by: Anton Kikin <a.a.kikin@gmail.com> Signed-off-by: Francesco Grosso <tregemmelli@gmail.com> Signed-off-by: Franco Castillo <castillofrancodamian@gmail.com> Signed-off-by: Wellington Terumi Uemura <wellingtonuemura@gmail.com> Signed-off-by: akibou <jinwenxin1997@icloud.com> Signed-off-by: 孤爺仔 <7312140@qq.com> Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsahcp/zh_Hant/ Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsfirewall/zh_Hans/ Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsfwknopd/it/ Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsfwknopd/zh_Hans/ Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsminidlna/zh_Hant/ Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsnut/it/ Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsnut/zh_Hans/ Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsolsr/zh_Hans/ Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsolsr/zh_Hant/ Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsopenvpn/zh_Hant/ Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsqos/zh_Hans/ Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsradicale2/it/ Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsradicale2/zh_Hans/ Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationssplash/zh_Hans/ Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsstatistics/es/ Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsstatistics/pt_BR/ Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsstatistics/ru/ Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsstatistics/zh_Hans/ Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsstatistics/zh_Hant/ Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationstinyproxy/it/ Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationstinyproxy/zh_Hans/ Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationstransmission/zh_Hans/ Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsupnp/zh_Hant/ Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationsvnstat/zh_Hans/ Translate-URL: https://hosted.weblate.org/projects/openwrt/luciapplicationswatchcat/zh_Hant/ Translation: OpenWrt/LuCI/applications/ahcp Translation: OpenWrt/LuCI/applications/firewall Translation: OpenWrt/LuCI/applications/fwknopd Translation: OpenWrt/LuCI/applications/minidlna Translation: OpenWrt/LuCI/applications/nut Translation: OpenWrt/LuCI/applications/olsr Translation: OpenWrt/LuCI/applications/openvpn Translation: OpenWrt/LuCI/applications/qos Translation: OpenWrt/LuCI/applications/radicale2 Translation: OpenWrt/LuCI/applications/splash Translation: OpenWrt/LuCI/applications/statistics Translation: OpenWrt/LuCI/applications/tinyproxy Translation: OpenWrt/LuCI/applications/transmission Translation: OpenWrt/LuCI/applications/upnp Translation: OpenWrt/LuCI/applications/vnstat Translation: OpenWrt/LuCI/applications/watchcat |
||
---|---|---|
.. | ||
luasrc | ||
po | ||
root/usr/share/rpcd/acl.d | ||
Makefile | ||
README.md |
wifischedule
Turns WiFi on and off according to a schedule on an openwrt router
Components
- wifischedule: Shell script that creates cron jobs based on configuration provided in UCI and does all the other logic of enabling and disabling wifi with the use of
/sbin/wifi
and/usr/bin/iwinfo
. Can be used standalone. - luci-app-wifischedule: LUCI frontend for creating the UCI configuration and triggering the actions. Depends on wifischedule.
Use cases
You can create user-defined events when to enable or disable WiFi. There are various use cases why you would like to do so:
- Reduce power consumption and therefore reduce CO2 emissions.
- Reduce emitted electromagnatic radiation.
- Force busincess hours when WiFi is available.
Regarding 1: Please note, that you need to unload the wireless driver modules in order to get the most effect of saving power. In my test scenario only disabling WiFi saves about ~0.4 Watt, unloading the modules removes another ~0.4 Watt.
Regarding 2: Think of a wireless accesspoint e.g. in your bedrom, kids room where you want to remove the amount of radiation emitted.
Regarding 3: E.g. in a company, why would wireless need to be enabled weekends if no one is there working? Or think of an accesspoint in your kids room when you want the youngsters to sleep after 10 pm instead of facebooking...
Configuration
You can create an arbitrary number of schedule events. Please note that there is on sanity check done whether the start / stop times overlap or make sense. If start and stop time are equal, this leads to disabling the WiFi at the given time.
Logging if enabled is done to the file /var/log/wifi_schedule.log
and can be reviewed through the "View Logfile" tab.
The cron jobs created can be reviewed through the "View Cron Jobs" tab.
Please note that the "Unload Modules" function is currently considered as experimental. You can manually add / remove modules in the text field.
The button "Determine Modules Automatically" tries to make a best guess determining regarding the driver module and its dependencies.
When un-/loading the modules, there is a certain number of retries (module_load
) performed.
The option "Force disabling wifi even if stations associated" does what it says - when activated it simply shuts down WiFi.
When unchecked, its checked every recheck_interval
minutes if there are still stations associated. Once the stations disconnect, WiFi is disabled.
Please note, that the parameters module_load
and recheck_interval
are only accessible through uci.
UCI Configuration wifi_schedule
UCI configuration file: /etc/config/wifi_schedule
:
config global
option logging '0'
option enabled '0'
option recheck_interval '10'
option modules_retries '10'
config entry 'Businesshours'
option enabled '0'
option daysofweek 'Monday Tuesday Wednesday Thursday Friday'
option starttime '06:00'
option stoptime '22:00'
option forcewifidown '0'
config entry 'Weekend'
option enabled '0'
option daysofweek 'Saturday Sunday'
option starttime '00:00'
option stoptime '00:00'
option forcewifidown '1'
Script: wifi_schedule.sh
This is the script that does the work. Make your changes to the UCI config file: /etc/config/wifi_schedule
Then call the script as follows in order to get the necessary cron jobs created:
wifi_schedule.sh cron
All commands:
wifi_schedule.sh cron|start|stop|forcestop|recheck|getmodules|savemodules|help
cron: Create cronjob entries.
start: Start wifi.
stop: Stop wifi gracefully, i.e. check if there are stations associated and if so keep retrying.
forcestop: Stop wifi immediately.
recheck: Recheck if wifi can be disabled now.
getmodules: Returns a list of modules used by the wireless driver(s)
savemodules: Saves a list of automatic determined modules to UCI
help: This description.