Страница 1 из 1

как проверить статус Веб-переменных?

Добавлено: Ср дек 27, 2017 1:38 pm
webms
как проверить статус работоспособности Веб-переменных?
Обновляю через эту функцию погоду Яндекса, и недавно узнал что на Я что то в дизайне поменялось и на сервер перестали приходить данные, а я даже не знал

Re: как проверить статус Веб-переменные?

Добавлено: Ср дек 27, 2017 2:03 pm
Vovix
webms писал(а):как проверить статус работоспособности Веб-переменных?
Обновляю через эту функцию погоду Яндекса, и недавно узнал что на Я что то в дизайне поменялось и на сервер перестали приходить данные, а я даже не знал
один из вариантов это пинг (можно через устройства онлайн) ip сервера страницы.... ну или через cURL
(curl_errno — Возвращает код ошибки;)
но...
если там заменят просто дизайн страницы, то это вам не поможет!

еще вариант: использовать другой механизм получения данных - например для погоды использовать OpenWeatherMap

Re: как проверить статус Веб-переменные?

Добавлено: Ср дек 27, 2017 2:24 pm
skysilver
webms писал(а):как проверить статус работоспособности Веб-переменных?
Обновляю через эту функцию погоду Яндекса, и недавно узнал что на Я что то в дизайне поменялось и на сервер перестали приходить данные, а я даже не знал
Отслеживать время последнего обновления свойства объекта, в которое сохраняется значение температуры, например.

Re: как проверить статус Веб-переменные?

Добавлено: Ср дек 27, 2017 10:46 pm
webms
skysilver писал(а):
webms писал(а):как проверить статус работоспособности Веб-переменных?
Обновляю через эту функцию погоду Яндекса, и недавно узнал что на Я что то в дизайне поменялось и на сервер перестали приходить данные, а я даже не знал
Отслеживать время последнего обновления свойства объекта, в которое сохраняется значение температуры, например.
а можно как то получить доступ к этому логу?
чтоб по нему сравнивать когда например значение error

Изображение

Re: как проверить статус Веб-переменных?

Добавлено: Пн янв 15, 2018 5:13 pm
webms
вспомнил, я все таки реализовал проверку

modules\webvars\webvars.class.php

Код: Выделить всё

 добавить после 
 
       $host['LOG']=implode("\n", $tmp);
     }
   }

вот это

   //если есть изменения то записываем дату
   if ($old_status!=$new_status) {
     $host['MODIF']=time();
     SQLUpdate('webvars', $host);
   }
   //конец

   
после===============
$rec['LOG']='';
  
добавить=============
$rec['MODIF']='';

 
\templates_alt\webvars\webvars_edit.html

Код: Выделить всё

после 
<div class="form-group ">
        <label class="col-lg-4 control-label" for="inputTitle"><#LANG_LATEST_VALUE#>:</label>
        <div class="col-lg-5"> [#LATEST_VALUE#]</div>
</div>

добавить 

<div class="form-group ">
        <label class="col-lg-4 control-label" for="inputTitle">Последнее изменение:</label>
        <div class="col-lg-5"> [#MODIF#]</div>
</div>
SQL запрос в базу
ALTER TABLE `webvars` ADD `MODIF` INT(10) NOT NULL DEFAULT '0' AFTER `LOG`
А ВОТ И САМ СЦЕНАРИЙ КОТОРЫЙ ПРОВЕРЯЕТ ЕСЛИ ОБНОВЛЯЕТСЯ ВЕБ-ПЕРЕМЕННАЯ

Код: Выделить всё

$result = SQLSelect("SELECT TITLE, MODIF FROM `webvars`");
for($i=0; $i<count($result); $i++) {
 
     $title = $result[$i]['TITLE'];
    $modif = $result[$i]['MODIF'];
    $interval = time()-$modif;
 
     if($interval >= 48*60*60 ) { 
      $rec=array();
      $rec['TITLE']="Веб-переменная \"".$title."\" не обновляется второй день.";
      $rec['NOTES']=$modif;
      $rec['DUE']=date('Y-m-d');
      $rec['IS_TASK']=1;
      $rec['ADDED']=date('Y-m-d H:i:s');
      $rec['ID']=SQLInsert('calendar_events', $rec); 
    }
}