LINUX.ORG.RU
ФорумTalks

протестируйте велосипед udev+festival


0

0

Вообщем промелькнула тут как-то тема по сабжу, вот и захотелось мне 
поизвращаться, таксказать. Помогите протестировать на разных девайсах.
Нужен festival и, естественно, udev.

Вот этот скрипт 

$cat /usr/bin/boltalka.sh
#!/bin/sh

export PATH=/bin:/sbin:/usr/bin:/usr/sbin

FESTIVAL="festival --tts"
UDEVINFO="udevinfo"

DEVICE=$1

[ -z "$DEVICE" ] && exit
[ -z "$ACTION" ] && exit

function get_device_attr ()
{
	echo `udevinfo -a -n /dev/$1 | grep $2 | cut -f 2 -d '"'`
}

function get_device_name ()
{
	device=$1

	case $device in
		sd*[0-9])
			s=`get_device_attr $device "model"`
			[ -z $s ] && echo " some device" || echo " $s"
		;;
		sr*)
			echo "n optical drive"
		;;
		hd*)
			s=`get_device_attr $device "media"`
			echo " $s drive"
		;;
		*)
			exit
		;;
	esac
	
}

function say ()
{
	echo "A$1 is $2" | $FESTIVAL
	exit
}

name=`get_device_name $DEVICE`

if [ -n "$name" ]; then 
	case "$ACTION" in
		add)
		say "$name" "found"
		;;
		remove)
		say "$SUBSYSTEM device" "removed"		
		;;
		change)
		say "$name" "changed"
		;;
	esac
fi

и файл рулесов

$cat /etc/udev/rules.d/62-festival.rules
SUBSYSTEMS=="block", RUN+="/usr/bin/boltalka.sh %b"

который нужно засунуть в /etc/udev/rules.d или где
там в вашем дистре они лежат.

Положив их на место, можно испытать изобретение, вставив флешку или компакт. 

=======================================================================

Что надо сделать:
Сканеры, принтеры и прочие девайсы, которых у меня нет. Для этого нужно глядеть на вывод 

udevadm test (или udevtest) `udevinfo -q path -n /dev/$девайс`
и писать в case. Ну или отправлять мне на мыло.
★★★★★
Ответ на: комментарий от annoynimous

>Ну блин, ты же _dev! Придумай что-нибудь! :-)

Хреновый с меня _dev, ктому же инет тупит я на бильярд убегаю. Позже приду и буду думать.

lester_dev ★★★★★
() автор топика
Ответ на: комментарий от lester_dev

Это все перемнные доступные из скрипта.

wfrr ★★☆
()
Ответ на: комментарий от lester_dev

> Хреновый с меня _dev

Отличный _dev - скрипт есть. Если что-то не работает - поправить вполне реально, так как довольно понятно и кратко написано.

А самое главное - идея использования голосовых реакций на события в системе )

skwish ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.