Звоните в школьный звонок дома на компьютере с Linux

Многие ученики привыкли к звонку в колокол, который сигнализирует о начале каждого учебного дня, смене урока и времени окончания. Нет ощущения, как тот последний звонок в конце прошлого урока, говорящий, что вы можете свободно покинуть здание. Но ученики виртуального и домашнего обучения, вероятно, не услышат этот знакомый звонок, а могут даже пропустить его. В наши дни мы все пытаемся вернуть немного нормальной жизни детям, которые, возможно, тоскуют по видам, запахам и звукам их школьного здания.

Есть простой способ использовать компьютер Linux, чтобы позвонить в этот звонок. В проекте всего три шага: во-первых, загрузите звуковой файл для звонка, тона или звука по вашему выбору. Во-вторых, найдите или установите простой аудиоплеер. Наконец, введите расписание вашего ребенка в конфигурацию cron.

Колокол

Первая задача — найти хороший звук звонка. Я нашел файл MP3 в библиотеке бесплатных звуков , где все звуковые файлы находятся под лицензией Creative Commons. Я загрузил и сохранил файл в своем домашнем каталоге:

unzip short-school-bell-sound-effect.zip
Archive:  short-school-bell-sound-effect.zip
  inflating: Read.txt                
  inflating: short-school-bell-sound-effect.mp3

Проиграть

Есть несколько инструментов командной строки для воспроизведения звука из командной строки Linux. Таким образом, это может быть область предпочтений пользователя, поскольку у всех есть любимые.

Мне нужен был аудиоплеер, который был бы очень простым и не выводил бы ничего на стандартный вывод (stdout). Библиотека SDL включает команду playsound, которая очень проста в использовании. Итак, я установил пакет SDL_sound .

Я установил его на свою рабочую станцию ​​Fedora 32 вместе с несколькими необходимыми зависимостями, используя dnf:

sudo dnf install SDL_sound
[sudo] password for admins24:
Dependencies resolved.
==============================================================================
 Package         Architecture       Version          Repository    Size
==============================================================================
Installing:
 SDL_sound       x86_64             1.0.3-25.fc32    fedora        113 k
Installing dependencies:
 SDL             x86_64             1.2.15-43.fc32   fedora        213 k
 libmikmod       x86_64             3.3.11.1-8.fc32  fedora        154 k
 physfs          x86_64             3.0.2-3.fc32     fedora         85 k

Transaction Summary
==============================================================================
Install  4 Packages

Приятно то, что это небольшие файлы, намного меньше, чем у многофункциональных аудиоплееров с графическим интерфейсом пользователя, таких как Rhythmbox и Audacious .

После установки SDL_sound я быстро протестировал возможность воспроизведения файла MP3 со звуком звонка. Увеличьте громкость!

playsound short-school-bell-sound-effect.mp3

Расписание

На последнем шаге используется планировщик cron Linux, используя команды, совпадающие с расписанием школы. Например, предположим, что школьный звонок звонит с понедельника по пятницу в 8:15 утра, чтобы сигнализировать о начале занятий, затем ежечасно при смене периода занятий и, наконец, в 14:30, чтобы закончить день.

Используйте команду crontab -eдля редактирования конфигурации. Cron не интерпретирует закомментированные строки; они только поясняют, как каждая строка говорит cron, как себя вести:

# Once at 8:15AM, Monday thru Friday
15 8 * * 1-5 playsound ~/short-school-bell-sound-effect.mp3
# Hourly from 9:00AM thru 2:00PM, Monday thru Friday
00 9-14/1 * * 1-5 playsound ~/short-school-bell-sound-effect.mp3
# Once at 2:30PM, Monday thru Friday
30 14 * * 1-5 playsound ~/short-school-bell-sound-effect.mp3

Адаптируйте конфигурацию к расписанию вашего ученика.

Для изучения синтаксиса, используемого механизмом планирования cron, может потребоваться некоторое время.

Как только вы сохраните конфигурацию, вы можете просмотреть ее с помощью команды crontab -l, которая выдает результат точно так, как показано выше.

Это оно!

Теперь звонок будет звонить в течение всего дня виртуального ученика, как если бы он сидел в своем классе.