![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - Проверка доступности интернета |
|
VBS/WSH/JS - Проверка доступности интернета
|
Новый участник Сообщения: 5 |
Подскажите, настроил скрипт ping.vbs для проверки в локальной сети доступности сервера и отправке на почту уведомления, если недоступен. Хочу теперь его использовать еще для мониторинга работы интернета, но не знаю как решить вопрос. Если нет интернета, соответственно он не сможет мне отправить письмо. Как реализовать, цикл, что если есть интернет, скрипт завершается, если нету, то он делает проверку каждые 10 сек например и как только интернет появляется, сразу отправляет на почту уведомление о сбое?
А еще, при проверке досовское окно открывается, можно его сделать скрытым? [code] compip = "ya.ru" ' ip адрес сервера, который будем пинговать LogFilePath = "c:\ping.txt" ' лог-файл timeout = "30" ' таймаут проверки в секундах On Error Resume Next Set objShell = CreateObject("WScript.Shell") ' Пингом проверим что сервер доступен Set objScriptExec = objShell.Exec("%comspec% /c ping.exe -n 2 " & compip) strPingResults = LCase(objScriptExec.StdOut.ReadAll) If InStr(strPingResults, "ttl=") Then ' доступен ' пишем лог Set FSO = CreateObject("Scripting.FileSystemObject") Set LogFile = FSO.OpenTextFile(LogFilePath, 8, True) LogFile.WriteLine Now & " " & compip & " dostypen" LogFile.Close 'MsgBox compip & " пингуется " Else ' не доступен sendmilo() ' пишем лог Set FSO = CreateObject("Scripting.FileSystemObject") Set LogFile = FSO.OpenTextFile(LogFilePath, 8, True) LogFile.WriteLine Now & " " & compip & " net dostypa" LogFile.Close sub sendmilo() v_Conf = "http://schemas.microsoft.com/cdo/configuration/" Set o_Mess = CreateObject("CDO.Message") With o_Mess .To = "" 'куда отправляем .From = "Имя отправителя <email>" 'имя отправителя + Email .Subject = "" 'Тема письма .TextBody = "" 'Сообщение .AddAttachment "C:\ping.txt" 'Прикрепить файл .TextBodyPart.Charset = "windows-1251" 'русская кодировка With .Configuration.Fields .Item(v_Conf & "sendusing") = 2 'без использования каталога Server Exchange .Item(v_Conf & "smtpserver") = "" 'Адрес SMTP-сервера .Item(v_Conf & "smtpauthenticate") = 1 'Тип авторизации .Item(v_Conf & "sendusername") = "" 'здесь имя пользователя без @ .Item(v_Conf & "sendpassword") = "" 'пароль .Item(v_Conf & "smtpserverport") = 465 'порт (альтернативный - 465) .Item(v_Conf & "smtpusessl") = True 'использовать ли шифрованое подключение SSL .Item(v_Conf & "smtpconnectiontimeout") = 60 'Время до завершения повторных попыток подключения .Update End With .send End With Set o_Mess = Nothing End Sub ' MsgBox compip & " не пингуется. " End If '/////////////////////////////Функция отправки почты [code] |
|
Отправлено: 07:32, 15-04-2015 |
Ветеран Сообщения: 547
|
Профиль | Сайт | Отправить PM | Цитировать И получишь ты уведомление после того как интернет все выходные, например, не работал ))
Я использую различные конструкции типа "маяков", например которые пингуют "меня" каждые 10 минут. Если в течении 700 сек "пинга" не пришло значит аларм. Также хорошо работает sms информирование (нужен простой шлюз) В твоём случае можно запоминать предыдущее состояние канала, и если он поднялся то шлешь письмо. типа: |
------- Отправлено: 10:39, 15-04-2015 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 5
|
Профиль | Отправить PM | Цитировать Кстати смс это дело. В vbs такое можно реализовать?
|
Отправлено: 11:03, 15-04-2015 | #3 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата SharkX58:
Цитата SharkX58:
|
||
Отправлено: 12:59, 15-04-2015 | #4 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - Проверка доступности сетевой папки | 74_pilot_74 | Скриптовые языки администрирования Windows | 9 | 17-06-2021 18:59 | |
CMD/BAT - [решено] Проверка доступности и запуск программы | butunin@vk | Скриптовые языки администрирования Windows | 1 | 09-04-2015 15:58 | |
CMD/BAT - [решено] Проверка доступности FTP сервера | codi28 | Скриптовые языки администрирования Windows | 2 | 23-06-2014 11:32 | |
Проверка доступности сайта | warikkk | Хочу все знать | 2 | 22-04-2013 18:40 |
|