Показано с 1 по 1 из 1
Тема: WebIcqLite class & cron
Древовидный режим
-
28.04.2011, 12:12 #1
- Регистрация
- 29.07.2010
- Сообщений
- 3
- Сказал(а) спасибо
- 0
- Поблагодарили 0 раз(а) в 0 сообщениях
WebIcqLite class & cron
День добрый, господа!
есть php скрипт, который, по сути, - icq бот, основанный на классе WebIcqLite. его задача сделать выборку из БД в соответсвии с определенными условиями, сформировать сообщения и разослать в аськи нескольким группам пользователей моего сайта. (1 группа - сообщение #1, 2я группа - сообщение #2, и т.д.) при рассылке сообщений срабатывают несколько счетчиков для подсчета результатов деятельности.
положил этот скрипт в корень сайта (public_html) и обращаюсь к скрипту хттп запросом напрямую: http://site.ru/icq.php
что интересно, cms сообщает, что страница не найдена, но, тем не менее скрипт свою задачу выполняет корректно: сообщения рассылаются ровно такие и в том кол-ве, как и должно быть. по завершению работы скрипта, записывается корректный отчет в бд, как и задумано.
первый вопрос: как такое может быть? (страница не найдена, но скрипт срабатывает)
далее вешаю скрипт на планировщик cron - получаю ошибки "socket_connect() failed. Reason: () Success"
поковырял класс, чтобы понять на каком этапе срабатывает блок и понял, что это в районе вот этой функции:
PHP код:function open($url = array('login.icq.com', 80))
{
$this->socet = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if ($this->socet < 0 || $this->socet === false)
{
$this->error = "socket_create() failed: reason: " . socket_strerror($this->socet);
return false;
}
$result = socket_connect($this->socet, gethostbyname($url[0]), $url[1]);
if ($result < 0 || $result === false)
{
$this->error = "socket_connect() failed.\nReason: ($result) " . socket_strerror(socket_last_error($socket));
return false;
}
return true;
}
может кто сталкивался с подобным, объясните, пожалуйста, что крон делает такого, что не может достучаться до сервера icq? в то время, как хттп запрос запускает выполнение скрипта.
спросил бы у разработчика класса, да не поддерживается больше этот класс. только PRO версия.
буду признателен за помощь.
Социальные закладки