[+]dźwiękowy alert o niskim stanie baterii

Zagadnienia dotyczące menadżerów okien, środowisk graficznych - X, KDE, GNOME, Fluxbox, XFCE., Compiz itp.
Awatar użytkownika
koper97
Posty: 19
Rejestracja: 26 kwietnia 2016, 11:07

[+]dźwiękowy alert o niskim stanie baterii

Post autor: koper97 » 13 listopada 2017, 20:38

Witam, brakowało mi w Debianie dźwiękowego sygnału o niskim stanie baterii.
Po krótkich poszukiwaniach w internecie, małych przeróbkach powstało coś takiego:

Kod: Zaznacz cały

#!/bin/bash

if [ `acpi -b | awk ' { print ($3)}'`  == "Discharging," ] ; then

	if [ `acpi -b | awk ' { print ($4)-0}'`  -le "20" ] ; then
		/usr/bin/mpg123 /home/xxx/Muzyka/Low_Battery.mp3
	fi

fi
powyższy skrypt wykonywany jest co 5 minut za pomocą crontab:

Kod: Zaznacz cały

*/5 * * * * /home/xxx/battery_alert.sh
skrypt działa poprawnie, gdy stan bateri jest poniżej 20% i laptop jest
odłączony od zasilacza, uruchamiany jest plik low_battery.p3
Problem pojawia się gdy na komputerze uruchomiony jest jakiś program
odtwarzający dźwięk (VLC player, audacious), wtedy nie słychać dżwięku alarmu.

Czy da się to jakoś sensownie rozwiązać?
Ostatnio zmieniony 23 listopada 2017, 21:27 przez koper97, łącznie zmieniany 3 razy.

Awatar użytkownika
dedito
Moderator
Posty: 2198
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Re: dźwiękowy alert o niskim stanie baterii

Post autor: dedito » 14 listopada 2017, 10:13

A co obsługuje dźwięk?

Awatar użytkownika
koper97
Posty: 19
Rejestracja: 26 kwietnia 2016, 11:07

Re: dźwiękowy alert o niskim stanie baterii

Post autor: koper97 » 14 listopada 2017, 19:46

Kod: Zaznacz cały

cat /proc/asound/cards
 0 [PCH            ]: HDA-Intel - HDA Intel PCH
                      HDA Intel PCH at 0x90910000 irq 91

Kod: Zaznacz cały

cat /proc/asound/version
Advanced Linux Sound Architecture Driver Version k4.9.0-4-amd64.

Kod: Zaznacz cały

dpkg -l | grep alsa
ii  alsa-base         1.0.27+1           all          dummy package to ease purging of obsolete conffiles
ii  alsa-utils                  1.1.3-1             amd64        Utilities for configuring and using ALSA
ii  libsox-fmt-alsa:amd64          14.4.1-5+b2          amd64        SoX alsa format I/O library

Kod: Zaznacz cały

dpkg -l | grep pulse
ii  gstreamer1.0-pulseaudio:amd64         1.10.4-1      amd64        GStreamer plugin for PulseAudio
ii  libcanberra-pulse:amd64               0.30-3              amd64        PulseAudio backend for libcanberra
ii  libpulse-mainloop-glib0:amd64         10.0-1+deb9u1  amd64     PulseAudio client libraries (glib support)
ii  libpulse0:amd64               10.0-1+deb9u1               amd64        PulseAudio client libraries
ii  libpulse0:i386                        10.0-1+deb9u1          i386         PulseAudio client libraries
ii  libpulsedsp:amd64                     10.0-1+deb9u1     amd64        PulseAudio OSS pre-load library
ii  pulseaudio                            10.0-1+deb9u1          amd64        PulseAudio sound server
ii  pulseaudio-module-bluetooth           10.0-1+deb9u1   amd64        Bluetooth module for PulseAudio sound server
ii  pulseaudio-module-gconf        10.0-1+deb9u1  amd64        GConf module for PulseAudio sound server
ii  pulseaudio-utils          10.0-1+deb9u1 amd64        Command line tools for the PulseAudio sound server
znalazłem rozwiązanie gdzieś na anglojęzycznym forum, może się komuś przyda

"PulseAudio needs XDG_RUNTIME_DIR"

kod po zmianach:

Kod: Zaznacz cały

#!/bin/bash

if [ `acpi -b | awk ' { print ($3)}'`  == "Discharging," ] ; then

	if [ `acpi -b | awk ' { print ($4)-0}'`  -le "20" ] ; then
		#pactl set-sink-volume 0 80% && pactl set-sink-mute 0 0 && 
		#/usr/bin/mpg123 /home/xxx/Muzyka/Low_Battery.mp3
		XDG_RUNTIME_DIR=/run/user/`id -u` /usr/bin/mpg123 /home/xxx/Muzyka/Low_Battery.mp3
	fi

fi

Awatar użytkownika
dedito
Moderator
Posty: 2198
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Re: dźwiękowy alert o niskim stanie baterii

Post autor: dedito » 22 listopada 2017, 21:08

Jeśli problem rozwiązany, proszę oznaczyć wątek.

ODPOWIEDZ