![]() |
Отправка СМС при простое компьютера более 30 минут и при выходе из простоя
Добрый день.
Нарисовалась такая задача. Для контроля работы персонала на удаленных торговых точках необходимо реализовать смс оповещение о простое компьютера более 30 минут. В принципе стандартный планировщик позволяет выполнять задание только если компьютер простаивает более n секунд. Это по большей части подходит. Но как отправить php GET запрос из cmd ума не приложу. Ставить на каждую клиентскую машину вэб сервер, разумеется, смысла нет никакого. Более того, нужно реализовать еще и отправку e-mail при начале простоя более 30 минут и при выходе из простоя. Некоторые СМС шлюзы позволяют отправлять смс-ки через API по средствам письма. Т.е. в теории можно убить двух зайцев одним письмом. Отсюда вопросы: 1. Как отправлять e-mail сообщения из cmd?[решено] 2. Как отследить и выполнить отправку сообщения при выходе из простоя? ну и как альтернатива: как отправить php GET запрос из cmd? [решено] |
И вот еще какой вопрос.
Если задание выполнится один раз, следовательно в этот день задание выполняться уже не будет, что не правильно вовсе. Может есть какой софт, вроде ActualSpy. В нем я не нашел регистрацию простоя в логах, да и отправки сообщения при определенных событиях он тоже не умеет. |
Nird, запрос не бывает «php».
Цитата:
|
Цитата:
|
Цитата:
|
Цитата Iska:
Есть WSH, PoSH. » Честно признаться я понятия не имел что тот же PS может отправить get. Отправка GET запроса средствами PS нашел тут Код:
$msg = Read-Host -Prompt "Enter message" Распишу тут, может кому пригодится. 1. Качаем powerShell PowerShell для Win XP sp3 PowerShell для Win XP sp2 После установки запускаем Пуск - выполнить - powershell и вводим команду Set-ExecutionPolicy remotesigned #Эта команда разрешает выполнение ненадежных скриптов 2. Берем скрипт отправки письма Я нашел этот 3. Ну и создаем батник вида Код:
>powershell C:\send-mail.ps1 -server smtp.mail.ru -from mail@mail.ru -to mail@mail.ru -body 'Текст письма' -subject 'Тема' Остался один вопрос. Это отправка сообщения при выходе из простоя. Как и чем можно это реализовать? |
Цитата:
|
Цитата:
|
вопрос чуть в сторону.
при таком запросе, имя агента $_SERVER['HTTP_USER_AGENT'], которое увидит web сервер -пустое, надо полагать... можно ли его както задать? |
Цитата:
Код:
$wc = New-Object system.Net.WebClient; |
Цитата:
Пример задания заголовка «user-agent» приведён непосредственно по первой ссылке. |
Спасибо, на ps получилось, а вот на vbs что-то не катит:
Типа Microsoft VBScript runtime error: Class not defined: 'WebClient' |
Цитата:
|
Iska, а как это реализовать?
|
Например, так: VBScript Scripting Techniques: ArrayLists — класс .Net ArrayList Class (System.Collections) доступен также как объект Automation «System.Collections.ArrayList». Есть и другие (причём, некоторые потребно будет регистрировать самому).
|
Время: 20:13. |
Время: 20:13.
© OSzone.net 2001-