123 lines
2.7 KiB
Bash
Executable File
123 lines
2.7 KiB
Bash
Executable File
#!/bin/sh /etc/rc.common
|
|
|
|
START=99
|
|
|
|
EXTRA_COMMANDS=" on off wan_up status next_time start stop set_userband debug_on debug_off do_speedtest"
|
|
EXTRA_HELP="
|
|
on Turn on Auto speed test service
|
|
off Turn off Auto speed test service
|
|
wan_up Send wan up messgage
|
|
status Show status
|
|
next_time Set next time to do speed test
|
|
set_userband Set user config band
|
|
start Start service
|
|
stop Stop service
|
|
debug_on Debug on
|
|
debug_off Debug off
|
|
do_speedtest Do speed test immediately
|
|
-------------------------------------------------"
|
|
|
|
VERSION="__UNDEFINED__"
|
|
|
|
if [ "$VERSION" == "OVERSEA" ]; then
|
|
EXECMD="/usr/sbin/auto_speedtestd oversea"
|
|
else
|
|
EXECMD="/usr/sbin/auto_speedtestd"
|
|
fi
|
|
|
|
EXECMD_C="/usr/sbin/speedtest_cmd"
|
|
export PROCLINE="/usr/bin/lua $EXECMD"
|
|
export PROCFLAG=$PROCLINE
|
|
|
|
#0,ok; non-0, Nok
|
|
start() {
|
|
#check NETMODE 1stly
|
|
local mode
|
|
mode=`uci get xiaoqiang.common.NETMODE 2>/dev/null`
|
|
if [ "$mode" == "wifiapmode" -o "$mode" == "lanapmode" ]; then
|
|
echo "In AP mode, disable auto speed test. exit!"
|
|
return 0
|
|
fi
|
|
|
|
#check config file
|
|
mode=`uci get ab.settings.enabled 2>/dev/null`
|
|
if [ $mode -eq "0" ]; then
|
|
echo "ab config enabled not setted, exit!"
|
|
return 0
|
|
fi
|
|
/usr/sbin/supervisord start
|
|
return 0
|
|
}
|
|
|
|
restart(){
|
|
stop &>/dev/null
|
|
start &>/dev/null
|
|
return $?
|
|
}
|
|
|
|
on(){
|
|
uci set ab.settings.enabled=1
|
|
uci commit ab
|
|
|
|
start
|
|
}
|
|
|
|
stop(){
|
|
running
|
|
if [ $? == 1 ]; then
|
|
echo "auto speed service is not running. just exit."
|
|
return 0
|
|
fi
|
|
|
|
$EXECMD_C stop
|
|
/usr/sbin/supervisord stop
|
|
return 0
|
|
}
|
|
|
|
off(){
|
|
stop
|
|
uci set ab.settings.enabled=0
|
|
uci commit ab
|
|
return 0
|
|
}
|
|
|
|
running(){
|
|
/usr/sbin/supervisord status
|
|
if [ $? == 1 ]; then
|
|
return 1
|
|
fi
|
|
return 0
|
|
}
|
|
|
|
wan_up(){
|
|
$EXECMD_C wan_up $@
|
|
}
|
|
|
|
wan_down(){
|
|
$EXECMD_C wan_down $@
|
|
}
|
|
|
|
status(){
|
|
$EXECMD_C status $@
|
|
}
|
|
|
|
next_time(){
|
|
$EXECMD_C next_time $@
|
|
}
|
|
|
|
set_userband(){
|
|
$EXECMD_C set_userband $@
|
|
}
|
|
|
|
debug_on(){
|
|
$EXECMD_C debug_on $@
|
|
}
|
|
|
|
debug_off(){
|
|
$EXECMD_C debug_off $@
|
|
}
|
|
|
|
do_speedtest(){
|
|
$EXECMD_C do_speedtest $@
|
|
}
|