Проверка доступности интернет-сервиса
SoiFong 8 мая, 2009 - 01:47
У меня есть будильник, который при наличие инета запускает инет-радио, иначе локальный плейлист. Вот этот кусок:
if [ `ping -c 1 ya.ru | head -n 5 | tail -n 1 | awk '{print $4}'` -eq 1 ] then mpc load alarm_online else mpc load alarm_offline fi
мне не нравится, как выглядит проверка инета, хочется чего-то более лаконичного и надежного. Что можете предложить? И еще, думаю ya.ru заменить на адрес из alarm_online, в нем просто содержатся один или несколько адресов радио по строчкам.
»
- Для комментирования войдите или зарегистрируйтесь
.
Не грусти, товарищ! Всё хорошо, beautiful good!
Не обязательно именно так
На трёх буквах много полезных примеров.
:wq
--
Live free or die
Да, НО...
...человек ведь конкретики попросил... Неужто для решения такой простой задачи, ему следует стать профессиональным программером?!
З.Ы.: сорь за офтоп...
... о, спасибо, очень
... о, спасибо, очень полезный посыл на три буквы, нашёл там вот это 27-4. On-line connect , может поможет ...
/
Может всё же эффективного?
Хочу обратить внимание на тот факт, что для нормально функционирующих ресурсов Сети открытые извне пинги (протокол ICMP) --- скорее исключение, чем правило. Потому пинги я бы не назвал надёжным способом.
Лично я к радио отношусь крайне неодобрительно, потому относительно функционирования "инет-радио" совершенно не в курсе.
По идее должен использоваться протокол TCP...
Если не проверять отдельно ресолвинг имён (работоспособность DNS) и на данном доменном имени живёт не только радио, но и какой-никакой сайт, то я бы сказал, что здесь можно будет попытаться стянуть
wget
'ом (или что больше по вкусу) индексную страницу этого сайта (что, впрочем и строго говоря, не гарантирует работоспособности сервиса радиовещания).Правильным же я бы наверное скорее назвал сначала попытку запуска будильника на радио, и в случае ошибок переключение на локальную коллекцию.
ЗЫ: Хороший сон и/или тихий системник :)))
:wq
--
Live free or die
У тебя поразительное свойство
У тебя поразительное свойство делать проблему из ничего. ICMP, если что, делался именно для того, чтобы диагностировать сетевые службы.
Не грусти, товарищ! Всё хорошо, beautiful good!
Я, что бы проверить есть ли
Я, что бы проверить есть ли подключение к инету проверяю поднят ли интерфейс ppp, что выполняется быстрее чем пинг
Лаконичнее не получилось.
Лаконичнее не получилось. Решил проверять доступность сервера телнетом, потому что на одном адресе может быть несколько станций на разных портах
Кому интересно, весь скрипт выглядит так:
потом он пихается в какой-нибудь планировщик. Для удобства, в кедах я использовал kalarm, в xfce - orage
тему переименовал правильнее