как включить звуковой сигнал системы для предупреждения о низком уровне заряда батареи?

как включить звуковой сигнал системы для предупреждения о низком уровне заряда батареи?

Мне бы хотелось, чтобы ноутбук с Debian и LXDE издавал системный звуковой сигнал каждые 10 или 30 секунд, как только заряд батареи достигнет критического уровня. Возможно ли это?

решение1

Да, это возможно. Один из способов — прослушивание событий udev при изменении уровня заряда батареи и сравнение его с пороговым значением. В противном случае это быстрый и грязный способ. Создайте службу systemd для запуска этого в фоновом режиме при загрузке, и вы будете получать звуковые сигналы каждые 10 секунд, как только уровень заряда батареи упадет ниже 5%.

#!/bin/bash

let CRIT_BATT_LVL=5
let PERIOD=10

exec 3>&2
exec 2>/dev/null

while true; do
  level=$(acpi -b | grep -oP '\d+(?=%)')
  if [ $level -lt $CRIT_BATT_LVL ]; then
    timeout -k 0.75s 0.5s speaker-test --frequency 2000 --test sine >/dev/null
  fi
  sleep $PERIOD
done

exec 2>&3
exec 3>&-

Звуковые сигналы будут звучать через динамики. Убедитесь, что они не отключены. Если вы хотите, чтобы звук был через динамик материнской платы, загляните в утилиту beep.

Связанный контент