Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Помогите из разрозненного собрать целое (https://javascript.ru/forum/misc/18988-pomogite-iz-razroznennogo-sobrat-celoe.html)

str07str 22.07.2011 12:02

Помогите из разрозненного собрать целое
 
Доброго времени суток.

Задача такова.
Есть страничка (в локальной сети) на нее выводятся коды ошибок с коментариями типа:
Код:

1) 0001 - ошибка копирования
2) 0002 - нет связи с клиентом 30 минут
....

необходимо смотреть на страничку и при появлении кода 0002 поднимать панику в виде окна предупреждения и отсылки на 2 IP адреса сети сообщения.
Поскольку я не програмер, часть скриптов нашел, часть сочинил сам и получил следующее:
ШАГ1
Запускается конструкция каждые 3 минуты скрыто файлом Start_find_php.vbs
Код:

Set WshShell = CreateObject("WScript.Shell")
do
WshShell.Run "cmd.exe /c find_php.cmd", 0, true
WScript.Sleep 180000
loop

ШАГ2 Стартует командный файл find_php.cmd
Код:

do
START httpGet.wsf /WAIT
cls
echo off
find /i "0002" index1.php>nul
IF %errorlevel% == 0 (send_php.vbs)
loop

ШАГ 2.1 стартует файл httpGet.wsf (найден в сети, автор неизвестен)
<job>
 <script language="JScript">
 
 httpGet("http://192.168.1.200/1/index1.php");
 
 function httpGet(url)
 {
  var fname=url.replace(/.+\//,"");
  with(new ActiveXObject("WinHttp.WinHttpRequest.5.1"))
  {
   open("GET",url);
   send();
   if(status==200)
    with(new ActiveXObject("ADODB.Stream"))
    {
     type=1;
     open();
     write(responseBody);
     saveToFile(fname,2);
    }
  }
 }
 
 </script>
</job>


Шаг 2.2 полученый файл анализирует на предмет вхождения скрипт из ШАГа 2 find_php.cmd
Затем анализирую полученый файл скриптом find_php.cmd и в случае нахождения запускается скрипт send_php.vbs

ШАГ3 (можно было бы это прописать и в cmd файле, но тогда не было бы возможности не отображать окон и не ждать завершения отправки)
Код:

Set WshShell = CreateObject("WScript.Shell")
WshShell.run  "net send 192.168.1.14 Нет связи с клиентом", 0, False
WshShell.run  "net send 192.168.1.4 Нет связи с клиентом", 0, False



Часовой пояс GMT +3, время: 23:13.