diff --git a/netmode/files/etc/ruleng/internet.json b/netmode/files/etc/ruleng/internet.json new file mode 100644 index 000000000..2e81ab90b --- /dev/null +++ b/netmode/files/etc/ruleng/internet.json @@ -0,0 +1,42 @@ +{ + "internet_success": { + "if" : [ + { + "event": "internet", + "match": { + "status":"online" + } + } + ], + "then" : [ + { + "object": "led.internet", + "method":"set", + "args" : { + "state": "ok" + }, + "timeout": 1 + } + ] + }, + "internet_fail": { + "if" : [ + { + "event": "internet", + "match": { + "status":"offline" + } + } + ], + "then" : [ + { + "object": "led.internet", + "method":"set", + "args" : { + "state": "error" + }, + "timeout": 1 + } + ] + } +} diff --git a/netmode/files/etc/uci-defaults/ruleng.internet b/netmode/files/etc/uci-defaults/ruleng.internet new file mode 100644 index 000000000..38e8acb61 --- /dev/null +++ b/netmode/files/etc/uci-defaults/ruleng.internet @@ -0,0 +1,2 @@ +uci -q set ruleng.internet=rule +uci -q set ruleng.internet.recipe='/etc/ruleng/internet.json' diff --git a/netmode/files/sbin/testnet b/netmode/files/sbin/testnet index ab322893a..af967bfc8 100755 --- a/netmode/files/sbin/testnet +++ b/netmode/files/sbin/testnet @@ -4,7 +4,6 @@ . /lib/network/utils.sh NETCON=0 -WANIP=0 LASTSTATUS="" CURSTATUS="" @@ -29,15 +28,6 @@ test_connection() { return 1 } -uplink_test() { - uplink_phy_connected - if [ $? -eq 0 ]; then - ubus call led.wan set '{"state" : "ok"}' || ubus call led.broadband set '{"state" : "ok"}' - else - ubus call led.wan set '{"state" : "off"}' || ubus call led.broadband set '{"state" : "off"}' - fi -} - internet_test() { local link dest @@ -47,18 +37,14 @@ internet_test() { if [ "$?" -eq 0 ]; then NETCON=1 - ubus call led.internet set '{"state" : "ok"}' echo "{ \"online\" : true }" > /tmp/internet_connection_status else NETCON=0 - ubus call led.internet set '{"state" : "error"}' echo "{ \"online\" : false }" > /tmp/internet_connection_status fi } connectivity_test() { - uplink_test - internet_test if [ $NETCON -eq 1 ]; then