Przydatne narzędzia: czekacz, który utuli nas do snu

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.