Спасибо, то что надо! Только я ещё добавил проверку на изменение статуса. А то статус менялся каждые 5 секунд.fandaymon писал(а): ↑Ср фев 20, 2019 12:49 am
Ну, например, перед SQLUpdate('Sockets', $sock);
написатьКод: Выделить всё
setGlobal($sock['TITLE'] . '.deviceOnline',$sock['STATUS']);
Пингуем устройства. Как быть? Устройства Online.
Модератор: immortal
- Lerych
- Сообщения: 191
- Зарегистрирован: Чт дек 14, 2017 8:46 pm
- Откуда: Московская область, Серпухов
- Благодарил (а): 79 раз
- Поблагодарили: 24 раза
Re: Пингуем устройства. Как быть? Устройства Online.
-
- Сообщения: 315
- Зарегистрирован: Вс май 20, 2018 9:27 am
- Благодарил (а): 160 раз
- Поблагодарили: 29 раз
Re: Пингуем устройства. Как быть? Устройства Online.
Объясните мне, не понимаю до конца!nightwind писал(а): ↑Вт июл 12, 2016 9:58 pmБез лишнего понта и гемороя сделал класс device, с единственным методом check
$online = ping($this->getProperty('ip'));
if ($online==1) {$new="On";} else $new="Off";
$old=$this->getProperty('online');
if ($old !=$new) {
if ($new=="On") {
$this->setProperty("onlineAt",time());
$this->setProperty("onlineAtTime",date("H:i",time()));
$this->setProperty("online",'On');
}
else
{
$this->setProperty("offlineAt",time());
$this->setProperty("offlineAtTime",date("H:i",time()));
$this->setProperty("online",'Off');
}
}
хоть миллион устройств - все быстро и хорошо
Я создал класс "device"
В нем создал метод "check"
В классе создал объект и для него свойство "ip"
А что дальше и как этим пользоваться этим не пойму!
- xor
- Сообщения: 2039
- Зарегистрирован: Сб ноя 22, 2014 8:45 pm
- Благодарил (а): 286 раз
- Поблагодарили: 629 раз
Re: Пингуем устройства. Как быть? Устройства Online.
Наверное, выполнить cm('вашОбьект.check');Yashalta писал(а):Объясните мне, не понимаю до конца!nightwind писал(а): ↑Вт июл 12, 2016 9:58 pmБез лишнего понта и гемороя сделал класс device, с единственным методом check
$online = ping($this->getProperty('ip'));
if ($online==1) {$new="On";} else $new="Off";
$old=$this->getProperty('online');
if ($old !=$new) {
if ($new=="On") {
$this->setProperty("onlineAt",time());
$this->setProperty("onlineAtTime",date("H:i",time()));
$this->setProperty("online",'On');
}
else
{
$this->setProperty("offlineAt",time());
$this->setProperty("offlineAtTime",date("H:i",time()));
$this->setProperty("online",'Off');
}
}
хоть миллион устройств - все быстро и хорошо
Я создал класс "device"
В нем создал метод "check"
В классе создал объект и для него свойство "ip"
А что дальше и как этим пользоваться этим не пойму!
И свойства анализировать?
Отправлено с моего Redmi 4X через Tapatalk
- Рейтинг: 1.16%
win10 connect https://connect.smartliving.ru/profile/303
-
- Сообщения: 438
- Зарегистрирован: Чт авг 24, 2017 9:38 am
- Благодарил (а): 51 раз
- Поблагодарили: 86 раз
- Контактная информация:
Re: Пингуем устройства. Как быть? Устройства Online.
Тоже Устройства OnLine жутко тормозят. В сети около 70 устройств. Интервал проверки 120 сек. (Пробовал разные). Ну за полчаса, минут за 20 где-то он по всем пройдётся... Можно как-то ускорить этот процесс?
- SmoKE_xDDD
- Сообщения: 816
- Зарегистрирован: Ср апр 17, 2019 5:00 pm
- Откуда: Нижний Новгород
- Благодарил (а): 110 раз
- Поблагодарили: 899 раз
-
- Сообщения: 438
- Зарегистрирован: Чт авг 24, 2017 9:38 am
- Благодарил (а): 51 раз
- Поблагодарили: 86 раз
- Контактная информация:
Re: Пингуем устройства. Как быть? Устройства Online.
Что бы знать, что подохло/отвалилось/зависло. Иногда бывают неприятные сюрпризы.
- SmoKE_xDDD
- Сообщения: 816
- Зарегистрирован: Ср апр 17, 2019 5:00 pm
- Откуда: Нижний Новгород
- Благодарил (а): 110 раз
- Поблагодарили: 899 раз
Re: Пингуем устройства. Как быть? Устройства Online.
А если серьезно, то стандартными методами MJDM наврятли вы что - то ускорите ибо на каждый ping нужно время и его не ускорить. А вот сократить количество устройств, мне кажется нужно.Страшно, очень страшно, мы не знаем, что это такое! Если бы мы знали, что это такое - но мы не знаем, что это такое
У меня например пингуется только:
1) 2 телика
2) Основной ПК
Если не секрет, что у вас там за система такая?)
-
- Сообщения: 1462
- Зарегистрирован: Вс янв 10, 2016 11:05 am
- Благодарил (а): 260 раз
- Поблагодарили: 454 раза
Re: Пингуем устройства. Как быть? Устройства Online.
Попробуйте пинговать скриптом или методом
Код: Выделить всё
if (ping('192.168.0.99')) {
//УСТРОЙСТВО ЖИВО
} else {
//УСТРОЙСТВО ПЕРЕДАЛО ПЛАМЕННЫЙ ПРИВЕТ И НАЛОЖИЛО НА СЕБЯ РУКИ
}
- SmoKE_xDDD
- Сообщения: 816
- Зарегистрирован: Ср апр 17, 2019 5:00 pm
- Откуда: Нижний Новгород
- Благодарил (а): 110 раз
- Поблагодарили: 899 раз
Re: Пингуем устройства. Как быть? Устройства Online.
Не будет. 3 секунды примерно выполняется.Chainik писал(а): ↑Вт июл 23, 2019 10:00 pmПопробуйте пинговать скриптом или методомДумаю, будет выполняться быстрее.Код: Выделить всё
if (ping('192.168.0.99')) { //УСТРОЙСТВО ЖИВО } else { //УСТРОЙСТВО ПЕРЕДАЛО ПЛАМЕННЫЙ ПРИВЕТ И НАЛОЖИЛО НА СЕБЯ РУКИ }
- tarasfrompir
- Сообщения: 3216
- Зарегистрирован: Ср мар 02, 2016 8:18 pm
- Откуда: Украина Пирятин
- Благодарил (а): 223 раза
- Поблагодарили: 815 раз
Re: Пингуем устройства. Как быть? Устройства Online.
тем более что наверно система на линуксе ?
а вообщето можна - но это ковыряние ручками в коде надо делать
Спасибо нам ПОМОЖЕТ..!