Интернет жив

Mar 25, 2018 01:12

или мёртв, зависит от провайдера. Впрочем иногда подглюкивает, внутри на его оборудование или где-то у магистральщиков. Затеял вывести статус на экран кита (а таких девайсов аж 3 штуки). Сначала тренируюсь на своей системе.
Итак , с каждого кита долбиться наружу нехорошо, выбрал 4-й кит (192.168.0.203, на котором камера крутится) и привесил примитивный скрипт:
while true
do
ping yandex.ru -c 1 > /dev/null && echo 0 > /mnt/tmpfs/inet_status || echo 1 > /mnt/tmpfs/inet_status
sleep 10
done
tmpfs - это кусок памяти, т.ч. карта не стирается зазря
далее на своем ките (192.168.0.206) примерно такой же скриптец:
while true
do
scp jury093@192.168.0.203:/mnt/tmpfs/inet_status /mnt/tmpfs/inet_status
sleep 10
done
и содержимое файла inet_status втягивается и анализируется в QT на целевой плате:
QString fileback="/mnt/tmpfs/inet_status";
тыр-тыр
if(tempInt == 0)
palette.setBrush(QPalette::Window, QBrush(QPixmap("pixs/inet-alive.jpg")));
else
palette.setBrush(QPalette::Window, QBrush(QPixmap("pixs/inet-dead.jpg")));
}






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

крут - потому что рут :), qt

Previous post Next post
Up