Звук воспроизводится терминалом, когда он получает символ звонка, поэтому его будет трудно изменить. Что вы можете сделать, так это написать небольшой скрипт для считывания IP-адреса в виде числа. Например, извлеките исходные тексты tgz в программу debian saytime
. Это не та версия, которая использует пакет Festival , но вместо этого имеет свой собственный небольшой набор звукозаписей для чисел от 0 до 9 (и более ).
Распакуйте исходники tar, перейдите в каталог saytime-1.0.orig/sounds/
и создайте ссылку из файла oh.au
в 0.au
. Затем вы можете пропинговать что-нибудь без -a
, но с интервалом не менее 2 секунд, и направить вывод в awk-скрипт, который запускаетaplay
(часть пакета alsa-utils
), чтобы произнести последний номер IP-адреса:
cd saytime-1.0.orig/sounds
ln -sf oh.au 0.au
ping -i 2 192.168.0.254 |
stdbuf -oL awk '
/ from /{split($4,x,".")
f = "aplay -q -f mu_law "
for(i=1;i<length(x[4]);i++)f = f " " substr(x[4],i,1)".au"
print f }' |
sh -x