Odp: Obsługa przycisku ON/OFF
W domyślnej konfiguracji openwrt nie obsługuje w żaden sposób przycisku o nazwie wps.
Nie jesteś zalogowany. Proszę się zalogować lub zarejestrować.
eko.one.pl → Oprogramowanie / Software → Obsługa przycisku ON/OFF
Strony Poprzednia 1 2
Zaloguj się lub zarejestruj by napisać odpowiedź
W domyślnej konfiguracji openwrt nie obsługuje w żaden sposób przycisku o nazwie wps.
Co w takim razie może powodować to zatrzymanie się? Jak tego szukać...
Cezary mam taki wpis w rc.button w wps:
#!/bin/sh
if [ "$ACTION" = "pressed" ] && [ "$BUTTON" = "wps" ]; then
cat /etc/powiadomienie_mail/mail.txt | msmtp -t
fi
done
Jak to zmodyfikować, aby skrypt wykonywał się tylko wtedy jeśli przycisk jest wciśnięty co najmniej 3 sekundy ale uwaga niekoniecznie po tych 3 sekundach puszczony?
Widzę to tak:
- na ACTION=pressed:
wpisujesz uptime do jakiegoś tempa
uruchamiasz jakiś skrypt w tle
- na ACTION=released
ustawiasz jakiś inny timeout
A w samym skrypcie - w pętli sprawdzasz na podstawie bieżącego czasu i pierwszego timestampu ile upłynęło czasu i jeżeli minęło te 3s a brak jest flagi puszczenia przycisku to wykonujesz to co chcesz.
Fajny pomysł ale ja w skryptach to tylko modyfikacja - sam tego nie stworzę. Jakbyś miał ochotę i czas i być napisał to będę wdzięczny i jak będę odbierał kiedyś tamtego ruta to mogę Ci w ramach podziękowania czekoladę z okienkiem z orzeszkami dać chyba że chciałbyś coś innego ![]()
Masz, skrypt odpalany po 3s od naciśnięcia przycisku i jego przytrzymania. Zamiast logger "Nadal wciśnięty po 3 sekundach!" wstaw tam co potrzebujesz, ale dla testów zostaw tak jak zrobiłem.
root@MiFi:~# cat /etc/rc.button/wps
#!/bin/sh
if [ $ACTION = "pressed" ]; then
/root/test.sh &
touch /tmp/.wps
fi
if [ $ACTION = "released" ]; then
if [ -e /tmp/.wps ]; then
rm /tmp/.wps
fi
fi
exit 0
root@MiFi:~# cat /root/test.sh
#!/bin/sh
sleep 3
if [ -e /tmp/.wps ]; then
rm /tmp/.wps
logger "Nadal wcisniety po 3 sekundach!"
fi
exit 0
root@MiFi:~# chmod 755 /etc/rc.button/wps
root@MiFi:~# chmod 755 /root/test.shDziała elegancko. Wielkie dzięki. Tylko kropkę wstaw w swój wpis cat /etc/rc.button/wps w akcji released
rm /tmp/wps
przed wps to dla potomnych ![]()
Strony Poprzednia 1 2
Zaloguj się lub zarejestruj by napisać odpowiedź
eko.one.pl → Oprogramowanie / Software → Obsługa przycisku ON/OFF
Forum oparte o PunBB, wspierane przez Informer Technologies, Inc