From eab0633ad9dd2c7d4d41f782cdfa9d331f3c8f1b Mon Sep 17 00:00:00 2001 From: Tobias Mueller Date: Tue, 17 Oct 2023 13:29:33 +0200 Subject: [PATCH] switch: Asynchronously execute blue merle when toggled I hope that this allows us to use the toggle again to advance the Blue Merle logic. If all goes well, the script finishes execution and the switch lock in /var/lock/gl-switch.lock is released so that the button can be used again. --- files/etc/gl-switch.d/sim.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/files/etc/gl-switch.d/sim.sh b/files/etc/gl-switch.d/sim.sh index cf71e8e..97324d8 100644 --- a/files/etc/gl-switch.d/sim.sh +++ b/files/etc/gl-switch.d/sim.sh @@ -10,8 +10,7 @@ logger -p notice -t blue-merle-toggle "Called... ${action}" if [ "$action" = "on" ];then mcu_send_message "Blue Merle ${action}" echo "on" > /tmp/sim_change_switch - flock -n /tmp/blue-merle-switch.lock timeout 90 /usr/bin/blue-merle-switch || logger -p notice -t blue-merle-toggle "Lockfile busy" & - logger -p notice -t blue-merle-toggle "Finished Switch" + ubus call file exec '{ "command": "flock", "params": ["-n", "/tmp/blue-merle-switch.lock", "timeout", "90", "/usr/bin/blue-merle-switch"] }' elif [ "$action" = "off" ];then mcu_send_message "Blue Merle ${action}" @@ -20,4 +19,5 @@ elif [ "$action" = "off" ];then else echo "off" > /tmp/sim_change_switch fi +logger -p notice -t blue-merle-toggle "Finished Switch" sleep 1