zgr 72 Опубликовано: 21 августа 2010 Рассказать Опубликовано: 21 августа 2010 (изменено) Наклепал недавно простенький чекер Аси, делюсь со всеми. Чекер на самом деле простенький и ничего из себя не представляет толком, он только выводит картинку "онлайн", "оффлайн" или "отошел", тем не менее, бывают любители, которые любят в своих профилях или в профилях всех пользователей (стата юзеров) вешать контакты, если они указаны: телефон, различные пейджеры (ася, скайп, агент.меил.ру и прочие), почтовые ящики, ПМ и т.д. Все стандартные чекеры аси у меня не заработали, если еще у кого-то не работают, то вот альтернативный костыль: $icq = 463768885; $domain = $config['http_home_url']; if ($domain{strlen($domain)-1}!='/') $slash = '/'; else $slash = ''; $home = $domain.$slash; $skin = $config['skin']; unset($domain,$slash); $curl = curl_init(); curl_setopt($curl,CURLOPT_URL,"http://icq.com/people/$icq"); curl_setopt($curl,CURLOPT_RETURNTRANSFER,1); $v = curl_exec($curl); curl_close($curl); #print_r($v); if (isset($v) && $v!='') { preg_match('|com/people/img/([awyfonline]{4,7})|smi',$v,$r); if (isset($r[1]) && ($r[1]=='offline' || $r[1]=='online' || $r[1]=='away')) $src = "templates/$skin/icq_status_$r[1].png"; unset($v); } if (!isset($scr)) $src = "templates/$skin/icq_status_undefine.png"; if (!is_file($_SERVER['DOCUMENT_ROOT'].'/'.$src)) $icq_status_img = ''; else $icq_status_img = '<img src="'.$home.$src.'" alt="icq" style="height:16px; weight:16px; border:0px; vertical-align:middle;" />'; echo $icq_status_img; unset($src,$home,$skin,$icq_status_img); Не знаю, может, кому пригодится Хотел аналогичную штуку для проверки почты написать, но ёлки, сколько там кода нужно... (проверка на реальное существование мыла, его бана и т.д.). Если будет очень большой спрос на подобные чекеры, может, добавлю еще какие и оформлю как бесплатный простенький мод. Может, Целсофт сам подобное встроит когда-нибудь? --- Добавление. Для тех, кто не знает, как подключить, то делаем так: 1. Создаем файлик, например, islemap.php и сохраняем в нем код (выше). 2. Загружаем файлик в папку: /engine/modules/islemap.php 3. Вызываем скрипт в любом месте сайта так: {include file="engine/modules/islemap.php"} Ну, теперь всё Изменено 21 августа 2010 пользователем zgr 1 Цитата Ссылка на сообщение Поделиться на других сайтах
maks1192 96 Опубликовано: 21 августа 2010 Рассказать Опубликовано: 21 августа 2010 (изменено) то есть получается, что этот хак не работает. Я правильно понял? Тогда зачем он тут нужен недоделанный? Изменено 21 августа 2010 пользователем maks1192 Цитата Ссылка на сообщение Поделиться на других сайтах
kpravda 102 Опубликовано: 21 августа 2010 Рассказать Опубликовано: 21 августа 2010 Все стандартные чекеры аси у меня не заработали, и он решил сделать свой Цитата Ссылка на сообщение Поделиться на других сайтах
zgr 72 Опубликовано: 21 августа 2010 Рассказать Опубликовано: 21 августа 2010 Автор то есть получается, что этот хак не работает. Я правильно понял? Тогда зачем он тут нужен недоделанный? Зачем бы я нерабочий выкладывал? Что касается доделанности, то он доделан до готовности, просто можно использовать несколько различных вариантов проверок ступенчато: от самой простенькой до самой сложной, чтоб зря не грузить сервер различными переменными и различным обсчетом, а также более сложной многократной проверкой сервиса (аси), если вдруг сервер вовремя не ответил и подвис, но тратить полдня на эту мороку не стал, а просто сделал картинку дефолтной (без повторной проверки), если произойдет сбой и проверку без аякса. Если нужен мега-чекер, учитывающий абсолютно все варианты, могу сделать отдельный блок в модуле, иначе, сами подумайте, сколько гемороя... проще дефолную заглушку показать. Использовать или нет - дело хозяйское. и он решил сделать свой Ага, меж чаем и обедом наклепал на коленке Не будет что-то работать, сообщите, сделаю обсчет получше. Цитата Ссылка на сообщение Поделиться на других сайтах
kpravda 102 Опубликовано: 21 августа 2010 Рассказать Опубликовано: 21 августа 2010 а картинками не поделишься? Цитата Ссылка на сообщение Поделиться на других сайтах
zgr 72 Опубликовано: 21 августа 2010 Рассказать Опубликовано: 21 августа 2010 Автор Картинки можно с этого сервиса стырить: _http://shelkovo.org/icq/ Наверно, у кого-то заработает стандартно, если так, то можно стандартные варианты использовать: <a href="http://mail.ru/agent?message&to=$uemail"><img src="http://status.mail.ru/?$uemail" width=16 height=16 alt="status.mail.ru" title="Щелкни, чтобы пообщаться с этим человеком в Mail.Ru Агенте" /></a> <a href="http://web.icq.com/whitepages/message_me/1,,,00.icq?uin=463768885&action=message" target=_blank><img src=http://www.icq.com/scripts/online.dll?icq=463768885&img=21 border=0 alt="Отправить сообщение" border=0></a> Аси у меня, оказывается нет, как сервис аси сообщает, странно, как же я тогда переписываюсь по асе? - в общем, тупой сервис. Вот наиболее популярные пейджеры: http://aim.com/ http://icq.com/ http://irc.org/ http://jabber.org/ http://messenger.msn.com/ http://skype.com/ http://messenger.yahoo.com/ Есть еще около 2-х десятков, но я специально не искал под них статусы и не мудрил код... Было б здорово это в движке уже видеть. Стандартные картинки от аси: http://status.icq.com/NNN/online0.gif http://status.icq.com/NNN/online1.gif http://status.icq.com/NNN/online2.gif Можно, например, вместо NNN поставить 5, а вообще, вроде 0-27 (?). Для настройки статуса Скайпа ссылка: http://skype.com/share/buttons/wizard.html Цитата Ссылка на сообщение Поделиться на других сайтах
maks1192 96 Опубликовано: 21 августа 2010 Рассказать Опубликовано: 21 августа 2010 Да потому что я проверял файл - пустая станица открывается. Цитата Ссылка на сообщение Поделиться на других сайтах
zgr 72 Опубликовано: 21 августа 2010 Рассказать Опубликовано: 21 августа 2010 (изменено) Автор м... Возможно, просто автоматом не подхватывается конфиг ДЛЕ, тогда его можно принудительно подгрузить... поставьте второй строчкой (после $icq=...) код: if (!isset($config) || !is_array($config) || $config==null) include $_SERVER['DOCUMENT_ROOT'].'/engine/data/config.php'; чтоб наверняка убедиться, что конфиг ДЛЕ подгружен (у меня он как-то сам автоматом подгружается), то можно еще раз проверить следующей строчкой ниже: if (isset($config) && is_array($config) && $config!=null) echo 'ok'; else echo 'no'; Если и так что-то не будет работать, тогда нужно копать, почему у вас так на сервере; у себя проверил - показывается статус аси, а стандартно проверяю - показывается заглушка (серая картинка). Изменено 21 августа 2010 пользователем zgr Цитата Ссылка на сообщение Поделиться на других сайтах
kpravda 102 Опубликовано: 21 августа 2010 Рассказать Опубликовано: 21 августа 2010 maks1192, потому что пикч нет Цитата Ссылка на сообщение Поделиться на других сайтах
maks1192 96 Опубликовано: 21 августа 2010 Рассказать Опубликовано: 21 августа 2010 Стандартные картинки от аси: http://status.icq.com/NNN/online0.gif http://status.icq.com/NNN/online1.gif http://status.icq.com/NNN/online2.gif Not Found zgr, бл! ты можешь сделать нормальную инструкцию? дал код в первом топике - для кого? даже в <?php ?> не загнал в код. Картинок нет, мы что, должны сами всё искать? Раздел называется "Готовые Моды, Хаки, Локализаторы, Советы", в этой теме я не вижу "готовое", я вижу какие-то обрезки. Цитата Ссылка на сообщение Поделиться на других сайтах
zgr 72 Опубликовано: 22 августа 2010 Рассказать Опубликовано: 22 августа 2010 Автор maks1192, зачем нервничать ? - я всё подробно расписал, если что-то не получается, нужно просто выяснить проблему и описать ее, чтоб могли все вместе решить. Прежде всего старайтесь читать инструкцию, а не возмущаться, что ее нет Процитирую: Можно, например, вместо NNN поставить 5, а вообще, вроде 0-27 (?). Я точно не выяснял, какие именно картинки есть на сервере, поэтому поставил вопросик, а сам использую картинки свои... можно в фотошопе нарисовать или с любых сайтов взять готовые, ссылки тоже дал, где иконки есть. Что касается стандартной иконки, например, 5-й, то сами пробовали ее смотреть ? - у меня открылась, вот ссылки на стандартные иконки, я сам их вижу: http://status.icq.com/5/online0.gif http://status.icq.com/5/online1.gif http://status.icq.com/5/online2.gif Вместо 5 попробуйте любую цифру от 0 до 27. Закачайте к себе на сервер их в шаблон, папка: /templates/ТЕМА/ Скрипт получит 3 типа картинки: оффлайн (красная) - online0.gif, онлайн (зеленая) - online1.gif, неопределен (заглушка серая) - online2.gif. Файлики будут искаться в скрипте: 1 - /templates/ТЕМА/icq_status_online.png 2 - /templates/ТЕМА/icq_status_offline.png 3 - /templates/ТЕМА/icq_status_away.png 4 - /templates/ТЕМА/icq_status_undefine.png 3 и 4 иконки можно использовать одинаковые, просто с разным названием... templates/ТЕМА/icq_status_undefine.png - показывает серую заглушку, что сервер icq.com не смог найти у себя иконку или скрипт не смог подключиться к серверу icq.com по какой-либо причине и получить иконку. templates/ТЕМА/icq_status_away.png - показывает, что пользователь отошел (занят). templates/ТЕМА/icq_status_online.png и templates/ТЕМА/icq_status_offline.png показывают стату "онлайн" и "оффлайн" соответственно. Если хотите расположить иконки в другом месте, нужно просто в скрипте указать другой путь, за это отвечает переменная $src. даже в <?php ?> не загнал в код. Извиняюсь, упустил... но это и не обязательное условие, скобки требуются обычно, если скрипт только первый раз вызывается, а если вызывается скрипт внутри другого скрипта, то скобки даже советуют не ставить. Впрочем, со скобками нагляднее, да, в следующий раз учту. Это готовый скрипт, который нужно сохранить в отдельном файлике. Цитата Ссылка на сообщение Поделиться на других сайтах
maks1192 96 Опубликовано: 22 августа 2010 Рассказать Опубликовано: 22 августа 2010 не работает. пустая белая страница Цитата Ссылка на сообщение Поделиться на других сайтах
zgr 72 Опубликовано: 22 августа 2010 Рассказать Опубликовано: 22 августа 2010 Автор страницы вообще никакой не должно быть... Например, подключаете код в шаблоне "Контакты" (обратная связь) и там должна появиться иконка аси: онлайн вы, отошли или заняты. Как делали подключение? В любом шаблоне должно быть так: Связь с администрацией сайта. ----------------------------- ICQ: {include file="engine/modules/islemap.php"} 463768885. E-mail: mail@mail.ru П.С. Если доверяете, можете доступ на ФТП предоставить, сам посмотрю в чем у вас ошибка. Цитата Ссылка на сообщение Поделиться на других сайтах
maks1192 96 Опубликовано: 22 августа 2010 Рассказать Опубликовано: 22 августа 2010 Делал так. Для проверки самого модуля. Создаю статическую страницу, в вузвинг редактрое, в окошке "html", вставляю: связь: {include file="engine/modules/icq.php"} сохраняю Открываю эту страницу, вижу слово "связь:" а картинок статуса - нет. Вот, в принципе и всё. Цитата Ссылка на сообщение Поделиться на других сайтах
zgr 72 Опубликовано: 23 августа 2010 Рассказать Опубликовано: 23 августа 2010 Автор Все картинки аси на сервере аси: http://shaman.asiadata.ru/node/18 . Может, кому пригодится. Посмотреть путь можно кликнув правой кнопкой мыши выбрать "Свойства изображения". Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.