Schedule Speed Tests

Skill level: Intermediate

Minimum firmware: 17.8.128

Goal

To have the Accelerated device perform an automatic speed test and report the results to Accelerated View.

Setup

For this setup, you will need access to Accelerated View, and a ACL device online and syncing with Accelerated View.

Details

Users can configure the ACL router to check for modem firmware updates at a scheduled interval.  This option is found under the System -> Scheduled tasks -> Custom scripts section of the ACL device's configuration profile.  Details on configuring your ACL device using Accelerated View can be found here.  This will trigger the ACL device to perform a speed test to the speedtest server at the interval specified in its configuration settings.  The default speed test server is speedtest.accns.com.  Those results are then posted under the Cellular Details tab for the ACL device in Accelerated View

Note: In order to minimize the speed test's impact on cellular data consumption, the results are an estimation of the available throughput of the device, and may not represent the full network speed available.

Config setup

Create a new custom script under System -> Scheduled tasks -> custom scripts, and enter in the following.   Adjust the Interval to the desired interval you would like this script to run.

server=$(config get config.speedtest_server)
[ "$server" ] || server=$(config get config.aview.speedtest_server) # config path if on firmware 18.10+
sleep 300  # give it some time to get online if we're just powering up
if [ "$(expr "$server" : '[0-9]\{1,3\}.[0-9]\{1,3\}.[0-9]\{1,3\}.[0-9]\{1,3\}$')" -eq 0 ]; then
  server=$(/bin/resolveip $server)
fi
if [ "$server" ]; then
  accns_log w config "conducting speed test to ($server)"
  accns_log w speed $(/bin/speedtest $server | tr '\n' '~' | sed 's/~$//')
else
  accns_log w speed "Speed test failed: invalid server $server"
fi