1
0
Fork 0
mirror of https://github.com/Ysurac/openmptcprouter-feeds.git synced 2025-03-09 15:40:03 +00:00

Add automatic speedtest in wizard

This commit is contained in:
Ycarus (Yannick Chabanois) 2023-08-08 12:51:50 +02:00
parent da603e9310
commit 2d3b37888d
3 changed files with 62 additions and 5 deletions

View file

@ -1609,6 +1609,48 @@ if [ -n "$OMR_TRACKER_INTERFACE" ] && [ -n "$OMR_TRACKER_DEVICE" ]; then
fi
fi
if [ "$(pgrep -f omr-test-speed-server)" = "" ] && [ "$(uci -q get openmptcprouter.${OMR_TRACKER_INTERFACE}.testspeed)" = "1" ] && [ -z "$(uci -q get openmptcprouter.${OMR_TRACKER_INTERFACE}.testspeed_lc)" ]; then
download_speed=$(/bin/omr-test-speed-server vps ${OMR_TRACKER_DEVICE} fasttest | tr -d '\n')
download_speed2=$(/bin/omr-test-speed-server vps ${OMR_TRACKER_DEVICE} fasttest | tr -d '\n')
download_speed3=$(/bin/omr-test-speed-server vps ${OMR_TRACKER_DEVICE} fasttest | tr -d '\n')
[ "$download_speed2" -gt "$download_speed" ] && download_speed=${download_speed2}
[ "$download_speed3" -gt "$download_speed" ] && download_speed=${download_speed3}
download_speed=$((download_speed/1000))
if [ -n "$download_speed" ] && [ "$download_speed" != "0" ]; then
if [ "$(uci -q get sqm.${OMR_TRACKER_INTERFACE}.autorate)" = "1" ]; then
uci -q set sqm.${OMR_TRACKER_INTERFACE}.download=$((download_speed*65/100))
uci -q set sqm.${OMR_TRACKER_INTERFACE}.max_download=${download_speed}
uci -q set sqm.${OMR_TRACKER_INTERFACE}.min_download=$((download_speed*10/100))
else
uci -q set sqm.${OMR_TRACKER_INTERFACE}.download=$((download_speed*95/100))
fi
_log "Calculated ${OMR_TRACKER_INTERFACE} download speed: ${download_speed}"
uci -q set network.${OMR_TRACKER_INTERFACE}.downloadspeed=${download_speed}
upload_speed=$(/bin/omr-test-speed-server vps ${OMR_TRACKER_DEVICE} fasttest upload | tr -d '\n')
upload_speed2=$(/bin/omr-test-speed-server vps ${OMR_TRACKER_DEVICE} fasttest upload | tr -d '\n')
upload_speed3=$(/bin/omr-test-speed-server vps ${OMR_TRACKER_DEVICE} fasttest upload | tr -d '\n')
[ "$upload_speed2" -gt "$upload_speed" ] && upload_speed=${upload_speed2}
[ "$upload_speed3" -gt "$upload_speed" ] && upload_speed=${upload_speed3}
upload_speed=$((upload_speed/1000))
if [ -n "$upload_speed" ] && [ "$upload_speed" != "0" ]; then
if [ "$(uci -q get sqm.${OMR_TRACKER_INTERFACE}.autorate)" = "1" ]; then
uci -q set sqm.${OMR_TRACKER_INTERFACE}.upload=$((upload_speed*65/100))
uci -q set sqm.${OMR_TRACKER_INTERFACE}.max_upload=${upload_speed}
uci -q set sqm.${OMR_TRACKER_INTERFACE}.min_upload=$((upload_speed*10/100))
else
uci -q set sqm.${OMR_TRACKER_INTERFACE}.upload=$((upload_speed*95/100))
fi
_log "Calculated ${OMR_TRACKER_INTERFACE} upload speed: ${upload_speed}"
uci -q set network.${OMR_TRACKER_INTERFACE}.uploadspeed=${upload_speed}
fi
uci -q set openmptcprouter.$OMR_TRACKER_INTERFACE.testspeed_lc=$(date +"%s")
uci commit network
uci commit openmptcprouter
fi
sleep 5
fi
# If a service is down, force restart it
if [ -f /etc/init.d/shadowsocks-libev ] && [ "$(pgrep -f omr-tracker-ss)" = "" ] && [ "$(pgrep -f ss-redir)" = "" ] && [ "$(pgrep -f ss-local)" = "" ] && [ "$(uci -q get shadowsocks-libev.sss0.disabled)" != "1" ] && [ "$(uci -q get shadowsocks-libev.sss0.server)" != "" ] && [ "$(uci -q get shadowsocks-libev.sss0.server)" != "192.18.1.3" ] && [ "$(uci -q get shadowsocks-libev.sss0.key)" != "" ]; then
_log "Can't find Shadowsocks, restart it..."