Przydatne narzędzia: czekacz, który utuli nas do snu
17.11.2019 18:25
Ten wpis został popełniony, by opisać proste skrypty: czekacz i time_inc.
Skrypty mają umożliwić powolne zasypianie, czyli podobny efekt, jaki ponoć jest w niektórych telewizorach. Telewizory te mają obserwować czy użytkownik śpi i wyłączyć się, jeżeli nie wykryją użytkownika z otwartymi oczami. Ogólne wrażenia użytkownika powinny wyglądać tak (domyślnie odnoszę się do użytkownika):
1. Ściąga archiwum z omawianymi skryptami
2. Wgrywa oba skrypty do katalogu wskazanego przez zmienną PATH
3. Konfiguruje KDE Connect
A dalej...
4. Uruchamia czekacz, podając mu odpowiednie parametry
5. Włącza film, muzykę, cokolwiek
6. Kładzie się spać
7. Gdy czekacz odpali jakieś zdarzenie (użytkownik określa, jakie, podczas uruchamiania czekacza), a użytkownik nie śpi, to wybiera odpowiednią opcję na telefonie, która ustawia zegar na określoną wartość
8. Jeżeli użytkownik nie wykona poprzedniego, to czekacz odpala drugie zdarzenie i kończy pracę
Archiwum zawiera dwa skrypty: czekacz i time_inc. Pierwsze ma za zadanie utworzyć kolejkę fifo i nasłuchiwać na niej przez pewien czas. Jeżeli czas minie, a w kolejce nie znalazło się polecenie jego zwiększenia, to odpalane jest pierwsze zdarzenie, a następnie czas oczekiwania jest zmieniany na drugi określony przez użytkownika. Gdy znowu ten czas minie, a użytkownik nie żądał zwiększenia czasu oczekiwania, czekacz wykonuje drugie polecenie i kończy działanie. Zadaniem time_inc jest powiedzenie czekaczowi, by zwiększył czas nasłuchiwania o zadaną przez niego wartość sekund.
Tak się wywołuje czekacza:
czekacz normal "shutdown -h now" 13 6 'espeak -v polish "Za sześć sekund koniec pracy. Przez swoją słuchawkę z Androidem nakaż zwiększenie limitu"' "test '1' == '1'"
Pierwszym parametrem czekacza jest coś, co ja nazwałem domeną. Jest to nazwa, pod jaką czekacz będzie nasłuchiwać. Niemożliwe jest uruchomienie dwóch czekaczy z takim samym pierwszym parametrem. Trzeci parametr to ilość sekund, po jakim wywołane zostanie pierwsze zdarzenie, a czas oczekiwania zostanie zamieniony na wartość czwartego parametru. Piątym parametrem jest pierwsze zdarzenie. Powinno one informować użytkownika, że nastąpiło zliczenie do trzeciego parametru, a za czas podany w czwartym parametrze, nastąpi wywołanie drugiego parametru. Ostatnim parametrem jest dodatkowy warunek sprawdzany, podczas badania możliwości odpalenia pierwszego zdarzenia (zdarzenia/informacji) i ustawienia czasu oczekiwania na wartość podaną w czwartym parametrze.
Proces konfiguracji
1. Ściągnij archiwum stąd.
2. Rozpakuj je do osobnego katalogu
3. Skopiuj oba pliki pod ścieżką wskazaną przez zmienną PATH, np. sudo cp * /usr/local/bin
4. Uruchom ustawienia systemowe (pod Plasmą5) i kliknij na ikonkę KDE Connect
5. Wybierz swój telefon i włącz opcję wykonywania poleceń
6. Przejdź do ustawień
7. Dodaj polecenia, które mają być dostępne z twojego telefonu
(Np. powyżej ustawiamy zwiększenie czasu o dwie godziny), pod warunkiem zainstalowania narzędzi w podkatalogu bin, naszego katalogu domowego.
Narzędzie jeszcze może zawierać błędy, stąd proszę o zgłaszanie ich w komentarzach.