From 2f2cfdc720378dc46032c29662f030a3fe6cb0fd Mon Sep 17 00:00:00 2001 From: lejubila Date: Sat, 16 Sep 2017 02:34:24 +0200 Subject: [PATCH] eseguito ottimizzazione su chiamate json_status da socket server per migliorare tempi di risposta --- include/socket.include.sh | 8 ++++---- piGarden.sh | 29 +++++++++++++++++++++++------ 2 files changed, 27 insertions(+), 10 deletions(-) diff --git a/include/socket.include.sh b/include/socket.include.sh index 5a8fa3c..6dd2ddc 100644 --- a/include/socket.include.sh +++ b/include/socket.include.sh @@ -75,13 +75,13 @@ function socket_server_command { json_error 0 "Alias solenoid not specified" else ev_open $arg2 $arg3 &> /dev/null - json_status "get_cron_open_in" + json_status "get_cron_open_in:$arg2" fi ;; open_in) ev_open_in $arg2 $arg3 $arg4 $arg5 &> /dev/null - json_status "get_cron_open_in" + json_status "get_cron_open_in:$arg4" ;; close) @@ -89,7 +89,7 @@ function socket_server_command { json_error 0 "Alias solenoid not specified" else ev_close $arg2 &> /dev/null - json_status "get_cron_open_in" + json_status "get_cron_open_in:$arg2" fi ;; @@ -154,7 +154,7 @@ function socket_server_command { log_write "Cron del failed: $vret" else message_write "success" "Scheduled start successfully deleted" - json_status "get_cron_open_in" + json_status "get_cron_open_in:$arg2" fi ;; diff --git a/piGarden.sh b/piGarden.sh index 0c86a3c..f968bd7 100755 --- a/piGarden.sh +++ b/piGarden.sh @@ -463,9 +463,12 @@ function json_status { do if [ $i = "get_cron" ]; then with_get_cron="1" - fi - if [ $i = "get_cron_open_in" ]; then + elif [[ "$i" == get_cron:* ]]; then + with_get_cron="${i#get_cron:}" + elif [ $i = "get_cron_open_in" ]; then with_get_cron_open_in="1" + elif [[ "$i" == get_cron_open_in:* ]]; then + with_get_cron_open_in="${i#get_cron_open_in:}" fi done @@ -506,10 +509,17 @@ function json_status { local json_last_success="\"success\":\"$last_success\"" local json_get_cron="" - if [ $with_get_cron = "1" ]; then + if [ $with_get_cron != "0" ]; then local values_open="" local values_close="" - for i in $(seq $EV_TOTAL) + local element_for="" + if [ "$with_get_cron" == "1" ]; then + element_for="$(seq $EV_TOTAL)" + else + ev_alias2number $with_get_cron + element_for=$? + fi + for i in $element_for do local a=EV"$i"_ALIAS local av=${!a} @@ -532,10 +542,17 @@ function json_status { local json_cron="\"cron\":{$json_get_cron}" local json_get_cron_open_in="" - if [ $with_get_cron_open_in = "1" ]; then + if [ $with_get_cron_open_in != "0" ]; then local values_open_in="" local values_open_in_stop="" - for i in $(seq $EV_TOTAL) + local element_for="" + if [ "$with_get_cron_open_in" == "1" ]; then + element_for="$(seq $EV_TOTAL)" + else + ev_alias2number $with_get_cron_open_in + element_for=$? + fi + for i in $element_for do local a=EV"$i"_ALIAS local av=${!a}