Отправляет email-рассылки с помощью сервиса Sendsay

Индикация вызова по телефону

При подключении к инету по модему мне приходится отключать телефонный
аппарат, т.к. он вносит помехи и качество связи ухудшается. После
отключения (опускания трубки модемом) не всегда вспоминаю, что телефон
отключен, да и лень бегать его включать-выключать каждый раз. Хотелось
бы настроить индикацию вызова на компьютере, чтобы не пропустить звонки.
Подскажите, пожалуйста, кто знает как это можно сделать.

-*Название листа "Linux: разрешение вопросов, перспективы и общение";
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Адрес правил листа http://subscribe.ru/catalog/comp.soft.linux.discuss/rules
Номер письма: 12123; Возраст листа: 443; Участников: 1274
Адрес сайта рассылки: http://www.linuxrsp.ru
Адрес этого письма в архиве: http://subscribe.ru/archive/comp.soft.linux.discuss/msg/243143



-*Информационный канал Subscribe.Ru
Подписан адрес:
Код этой рассылки: comp.soft.linux.discuss
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: mailto:comp.soft.linux.discuss--unsub@subscribe.ru?subject=comp.soft.linux.discuss

http://subscribe.ru/ http://subscribe.ru/feedback

Ответить   Mon, 11 Oct 2004 20:29:28 +0400 (#243143)

 

Ответы:

avm7 пишет:

Какие-то у меня вопросы, то ли сложные, то ли никто такими не
занимается, но ответов на них меньше всех :(
Ну да ладно...
Кому интересно, вот вариант решения. Скриптописатель из меня аховый,
поправьте, где можно было бы написать более оптимально и лаконично.
#!/bin/bash

SERIAL='/proc/tty/driver/serial';
while [ true ]; do
RING=`grep -c \|RI $SERIAL`
if [ "$RING" == 0 ];
then sleep 1
else
/usr/bin/playwave -r 44100 /usr/share/sounds/ktalkd.wav >/dev/null
sleep 1
fi
done
Смысл в том, что при вызове на линии модем выдает строки RING, но это я
использовать не сумел. Еще модем видимо выставляет сигнал на одной из
линий управления порта в моменты прохождения звонка, который я и
использовал, считывая его периодически из файла /proc/tty/driver/serial
Путь к файлу может отличаться у разных систем (?). В файле несколько
строк соответсвенно каждому COM порту, но я не стал усложнять проверку,
т.к. модем обычно один.
При наличии вызывного сигнала (звонка) строка в файле выглядит как:
1: uart:16550A port:2F8 irq:3 baud:115200 tx:60520 rx:654359
RTS|CTS|DTR|DSR|RI
^^^
в паузах и вообще без вызывного сигнала:
1: uart:16550A port:2F8 irq:3 baud:115200 tx:60520 rx:654359 RTS|CTS|DTR|DSR
Скрипт в бесконечном цикле проверяет наличие строки |RI, и если таковая
появляется - проигрывает звуковой файл (у меня звук звонка).
Программу можно запустить в фоне. Отжирает она на моей старушке 0.3%
процессорного времени.
С удовольствием приму советы по оптимизации.

-*Название листа "Linux: разрешение вопросов, перспективы и общение";
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Адрес правил листа http://subscribe.ru/catalog/comp.soft.linux.discuss/rules
Номер письма: 12310; Возраст листа: 447; Участников: 1277
Адрес сайта рассылки: http://www.linuxrsp.ru
Адрес этого письма в архиве: http://subscribe.ru/archive/comp.soft.linux.discuss/msg/245597



-*Информационный канал Subscribe.Ru
Подписан адрес:
Код этой рассылки: comp.soft.linux.discuss
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: mailto:comp.soft.linux.discuss--unsub@subscribe.ru?subject=comp.soft.linux.discuss

http://subscribe.ru/ http://subscribe.ru/feedback

Ответить   Fri, 15 Oct 2004 23:01:38 +0400 (#245597)

 

В сообщении от 1097870498 секунд после начала Эпохи Unix Вы написали:

У меня 2.4.22, путь к файлу такой же.

Жалко что этот номер не проходит с софт-модемом.

Ответить   Konstantin Korikov Sat, 16 Oct 2004 02:26:18 +0300 (#245746)

 

Вообще-то правильно подключать телефон ПОСЛЕ модема (в гнездо phone). Тогда все
будет переключаться само.

-*Название листа "Linux: разрешение вопросов, перспективы и общение";
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Адрес правил листа http://subscribe.ru/catalog/comp.soft.linux.discuss/rules
Номер письма: 12477; Возраст листа: 450; Участников: 1274
Адрес сайта рассылки: http://www.linuxrsp.ru
Адрес этого письма в архиве: http://subscribe.ru/archive/comp.soft.linux.discuss/msg/246823



-*Информационный канал Subscribe.Ru
Подписан адрес:
Код этой рассылки: comp.soft.linux.discuss
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: mailto:comp.soft.linux.discuss--unsub@subscribe.ru?subject=comp.soft.linux.discuss

http://subscribe.ru/ http://subscribe.ru/feedback

Ответить   Mon, 18 Oct 2004 16:41:34 +0400 (#246823)

 

В Птн, 15.10.2004, в 22:01, avm7 пишет:


Я задался тоже подобной целью, но цель стоит другая -- подключение прову
иногда происходит не удачно. С учетом того, что меня рядом нет, то нужно
в случае обрыва или если у провайдера занято запустить скрипт дозвона. Я
как думал - если есть процесс pppd, значит все в порядке, если нет -
нужно выполнить соединение. То же самое можно сделать к примеру и здесь.

temp_file=/tmp/temp.file
ps ax|grep pppd > $temp_file

if ["sed $= $temp_file" = 2];

результата во временный файл /tmp/temp.file. Если есть коннект то
запущен pppd, то в файле будет две строки (т.к. добавляется строка grep
pppd). В противном случае проигрывается звуковой файл. Не буду
утверждать, что этот вариант лучше, но я выразил свою мысль на эту тему.

-*Название листа "Linux: разрешение вопросов, перспективы и общение";
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Адрес правил листа http://subscribe.ru/catalog/comp.soft.linux.discuss/rules
Номер письма: 12567; Возраст листа: 452; Участников: 1274
Адрес сайта рассылки: http://www.linuxrsp.ru
Адрес этого письма в архиве: http://subscribe.ru/archive/comp.soft.linux.discuss/msg/248084



-*Информационный канал Subscribe.Ru
Подписан адрес:
Код этой рассылки: comp.soft.linux.discuss
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: mailto:comp.soft.linux.discuss--unsub@subscribe.ru?subject=comp.soft.linux.discuss

http://subscribe.ru/ http://subscribe.ru/feedback

Ответить   Wed, 20 Oct 2004 18:54:20 +0300 (#248084)