Часто задаваемые вопросы

Справка (FAQ) → Вопросы по уведомлениям


Что за HTTP-уведомления? Как настроить? Что вы передаете при вызове?

HTTP-уведомления - это вид оповещения об ошибке или о восстановлении работы. Мы вызываем Ваш скрипт (когда возникла ошибка или когда сайт восстановил работу) методом GET и передаем ему статус вашего сайта. Ваш скрипт может на основании этого производить свои действия, например, переключать нагрузку на другой сервер, перегружать сервер и т.п.

При добавлении HTTP-уведомления в своем аккаунте, вам необходимо указать полный адрес скрипта, например site.ru/script.php и секретный код (ключ), который будет являться паролем. Вы должны проверять этот пароль при вызове вашего скрипта, если он сойдется, то значит скрипт был вызван именно нами.

Вызов вашего скрипта формируется так: http://site.ru/script.php?key=jssut8ftf39t49t9gtfoggwgf9347889&id=18&status=0&date=1025842575

key=jssut8ftf39t49t9gtfoggwgf9347889 - секретный ключ. Генерируется как ваш секретный код (который вы указали при добавлении контакта), id (передается при вызове), status (передается при вызове), date (передается при вызове). Все в одну строчку без пробелов и знаков, зашифровано функцией md5. Вы должны на своей стороне сгенерировать этот ключ, используя свой пароль и данные, полученные при вызове. Сравнить с тем, что пришло в параметре key от нас. Если сходится, значит всё верно, запрос пришел именно от нас.

id=18 - это id вашего задания, по которому пришел запрос. Его можно посмотреть в аккаунте в списке заданий.

status=0 - это код ошибки. Расшифровку кодов ошибок сморите на странице Коды ошибок

date=1025842575 - это время возникновения ошибки в timestamp

В ответ ваш скрипт должен отдать 200ОК (в заголовках ответа сервера). Т.е. фактически можно ничего не отдавать - если при вызове вернулось 200ОК от сервера, то мы считаем, что заспрос прошел. Если ответа небыло или вернулось не 200ОК, то мы повторим запрос еще раз. Если и в этом случае не будет ответа 200ОК в течение 8 секунд, то мы прекращаем вызывать ваш скрипт.

Пример обработчика на PHP:

$my_key='fghghjghj56565'; // Ваш секретный ключ, который вы указали при добавлении контакта
$secret_key=$my_key.$_GET['id'].$_GET['status'].$_GET['date'];
$secret_key=md5($secret_key);	

if ($secret_key == $_GET['key']) {
запрос пришел от нас, обрабатываем результат:
например в зависимости от ID задания и статуса делаем то или иное действие.
}

Вопросы по теме:

Как вы мне сообщите об ошибке? Какие способы уведомлений есть? →


назад в категорию "Вопросы по уведомлениям"

Если у вас есть вопросы, вы всегда можете обратиться в нашу службу поддержки